Problem on imx: add rom api support on imx8mn
Peng Fan (OSS)
peng.fan at oss.nxp.com
Thu Jul 8 09:12:35 CEST 2021
On 2021/7/4 1:24, Michael Nazzareno Trimarchi wrote:
> Hi all
>
> I have some problems that I have understood and fixed but I can not
> explain. Right now I have on imx8mn that can boot from boot0 or boot1
> partition after remove
> a condition in the is_boot_from_stream_device
>
> This is a boot from mmcblk0boot0 with some debug
>
> U-Boot SPL 2020.04-5.4.70-2.3.2+gf3bcbdfc62 (Jul 03 2021 - 17:00:27 +0000)
> power_bd71837_init
> DDRINFO: start DRAM init
> DDRINFO: DRAM rate 1600MTS
> DDRINFO:ddrphy calibration done
> DDRINFO: ddrmix config done
> Normal Boot
> Trying to boot from BOOTROM
> ROM API interface 2 from boot 131073
>
> Interface is 2 MMC and boot is 131073 and according to this
>
> static int is_boot_from_stream_device(u32 boot)
> +{
> + u32 interface;
> +
> + interface = boot >> 16;
> + if (interface >= BT_DEV_TYPE_USB)
> + return 1;
> +
> + if (interface == BT_DEV_TYPE_MMC && (boot & 1))
> + return 1;
> +
> + return 0;
> +}
>
> means a stream interface but it does not boot.
>
> Boot from boot1 give 131072 that is boot1 this let device boot because
Who gives 131073? Boot from boot1, you mean emmc boot partition0?
> is_boot_from_stream_device is 0 and
> romapi use spl_romapi_load_image_seekable
>
> Remove boot & 1 condition let me boot from mmcblk0boot0 and
> mmcblk0boot1 without any problem
Have you enabled emmc fastboot in fuse?
boot & 1 is checking emmc fastboot. emmc fastboot mode is actually
stream device. If fastboot mode enabled, you need burn your
flash.bin into offset 0. Not 32KB offset.
Regards,
Peng.
>
> mmc partconf 0
> EXT_CSD[179], PARTITION_CONFIG:
> BOOT_ACK: 0x0
> BOOT_PARTITION_ENABLE: 0x1
> PARTITION_ACCESS: 0x0
>
> and the board was fused already.
>
> Any idea why?
>
> Michael
>
More information about the U-Boot
mailing list