[PATCH] rockchip: rk3399: boot_devices: fix eMMC node name

Quentin Schulz quentin.schulz at theobroma-systems.com
Fri Aug 12 12:34:27 CEST 2022


Hi all,

Gentle ping.

Cheers,
Quentin

On 7/29/22 02:32, Art Nikpal wrote:
> On Mon, Jul 18, 2022 at 5:19 PM Quentin Schulz
> <quentin.schulz at theobroma-systems.com> wrote:
>>
>> On 7/11/22 20:22, Xavier Drudis Ferran wrote:
>>> El Mon, Jul 11, 2022 at 04:15:33PM +0200, Quentin Schulz deia:
>>>> From: Quentin Schulz <quentin.schulz at theobroma-systems.com>
>>>>
>>>> When idbloader.img is flashed on the eMMC, the SPL still tries to load
>>>> from SPI-NOR first.
>>>>
>>>> This is due to an incorrect look-up in the Device Tree. Since commit
>>>> 822556a93459 ("arm: dts: sync the Rockhip 3399 SoCs from Linux"), the
>>>> node name (but not label) changed from sdhci at fe330000 to mmc at fe330000
>>>> meaning U-Boot SPL is not looking for the correct node name anymore and
>>>> fails to find the "same-as-spl" node when eMMC is the medium from which
>>>> the SPL booted.
>>>>
>>>
>>> Yes, I also saw that. I changed and tested it at some time, but since there
>>> were other changes, I hesitate to send a Tested by for your patch. FWIW:
>>>
>>> Reviewed-by: Xavier Drudis Ferran <xdrudis at tinet.cat>
>>>
>>>
>>>> Fixes: 822556a93459 ("arm: dts: sync the Rockhip 3399 SoCs from Linux")
>>>> Cc: Quentin Schulz <foss+uboot at 0leil.net>
>>>> Signed-off-by: Quentin Schulz <quentin.schulz at theobroma-systems.com>
>>>> ---
>>>>
>>>> Sorry for resend, was not yet subscribed.
>>>>
>>>>    arch/arm/mach-rockchip/rk3399/rk3399.c | 4 ++--
>>>>    1 file changed, 2 insertions(+), 2 deletions(-)
>>>>
>>>> diff --git a/arch/arm/mach-rockchip/rk3399/rk3399.c b/arch/arm/mach-rockchip/rk3399/rk3399.c
>>>> index 01a05599cd..de11a3fa30 100644
>>>> --- a/arch/arm/mach-rockchip/rk3399/rk3399.c
>>>> +++ b/arch/arm/mach-rockchip/rk3399/rk3399.c
>>>> @@ -27,7 +27,7 @@ DECLARE_GLOBAL_DATA_PTR;
>>>>    #define GRF_BASE   0xff770000
>>>>
>>>>    const char * const boot_devices[BROM_LAST_BOOTSOURCE + 1] = {
>>>> -    [BROM_BOOTSOURCE_EMMC] = "/sdhci at fe330000",
>>>> +    [BROM_BOOTSOURCE_EMMC] = "/mmc at fe330000",
>>>>       [BROM_BOOTSOURCE_SPINOR] = "/spi at ff1d0000/flash at 0",
>>>>       [BROM_BOOTSOURCE_SD] = "/mmc at fe320000",
>>>>    };
>>>> @@ -181,7 +181,7 @@ const char *spl_decode_boot_device(u32 boot_device)
>>>>               const char *ofpath;
>>>>       } spl_boot_devices_tbl[] = {
>>>>               { BOOT_DEVICE_MMC1, "/mmc at fe320000" },
>>>> -            { BOOT_DEVICE_MMC2, "/sdhci at fe330000" },
>>>> +            { BOOT_DEVICE_MMC2, "/mmc at fe330000" },
>>>>               { BOOT_DEVICE_SPI, "/spi at ff1d0000" },
>>>
>>> Not related to this patch, but I also changed "/spi at ff1d0000" -> "/spi at ff1d0000/flash at 0".
>>> Not sure whether it needs to be different in both arrays in some case for some reason.
>>>
>>
> 
> please apply this
> Tested-by: Lapkin Artem <email2tema at gmail.com>
> 
>> Thanks for the heads up, it seems that our board was the only (upstream)
>> one impacted by this oversight because it's the only one reading
>> u-boot,spl-boot-device DT property that is set using this table.
>>
>> See patch here:
>> https://urldefense.proofpoint.com/v2/url?u=https-3A__lore.kernel.org_u-2Dboot_20220715151552.953654-2D2-2Dfoss-2Buboot-400leil.net_&d=DwIBaQ&c=_sEr5x9kUWhuk4_nFwjJtA&r=LYjLexDn7rXIzVmkNPvw5ymA1XTSqHGq8yBP6m6qZZ4njZguQhZhkI_-172IIy1t&m=TsF8K1B_cl2VOPRkkGPtRpzBQKwwn-bDUpvuJK5HdOqfnZC1LdVxMACHi1R6b3NT&s=9cXes6CWGj1g_BMo_Ph2Hm6nlBm6iIswzF64hEuvnBg&e=
>>
>> You can add your Suggested-by: I forgot to add it before sending.
>>
> 
> please apply this too, i have send same patch for right spi flash node
> name before
> 
> Suggested-by: Lapkin Artem <email2tema at gmail.com>
> Tested-by: Lapkin Artem <email2tema at gmail.com>
> 
>> Thanks!
>> Quentin


More information about the U-Boot mailing list