[U-Boot] [PATCH 0/2] Add sdram capacity auto detect for rk3288

Sandy Patterson apatterson at sightlogix.com
Thu Sep 15 14:00:19 CEST 2016


Hi Kever,

With regards to the SPL size issue, I believe that the
CONFIG_ROCKCHIP_SPL_BACK_TO_BROM option should work with
all of the rk3288 boards. So if your patch causes unbootable SPL's because
they're too big, then you should probably enable the BROM macro (and
disable OF_PLATDATA).

Firefly uses a different method to shrink the SPL which causes a bunch of
changes
throughout the codebase. This patch would need to be applied to the
OF_PLATDATA
sections for firefly to work.

Vagrant,

An alternative for you might be to disable OF_PLATDATA for firefly and
enable BACK_TO_BROM.
You may not be getting any output because you didn't modify your burning
process.
See the README.rockchip section on CONFIG_ROCKCHIP_SPL_BACK_TO_BROM
for details, but you have to dd your images slightly differently with this
macro enabled.

Also, you might get more info from Ziyuan's DEBUG advice.

Sandy Patterson


On Sun, Sep 11, 2016 at 10:01 PM, Ziyuan Xu <xzy.xu at rock-chips.com> wrote:

> hi Vagrant,
>
>
>
> On 2016年09月11日 03:01, Vagrant Cascadian wrote:
>
>> On 2016-09-10, Ziyuan Xu wrote:
>>
>>> On 2016年09月09日 03:28, Vagrant Cascadian wrote:
>>>
>>>> On 2016-09-08, Kever Yang wrote:
>>>>
>>>>> The rk3288 spl size is very close to 32KB while the rk3288 bootrom
>>>>> has the limitation of maximum size of SPL is 32KB. After apply this
>>>>> patch, the SPL size will exceed 32KB if we do not enable macro
>>>>> CONFIG_ROCKCHIP_SPL_BACK_TO_BROM.
>>>>>
>>>> With CONFIG_ROCKCHIP_SPL_BACK_TO_BROM=y, it fails to boot with no
>> output
>> on the console.
>>
>>
>> This patch has test with 2GB DDR3 and 2GB/4GB LPDDR3.
>>>>>
>>>> Thanks for the patch!
>>>>
>>>> Unfortunately, fails to build the firefly-rk3288 target, using
>>>> arm-linux-gnueabihf-gcc (Debian 6.1.1-9) 6.1.1 20160705, applied to
>>>> u-boot master 01c5075506afcb7a74e0db8600af8979f45881b5:
>>>>
>>>>     CC      spl/arch/arm/mach-rockchip/rk3288/sdram_rk3288.o
>>>> arch/arm/mach-rockchip/rk3288/sdram_rk3288.c: In function
>>>>     'conv_of_platdata':
>>>> arch/arm/mach-rockchip/rk3288/sdram_rk3288.c:1042:30: error: 'struct
>>>>     dtd_rockchip_rk3288_dmc' has no member named
>>>> 'rockchip_num_channels';
>>>>     did you mean 'rockchip_noc'?
>>>>     plat->num_channels = of_plat->rockchip_num_channels;
>>>>
>>> -       plat->num_channels = of_plat->rockchip_num_channels;
>>> +       plat->num_channels = 2;
>>>
>>> firefly-rk3288 deploy CONFIG_OF_PLATDATA,  driver read platform data
>>> from include/generated/dt-structs.h which is generated according to dts
>>> file.
>>> Please try above change.
>>>
>> With this change, it builds, but it hangs at boot:
>>
>>    U-Boot SPL 2016.09-rc2+dfsg1-2~20160910~6 (Sep 10 2016 - 18:51:28)
>>    Trying to boot from MMC1
>>
>>
>>    U-Boot 2016.09-rc2+dfsg1-2~20160910~6 (Sep 10 2016 - 18:51:28 +0000)
>>
>>    Model: Firefly-RK3288
>>    DRAM:
>>
>
> Could you help to add DEBUG macro in common.h like:
> #indef CONFIG_SPL_BUILD
> #define DEBUG
> #endif
>
> So that we can figure out where it is.
>
>
>
>> This is on a firefly with 2GB of ram. I also have one with 4GB of ram,
>> hence my interest in this patch series!
>>
>>
>> live well,
>>    vagrant
>>
>
>
>


More information about the U-Boot mailing list