[U-Boot] [PULL] Please pull u-boot-imx

Stefano Babic
2018-10-25T08:37:21Z

Hi Tom,

please just wait a little for this. Fix for i.MX8 is still WIP, and now
it is in test. I will send a new PR later.

Thanks,
Stefano

On 24/10/18 15:38, Stefano Babic wrote:
> 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Ã©bastien 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 => imx/common/imx25.txt} | 0
> doc/{README.imx27 => imx/common/imx27.txt} | 0
> doc/{README.imx5 => imx/common/imx5.txt} | 0
> doc/{README.imx6 => imx/common/imx6.txt} | 25 ---
> doc/{README.mxs => imx/common/mxs.txt} | 0
> doc/imx/hab/habv4/encrypted_boot.txt | 43 +++++
> doc/{README.mxc_hab => imx/hab/habv4/secure_boot.txt} | 44 -----
> doc/{README.sdp => imx/misc/sdp.txt} | 22 ++-
> doc/{README.imximage => imx/mkimage/imximage.txt} | 0
> doc/{README.mxsimage => 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 => imx/common/imx25.txt} (100%)
> rename doc/{README.imx27 => imx/common/imx27.txt} (100%)
> rename doc/{README.imx5 => imx/common/imx5.txt} (100%)
> rename doc/{README.imx6 => imx/common/imx6.txt} (73%)
> rename doc/{README.mxs => imx/common/mxs.txt} (100%)
> create mode 100644 doc/imx/hab/habv4/encrypted_boot.txt
> rename doc/{README.mxc_hab => imx/hab/habv4/secure_boot.txt} (68%)
> rename doc/{README.sdp => imx/misc/sdp.txt} (82%)
> rename doc/{README.imximage => imx/mkimage/imximage.txt} (100%)
> rename doc/{README.mxsimage => 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/README.
>>>
>>> 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).
>>
>> 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.
>>
>
> Regards,
> Stefano
>

--
=====================================================================
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
=====================================================================