[U-Boot] [PATCH v1 0/8] rockchip: mkimage: refactor rksd/rkspi padding calculation and add dumpimage support

Dr. Philipp Tomsich philipp.tomsich at theobroma-systems.com
Fri May 19 18:44:07 UTC 2017


Heiko,

thanks for the insight into the BROM.
I’ll respin this with part of the change reverted and have Kever test.

Regards,
Philipp.

> On 19 May 2017, at 20:39, Heiko Stuebner <heiko at sntech.de> wrote:
> 
> Hi Philipp,
> 
> Am Mittwoch, 17. Mai 2017, 12:12:51 CEST schrieb Dr. Philipp Tomsich:
>> What are the requirements for BACK_TO_BROM?
>> All I can see about how BACK_TO_BROM works is that it needs to save the register
>> context on the stack for returning to the ROM, but that seems to be only half the story.
>> 
>> Assuming that the header0 structure plays into this, the only significant change there
>> is that I don’t set the 'hdr->init_boot_size’ to the maximum SPL size any longer...
> 
> Which is most likely the problem. back_to_bootrom-images are concatenated
> with the spl in front (init_size) and when returned to the bootrom it
> reads the rest up to init_boot_size into the sdram.
> 
> So ideally we would return that line back to RK_MAX_BOOT_SIZE (512KB).
> Somewhat safe value and boards not using back_to_bootrom, as this value
> really only affects that second stage and not the actual spl loading.
> 
> I'm sadly away from my boardfarm this and next week, so testing bootloader
> on my rk3188 board can only happend after that, but I'm somewhat
> confident that this would solve the problem. Maybe Kever can test that
> meanwhile.
> 
> 
> Heiko
> 
> 
>> 
>> Regards,
>> Philipp.
>> 
>>> On 17 May 2017, at 11:50, Kever Yang <kever.yang at rock-chips.com> wrote:
>>> 
>>> Hi Philipp,
>>> 
>>> This patch makes all the Rockchip SoCs with BACK_TO_BROM enabled can not work,
>>> 
>>> does the size correct for the SPL correct?
>>> 
>>> Thanks,
>>> - Kever
>>> On 04/17/2017 11:47 PM, Philipp Tomsich wrote:
>>>> We support booting both from SD/MMC images and SPI images on the
>>>> RK3399-Q7 for different use-cases (e.g. external boot in development
>>>> from the SD card, internal boot from MMC or SPI depending on whether
>>>> the SPI flash is populated on any given configuration option).
>>>> 
>>>> In getting the SPI image support ready for production, we found a
>>>> few areas that warranted improvements:
>>>> - we had broken SPI bootstrap earlier in the changes introducting
>>>>  boot0-style images for the RK3399 (this needed fixing)
>>>> - in fixing the broken SPI padding calculation, it became apparent
>>>>  that it's best to refactor and document things before we make
>>>>  the same mistake again in the future
>>>> - with both SD/MMC and SPI images being used for various purposes
>>>>  by various people, the wrong image style was inadvertendly used
>>>>  in some tests... so we support for 'dumpimage' (i.e. verify_header
>>>>  and print_header) had to be added to quickly check the image
>>>>  type being handled
>>>> 
>>>> Note that with the refactored calculation of the image-size, we
>>>> don't pad the image to the maximum SPL size any longer, but pad
>>>> SD/MMC to the next 512 byte block (RK_BLK_SIZE) and SPI to the
>>>> next 2K boundary.
>>>> 
>>>> 
>>>> Philipp Tomsich (8):
>>>>  rockchip: mkimage: rkspi: include the header sector in the SPI size
>>>>    calculation
>>>>  rockchip: mkimage: rewrite padding calculation for SD/MMC and SPI
>>>>    images
>>>>  rockchip: mkimage: Update comments for header size
>>>>  rockchip: mkimage: rksd: pad SD/MMC images to a full blocksize
>>>>  rockchip: mkimage: clarify header0 initialisation
>>>>  rockchip: mkimage: play nice with dumpimage
>>>>  rockchip: mkimage: remove placeholder functions from rkimage
>>>>  rockchip: mkimage: add support for verify_header/print_header
>>>> 
>>>> tools/rkcommon.c | 195 ++++++++++++++++++++++++++++++++++++++++++++++++++-----
>>>> tools/rkcommon.h |  29 ++++++++-
>>>> tools/rkimage.c  |  21 +-----
>>>> tools/rksd.c     |  47 +++++---------
>>>> tools/rkspi.c    |  62 +++++++++---------
>>>> 5 files changed, 255 insertions(+), 99 deletions(-)
>>>> 
>>> 
>>> 
>> 
>> 
>> 
> 
> 



More information about the U-Boot mailing list