From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefano Babic Date: Wed, 24 Oct 2018 15:38:46 +0200 Subject: [U-Boot] [PULL] Please pull u-boot-imx In-Reply-To: <20181023145211.GB1032@bill-the-cat> References: <14cd8556-8d61-f80c-3b5d-e36a777ad52b@denx.de> <20181023142933.GA1032@bill-the-cat> <3246d1cf-3abe-8fa0-a551-6fc465d773a1@denx.de> <20181023145211.GB1032@bill-the-cat> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable To: u-boot@lists.denx.de Hi Tom, new PR (and new tag: u-boot-imx-20181024) with the fixes we discussed: - fix build i.MX8 for Travis - fix warnings (Warp) The following changes since commit 0a60a81ba3860946551cb79aa6486aa076e357f3: Kconfig: sandbox: enable cmd_avb and dependencies (2018-10-07 13:34:19 -0400) are available in the Git repository at: git://www.denx.de/git/u-boot-imx.git tags/u-boot-imx-20181024 for you to fetch changes up to cf0f7fde7b2cd3944364c1e70a65603cdd3fa889: imx: mkimage: avoid stop CI when required files not exists (2018-10-24 13:23:36 +0200) ---------------------------------------------------------------- Merged imx8 architecture, fix build for imx8 + warnings ---------------------------------------------------------------- Anatolij Gustschin (3): imx8: cpu: add function for reading FEC MAC from fuse imx8: cpu: add uclass based CPU driver i2c: imx_lpi2c: fix typo and register base address format Bernhard Messerklinger (1): serial: mxc: Add match string for i.mx6 quad/dual lite serial Breno Matheus Lima (7): doc: imx: reorganize i.MX documentation doc: imx: Move SPD related info to the appropriate doc doc: imx: mkimage: reorganize i.MX mkimage documentation doc: imx: Reorganize i.MX SoC common documentation doc: imx: hab: Reorganize High Assurance Boot documentation doc: imx: misc: Reorganize miscellaneous documentation doc: imx: Improve i.MX documentation naming Dan Cimpoca (1): board: ge: bx50v3: fix initialization of i2c bus0 Fabien Lahoudere (1): board: ge: bx50v3: Change maintainer Fabio Estevam (5): pico-imx7d: Make SPL binary fit into 64kB pico-imx7d: Add USB Host support colibri_imx7: prime get_ram_size() using imx_ddr_size() configs: mx7: Remove CONFIG_DBG_MONITOR warp7: MAINTAINERS: Add an entry for warp7_bl33_defconfig Ian Ray (2): board: ge: bx50v3: correct LDB clock board: ge: bx50v3: b{4,6}50v3 modeline Marcel Ziswiler (1): imx: mx7: fix potential overflow in imx_ddr_size() Marek Vasut (3): arm: imx: mx5: Make videoskip available on MX5 arm: mx5: Add LDB clock config code arm: mx5: Add M53Menlo board Otavio Salvador (2): pico-imx6ul, pico-imx7d: Use eMMC user partition by default pico-imx6ul, pico-imx7d: Enable USB and PXE boot support Peng Fan (34): dt-bindings: pinctrl: add i.MX8QXP pads definition dt-bindings: clock: dt-bindings: pinctrl: add i.MX8QXP clocks definition dt-bindings: soc: add i.MX8QXP pm and rsrc definition imx8: add scfw macro definition imx: add Kconfig entry for i.MX8QXP arm: build mach-imx for i.MX8 arm: global_data: add scu_dev for i.MX8 misc: add i.MX8 misc driver misc: imx8: add scfw api impementation imx: boot_mode: Add FLEXSPI boot entry imx8: add imx-regs header file imx8: pins: include i.MX8QXP pin header when CONFIG_IMX8QXP defined imx: add i.MX8 cpu type armv8: add cpu core helper functions imx8: add basic cpu support imx8: add boot device detection imx8: implement mmc_get_env_dev imx8: add mmu and dram related functions imx8: add arch_cpu_init arch_cpu_init_dm imx8: add iomux configuration api imx8: add dummy clock gpio: mxc_gpio: add support for i.MX8 pinctrl: Add pinctrl driver for i.MX8 power: Add power domain driver for i.MX8 clk: imx: add clk driver for i.MX8QXP serial_lpuart: Update lpuart driver to support i.MX8 serial: lpuart: support uclass clk api mmc: fsl_esdhc: add uclass clk support arm: dts: introduce dtsi for i.MX8QXP imx: add i.MX8QXP MEK board support tools: add i.MX8/8X image support arm: imx: include imx8image support imx: imx8qxp_mek: update to build image in U-Boot imx: mkimage: avoid stop CI when required files not exists Rui Miguel Silva (4): imx: mx7: avoid some initialization if low level is skipped optee: adjust dependencies and default values for dram warp7: include: configs: set skip low level init warp7: configs: add bl33 defconfig S=C3=A9bastien Szymanski (1): ARM: opos6ul: make the board boot again Xiaoliang Yang (1): Kconfig: Convert CONFIG_IMX_WATCHDOG to Kconfig Ye Li (2): serial: lpuart: Enable RX and TX FIFO fsl_esdhc: Update usdhc driver to support i.MX8 arch/arm/Kconfig | 8 + arch/arm/Makefile | 2 +- arch/arm/dts/Makefile | 2 + arch/arm/dts/fsl-imx8-ca35.dtsi | 66 +++++++ arch/arm/dts/fsl-imx8dx.dtsi | 499 +++++++++++++++++++++++++++++++++++++++++++++++++++ arch/arm/dts/fsl-imx8dxp.dtsi | 11 ++ arch/arm/dts/fsl-imx8qxp-mek.dts | 246 ++++++++++++++++++++++++++ arch/arm/dts/fsl-imx8qxp.dtsi | 51 ++++++ arch/arm/dts/imx6ul-opos6ul-u-boot.dtsi | 28 +++ arch/arm/dts/imx6ul-opos6ul.dtsi | 2 - arch/arm/dts/imx6ul-opos6uldev-u-boot.dtsi | 24 +++ arch/arm/dts/imx6ul-opos6uldev.dts | 2 - arch/arm/include/asm/arch-imx/cpu.h | 6 + arch/arm/include/asm/arch-imx8/clock.h | 27 +++ arch/arm/include/asm/arch-imx8/gpio.h | 21 +++ arch/arm/include/asm/arch-imx8/imx-regs.h | 46 +++++ arch/arm/include/asm/arch-imx8/imx8-pins.h | 15 ++ arch/arm/include/asm/arch-imx8/iomux.h | 40 +++++ arch/arm/include/asm/arch-imx8/power-domain.h | 15 ++ arch/arm/include/asm/arch-imx8/sci/rpc.h | 158 +++++++++++++++++ arch/arm/include/asm/arch-imx8/sci/sci.h | 88 +++++++++ arch/arm/include/asm/arch-imx8/sci/svc/misc/api.h | 30 ++++ arch/arm/include/asm/arch-imx8/sci/svc/pad/api.h | 57 ++++++ arch/arm/include/asm/arch-imx8/sci/svc/pm/api.h | 44 +++++ arch/arm/include/asm/arch-imx8/sci/svc/rm/api.h | 69 ++++++++ arch/arm/include/asm/arch-imx8/sci/types.h | 220 +++++++++++++++++++++++ arch/arm/include/asm/arch-imx8/sys_proto.h | 19 ++ arch/arm/include/asm/arch-mx5/clock.h | 1 + arch/arm/include/asm/armv8/cpu.h | 26 +++ arch/arm/include/asm/global_data.h | 4 + arch/arm/include/asm/mach-imx/boot_mode.h | 1 + arch/arm/include/asm/mach-imx/sys_proto.h | 3 + arch/arm/mach-imx/Makefile | 26 ++- arch/arm/mach-imx/imx8/Kconfig | 26 +++ arch/arm/mach-imx/imx8/Makefile | 7 + arch/arm/mach-imx/imx8/clock.c | 21 +++ arch/arm/mach-imx/imx8/cpu.c | 646 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ arch/arm/mach-imx/imx8/iomux.c | 43 +++++ arch/arm/mach-imx/mx5/Kconfig | 6 + arch/arm/mach-imx/mx5/clock.c | 29 +++ arch/arm/mach-imx/mx7/ddr.c | 4 + arch/arm/mach-imx/mx7/soc.c | 2 + arch/arm/mach-imx/syscounter.c | 2 + board/freescale/imx8qxp_mek/Kconfig | 14 ++ board/freescale/imx8qxp_mek/MAINTAINERS | 6 + board/freescale/imx8qxp_mek/Makefile | 7 + board/freescale/imx8qxp_mek/README | 55 ++++++ board/freescale/imx8qxp_mek/imx8qxp_mek.c | 170 ++++++++++++++++++ board/freescale/imx8qxp_mek/imximage.cfg | 25 +++ board/freescale/mx8mq_evk/README | 81 +++++++++ board/ge/bx50v3/MAINTAINERS | 2 +- board/ge/bx50v3/bx50v3.c | 38 ++-- board/menlo/m53menlo/Kconfig | 15 ++ board/menlo/m53menlo/MAINTAINERS | 7 + board/menlo/m53menlo/Makefile | 9 + board/menlo/m53menlo/imximage.cfg | 91 ++++++++++ board/menlo/m53menlo/m53menlo.c | 513 +++++++++++++++++++++++++++++++++++++++++++++++++++++ board/technexion/pico-imx7d/pico-imx7d.c | 29 ++- board/toradex/colibri_imx7/colibri_imx7.c | 2 +- board/warp7/MAINTAINERS | 1 + common/image.c | 1 + configs/aristainetos2_defconfig | 1 + configs/aristainetos2b_defconfig | 1 + configs/aristainetos_defconfig | 1 + configs/dh_imx6_defconfig | 1 + configs/display5_defconfig | 1 + configs/display5_factory_defconfig | 1 + configs/ge_bx50v3_defconfig | 1 + configs/imx8qxp_mek_defconfig | 52 ++++++ configs/kp_imx6q_tpc_defconfig | 1 + configs/m53menlo_defconfig | 60 +++++++ configs/mx53ppd_defconfig | 1 + configs/pico-hobbit-imx7d_defconfig | 1 - configs/pico-imx7d_defconfig | 1 - configs/pico-pi-imx7d_defconfig | 1 - configs/tqma6s_wru4_mmc_defconfig | 1 + configs/warp7_bl33_defconfig | 42 +++++ configs/warp7_defconfig | 2 + configs/warp_defconfig | 1 + doc/{README.imx25 =3D> imx/common/imx25.txt} | 0 doc/{README.imx27 =3D> imx/common/imx27.txt} | 0 doc/{README.imx5 =3D> imx/common/imx5.txt} | 0 doc/{README.imx6 =3D> imx/common/imx6.txt} | 25 --- doc/{README.mxs =3D> imx/common/mxs.txt} | 0 doc/imx/hab/habv4/encrypted_boot.txt | 43 +++++ doc/{README.mxc_hab =3D> imx/hab/habv4/secure_boot.txt} | 44 ----- doc/{README.sdp =3D> imx/misc/sdp.txt} | 22 ++- doc/{README.imximage =3D> imx/mkimage/imximage.txt} | 0 doc/{README.mxsimage =3D> imx/mkimage/mxsimage.txt} | 0 drivers/clk/Kconfig | 1 + drivers/clk/Makefile | 1 + drivers/clk/imx/Kconfig | 6 + drivers/clk/imx/Makefile | 5 + drivers/clk/imx/clk-imx8.c | 393 +++++++++++++++++++++++++++++++++++++++++ drivers/gpio/mxc_gpio.c | 30 +++- drivers/i2c/imx_lpi2c.c | 4 +- drivers/misc/Makefile | 1 + drivers/misc/imx8/Makefile | 3 + drivers/misc/imx8/scu.c | 266 ++++++++++++++++++++++++++++ drivers/misc/imx8/scu_api.c | 367 ++++++++++++++++++++++++++++++++++++++ drivers/mmc/fsl_esdhc.c | 34 +++- drivers/pinctrl/nxp/Kconfig | 18 ++ drivers/pinctrl/nxp/Makefile | 2 + drivers/pinctrl/nxp/pinctrl-imx.c | 209 ++++++++++++---------- drivers/pinctrl/nxp/pinctrl-imx.h | 16 ++ drivers/pinctrl/nxp/pinctrl-imx8.c | 40 +++++ drivers/pinctrl/nxp/pinctrl-scu.c | 66 +++++++ drivers/power/domain/Kconfig | 8 +- drivers/power/domain/Makefile | 1 + drivers/power/domain/imx8-power-domain.c | 315 +++++++++++++++++++++++++++++++++ drivers/serial/serial_lpuart.c | 143 ++++++++++++--- drivers/serial/serial_mxc.c | 1 + drivers/watchdog/Kconfig | 7 + include/configs/aristainetos-common.h | 3 - include/configs/cl-som-imx7.h | 2 - include/configs/colibri-imx6ull.h | 1 - include/configs/colibri_imx7.h | 3 - include/configs/dh_imx6.h | 2 - include/configs/display5.h | 2 - include/configs/ge_bx50v3.h | 2 - include/configs/imx8qxp_mek.h | 157 +++++++++++++++++ include/configs/kp_imx6q_tpc.h | 2 - include/configs/m53menlo.h | 246 ++++++++++++++++++++++++++ include/configs/mx53ppd.h | 2 - include/configs/mx7dsabresd.h | 1 - include/configs/pico-imx6ul.h | 6 +- include/configs/pico-imx7d.h | 6 +- include/configs/tqma6_wru4.h | 2 - include/configs/warp.h | 2 - include/configs/warp7.h | 11 ++ include/dt-bindings/clock/imx8qxp-clock.h | 583 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ include/dt-bindings/pinctrl/pads-imx8qxp.h | 757 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++= +++ include/dt-bindings/soc/imx8_pd.h | 188 ++++++++++++++++++++ include/dt-bindings/soc/imx_rsrc.h | 557 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ include/fsl_lpuart.h | 2 +- include/image.h | 1 + include/imx8image.h | 273 ++++++++++++++++++++++++++++ lib/optee/Kconfig | 8 +- scripts/config_whitelist.txt | 2 - tools/Makefile | 1 + tools/imagetool.h | 1 + tools/imx8_cntr_image.sh | 32 ++++ tools/imx8image.c | 961 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++= ++++++++++++++++++++++++ tools/mkimage.c | 7 + 144 files changed, 9491 insertions(+), 282 deletions(-) create mode 100644 arch/arm/dts/fsl-imx8-ca35.dtsi create mode 100644 arch/arm/dts/fsl-imx8dx.dtsi create mode 100644 arch/arm/dts/fsl-imx8dxp.dtsi create mode 100644 arch/arm/dts/fsl-imx8qxp-mek.dts create mode 100644 arch/arm/dts/fsl-imx8qxp.dtsi create mode 100644 arch/arm/dts/imx6ul-opos6ul-u-boot.dtsi create mode 100644 arch/arm/dts/imx6ul-opos6uldev-u-boot.dtsi create mode 100644 arch/arm/include/asm/arch-imx8/clock.h create mode 100644 arch/arm/include/asm/arch-imx8/gpio.h create mode 100644 arch/arm/include/asm/arch-imx8/imx-regs.h create mode 100644 arch/arm/include/asm/arch-imx8/imx8-pins.h create mode 100644 arch/arm/include/asm/arch-imx8/iomux.h create mode 100644 arch/arm/include/asm/arch-imx8/power-domain.h create mode 100644 arch/arm/include/asm/arch-imx8/sci/rpc.h create mode 100644 arch/arm/include/asm/arch-imx8/sci/sci.h create mode 100644 arch/arm/include/asm/arch-imx8/sci/svc/misc/api.h create mode 100644 arch/arm/include/asm/arch-imx8/sci/svc/pad/api.h create mode 100644 arch/arm/include/asm/arch-imx8/sci/svc/pm/api.h create mode 100644 arch/arm/include/asm/arch-imx8/sci/svc/rm/api.h create mode 100644 arch/arm/include/asm/arch-imx8/sci/types.h create mode 100644 arch/arm/include/asm/arch-imx8/sys_proto.h create mode 100644 arch/arm/include/asm/armv8/cpu.h create mode 100644 arch/arm/mach-imx/imx8/Kconfig create mode 100644 arch/arm/mach-imx/imx8/Makefile create mode 100644 arch/arm/mach-imx/imx8/clock.c create mode 100644 arch/arm/mach-imx/imx8/cpu.c create mode 100644 arch/arm/mach-imx/imx8/iomux.c create mode 100644 board/freescale/imx8qxp_mek/Kconfig create mode 100644 board/freescale/imx8qxp_mek/MAINTAINERS create mode 100644 board/freescale/imx8qxp_mek/Makefile create mode 100644 board/freescale/imx8qxp_mek/README create mode 100644 board/freescale/imx8qxp_mek/imx8qxp_mek.c create mode 100644 board/freescale/imx8qxp_mek/imximage.cfg create mode 100644 board/freescale/mx8mq_evk/README create mode 100644 board/menlo/m53menlo/Kconfig create mode 100644 board/menlo/m53menlo/MAINTAINERS create mode 100644 board/menlo/m53menlo/Makefile create mode 100644 board/menlo/m53menlo/imximage.cfg create mode 100644 board/menlo/m53menlo/m53menlo.c create mode 100644 configs/imx8qxp_mek_defconfig create mode 100644 configs/m53menlo_defconfig create mode 100644 configs/warp7_bl33_defconfig rename doc/{README.imx25 =3D> imx/common/imx25.txt} (100%) rename doc/{README.imx27 =3D> imx/common/imx27.txt} (100%) rename doc/{README.imx5 =3D> imx/common/imx5.txt} (100%) rename doc/{README.imx6 =3D> imx/common/imx6.txt} (73%) rename doc/{README.mxs =3D> imx/common/mxs.txt} (100%) create mode 100644 doc/imx/hab/habv4/encrypted_boot.txt rename doc/{README.mxc_hab =3D> imx/hab/habv4/secure_boot.txt} (68%) rename doc/{README.sdp =3D> imx/misc/sdp.txt} (82%) rename doc/{README.imximage =3D> imx/mkimage/imximage.txt} (100%) rename doc/{README.mxsimage =3D> imx/mkimage/mxsimage.txt} (100%) create mode 100644 drivers/clk/imx/Kconfig create mode 100644 drivers/clk/imx/Makefile create mode 100644 drivers/clk/imx/clk-imx8.c create mode 100644 drivers/misc/imx8/Makefile create mode 100644 drivers/misc/imx8/scu.c create mode 100644 drivers/misc/imx8/scu_api.c create mode 100644 drivers/pinctrl/nxp/pinctrl-imx8.c create mode 100644 drivers/pinctrl/nxp/pinctrl-scu.c create mode 100644 drivers/power/domain/imx8-power-domain.c create mode 100644 include/configs/imx8qxp_mek.h create mode 100644 include/configs/m53menlo.h create mode 100644 include/dt-bindings/clock/imx8qxp-clock.h create mode 100644 include/dt-bindings/pinctrl/pads-imx8qxp.h create mode 100644 include/dt-bindings/soc/imx8_pd.h create mode 100644 include/dt-bindings/soc/imx_rsrc.h create mode 100644 include/imx8image.h create mode 100755 tools/imx8_cntr_image.sh create mode 100644 tools/imx8image.c On 23/10/18 16:52, Tom Rini wrote: > On Tue, Oct 23, 2018 at 04:42:53PM +0200, Stefano Babic wrote: >> Hi Tom, >> >> On 23/10/18 16:29, Tom Rini wrote: >>> On Tue, Oct 23, 2018 at 09:52:58AM +0200, Stefano Babic wrote: >>> >>>> Hi Tom, >>>> >>>> please pull from u-boot-imx (tag: u-boot-imx-20181023) thanks ! >>>> >>>> The tree contains fixes for i.MX6 and improvement in docs, but the most >>>> important part is the introduction of the i.MX8 architecture (thanks to >>>> Peng and Antolji for their work !). Build on Travis reported no error, >>>> but I get a build issue with the VF610 boards - this will be require a >>>> fix in next days. i.MX8 can be built following exactly the instruction >>>> of the README file (NXP firmware requires to acknowledge the EULA). >>> >>> I know the i.MX8 stuff has been kicking around for a while so.. OK, yes, >>> I won't be too upset about pushing it so late in the cycle. But, my >>> travis builds do see an error: >>> https://travis-ci.org/trini/u-boot/jobs/445069389#L1038 which is "Fail >>> open first container file ahab-container.img" for imx8qxp_mek and I also >>> see that locally. >> >> I know: to build i.MX8, we need to download external firmware. In fact, >> we have to provide the files according to board/freescale/mx8mq_evk/READ= ME. >> >> Near "imx-atf" (this is not a problem, loaded and built), we need two >> additional "closed" firmware, that is firmware-imx (currently, 7.6) and >> imx-sc-firmware. They can be downloaded but they underly the acknowledge >> of NXP's EULA. They are self extracting scripts and we could hack it to >> have an automatic build, but I *guess* this breaks the license. I do not >> know if we are allowed to do this, and both of these firmwares do not >> provide a way to "implicitely" skip the EULA as we do in OE by setting a >> variable in local.conf. >> >>> This feels like the same class of error that we have >>> to deal with on other AArch64 platforms, namely of throwing a user >>> visible error that what they just built will not boot due to lack of >>> other files. >> >> I am unsure: mkimage packs all files together as part of the build, when >> they are available. User cannot even try to boot, because the build >> stops if these files are not available. The error at mkimage step is >> saying us that build is not complete due to missing files (atf, >> firmware-imx and imx-sc-firmware). >=20 > Yup, this is the same problem we have in other platforms. Take a look > at board/sunxi/mksunxi_fit_atf.sh or tools/k3_fit_atf.sh for what we do > on some other platforms so that CI build completes but it's clear to the > end user that the binary will not work and what they need to do / read > to get a functional build. There's also > arch/arm/mach-omap2/config_secure.mk as an example of all the fun we > have for building the secure TI platforms that more closely follow the > problem you have here, namely of needing EULA'd packages (and in those > cases, also NDA, iirc) installed to complete a functional build. I > think you'll need to do something closer to the xxxx_fit_atf.sh scripts > in this case, to check for required blobs and if not found, not call > mkimage and echo something loud and visible to the user. >=20 Regards, Stefano --=20 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D 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 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D