[U-Boot] [PATCH 0/4] sunxi: Pine64 fixes

Andre Przywara andre.przywara at arm.com
Wed Sep 7 18:20:23 CEST 2016


Hi,

On 07/09/16 17:12, Tom Rini wrote:
> On Wed, Sep 07, 2016 at 04:55:53PM +0100, Andre Przywara wrote:
>> Hi,
>>
>> On 07/09/16 16:48, Hans de Goede wrote:
>>> Hi,
>>>
>>> On 07-09-16 17:18, Andre Przywara wrote:
>>>> Hi,
>>>>
>>>> On 07/09/16 16:13, Hans de Goede wrote:
>>>>> Hi,
>>>>>
>>>>> On 05-09-16 02:32, Andre Przywara wrote:
>>>>>> Some patches to fix the Pine64 support:
>>>>>> The first two patches revert two patches that actually broke booting
>>>>>> Pine64 via the boot0 blob, already in 2016.07.
>>>>>> This has been discussed on IRC before, the commit messages contain
>>>>>> some details on the reasons for the revert. As the intent of those
>>>>>> original fixes was to help the (not yet upstream) SPL support, we don't
>>>>>> loose anything as the Pine64 uses the U-Boot proper only at the moment.
>>>>>>
>>>>>> Patch 3/4 removes the usage of a non-existing config symbol.
>>>>>> Patch 4/4 fixes a compiler warning when compiling sunxi's board.c
>>>>>> with a 64-bit compiler.
>>>>>>
>>>>>> Please apply for the 2016.09 release to allow booting Pine64s with
>>>>>> a recent U-Boot.
>>>>>
>>>>> I've send out a pull-req with patches 1, 3 and 4 yesterday and
>>>>> this has been merged.
>>>>
>>>> Thanks a lot! That's very helpful.
>>>>
>>>> Cheers,
>>>> Andre.
>>>>
>>>> P.S. I have the SPL support with proper sunxi DRAM init mostly working,
>>>> I am fighting with some bugs still (FIT loading related), but I am
>>>> confident that this will be ready for the upcoming merge window.
>>>
>>> Cool, so do we then still need some closed firmware bits, or is everything
>>> open then ?
>>
>> Everything is proper FOSS, thanks to Jens, who took the existing U-Boot
>> H3 DRAM init bits and ported them to support the A64 as well.
>>
>> Also we don't need any boot0img anymore, mksunxiboot works as expected.
>> Appending the U-Boot proper directly to the SPL image works already, but
>> leaves out the ATF and thus SMP :-(
>> So I have improved SPL FIT support to load multiple images: load both
>> U-Boot and ATF, but jump to ATF, which in turn drops to U-Boot.
>> I chose the have the SPL in AArch64 (with a handful of AArch32
>> instructions in the beginning), which greatly simplifies the build
>> process. The drawback is increased code size, but I think we can cope
>> with that.
> 
> Nice!  Will it all also work with FEL mode?  That's how I'm integrating
> sunxi boards into my test farm.  Thanks!

Kind of ;-) Be assured that due to it's convenience FEL is quite
important to me too - especially when hacking on firmware.

I have some code which saves the FEL state before switching to AArch64,
and restores it after having switched back to AArch32 just after the SPL
calls return_to_fel(). That scheme worked with some experimental code (I
saw a UART character written by AArch64 code), but not with the real
SPL, I guess due to some stack trouble (IIRC FEL put some data into SRAM
C on the A64) or some state which the SPL has changed.
I have to revisit this, but wouldn't hold back a post if FEL is still
broken. If I can't fix it myself, I will put it somewhere and leave it
up to the pros to attack this.

Cheers,
Andre.


More information about the U-Boot mailing list