All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] SAMA5D2 xplained SD/eMMC boot
@ 2016-04-18 15:30 Marek Vasut
  2016-04-18 16:54 ` Andreas Bießmann
  2016-04-19  3:22 ` Yang, Wenyou
  0 siblings, 2 replies; 17+ messages in thread
From: Marek Vasut @ 2016-04-18 15:30 UTC (permalink / raw)
  To: u-boot

Hi!

I've been playing around with latest mainline u-boot on sama5d2 xplained
ultra. I noticed that if I want to boot the board from
SD card (SDHCI1), the board will indeed load the SPL from it, but
SPL will try to load u-boot.img from eMMC (SDHCI0) and fail, as
my eMMC is blank. This is a result of hard-coding boot device to
BOOT_DEVICE_MMC1 in arch/arm/mach-at91/spl.c spl_boot_device() I
think.

Is there any way to discern from which SDHCI the board booted to
continue loading u-boot.img from the correct one ? This would let
us implement board_boot_order() and boot from correct SDHCI.

-- 
Best regards,
Marek Vasut

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] SAMA5D2 xplained SD/eMMC boot
  2016-04-18 15:30 [U-Boot] SAMA5D2 xplained SD/eMMC boot Marek Vasut
@ 2016-04-18 16:54 ` Andreas Bießmann
  2016-04-18 22:48   ` James Chargin
  2016-04-19  3:22 ` Yang, Wenyou
  1 sibling, 1 reply; 17+ messages in thread
From: Andreas Bießmann @ 2016-04-18 16:54 UTC (permalink / raw)
  To: u-boot

Hi Marek,

On 2016-04-18 17:30, Marek Vasut wrote:
> Hi!
> 
> I've been playing around with latest mainline u-boot on sama5d2 
> xplained
> ultra. I noticed that if I want to boot the board from
> SD card (SDHCI1), the board will indeed load the SPL from it, but
> SPL will try to load u-boot.img from eMMC (SDHCI0) and fail, as
> my eMMC is blank. This is a result of hard-coding boot device to
> BOOT_DEVICE_MMC1 in arch/arm/mach-at91/spl.c spl_boot_device() I
> think.
> 
> Is there any way to discern from which SDHCI the board booted to
> continue loading u-boot.img from the correct one ? This would let
> us implement board_boot_order() and boot from correct SDHCI.

AFIAK it is not possible to detect the boot medium in a running device. 
At least was this the case when I checked it the last time (for 
sama5d3).

Andreas

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] SAMA5D2 xplained SD/eMMC boot
  2016-04-18 16:54 ` Andreas Bießmann
@ 2016-04-18 22:48   ` James Chargin
  0 siblings, 0 replies; 17+ messages in thread
From: James Chargin @ 2016-04-18 22:48 UTC (permalink / raw)
  To: u-boot

On 04/18/2016 09:54 AM, Andreas Bie?mann wrote:
> Hi Marek,
>
> On 2016-04-18 17:30, Marek Vasut wrote:
>> Hi!
>>
>> I've been playing around with latest mainline u-boot on sama5d2 xplained
>> ultra. I noticed that if I want to boot the board from
>> SD card (SDHCI1), the board will indeed load the SPL from it, but
>> SPL will try to load u-boot.img from eMMC (SDHCI0) and fail, as
>> my eMMC is blank. This is a result of hard-coding boot device to
>> BOOT_DEVICE_MMC1 in arch/arm/mach-at91/spl.c spl_boot_device() I
>> think.
>>
>> Is there any way to discern from which SDHCI the board booted to
>> continue loading u-boot.img from the correct one ? This would let
>> us implement board_boot_order() and boot from correct SDHCI.
>
> AFIAK it is not possible to detect the boot medium in a running device.
> At least was this the case when I checked it the last time (for sama5d3).

For the TI am5728 (ARM V7), there is a register, CTRL_CORE_BOOTSTRAP 
(0x4A0026C4) which contains the boot device selection at last power 
cycle. I'm new to ARM so I don't know how likely it is that the Atmel 
part has a similar register. Good luck.

-- 
Jim Chargin
AJA Video Systems                       jimc at aja.com
(530) 271-3334                          http://www.aja.com

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] SAMA5D2 xplained SD/eMMC boot
  2016-04-18 15:30 [U-Boot] SAMA5D2 xplained SD/eMMC boot Marek Vasut
  2016-04-18 16:54 ` Andreas Bießmann
@ 2016-04-19  3:22 ` Yang, Wenyou
  2016-04-19 16:34   ` Marek Vasut
  1 sibling, 1 reply; 17+ messages in thread
From: Yang, Wenyou @ 2016-04-19  3:22 UTC (permalink / raw)
  To: u-boot

Hi Marek,

> -----Original Message-----
> From: Marek Vasut [mailto:marek.vasut at gmail.com]
> Sent: 2016?4?18? 23:30
> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
> Cc: u-boot at lists.denx.de
> Subject: SAMA5D2 xplained SD/eMMC boot
> 
> Hi!
> 
> I've been playing around with latest mainline u-boot on sama5d2 xplained ultra. I
> noticed that if I want to boot the board from SD card (SDHCI1), the board will
> indeed load the SPL from it, but SPL will try to load u-boot.img from eMMC
> (SDHCI0) and fail, as my eMMC is blank. 

Yes, there is some issue to load u-boot.img. I found there is something to do on sdhci.c.

You can try this branch, it should works.

https://github.com/linux4sam/u-boot-at91/commits/u-boot-2016.03-at91

> This is a result of hard-coding boot
> device to
> BOOT_DEVICE_MMC1 in arch/arm/mach-at91/spl.c spl_boot_device() I think.
> 
> Is there any way to discern from which SDHCI the board booted to continue
> loading u-boot.img from the correct one ? This would let us implement
> board_boot_order() and boot from correct SDHCI.
> 
> --
> Best regards,
> Marek Vasut


Best Regards,
Wenyou Yang

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] SAMA5D2 xplained SD/eMMC boot
  2016-04-19  3:22 ` Yang, Wenyou
@ 2016-04-19 16:34   ` Marek Vasut
  2016-04-20  1:17     ` Yang, Wenyou
  0 siblings, 1 reply; 17+ messages in thread
From: Marek Vasut @ 2016-04-19 16:34 UTC (permalink / raw)
  To: u-boot

On 04/19/2016 05:22 AM, Yang, Wenyou wrote:
> Hi Marek,
> 
>> -----Original Message-----
>> From: Marek Vasut [mailto:marek.vasut at gmail.com]
>> Sent: 2016?4?18? 23:30
>> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
>> Cc: u-boot at lists.denx.de
>> Subject: SAMA5D2 xplained SD/eMMC boot
>>
>> Hi!
>>
>> I've been playing around with latest mainline u-boot on sama5d2 xplained ultra. I
>> noticed that if I want to boot the board from SD card (SDHCI1), the board will
>> indeed load the SPL from it, but SPL will try to load u-boot.img from eMMC
>> (SDHCI0) and fail, as my eMMC is blank. 
> 
> Yes, there is some issue to load u-boot.img. I found there is something to do on sdhci.c.
> 
> You can try this branch, it should works.
> 
> https://github.com/linux4sam/u-boot-at91/commits/u-boot-2016.03-at91

I am not interested in using non-mainline stuff. Do you have any
particular patch/commit which I can refer to ? I do not think this
has anything to do with sdhci.c driver at all, it has to do with
detecting the boot device from which SPL was started and loading
u-boot.img from the same boot device instead of always using SDHCI0.

>> This is a result of hard-coding boot
>> device to
>> BOOT_DEVICE_MMC1 in arch/arm/mach-at91/spl.c spl_boot_device() I think.
>>
>> Is there any way to discern from which SDHCI the board booted to continue
>> loading u-boot.img from the correct one ? This would let us implement
>> board_boot_order() and boot from correct SDHCI.
>>
>> --
>> Best regards,
>> Marek Vasut
> 
> 
> Best Regards,
> Wenyou Yang
> 


-- 
Best regards,
Marek Vasut

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] SAMA5D2 xplained SD/eMMC boot
  2016-04-19 16:34   ` Marek Vasut
@ 2016-04-20  1:17     ` Yang, Wenyou
  2016-04-20  9:36       ` Marek Vasut
  0 siblings, 1 reply; 17+ messages in thread
From: Yang, Wenyou @ 2016-04-20  1:17 UTC (permalink / raw)
  To: u-boot

Hi Marek,

> -----Original Message-----
> From: Marek Vasut [mailto:marex at denx.de]
> Sent: 2016?4?20? 0:34
> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
> Cc: u-boot at lists.denx.de
> Subject: Re: SAMA5D2 xplained SD/eMMC boot
> 
> On 04/19/2016 05:22 AM, Yang, Wenyou wrote:
> > Hi Marek,
> >
> >> -----Original Message-----
> >> From: Marek Vasut [mailto:marek.vasut at gmail.com]
> >> Sent: 2016?4?18? 23:30
> >> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
> >> Cc: u-boot at lists.denx.de
> >> Subject: SAMA5D2 xplained SD/eMMC boot
> >>
> >> Hi!
> >>
> >> I've been playing around with latest mainline u-boot on sama5d2
> >> xplained ultra. I noticed that if I want to boot the board from SD
> >> card (SDHCI1), the board will indeed load the SPL from it, but SPL
> >> will try to load u-boot.img from eMMC
> >> (SDHCI0) and fail, as my eMMC is blank.
> >
> > Yes, there is some issue to load u-boot.img. I found there is something to do on
> sdhci.c.
> >
> > You can try this branch, it should works.
> >
> > https://github.com/linux4sam/u-boot-at91/commits/u-boot-2016.03-at91
> 
> I am not interested in using non-mainline stuff. Do you have any particular
> patch/commit which I can refer to ? I do not think this has anything to do with
> sdhci.c driver at all, it has to do with detecting the boot device from which SPL
> was started and loading u-boot.img from the same boot device instead of always
> using SDHCI0.

I will test the mainline code. I will let you know when I get something.

Thank you.

> 
> >> This is a result of hard-coding boot
> >> device to
> >> BOOT_DEVICE_MMC1 in arch/arm/mach-at91/spl.c spl_boot_device() I think.
> >>
> >> Is there any way to discern from which SDHCI the board booted to
> >> continue loading u-boot.img from the correct one ? This would let us
> >> implement
> >> board_boot_order() and boot from correct SDHCI.
> >>
> >> --
> >> Best regards,
> >> Marek Vasut
> >
> >
> > Best Regards,
> > Wenyou Yang
> >
> 
> 
> --
> Best regards,
> Marek Vasut


Best Regards,
Wenyou Yang

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] SAMA5D2 xplained SD/eMMC boot
  2016-04-20  1:17     ` Yang, Wenyou
@ 2016-04-20  9:36       ` Marek Vasut
  2016-04-21  2:30         ` Yang, Wenyou
  0 siblings, 1 reply; 17+ messages in thread
From: Marek Vasut @ 2016-04-20  9:36 UTC (permalink / raw)
  To: u-boot

On 04/20/2016 03:17 AM, Yang, Wenyou wrote:
> Hi Marek,
> 
>> -----Original Message-----
>> From: Marek Vasut [mailto:marex at denx.de]
>> Sent: 2016?4?20? 0:34
>> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
>> Cc: u-boot at lists.denx.de
>> Subject: Re: SAMA5D2 xplained SD/eMMC boot
>>
>> On 04/19/2016 05:22 AM, Yang, Wenyou wrote:
>>> Hi Marek,
>>>
>>>> -----Original Message-----
>>>> From: Marek Vasut [mailto:marek.vasut at gmail.com]
>>>> Sent: 2016?4?18? 23:30
>>>> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
>>>> Cc: u-boot at lists.denx.de
>>>> Subject: SAMA5D2 xplained SD/eMMC boot
>>>>
>>>> Hi!
>>>>
>>>> I've been playing around with latest mainline u-boot on sama5d2
>>>> xplained ultra. I noticed that if I want to boot the board from SD
>>>> card (SDHCI1), the board will indeed load the SPL from it, but SPL
>>>> will try to load u-boot.img from eMMC
>>>> (SDHCI0) and fail, as my eMMC is blank.
>>>
>>> Yes, there is some issue to load u-boot.img. I found there is something to do on
>> sdhci.c.
>>>
>>> You can try this branch, it should works.
>>>
>>> https://github.com/linux4sam/u-boot-at91/commits/u-boot-2016.03-at91
>>
>> I am not interested in using non-mainline stuff. Do you have any particular
>> patch/commit which I can refer to ? I do not think this has anything to do with
>> sdhci.c driver at all, it has to do with detecting the boot device from which SPL
>> was started and loading u-boot.img from the same boot device instead of always
>> using SDHCI0.
> 
> I will test the mainline code. I will let you know when I get something.

OK.

Does the SoC have any sort of register which lists the current boot device ?

> Thank you.
> 
>>
>>>> This is a result of hard-coding boot
>>>> device to
>>>> BOOT_DEVICE_MMC1 in arch/arm/mach-at91/spl.c spl_boot_device() I think.
>>>>
>>>> Is there any way to discern from which SDHCI the board booted to
>>>> continue loading u-boot.img from the correct one ? This would let us
>>>> implement
>>>> board_boot_order() and boot from correct SDHCI.
>>>>
>>>> --
>>>> Best regards,
>>>> Marek Vasut
>>>
>>>
>>> Best Regards,
>>> Wenyou Yang
>>>
>>
>>
>> --
>> Best regards,
>> Marek Vasut
> 
> 
> Best Regards,
> Wenyou Yang
> 


-- 
Best regards,
Marek Vasut

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] SAMA5D2 xplained SD/eMMC boot
  2016-04-20  9:36       ` Marek Vasut
@ 2016-04-21  2:30         ` Yang, Wenyou
  2016-04-21  2:41           ` Marek Vasut
  0 siblings, 1 reply; 17+ messages in thread
From: Yang, Wenyou @ 2016-04-21  2:30 UTC (permalink / raw)
  To: u-boot

Hi Marek,

> -----Original Message-----
> From: Marek Vasut [mailto:marex at denx.de]
> Sent: 2016?4?20? 17:37
> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
> Cc: u-boot at lists.denx.de
> Subject: Re: SAMA5D2 xplained SD/eMMC boot
> 
> On 04/20/2016 03:17 AM, Yang, Wenyou wrote:
> > Hi Marek,
> >
> >> -----Original Message-----
> >> From: Marek Vasut [mailto:marex at denx.de]
> >> Sent: 2016?4?20? 0:34
> >> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
> >> Cc: u-boot at lists.denx.de
> >> Subject: Re: SAMA5D2 xplained SD/eMMC boot
> >>
> >> On 04/19/2016 05:22 AM, Yang, Wenyou wrote:
> >>> Hi Marek,
> >>>
> >>>> -----Original Message-----
> >>>> From: Marek Vasut [mailto:marek.vasut at gmail.com]
> >>>> Sent: 2016?4?18? 23:30
> >>>> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
> >>>> Cc: u-boot at lists.denx.de
> >>>> Subject: SAMA5D2 xplained SD/eMMC boot
> >>>>
> >>>> Hi!
> >>>>
> >>>> I've been playing around with latest mainline u-boot on sama5d2
> >>>> xplained ultra. I noticed that if I want to boot the board from SD
> >>>> card (SDHCI1), the board will indeed load the SPL from it, but SPL
> >>>> will try to load u-boot.img from eMMC
> >>>> (SDHCI0) and fail, as my eMMC is blank.
> >>>
> >>> Yes, there is some issue to load u-boot.img. I found there is
> >>> something to do on
> >> sdhci.c.
> >>>
> >>> You can try this branch, it should works.
> >>>
> >>> https://github.com/linux4sam/u-boot-at91/commits/u-boot-2016.03-at91
> >>
> >> I am not interested in using non-mainline stuff. Do you have any
> >> particular patch/commit which I can refer to ? I do not think this
> >> has anything to do with sdhci.c driver at all, it has to do with
> >> detecting the boot device from which SPL was started and loading
> >> u-boot.img from the same boot device instead of always using SDHCI0.
> >
> > I will test the mainline code. I will let you know when I get something.
> 
> OK.
> 
> Does the SoC have any sort of register which lists the current boot device ?

In this SoC, there is not register to list the current boot device.

> 
> > Thank you.
> >
> >>
> >>>> This is a result of hard-coding boot device to
> >>>> BOOT_DEVICE_MMC1 in arch/arm/mach-at91/spl.c spl_boot_device() I
> think.
> >>>>
> >>>> Is there any way to discern from which SDHCI the board booted to
> >>>> continue loading u-boot.img from the correct one ? This would let
> >>>> us implement
> >>>> board_boot_order() and boot from correct SDHCI.
> >>>>
> >>>> --
> >>>> Best regards,
> >>>> Marek Vasut
> >>>
> >>>
> >>> Best Regards,
> >>> Wenyou Yang
> >>>
> >>
> >>
> >> --
> >> Best regards,
> >> Marek Vasut
> >
> >
> > Best Regards,
> > Wenyou Yang
> >
> 
> 
> --
> Best regards,
> Marek Vasut


Best Regards,
Wenyou Yang

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] SAMA5D2 xplained SD/eMMC boot
  2016-04-21  2:30         ` Yang, Wenyou
@ 2016-04-21  2:41           ` Marek Vasut
  2016-04-21  2:46             ` Yang, Wenyou
  0 siblings, 1 reply; 17+ messages in thread
From: Marek Vasut @ 2016-04-21  2:41 UTC (permalink / raw)
  To: u-boot

On 04/21/2016 04:30 AM, Yang, Wenyou wrote:
> Hi Marek,

Hi!

>> -----Original Message-----
>> From: Marek Vasut [mailto:marex at denx.de]
>> Sent: 2016?4?20? 17:37
>> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
>> Cc: u-boot at lists.denx.de
>> Subject: Re: SAMA5D2 xplained SD/eMMC boot

Can you fix your mailer so it doesn't insert this crap into each and
every message ? Pretty please ?

>> On 04/20/2016 03:17 AM, Yang, Wenyou wrote:
>>> Hi Marek,
>>>
>>>> -----Original Message-----
>>>> From: Marek Vasut [mailto:marex at denx.de]
>>>> Sent: 2016?4?20? 0:34
>>>> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
>>>> Cc: u-boot at lists.denx.de
>>>> Subject: Re: SAMA5D2 xplained SD/eMMC boot
>>>>
>>>> On 04/19/2016 05:22 AM, Yang, Wenyou wrote:
>>>>> Hi Marek,
>>>>>
>>>>>> -----Original Message-----
>>>>>> From: Marek Vasut [mailto:marek.vasut at gmail.com]
>>>>>> Sent: 2016?4?18? 23:30
>>>>>> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
>>>>>> Cc: u-boot at lists.denx.de
>>>>>> Subject: SAMA5D2 xplained SD/eMMC boot
>>>>>>
>>>>>> Hi!
>>>>>>
>>>>>> I've been playing around with latest mainline u-boot on sama5d2
>>>>>> xplained ultra. I noticed that if I want to boot the board from SD
>>>>>> card (SDHCI1), the board will indeed load the SPL from it, but SPL
>>>>>> will try to load u-boot.img from eMMC
>>>>>> (SDHCI0) and fail, as my eMMC is blank.
>>>>>
>>>>> Yes, there is some issue to load u-boot.img. I found there is
>>>>> something to do on
>>>> sdhci.c.
>>>>>
>>>>> You can try this branch, it should works.
>>>>>
>>>>> https://github.com/linux4sam/u-boot-at91/commits/u-boot-2016.03-at91
>>>>
>>>> I am not interested in using non-mainline stuff. Do you have any
>>>> particular patch/commit which I can refer to ? I do not think this
>>>> has anything to do with sdhci.c driver at all, it has to do with
>>>> detecting the boot device from which SPL was started and loading
>>>> u-boot.img from the same boot device instead of always using SDHCI0.
>>>
>>> I will test the mainline code. I will let you know when I get something.
>>
>> OK.
>>
>> Does the SoC have any sort of register which lists the current boot device ?
> 
> In this SoC, there is not register to list the current boot device.

And thus, it is not possible to detect at runtime from which device the
SoC booted and thus load u-boot.img from the same device. Correct ?

You should add such register, it's a few lines of HDL ...

[...]
Best regards,
Marek Vasut

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] SAMA5D2 xplained SD/eMMC boot
  2016-04-21  2:41           ` Marek Vasut
@ 2016-04-21  2:46             ` Yang, Wenyou
  2016-04-21  2:58               ` Marek Vasut
  0 siblings, 1 reply; 17+ messages in thread
From: Yang, Wenyou @ 2016-04-21  2:46 UTC (permalink / raw)
  To: u-boot

Hi,

> -----Original Message-----
> From: Marek Vasut [mailto:marex at denx.de]
> Sent: 2016?4?21? 10:41
> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
> Cc: u-boot at lists.denx.de
> Subject: Re: SAMA5D2 xplained SD/eMMC boot
> 
> On 04/21/2016 04:30 AM, Yang, Wenyou wrote:
> > Hi Marek,
> 
> Hi!
> 
> >> -----Original Message-----
> >> From: Marek Vasut [mailto:marex at denx.de]
> >> Sent: 2016?4?20? 17:37
> >> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
> >> Cc: u-boot at lists.denx.de
> >> Subject: Re: SAMA5D2 xplained SD/eMMC boot
> 
> Can you fix your mailer so it doesn't insert this crap into each and every message ?
> Pretty please ?
> 
> >> On 04/20/2016 03:17 AM, Yang, Wenyou wrote:
> >>> Hi Marek,
> >>>
> >>>> -----Original Message-----
> >>>> From: Marek Vasut [mailto:marex at denx.de]
> >>>> Sent: 2016?4?20? 0:34
> >>>> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
> >>>> Cc: u-boot at lists.denx.de
> >>>> Subject: Re: SAMA5D2 xplained SD/eMMC boot
> >>>>
> >>>> On 04/19/2016 05:22 AM, Yang, Wenyou wrote:
> >>>>> Hi Marek,
> >>>>>
> >>>>>> -----Original Message-----
> >>>>>> From: Marek Vasut [mailto:marek.vasut at gmail.com]
> >>>>>> Sent: 2016?4?18? 23:30
> >>>>>> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
> >>>>>> Cc: u-boot at lists.denx.de
> >>>>>> Subject: SAMA5D2 xplained SD/eMMC boot
> >>>>>>
> >>>>>> Hi!
> >>>>>>
> >>>>>> I've been playing around with latest mainline u-boot on sama5d2
> >>>>>> xplained ultra. I noticed that if I want to boot the board from
> >>>>>> SD card (SDHCI1), the board will indeed load the SPL from it, but
> >>>>>> SPL will try to load u-boot.img from eMMC
> >>>>>> (SDHCI0) and fail, as my eMMC is blank.
> >>>>>
> >>>>> Yes, there is some issue to load u-boot.img. I found there is
> >>>>> something to do on
> >>>> sdhci.c.
> >>>>>
> >>>>> You can try this branch, it should works.
> >>>>>
> >>>>> https://github.com/linux4sam/u-boot-at91/commits/u-boot-2016.03-at
> >>>>> 91
> >>>>
> >>>> I am not interested in using non-mainline stuff. Do you have any
> >>>> particular patch/commit which I can refer to ? I do not think this
> >>>> has anything to do with sdhci.c driver at all, it has to do with
> >>>> detecting the boot device from which SPL was started and loading
> >>>> u-boot.img from the same boot device instead of always using SDHCI0.
> >>>
> >>> I will test the mainline code. I will let you know when I get something.
> >>
> >> OK.
> >>
> >> Does the SoC have any sort of register which lists the current boot device ?
> >
> > In this SoC, there is not register to list the current boot device.
> 
> And thus, it is not possible to detect at runtime from which device the SoC booted
> and thus load u-boot.img from the same device. Correct ?

Yes, 

> 
> You should add such register, it's a few lines of HDL ...

Good suggestion.

Recorded.

Thank you.

> 
> [...]
> Best regards,
> Marek Vasut


Best Regards
Wenyou Yang

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] SAMA5D2 xplained SD/eMMC boot
  2016-04-21  2:46             ` Yang, Wenyou
@ 2016-04-21  2:58               ` Marek Vasut
  2016-04-22  0:54                 ` Yang, Wenyou
  0 siblings, 1 reply; 17+ messages in thread
From: Marek Vasut @ 2016-04-21  2:58 UTC (permalink / raw)
  To: u-boot

On 04/21/2016 04:46 AM, Yang, Wenyou wrote:
> Hi,

Hi!

[...]
pile of unnecessary email headers redacted.
[...]

>>>>>>>> Hi!
>>>>>>>>
>>>>>>>> I've been playing around with latest mainline u-boot on sama5d2
>>>>>>>> xplained ultra. I noticed that if I want to boot the board from
>>>>>>>> SD card (SDHCI1), the board will indeed load the SPL from it, but
>>>>>>>> SPL will try to load u-boot.img from eMMC
>>>>>>>> (SDHCI0) and fail, as my eMMC is blank.
>>>>>>>
>>>>>>> Yes, there is some issue to load u-boot.img. I found there is
>>>>>>> something to do on
>>>>>> sdhci.c.
>>>>>>>
>>>>>>> You can try this branch, it should works.
>>>>>>>
>>>>>>> https://github.com/linux4sam/u-boot-at91/commits/u-boot-2016.03-at
>>>>>>> 91
>>>>>>
>>>>>> I am not interested in using non-mainline stuff. Do you have any
>>>>>> particular patch/commit which I can refer to ? I do not think this
>>>>>> has anything to do with sdhci.c driver at all, it has to do with
>>>>>> detecting the boot device from which SPL was started and loading
>>>>>> u-boot.img from the same boot device instead of always using SDHCI0.
>>>>>
>>>>> I will test the mainline code. I will let you know when I get something.
>>>>
>>>> OK.
>>>>
>>>> Does the SoC have any sort of register which lists the current boot device ?
>>>
>>> In this SoC, there is not register to list the current boot device.
>>
>> And thus, it is not possible to detect at runtime from which device the SoC booted
>> and thus load u-boot.img from the same device. Correct ?
> 
> Yes, 

Ha, thanks for confirming.

[...]

-- 
Best regards,
Marek Vasut

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] SAMA5D2 xplained SD/eMMC boot
  2016-04-21  2:58               ` Marek Vasut
@ 2016-04-22  0:54                 ` Yang, Wenyou
  2016-04-22 12:17                   ` Marek Vasut
  0 siblings, 1 reply; 17+ messages in thread
From: Yang, Wenyou @ 2016-04-22  0:54 UTC (permalink / raw)
  To: u-boot

Hi Marek,

> -----Original Message-----
> From: Marek Vasut [mailto:marex at denx.de]
> Sent: 2016?4?21? 10:59
> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
> Cc: u-boot at lists.denx.de
> Subject: Re: SAMA5D2 xplained SD/eMMC boot
> 
> On 04/21/2016 04:46 AM, Yang, Wenyou wrote:
> > Hi,
> 
> Hi!
> 
> [...]
> pile of unnecessary email headers redacted.
> [...]
> 
> >>>>>>>> Hi!
> >>>>>>>>
> >>>>>>>> I've been playing around with latest mainline u-boot on sama5d2
> >>>>>>>> xplained ultra. I noticed that if I want to boot the board from
> >>>>>>>> SD card (SDHCI1), the board will indeed load the SPL from it,
> >>>>>>>> but SPL will try to load u-boot.img from eMMC
> >>>>>>>> (SDHCI0) and fail, as my eMMC is blank.
> >>>>>>>
> >>>>>>> Yes, there is some issue to load u-boot.img. I found there is
> >>>>>>> something to do on
> >>>>>> sdhci.c.
> >>>>>>>
> >>>>>>> You can try this branch, it should works.
> >>>>>>>
> >>>>>>> https://github.com/linux4sam/u-boot-at91/commits/u-boot-2016.03-
> >>>>>>> at
> >>>>>>> 91
> >>>>>>
> >>>>>> I am not interested in using non-mainline stuff. Do you have any
> >>>>>> particular patch/commit which I can refer to ? I do not think
> >>>>>> this has anything to do with sdhci.c driver at all, it has to do
> >>>>>> with detecting the boot device from which SPL was started and
> >>>>>> loading u-boot.img from the same boot device instead of always using
> SDHCI0.
> >>>>>
> >>>>> I will test the mainline code. I will let you know when I get something.
> >>>>
> >>>> OK.
> >>>>
> >>>> Does the SoC have any sort of register which lists the current boot device ?
> >>>
> >>> In this SoC, there is not register to list the current boot device.
> >>
> >> And thus, it is not possible to detect at runtime from which device
> >> the SoC booted and thus load u-boot.img from the same device. Correct ?
> >
> > Yes,
> 
> Ha, thanks for confirming.

Sorry, can I correct what I said yesterday? There is a register to list the boot information exported by ROMCode.

The boot information is stored in R4 register when the ROMCode jumps to the bootstrap. 

Here is the contents definitions R4 on the SAMA5D2 (improved compared to old MPUs to take care of IOSet features).

/* bootFrom ID Definitions */
#define BOOT_FROM_KEY             	(0xBAu << 24)

#define BOOT_FROM_SPI               	(0x0u << 0)
#define BOOT_FROM_MCI               	(0x1u << 0)
#define BOOT_FROM_SMC               	(0x2u << 0)
#define BOOT_FROM_TWI               	(0x3u << 0)
#define BOOT_FROM_QSPI             	(0x4u << 0)

/* ID number of the IP from the data sheet */
#define BOOT_FROM_ID0               (0x0u << 4)
#define BOOT_FROM_ID1               (0x1u << 4)
#define BOOT_FROM_ID2               (0x2u << 4)
#define BOOT_FROM_ID3               (0x3u << 4)
#define BOOT_FROM_ID4               (0x4u << 4)

#define BOOT_FROM_ID_Pos            	4
#define BOOT_FROM_ID_Msk            	(0xfu << BOOT_FROM_ID_Pos)
#define BOOT_FROM_ID(value)         	((BOOT_FROM_ID_Msk & ((value) << BOOT_FROM_ID_Pos)))

#define BOOT_FROM_TYPE_SD_OR_AT25   	(0x0u << 8)
#define BOOT_FROM_TYPE_MMC_OR_AT45  (0x1u << 8)
#define BOOT_FROM_TYPE_EMMC         	(0x2u << 8)

/* QSPI serial flashes */
#define BOOT_FROM_TYPE_SPANSION     	(0x0u << 8)
#define BOOT_FROM_TYPE_MICRON       	(0x1u << 8)
#define BOOT_FROM_TYPE_MACRONIX     	(0x2u << 8)

/* Chip Select or (MCI) Slot identifier used in code by the IP. */
#define BOOT_FROM_CS0               (0x0u << 12) // Slot A
#define BOOT_FROM_CS1               (0x1u << 12) // Slot B
#define BOOT_FROM_CS2               (0x2u << 12) // Slot C
#define BOOT_FROM_CS3               (0x3u << 12) // Slot D
#define BOOT_FROM_CS4               (0x4u << 12)

#define BOOT_FROM_CS_Pos            12
#define BOOT_FROM_CS_Msk            (0xfu << BOOT_FROM_CS_Pos)
#define BOOT_FROM_CS(value)         ((BOOT_FROM_CS_Msk & ((value) << BOOT_FROM_CS_Pos)))

#define BOOT_FROM_IOSET_Pos         16
#define BOOT_FROM_IOSET_Msk         (0x3u << BOOT_FROM_IOSET_Pos)
#define BOOT_FROM_IOSET(value)       ((BOOT_FROM_IOSET_Msk & ((value) << BOOT_FROM_IOSET_Pos)))>>


> [...]
> 
> --
> Best regards,
> Marek Vasut

Sorry for incorrect information before.


Best Regards,
Wenyou Yang

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] SAMA5D2 xplained SD/eMMC boot
  2016-04-22  0:54                 ` Yang, Wenyou
@ 2016-04-22 12:17                   ` Marek Vasut
  2016-04-25  0:55                     ` Yang, Wenyou
  0 siblings, 1 reply; 17+ messages in thread
From: Marek Vasut @ 2016-04-22 12:17 UTC (permalink / raw)
  To: u-boot

On 04/22/2016 02:54 AM, Yang, Wenyou wrote:
> Hi Marek,

Hi!

>> -----Original Message-----
>> From: Marek Vasut [mailto:marex at denx.de]
>> Sent: 2016?4?21? 10:59
>> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
>> Cc: u-boot at lists.denx.de
>> Subject: Re: SAMA5D2 xplained SD/eMMC boot
>>
>> On 04/21/2016 04:46 AM, Yang, Wenyou wrote:
>>> Hi,
>>
>> Hi!
>>
>> [...]
>> pile of unnecessary email headers redacted.
>> [...]
>>
>>>>>>>>>> Hi!
>>>>>>>>>>
>>>>>>>>>> I've been playing around with latest mainline u-boot on sama5d2
>>>>>>>>>> xplained ultra. I noticed that if I want to boot the board from
>>>>>>>>>> SD card (SDHCI1), the board will indeed load the SPL from it,
>>>>>>>>>> but SPL will try to load u-boot.img from eMMC
>>>>>>>>>> (SDHCI0) and fail, as my eMMC is blank.
>>>>>>>>>
>>>>>>>>> Yes, there is some issue to load u-boot.img. I found there is
>>>>>>>>> something to do on
>>>>>>>> sdhci.c.
>>>>>>>>>
>>>>>>>>> You can try this branch, it should works.
>>>>>>>>>
>>>>>>>>> https://github.com/linux4sam/u-boot-at91/commits/u-boot-2016.03-
>>>>>>>>> at
>>>>>>>>> 91
>>>>>>>>
>>>>>>>> I am not interested in using non-mainline stuff. Do you have any
>>>>>>>> particular patch/commit which I can refer to ? I do not think
>>>>>>>> this has anything to do with sdhci.c driver at all, it has to do
>>>>>>>> with detecting the boot device from which SPL was started and
>>>>>>>> loading u-boot.img from the same boot device instead of always using
>> SDHCI0.
>>>>>>>
>>>>>>> I will test the mainline code. I will let you know when I get something.
>>>>>>
>>>>>> OK.
>>>>>>
>>>>>> Does the SoC have any sort of register which lists the current boot device ?
>>>>>
>>>>> In this SoC, there is not register to list the current boot device.
>>>>
>>>> And thus, it is not possible to detect at runtime from which device
>>>> the SoC booted and thus load u-boot.img from the same device. Correct ?
>>>
>>> Yes,
>>
>> Ha, thanks for confirming.
> 
> Sorry, can I correct what I said yesterday?

What if I said "no" ? :-)

> There is a register to list the boot information exported by ROMCode.
> 
> The boot information is stored in R4 register when the ROMCode jumps to the bootstrap. 

Ha, so the U-Boot SPL can save the r4 register early in the boot and
extract the boot device from it. That's neat. Thanks!

> Here is the contents definitions R4 on the SAMA5D2 (improved compared to old MPUs to take care of IOSet features).

Is this stuff somewhere in the SAMA5Dx datasheet ? It'd be nice to
know/have this information for other SAMA5Dx too (d3 and d4).

> /* bootFrom ID Definitions */
> #define BOOT_FROM_KEY             	(0xBAu << 24)
> 
> #define BOOT_FROM_SPI               	(0x0u << 0)
> #define BOOT_FROM_MCI               	(0x1u << 0)
> #define BOOT_FROM_SMC               	(0x2u << 0)
> #define BOOT_FROM_TWI               	(0x3u << 0)
> #define BOOT_FROM_QSPI             	(0x4u << 0)
> 
> /* ID number of the IP from the data sheet */
> #define BOOT_FROM_ID0               (0x0u << 4)
> #define BOOT_FROM_ID1               (0x1u << 4)
> #define BOOT_FROM_ID2               (0x2u << 4)
> #define BOOT_FROM_ID3               (0x3u << 4)
> #define BOOT_FROM_ID4               (0x4u << 4)
> 
> #define BOOT_FROM_ID_Pos            	4
> #define BOOT_FROM_ID_Msk            	(0xfu << BOOT_FROM_ID_Pos)
> #define BOOT_FROM_ID(value)         	((BOOT_FROM_ID_Msk & ((value) << BOOT_FROM_ID_Pos)))
> 
> #define BOOT_FROM_TYPE_SD_OR_AT25   	(0x0u << 8)
> #define BOOT_FROM_TYPE_MMC_OR_AT45  (0x1u << 8)
> #define BOOT_FROM_TYPE_EMMC         	(0x2u << 8)
> 
> /* QSPI serial flashes */
> #define BOOT_FROM_TYPE_SPANSION     	(0x0u << 8)
> #define BOOT_FROM_TYPE_MICRON       	(0x1u << 8)
> #define BOOT_FROM_TYPE_MACRONIX     	(0x2u << 8)
> 
> /* Chip Select or (MCI) Slot identifier used in code by the IP. */
> #define BOOT_FROM_CS0               (0x0u << 12) // Slot A
> #define BOOT_FROM_CS1               (0x1u << 12) // Slot B
> #define BOOT_FROM_CS2               (0x2u << 12) // Slot C
> #define BOOT_FROM_CS3               (0x3u << 12) // Slot D
> #define BOOT_FROM_CS4               (0x4u << 12)
> 
> #define BOOT_FROM_CS_Pos            12
> #define BOOT_FROM_CS_Msk            (0xfu << BOOT_FROM_CS_Pos)
> #define BOOT_FROM_CS(value)         ((BOOT_FROM_CS_Msk & ((value) << BOOT_FROM_CS_Pos)))
> 
> #define BOOT_FROM_IOSET_Pos         16
> #define BOOT_FROM_IOSET_Msk         (0x3u << BOOT_FROM_IOSET_Pos)
> #define BOOT_FROM_IOSET(value)       ((BOOT_FROM_IOSET_Msk & ((value) << BOOT_FROM_IOSET_Pos)))>>
> 
> 
>> [...]
>>
>> --
>> Best regards,
>> Marek Vasut
> 
> Sorry for incorrect information before.

No problem, thanks for the update!

> Best Regards,
> Wenyou Yang
> 


-- 
Best regards,
Marek Vasut

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] SAMA5D2 xplained SD/eMMC boot
  2016-04-22 12:17                   ` Marek Vasut
@ 2016-04-25  0:55                     ` Yang, Wenyou
  2016-04-25 10:30                       ` Marek Vasut
  0 siblings, 1 reply; 17+ messages in thread
From: Yang, Wenyou @ 2016-04-25  0:55 UTC (permalink / raw)
  To: u-boot

Hi Marek,

> -----Original Message-----
> From: Marek Vasut [mailto:marex at denx.de]
> Sent: 2016?4?22? 20:18
> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
> Cc: u-boot at lists.denx.de
> Subject: Re: SAMA5D2 xplained SD/eMMC boot
> 
> On 04/22/2016 02:54 AM, Yang, Wenyou wrote:
> > Hi Marek,
> 
> Hi!
> 
> >> -----Original Message-----
> >> From: Marek Vasut [mailto:marex at denx.de]
> >> Sent: 2016?4?21? 10:59
> >> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
> >> Cc: u-boot at lists.denx.de
> >> Subject: Re: SAMA5D2 xplained SD/eMMC boot
> >>
> >> On 04/21/2016 04:46 AM, Yang, Wenyou wrote:
> >>> Hi,
> >>
> >> Hi!
> >>
> >> [...]
> >> pile of unnecessary email headers redacted.
> >> [...]
> >>
> >>>>>>>>>> Hi!
> >>>>>>>>>>
> >>>>>>>>>> I've been playing around with latest mainline u-boot on
> >>>>>>>>>> sama5d2 xplained ultra. I noticed that if I want to boot the
> >>>>>>>>>> board from SD card (SDHCI1), the board will indeed load the
> >>>>>>>>>> SPL from it, but SPL will try to load u-boot.img from eMMC
> >>>>>>>>>> (SDHCI0) and fail, as my eMMC is blank.
> >>>>>>>>>
> >>>>>>>>> Yes, there is some issue to load u-boot.img. I found there is
> >>>>>>>>> something to do on
> >>>>>>>> sdhci.c.
> >>>>>>>>>
> >>>>>>>>> You can try this branch, it should works.
> >>>>>>>>>
> >>>>>>>>> https://github.com/linux4sam/u-boot-at91/commits/u-boot-2016.0
> >>>>>>>>> 3-
> >>>>>>>>> at
> >>>>>>>>> 91
> >>>>>>>>
> >>>>>>>> I am not interested in using non-mainline stuff. Do you have
> >>>>>>>> any particular patch/commit which I can refer to ? I do not
> >>>>>>>> think this has anything to do with sdhci.c driver at all, it
> >>>>>>>> has to do with detecting the boot device from which SPL was
> >>>>>>>> started and loading u-boot.img from the same boot device
> >>>>>>>> instead of always using
> >> SDHCI0.
> >>>>>>>
> >>>>>>> I will test the mainline code. I will let you know when I get something.
> >>>>>>
> >>>>>> OK.
> >>>>>>
> >>>>>> Does the SoC have any sort of register which lists the current boot
> device ?
> >>>>>
> >>>>> In this SoC, there is not register to list the current boot device.
> >>>>
> >>>> And thus, it is not possible to detect at runtime from which device
> >>>> the SoC booted and thus load u-boot.img from the same device. Correct ?
> >>>
> >>> Yes,
> >>
> >> Ha, thanks for confirming.
> >
> > Sorry, can I correct what I said yesterday?
> 
> What if I said "no" ? :-)
> 
> > There is a register to list the boot information exported by ROMCode.
> >
> > The boot information is stored in R4 register when the ROMCode jumps to the
> bootstrap.
> 
> Ha, so the U-Boot SPL can save the r4 register early in the boot and extract the
> boot device from it. That's neat. Thanks!
> 
> > Here is the contents definitions R4 on the SAMA5D2 (improved compared to old
> MPUs to take care of IOSet features).
> 
> Is this stuff somewhere in the SAMA5Dx datasheet ? It'd be nice to know/have this
> information for other SAMA5Dx too (d3 and d4).

It seems it is not included in the in the SAMA5Dx datasheet.

This feature is available since AT91SAM9G45, inclusive d3 and d4.

> 
> > /* bootFrom ID Definitions */
> > #define BOOT_FROM_KEY             	(0xBAu << 24)
> >
> > #define BOOT_FROM_SPI               	(0x0u << 0)
> > #define BOOT_FROM_MCI               	(0x1u << 0)
> > #define BOOT_FROM_SMC               	(0x2u << 0)
> > #define BOOT_FROM_TWI               	(0x3u << 0)
> > #define BOOT_FROM_QSPI             	(0x4u << 0)
> >
> > /* ID number of the IP from the data sheet */
> > #define BOOT_FROM_ID0               (0x0u << 4)
> > #define BOOT_FROM_ID1               (0x1u << 4)
> > #define BOOT_FROM_ID2               (0x2u << 4)
> > #define BOOT_FROM_ID3               (0x3u << 4)
> > #define BOOT_FROM_ID4               (0x4u << 4)
> >
> > #define BOOT_FROM_ID_Pos            	4
> > #define BOOT_FROM_ID_Msk            	(0xfu << BOOT_FROM_ID_Pos)
> > #define BOOT_FROM_ID(value)         	((BOOT_FROM_ID_Msk &
> ((value) << BOOT_FROM_ID_Pos)))
> >
> > #define BOOT_FROM_TYPE_SD_OR_AT25   	(0x0u << 8)
> > #define BOOT_FROM_TYPE_MMC_OR_AT45  (0x1u << 8)
> > #define BOOT_FROM_TYPE_EMMC         	(0x2u << 8)
> >
> > /* QSPI serial flashes */
> > #define BOOT_FROM_TYPE_SPANSION     	(0x0u << 8)
> > #define BOOT_FROM_TYPE_MICRON       	(0x1u << 8)
> > #define BOOT_FROM_TYPE_MACRONIX     	(0x2u << 8)
> >
> > /* Chip Select or (MCI) Slot identifier used in code by the IP. */
> > #define BOOT_FROM_CS0               (0x0u << 12) // Slot A
> > #define BOOT_FROM_CS1               (0x1u << 12) // Slot B
> > #define BOOT_FROM_CS2               (0x2u << 12) // Slot C
> > #define BOOT_FROM_CS3               (0x3u << 12) // Slot D
> > #define BOOT_FROM_CS4               (0x4u << 12)
> >
> > #define BOOT_FROM_CS_Pos            12
> > #define BOOT_FROM_CS_Msk            (0xfu << BOOT_FROM_CS_Pos)
> > #define BOOT_FROM_CS(value)         ((BOOT_FROM_CS_Msk & ((value) <<
> BOOT_FROM_CS_Pos)))
> >
> > #define BOOT_FROM_IOSET_Pos         16
> > #define BOOT_FROM_IOSET_Msk         (0x3u << BOOT_FROM_IOSET_Pos)
> > #define BOOT_FROM_IOSET(value)       ((BOOT_FROM_IOSET_Msk &
> ((value) << BOOT_FROM_IOSET_Pos)))>>
> >
> >
> >> [...]
> >>
> >> --
> >> Best regards,
> >> Marek Vasut
> >
> > Sorry for incorrect information before.
> 
> No problem, thanks for the update!
> 
> > Best Regards,
> > Wenyou Yang
> >
> 
> 
> --
> Best regards,
> Marek Vasut


Best Regards,
Wenyou Yang

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] SAMA5D2 xplained SD/eMMC boot
  2016-04-25  0:55                     ` Yang, Wenyou
@ 2016-04-25 10:30                       ` Marek Vasut
  2016-04-26  1:47                         ` Yang, Wenyou
  0 siblings, 1 reply; 17+ messages in thread
From: Marek Vasut @ 2016-04-25 10:30 UTC (permalink / raw)
  To: u-boot

On 04/25/2016 02:55 AM, Yang, Wenyou wrote:
> Hi Marek,
> 
>> -----Original Message-----
>> From: Marek Vasut [mailto:marex at denx.de]
>> Sent: 2016?4?22? 20:18
>> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
>> Cc: u-boot at lists.denx.de
>> Subject: Re: SAMA5D2 xplained SD/eMMC boot
>>
>> On 04/22/2016 02:54 AM, Yang, Wenyou wrote:
>>> Hi Marek,
>>
>> Hi!
>>
>>>> -----Original Message-----
>>>> From: Marek Vasut [mailto:marex at denx.de]
>>>> Sent: 2016?4?21? 10:59
>>>> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
>>>> Cc: u-boot at lists.denx.de
>>>> Subject: Re: SAMA5D2 xplained SD/eMMC boot
>>>>
>>>> On 04/21/2016 04:46 AM, Yang, Wenyou wrote:
>>>>> Hi,
>>>>
>>>> Hi!
>>>>
>>>> [...]
>>>> pile of unnecessary email headers redacted.
>>>> [...]
>>>>
>>>>>>>>>>>> Hi!
>>>>>>>>>>>>
>>>>>>>>>>>> I've been playing around with latest mainline u-boot on
>>>>>>>>>>>> sama5d2 xplained ultra. I noticed that if I want to boot the
>>>>>>>>>>>> board from SD card (SDHCI1), the board will indeed load the
>>>>>>>>>>>> SPL from it, but SPL will try to load u-boot.img from eMMC
>>>>>>>>>>>> (SDHCI0) and fail, as my eMMC is blank.
>>>>>>>>>>>
>>>>>>>>>>> Yes, there is some issue to load u-boot.img. I found there is
>>>>>>>>>>> something to do on
>>>>>>>>>> sdhci.c.
>>>>>>>>>>>
>>>>>>>>>>> You can try this branch, it should works.
>>>>>>>>>>>
>>>>>>>>>>> https://github.com/linux4sam/u-boot-at91/commits/u-boot-2016.0
>>>>>>>>>>> 3-
>>>>>>>>>>> at
>>>>>>>>>>> 91
>>>>>>>>>>
>>>>>>>>>> I am not interested in using non-mainline stuff. Do you have
>>>>>>>>>> any particular patch/commit which I can refer to ? I do not
>>>>>>>>>> think this has anything to do with sdhci.c driver at all, it
>>>>>>>>>> has to do with detecting the boot device from which SPL was
>>>>>>>>>> started and loading u-boot.img from the same boot device
>>>>>>>>>> instead of always using
>>>> SDHCI0.
>>>>>>>>>
>>>>>>>>> I will test the mainline code. I will let you know when I get something.
>>>>>>>>
>>>>>>>> OK.
>>>>>>>>
>>>>>>>> Does the SoC have any sort of register which lists the current boot
>> device ?
>>>>>>>
>>>>>>> In this SoC, there is not register to list the current boot device.
>>>>>>
>>>>>> And thus, it is not possible to detect at runtime from which device
>>>>>> the SoC booted and thus load u-boot.img from the same device. Correct ?
>>>>>
>>>>> Yes,
>>>>
>>>> Ha, thanks for confirming.
>>>
>>> Sorry, can I correct what I said yesterday?
>>
>> What if I said "no" ? :-)
>>
>>> There is a register to list the boot information exported by ROMCode.
>>>
>>> The boot information is stored in R4 register when the ROMCode jumps to the
>> bootstrap.
>>
>> Ha, so the U-Boot SPL can save the r4 register early in the boot and extract the
>> boot device from it. That's neat. Thanks!
>>
>>> Here is the contents definitions R4 on the SAMA5D2 (improved compared to old
>> MPUs to take care of IOSet features).
>>
>> Is this stuff somewhere in the SAMA5Dx datasheet ? It'd be nice to know/have this
>> information for other SAMA5Dx too (d3 and d4).
> 
> It seems it is not included in the in the SAMA5Dx datasheet.

So where did you get these numbers from ?

> This feature is available since AT91SAM9G45, inclusive d3 and d4.

Oh cool, so the numbers are the same for all these chips ?

Thanks!
Best regards,
Marek Vasut

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] SAMA5D2 xplained SD/eMMC boot
  2016-04-25 10:30                       ` Marek Vasut
@ 2016-04-26  1:47                         ` Yang, Wenyou
  2016-04-26 12:42                           ` Marek Vasut
  0 siblings, 1 reply; 17+ messages in thread
From: Yang, Wenyou @ 2016-04-26  1:47 UTC (permalink / raw)
  To: u-boot



> -----Original Message-----
> From: Marek Vasut [mailto:marex at denx.de]
> Sent: 2016?4?25? 18:30
> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
> Cc: u-boot at lists.denx.de
> Subject: Re: SAMA5D2 xplained SD/eMMC boot
> 
> On 04/25/2016 02:55 AM, Yang, Wenyou wrote:
> > Hi Marek,
> >
> >> -----Original Message-----
> >> From: Marek Vasut [mailto:marex at denx.de]
> >> Sent: 2016?4?22? 20:18
> >> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
> >> Cc: u-boot at lists.denx.de
> >> Subject: Re: SAMA5D2 xplained SD/eMMC boot
> >>
> >> On 04/22/2016 02:54 AM, Yang, Wenyou wrote:
> >>> Hi Marek,
> >>
> >> Hi!
> >>
> >>>> -----Original Message-----
> >>>> From: Marek Vasut [mailto:marex at denx.de]
> >>>> Sent: 2016?4?21? 10:59
> >>>> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
> >>>> Cc: u-boot at lists.denx.de
> >>>> Subject: Re: SAMA5D2 xplained SD/eMMC boot
> >>>>
> >>>> On 04/21/2016 04:46 AM, Yang, Wenyou wrote:
> >>>>> Hi,
> >>>>
> >>>> Hi!
> >>>>
> >>>> [...]
> >>>> pile of unnecessary email headers redacted.
> >>>> [...]
> >>>>
> >>>>>>>>>>>> Hi!
> >>>>>>>>>>>>
> >>>>>>>>>>>> I've been playing around with latest mainline u-boot on
> >>>>>>>>>>>> sama5d2 xplained ultra. I noticed that if I want to boot
> >>>>>>>>>>>> the board from SD card (SDHCI1), the board will indeed load
> >>>>>>>>>>>> the SPL from it, but SPL will try to load u-boot.img from
> >>>>>>>>>>>> eMMC
> >>>>>>>>>>>> (SDHCI0) and fail, as my eMMC is blank.
> >>>>>>>>>>>
> >>>>>>>>>>> Yes, there is some issue to load u-boot.img. I found there
> >>>>>>>>>>> is something to do on
> >>>>>>>>>> sdhci.c.
> >>>>>>>>>>>
> >>>>>>>>>>> You can try this branch, it should works.
> >>>>>>>>>>>
> >>>>>>>>>>> https://github.com/linux4sam/u-boot-at91/commits/u-boot-2016
> >>>>>>>>>>> .0
> >>>>>>>>>>> 3-
> >>>>>>>>>>> at
> >>>>>>>>>>> 91
> >>>>>>>>>>
> >>>>>>>>>> I am not interested in using non-mainline stuff. Do you have
> >>>>>>>>>> any particular patch/commit which I can refer to ? I do not
> >>>>>>>>>> think this has anything to do with sdhci.c driver at all, it
> >>>>>>>>>> has to do with detecting the boot device from which SPL was
> >>>>>>>>>> started and loading u-boot.img from the same boot device
> >>>>>>>>>> instead of always using
> >>>> SDHCI0.
> >>>>>>>>>
> >>>>>>>>> I will test the mainline code. I will let you know when I get something.
> >>>>>>>>
> >>>>>>>> OK.
> >>>>>>>>
> >>>>>>>> Does the SoC have any sort of register which lists the current
> >>>>>>>> boot
> >> device ?
> >>>>>>>
> >>>>>>> In this SoC, there is not register to list the current boot device.
> >>>>>>
> >>>>>> And thus, it is not possible to detect at runtime from which
> >>>>>> device the SoC booted and thus load u-boot.img from the same device.
> Correct ?
> >>>>>
> >>>>> Yes,
> >>>>
> >>>> Ha, thanks for confirming.
> >>>
> >>> Sorry, can I correct what I said yesterday?
> >>
> >> What if I said "no" ? :-)
> >>
> >>> There is a register to list the boot information exported by ROMCode.
> >>>
> >>> The boot information is stored in R4 register when the ROMCode jumps
> >>> to the
> >> bootstrap.
> >>
> >> Ha, so the U-Boot SPL can save the r4 register early in the boot and
> >> extract the boot device from it. That's neat. Thanks!
> >>
> >>> Here is the contents definitions R4 on the SAMA5D2 (improved
> >>> compared to old
> >> MPUs to take care of IOSet features).
> >>
> >> Is this stuff somewhere in the SAMA5Dx datasheet ? It'd be nice to
> >> know/have this information for other SAMA5Dx too (d3 and d4).
> >
> > It seems it is not included in the in the SAMA5Dx datasheet.
> 
> So where did you get these numbers from ?

Yes, it is not included in the datasheet now. We are not recommend to use them.

If it is helpful for you,  please reference the previous mail.

> 
> > This feature is available since AT91SAM9G45, inclusive d3 and d4.
> 
> Oh cool, so the numbers are the same for all these chips ?

Yes, basically same, only d2 includes additional ioset information.


Best Regards,
Wenyou Yang

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] SAMA5D2 xplained SD/eMMC boot
  2016-04-26  1:47                         ` Yang, Wenyou
@ 2016-04-26 12:42                           ` Marek Vasut
  0 siblings, 0 replies; 17+ messages in thread
From: Marek Vasut @ 2016-04-26 12:42 UTC (permalink / raw)
  To: u-boot

On 04/26/2016 03:47 AM, Yang, Wenyou wrote:
> 
> 
>> -----Original Message-----
>> From: Marek Vasut [mailto:marex at denx.de]
>> Sent: 2016?4?25? 18:30
>> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
>> Cc: u-boot at lists.denx.de
>> Subject: Re: SAMA5D2 xplained SD/eMMC boot
>>
>> On 04/25/2016 02:55 AM, Yang, Wenyou wrote:
>>> Hi Marek,
>>>
>>>> -----Original Message-----
>>>> From: Marek Vasut [mailto:marex at denx.de]
>>>> Sent: 2016?4?22? 20:18
>>>> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
>>>> Cc: u-boot at lists.denx.de
>>>> Subject: Re: SAMA5D2 xplained SD/eMMC boot
>>>>
>>>> On 04/22/2016 02:54 AM, Yang, Wenyou wrote:
>>>>> Hi Marek,
>>>>
>>>> Hi!
>>>>
>>>>>> -----Original Message-----
>>>>>> From: Marek Vasut [mailto:marex at denx.de]
>>>>>> Sent: 2016?4?21? 10:59
>>>>>> To: Yang, Wenyou <Wenyou.Yang@atmel.com>
>>>>>> Cc: u-boot at lists.denx.de
>>>>>> Subject: Re: SAMA5D2 xplained SD/eMMC boot
>>>>>>
>>>>>> On 04/21/2016 04:46 AM, Yang, Wenyou wrote:
>>>>>>> Hi,
>>>>>>
>>>>>> Hi!
>>>>>>
>>>>>> [...]
>>>>>> pile of unnecessary email headers redacted.
>>>>>> [...]
>>>>>>
>>>>>>>>>>>>>> Hi!
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> I've been playing around with latest mainline u-boot on
>>>>>>>>>>>>>> sama5d2 xplained ultra. I noticed that if I want to boot
>>>>>>>>>>>>>> the board from SD card (SDHCI1), the board will indeed load
>>>>>>>>>>>>>> the SPL from it, but SPL will try to load u-boot.img from
>>>>>>>>>>>>>> eMMC
>>>>>>>>>>>>>> (SDHCI0) and fail, as my eMMC is blank.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Yes, there is some issue to load u-boot.img. I found there
>>>>>>>>>>>>> is something to do on
>>>>>>>>>>>> sdhci.c.
>>>>>>>>>>>>>
>>>>>>>>>>>>> You can try this branch, it should works.
>>>>>>>>>>>>>
>>>>>>>>>>>>> https://github.com/linux4sam/u-boot-at91/commits/u-boot-2016
>>>>>>>>>>>>> .0
>>>>>>>>>>>>> 3-
>>>>>>>>>>>>> at
>>>>>>>>>>>>> 91
>>>>>>>>>>>>
>>>>>>>>>>>> I am not interested in using non-mainline stuff. Do you have
>>>>>>>>>>>> any particular patch/commit which I can refer to ? I do not
>>>>>>>>>>>> think this has anything to do with sdhci.c driver at all, it
>>>>>>>>>>>> has to do with detecting the boot device from which SPL was
>>>>>>>>>>>> started and loading u-boot.img from the same boot device
>>>>>>>>>>>> instead of always using
>>>>>> SDHCI0.
>>>>>>>>>>>
>>>>>>>>>>> I will test the mainline code. I will let you know when I get something.
>>>>>>>>>>
>>>>>>>>>> OK.
>>>>>>>>>>
>>>>>>>>>> Does the SoC have any sort of register which lists the current
>>>>>>>>>> boot
>>>> device ?
>>>>>>>>>
>>>>>>>>> In this SoC, there is not register to list the current boot device.
>>>>>>>>
>>>>>>>> And thus, it is not possible to detect at runtime from which
>>>>>>>> device the SoC booted and thus load u-boot.img from the same device.
>> Correct ?
>>>>>>>
>>>>>>> Yes,
>>>>>>
>>>>>> Ha, thanks for confirming.
>>>>>
>>>>> Sorry, can I correct what I said yesterday?
>>>>
>>>> What if I said "no" ? :-)
>>>>
>>>>> There is a register to list the boot information exported by ROMCode.
>>>>>
>>>>> The boot information is stored in R4 register when the ROMCode jumps
>>>>> to the
>>>> bootstrap.
>>>>
>>>> Ha, so the U-Boot SPL can save the r4 register early in the boot and
>>>> extract the boot device from it. That's neat. Thanks!
>>>>
>>>>> Here is the contents definitions R4 on the SAMA5D2 (improved
>>>>> compared to old
>>>> MPUs to take care of IOSet features).
>>>>
>>>> Is this stuff somewhere in the SAMA5Dx datasheet ? It'd be nice to
>>>> know/have this information for other SAMA5Dx too (d3 and d4).
>>>
>>> It seems it is not included in the in the SAMA5Dx datasheet.
>>
>> So where did you get these numbers from ?
> 
> Yes, it is not included in the datasheet now. We are not recommend to use them.
> 
> If it is helpful for you,  please reference the previous mail.

It is helpful, I sent a patch for SAMA5D2 which makes it behave sane.
I will have to battle SAMA5D4 board soon, so I will most likely extend
that patch for SAMA5D4.

>>
>>> This feature is available since AT91SAM9G45, inclusive d3 and d4.
>>
>> Oh cool, so the numbers are the same for all these chips ?
> 
> Yes, basically same, only d2 includes additional ioset information.

OK, the IOSET is not interesting for now.

It'd be cool to have this documented somewhere :)

Best regards,
Marek Vasut

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2016-04-26 12:42 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-04-18 15:30 [U-Boot] SAMA5D2 xplained SD/eMMC boot Marek Vasut
2016-04-18 16:54 ` Andreas Bießmann
2016-04-18 22:48   ` James Chargin
2016-04-19  3:22 ` Yang, Wenyou
2016-04-19 16:34   ` Marek Vasut
2016-04-20  1:17     ` Yang, Wenyou
2016-04-20  9:36       ` Marek Vasut
2016-04-21  2:30         ` Yang, Wenyou
2016-04-21  2:41           ` Marek Vasut
2016-04-21  2:46             ` Yang, Wenyou
2016-04-21  2:58               ` Marek Vasut
2016-04-22  0:54                 ` Yang, Wenyou
2016-04-22 12:17                   ` Marek Vasut
2016-04-25  0:55                     ` Yang, Wenyou
2016-04-25 10:30                       ` Marek Vasut
2016-04-26  1:47                         ` Yang, Wenyou
2016-04-26 12:42                           ` Marek Vasut

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.