[U-Boot] [PATCH v4 00/15] i.MX6: Engicam i.CoreM6/Is.IoT eMMC boot support

Stefano Babic
2017-02-27T14:41:37Z

Hi Sebastien,

On 27/02/2017 15:28, SÃ©bastien Szymanski wrote:
> Hello,
>
> On 02/26/2017 12:54 PM, Stefano Babic wrote:
>> On 24/02/2017 11:15, Jagan Teki wrote:
>>> From: Jagan Teki <jagan@amarulasolutions.com>
>>>
>>> Changes for v3:
>>> - Rebase on master
>>> - Fix checkpatch.pl Warnings
>>> - Add IMX6_BMODE_UART macro for uart bootmode
>>> - Remove value assignment in enum, since all enum list is order
>>>
>>> Changes for v3:
>>> - Update IMX6_BMODE_* shift macros with real number instead of bitops
>>> - %s/IMX6_BMODE_SERIAL/IMX6_BMODE_SERIAL_ROM
>>> - Assign enums with numbers so-that it can easy to see same in RM
>>> - Update board MAINTAINERS file with imx6ul-isiot-emmc.dts file
>>>
>>> Changes for v2:
>>> - Rebase on master
>>> - Add Is.IoT eMMC boot patches
>>> - Add few mmc env patches on board
>>>
>>> Jagan Teki (15):
>>> imx6: Add imx6_src_get_boot_mode
>>> imx: spl: Update NAND bootmode detection bit
>>> imx: Use IMX6_BMODE_* macros instead of numericals
>>> imx6: Add src_base structure define macro
>>> imx6: isiotmx6ul: Update SPL board boot order for eMMC
>>> i.MX6UL: isiot: Add eMMC boot support
>>> i.MX6UL: isiot: Add modeboot env via board_late_init
>>> i.MX6UL: isiot: Add mmc_late_init
>>> i.MX6UL: isiot: Switch the mmc env based on devno
>>> arm: dts: imx6qdl-icore-rqs: Add eMMC node
>>> imx6: icorem6_rqs: Update SPL board boot order for eMMC
>>> imx6: icorem6_rqs: Add eMMC boot support
>>> i.MX6Q: icorem6_rqs: Add modeboot env via board_late_init
>>> i.MX6Q: icorem6_rqs: Add mmc_late_init
>>> i.MX6Q: isiot: Switch the mmc env based on devno
>>>
>>> arch/arm/dts/Makefile | 1 +
>>> arch/arm/dts/imx6qdl-icore-rqs.dtsi | 22 ++++++
>>> arch/arm/dts/imx6ul-isiot-emmc.dts | 77 +++++++++++++++++++++
>>> arch/arm/imx-common/init.c | 10 +++
>>> arch/arm/imx-common/spl.c | 49 ++++++++------
>>> arch/arm/include/asm/arch-mx6/imx-regs.h | 2 +
>>> arch/arm/include/asm/imx-common/sys_proto.h | 47 +++++++++++++
>>> board/engicam/icorem6_rqs/icorem6_rqs.c | 96 +++++++++++++++++++++++++-
>>> board/engicam/isiotmx6ul/MAINTAINERS | 2 +
>>> board/engicam/isiotmx6ul/isiotmx6ul.c | 101 +++++++++++++++++++++++++++-
>>> configs/imx6dl_icore_rqs_mmc_defconfig | 1 +
>>> configs/imx6q_icore_rqs_mmc_defconfig | 1 +
>>> configs/imx6ul_isiot_emmc_defconfig | 40 +++++++++++
>>> configs/imx6ul_isiot_mmc_defconfig | 1 +
>>> configs/imx6ul_isiot_nand_defconfig | 1 +
>>> include/configs/imx6qdl_icore_rqs.h | 36 +++++-----
>>> include/configs/imx6ul_isiot.h | 40 +++++------
>>> 17 files changed, 462 insertions(+), 65 deletions(-)
>>> create mode 100644 arch/arm/dts/imx6ul-isiot-emmc.dts
>>> create mode 100644 configs/imx6ul_isiot_emmc_defconfig
>>>
>>
>> Applied to u-boot-imx, thanks !
>
> The dts files fail to build:
>
> Error: ./arch/arm/dts/imx6ul-isiot.dtsi:43.1-9 syntax error
> FATAL ERROR: Unable to parse input tree
> scripts/Makefile.lib:322: recipe for target
> 'arch/arm/dts/imx6ul-isiot-mmc.dtb' failed
> make[2]: *** [arch/arm/dts/imx6ul-isiot-mmc.dtb] Error 1
> make[2]: *** Waiting for unfinished jobs....
> Error: ./arch/arm/dts/imx6ul-isiot.dtsi:43.1-9 syntax error
> FATAL ERROR: Unable to parse input tree
> scripts/Makefile.lib:322: recipe for target
> 'arch/arm/dts/imx6ul-isiot-emmc.dtb' failed
> make[2]: *** [arch/arm/dts/imx6ul-isiot-emmc.dtb] Error 1
> Error: ./arch/arm/dts/imx6ul-isiot.dtsi:43.1-9 syntax error
> FATAL ERROR: Unable to parse input tree
> scripts/Makefile.lib:322: recipe for target
> 'arch/arm/dts/imx6ul-isiot-nand.dtb' failed
> make[2]: *** [arch/arm/dts/imx6ul-isiot-nand.dtb] Error 1
> dts/Makefile:36: recipe for target 'arch-dtbs' failed
> make[1]: *** [arch-dtbs] Error 2
> Makefile:860: recipe for target 'dts/dt.dtb' failed
> make: *** [dts/dt.dtb] Error 2
>
> I think that's because there is '/dts-v1/;' in the imx6ul-isiot.dtsi
> file and in imx6ul-isiot-*.dts files.
>

I cannot confirm this - maybe this depends on dtc compiler. With current
DTC from git, everything is compiled.

> With this change:
>
> diff --git a/arch/arm/dts/imx6ul-isiot.dtsi b/arch/arm/dts/imx6ul-isiot.dtsi
> index 346079a..9a3c35c 100644
> --- a/arch/arm/dts/imx6ul-isiot.dtsi
> +++ b/arch/arm/dts/imx6ul-isiot.dtsi
> @@ -40,8 +40,6 @@
> * OTHER DEALINGS IN THE SOFTWARE.
> */
>
> -/dts-v1/;

Anyway, this entry is common to mopst (or all) DTS file. Try simply to
grep, and you see that all DTS have it.

Best regards,
Stefano Babic

--
Meet DENX at the Embedded World Trade Show
14 Mar - 16 Mar 2017, Nuremberg Trade Fair Centre, Hall 4, Booth 581
--
=====================================================================
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================