[U-Boot] [PATCH 00/23] imx: add i.MX8M support and i.MX8MQ EVK
Peng Fan
van.freenix at gmail.com
Wed Nov 29 02:42:54 UTC 2017
Hi Diego,
On Tue, Nov 28, 2017 at 02:42:20PM -0200, Diego Dorta wrote:
>Hi Peng Fan,
>
>2017-11-28 10:31 GMT-02:00 Peng Fan <peng.fan at nxp.com>:
>> This patchset is to add i.MX8M and i.MX8MQ-EVK support
>>
>> patch: "power: pmic.h: include dm/ofnode.h" and
>> "power: pmic/regulator allow dm be omited by SPL" is previously reviewed
>> in mailist to not merged. Pick it up.
>>
>> The board support is a large patch because of the ddr related code.
>> If it is not good, please first review/pick-up other patches if they
>> are ok.
>>
>
>I applied your patches and I am facing the following errors:
I missed to add this after I cleanup patches.
diff --git a/arch/arm/mach-imx/Makefile b/arch/arm/mach-imx/Makefile
index efa2056e09..5ad17cb7fb 100644
--- a/arch/arm/mach-imx/Makefile
+++ b/arch/arm/mach-imx/Makefile
@@ -135,3 +135,4 @@ obj-$(CONFIG_MX6) += mx6/
obj-$(CONFIG_MX7) += mx7/
obj-$(CONFIG_ARCH_MX7ULP) += mx7ulp/
+obj-$(CONFIG_MX8M) += mx8m/
I'll add this in V2.
Thanks,
Peng.
>
>LD u-boot
>arch/arm/lib/built-in.o: In function `do_reset':
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/arch/arm/lib/reset.c:39:
>undefined reference to `reset_cpu'
>arch/arm/cpu/armv8/built-in.o: In function `count_required_pts':
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/arch/arm/cpu/armv8/cache_v8.c:275:
>undefined reference to `mem_map'
>/usr/bin/aarch64-linux-gnu-ld.bfd: arch/arm/cpu/armv8/built-in.o:
>relocation R_AARCH64_ADR_PREL_PG_HI21 against external symbol
>`mem_map' can not be used when making a shared object; recompile with
>-fPIC
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/arch/arm/cpu/armv8/cache_v8.c:275:
>undefined reference to `mem_map'
>arch/arm/cpu/armv8/built-in.o: In function `get_tcr':
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/arch/arm/cpu/armv8/cache_v8.c:46:
>undefined reference to `mem_map'
>/usr/bin/aarch64-linux-gnu-ld.bfd: arch/arm/cpu/armv8/built-in.o:
>relocation R_AARCH64_ADR_PREL_PG_HI21 against external symbol
>`mem_map' can not be used when making a shared object; recompile with
>-fPIC
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/arch/arm/cpu/armv8/cache_v8.c:46:
>undefined reference to `mem_map'
>arch/arm/cpu/armv8/built-in.o: In function `setup_pgtables':
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/arch/arm/cpu/armv8/cache_v8.c:376:
>undefined reference to `mem_map'
>/usr/bin/aarch64-linux-gnu-ld.bfd: arch/arm/cpu/armv8/built-in.o:
>relocation R_AARCH64_ADR_PREL_PG_HI21 against external symbol
>`mem_map' can not be used when making a shared object; recompile with
>-fPIC
>arch/arm/cpu/armv8/built-in.o:/home/diego/codes/nxp/bootloader/teste/u-boot-imx/arch/arm/cpu/armv8/cache_v8.c:376:
>more undefined references to `mem_map' follow
>arch/arm/mach-imx/built-in.o: In function `imx_iomux_v3_setup_pad':
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/arch/arm/mach-imx/iomux-v3.c:63:
>undefined reference to `get_cpu_rev'
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/arch/arm/mach-imx/iomux-v3.c:63:
>undefined reference to `get_cpu_rev'
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/arch/arm/mach-imx/iomux-v3.c:63:
>undefined reference to `get_cpu_rev'
>arch/arm/mach-imx/built-in.o: In function `print_cpuinfo':
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/arch/arm/mach-imx/cpu.c:187:
>undefined reference to `get_cpu_rev'
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/arch/arm/mach-imx/cpu.c:209:
>undefined reference to `mxc_get_clock'
>board/freescale/mx8mq_evk/built-in.o: In function `board_qspi_init':
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/board/freescale/mx8mq_evk/mx8mq_evk.c:54:
>undefined reference to `set_clk_qspi'
>board/freescale/mx8mq_evk/built-in.o: In function `board_early_init_f':
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/board/freescale/mx8mq_evk/mx8mq_evk.c:70:
>undefined reference to `set_wdog_reset'
>board/freescale/mx8mq_evk/built-in.o: In function `dram_init':
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/board/freescale/mx8mq_evk/mx8mq_evk.c:80:
>undefined reference to `rom_pointer'
>/usr/bin/aarch64-linux-gnu-ld.bfd:
>board/freescale/mx8mq_evk/built-in.o: relocation
>R_AARCH64_ADR_PREL_PG_HI21 against external symbol `rom_pointer' can
>not be used when making a shared object; recompile with -fPIC
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/board/freescale/mx8mq_evk/mx8mq_evk.c:80:
>undefined reference to `rom_pointer'
>board/freescale/mx8mq_evk/built-in.o: In function `setup_fec':
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/board/freescale/mx8mq_evk/mx8mq_evk.c:112:
>undefined reference to `set_clk_enet'
>cmd/built-in.o: In function `do_fdt':
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/cmd/fdt.c:210:
>undefined reference to `ft_system_setup'
>common/built-in.o: In function `image_setup_libfdt':
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/common/image-fdt.c:488:
>undefined reference to `ft_system_setup'
>drivers/built-in.o: In function `prepare_access':
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/drivers/misc/mxc_ocotp.c:181:
>undefined reference to `get_cpu_rev'
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/drivers/misc/mxc_ocotp.c:181:
>undefined reference to `get_cpu_rev'
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/drivers/misc/mxc_ocotp.c:189:
>undefined reference to `enable_ocotp_clk'
>drivers/built-in.o: In function `set_timing':
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/drivers/misc/mxc_ocotp.c:279:
>undefined reference to `mxc_get_clock'
>drivers/built-in.o: In function `fsl_esdhc_probe':
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/drivers/mmc/fsl_esdhc.c:1114:
>undefined reference to `mxc_get_clock'
>drivers/net/built-in.o: In function `fec_mii_setspeed':
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/drivers/net/fec_mxc.c:140:
>undefined reference to `imx_get_fecclk'
>drivers/net/built-in.o: In function `fec_get_hwaddr':
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/drivers/net/fec_mxc.c:353:
>undefined reference to `imx_get_mac_from_fuse'
>drivers/net/built-in.o: In function `fecmxc_init':
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/drivers/net/fec_mxc.c:567:
>undefined reference to `get_cpu_rev'
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/drivers/net/fec_mxc.c:567:
>undefined reference to `get_cpu_rev'
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/drivers/net/fec_mxc.c:567:
>undefined reference to `get_cpu_rev'
>drivers/serial/built-in.o: In function `mxc_serial_setbrg':
>/home/diego/codes/nxp/bootloader/teste/u-boot-imx/drivers/serial/serial_mxc.c:187:
>undefined reference to `imx_get_uartclk'
>Segmentation fault (core dumped)
>Makefile:1256: recipe for target 'u-boot' failed
>make: *** [u-boot] Error 139
>
>Is this something that you had already seen?
>Am I missing something?
>
>Thanks,
>Diego
>
>> Peng Fan (23):
>> imx: add i.MX8M into Kconfig
>> imx: mx8m: add register definition header file
>> imx: mx8m: add pin header file
>> imx: mx8m: add clock driver
>> imx: add sip function
>> imx: boot_mode: add USB_BOOT entry
>> imx: cpu: update cpu file to support i.MX8M
>> imx: spl: implement spl_boot_device for i.MX8M
>> power: pmic.h: include dm/ofnode.h
>> imx: add i.MX8MQ SoC Revision and is_mx8m helper
>> imx: add pad settings bit definition for i.MX8M
>> imx: mx8m: add soc related settings and files
>> imx: makefile: compile files for i.MX8M
>> misc: ocotp: add i.MX8M support
>> mmc: fsl_esdhc: support i.MX8M
>> imx: lcdif: include i.MX8M
>> gpio: mxc: add i.MX8M support
>> imx: mx8m: add ddr register memory map
>> net: fec: do not access reserved register for i.MX8M
>> net: fec: fix build warnings for 64bits support
>> power: pmic/regulator allow dm be omitted by SPL
>> imx: imx8mq: add dtsi file
>> imx: add i.MX8MQ EVK support
>>
>> arch/arm/Kconfig | 8 +
>> arch/arm/Makefile | 4 +-
>> arch/arm/dts/Makefile | 2 +
>> arch/arm/dts/fsl-imx8-ca53.dtsi | 92 ++
>> arch/arm/dts/fsl-imx8mq-evk.dts | 597 ++++++++++
>> arch/arm/dts/fsl-imx8mq.dtsi | 961 ++++++++++++++++
>> arch/arm/include/asm/arch-imx/cpu.h | 6 +-
>> arch/arm/include/asm/arch-mx8m/clock.h | 864 +++++++++++++++
>> arch/arm/include/asm/arch-mx8m/crm_regs.h | 10 +
>> arch/arm/include/asm/arch-mx8m/ddr_memory_map.h | 496 +++++++++
>> arch/arm/include/asm/arch-mx8m/gpio.h | 12 +
>> arch/arm/include/asm/arch-mx8m/imx-regs.h | 298 +++++
>> arch/arm/include/asm/arch-mx8m/mx8mq_pins.h | 623 +++++++++++
>> arch/arm/include/asm/arch-mx8m/sys_proto.h | 17 +
>> arch/arm/include/asm/mach-imx/boot_mode.h | 1 +
>> arch/arm/include/asm/mach-imx/iomux-v3.h | 22 +-
>> arch/arm/include/asm/mach-imx/regs-lcdif.h | 11 +-
>> arch/arm/include/asm/mach-imx/sys_proto.h | 4 +
>> arch/arm/mach-imx/Makefile | 13 +-
>> arch/arm/mach-imx/cpu.c | 11 +-
>> arch/arm/mach-imx/mx8m/Kconfig | 22 +
>> arch/arm/mach-imx/mx8m/Makefile | 8 +
>> arch/arm/mach-imx/mx8m/clock.c | 782 +++++++++++++
>> arch/arm/mach-imx/mx8m/clock_slice.c | 820 ++++++++++++++
>> arch/arm/mach-imx/mx8m/lowlevel_init.S | 63 ++
>> arch/arm/mach-imx/mx8m/soc.c | 544 +++++++++
>> arch/arm/mach-imx/sip.c | 23 +
>> arch/arm/mach-imx/spl.c | 23 +-
>> board/freescale/mx8mq_evk/Kconfig | 12 +
>> board/freescale/mx8mq_evk/Makefile | 12 +
>> board/freescale/mx8mq_evk/ddr/ddr.h | 36 +
>> board/freescale/mx8mq_evk/ddr/ddr_init.c | 257 +++++
>> board/freescale/mx8mq_evk/ddr/ddrphy_train.c | 1154 ++++++++++++++++++++
>> board/freescale/mx8mq_evk/ddr/helper.c | 102 ++
>> .../mx8mq_evk/ddr/wait_ddrphy_training_complete.c | 97 ++
>> board/freescale/mx8mq_evk/mx8mq_evk.c | 154 +++
>> board/freescale/mx8mq_evk/spl.c | 227 ++++
>> configs/mx8mq_evk_defconfig | 28 +
>> drivers/gpio/mxc_gpio.c | 22 +-
>> drivers/misc/mxc_ocotp.c | 7 +
>> drivers/mmc/fsl_esdhc.c | 12 +-
>> drivers/net/fec_mxc.c | 78 +-
>> drivers/power/pmic/Makefile | 4 +-
>> drivers/power/regulator/Makefile | 2 +-
>> include/configs/mx8mq_evk.h | 265 +++++
>> include/dt-bindings/clock/imx8mq-clock.h | 612 +++++++++++
>> include/dt-bindings/pinctrl/pins-imx8mq.h | 632 +++++++++++
>> include/power/pmic.h | 1 +
>> 48 files changed, 9992 insertions(+), 59 deletions(-)
>> create mode 100644 arch/arm/dts/fsl-imx8-ca53.dtsi
>> create mode 100644 arch/arm/dts/fsl-imx8mq-evk.dts
>> create mode 100644 arch/arm/dts/fsl-imx8mq.dtsi
>> create mode 100644 arch/arm/include/asm/arch-mx8m/clock.h
>> create mode 100644 arch/arm/include/asm/arch-mx8m/crm_regs.h
>> create mode 100644 arch/arm/include/asm/arch-mx8m/ddr_memory_map.h
>> create mode 100644 arch/arm/include/asm/arch-mx8m/gpio.h
>> create mode 100644 arch/arm/include/asm/arch-mx8m/imx-regs.h
>> create mode 100755 arch/arm/include/asm/arch-mx8m/mx8mq_pins.h
>> create mode 100644 arch/arm/include/asm/arch-mx8m/sys_proto.h
>> create mode 100644 arch/arm/mach-imx/mx8m/Kconfig
>> create mode 100644 arch/arm/mach-imx/mx8m/Makefile
>> create mode 100644 arch/arm/mach-imx/mx8m/clock.c
>> create mode 100644 arch/arm/mach-imx/mx8m/clock_slice.c
>> create mode 100644 arch/arm/mach-imx/mx8m/lowlevel_init.S
>> create mode 100644 arch/arm/mach-imx/mx8m/soc.c
>> create mode 100644 arch/arm/mach-imx/sip.c
>> create mode 100644 board/freescale/mx8mq_evk/Kconfig
>> create mode 100644 board/freescale/mx8mq_evk/Makefile
>> create mode 100644 board/freescale/mx8mq_evk/ddr/ddr.h
>> create mode 100644 board/freescale/mx8mq_evk/ddr/ddr_init.c
>> create mode 100644 board/freescale/mx8mq_evk/ddr/ddrphy_train.c
>> create mode 100644 board/freescale/mx8mq_evk/ddr/helper.c
>> create mode 100644 board/freescale/mx8mq_evk/ddr/wait_ddrphy_training_complete.c
>> create mode 100644 board/freescale/mx8mq_evk/mx8mq_evk.c
>> create mode 100644 board/freescale/mx8mq_evk/spl.c
>> create mode 100644 configs/mx8mq_evk_defconfig
>> create mode 100644 include/configs/mx8mq_evk.h
>> create mode 100644 include/dt-bindings/clock/imx8mq-clock.h
>> create mode 100644 include/dt-bindings/pinctrl/pins-imx8mq.h
>>
>> --
>> 2.14.1
>>
>> _______________________________________________
>> U-Boot mailing list
>> U-Boot at lists.denx.de
>> https://lists.denx.de/listinfo/u-boot
>_______________________________________________
>U-Boot mailing list
>U-Boot at lists.denx.de
>https://lists.denx.de/listinfo/u-boot
--
More information about the U-Boot
mailing list