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

Stefano Babic
2018-10-24T13:38:46Z

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