summaryrefslogtreecommitdiff
path: root/arch/arm
AgeCommit message (Collapse)Author
2018-02-13spi: Migrate CONFIG_KIRKWOOD_SPI to KconfigTuomas Tynkkynen
Signed-off-by: Tuomas Tynkkynen <tuomas@tuxera.com>
2018-02-13arm: omap2: Fix compiler warningBin Meng
Fix build warning in arch/arm/mach-omap2/emif-common.c and arch/arm/mach-omap2/omap4/emif.c with gcc 7.3.0: warning: duplicate 'const' declaration specifier [-Wduplicate-decl-specifier] Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2018-02-12Merge git://git.denx.de/u-boot-fsl-qoriqTom Rini
2018-02-11configs: Migrate CONFIG_SYS_TEXT_BASETom Rini
On the NIOS2 and Xtensa architectures, we do not have CONFIG_SYS_TEXT_BASE set. This is a strict migration of the current values into the defconfig and removing them from the headers. I did not attempt to add more default values in and for now will leave that to maintainers. Signed-off-by: Tom Rini <trini@konsulko.com>
2018-02-10efi_loader: fix building crt0 on armHeinrich Schuchardt
Before the patch an undefined constant EFI_SUBSYSTEM was used in the crt0 code. The current version of binutils does not swallow the error. https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=888403 The necessary constant IMAGE_SUBSYSTEM_EFI_APPLICATION is already defined in pe.h. So let's factor out asm-generic/pe.h for the image subsystem constants and use it in our assembler code. IMAGE_SUBSYSTEM_SAL_RUNTIME_DRIVER does not exist in the specification let's use IMAGE_SUBSYSTEM_EFI_ROM instead. The include pe.h is only used in code maintained by Alex so let him be the maintainer here too. Reported-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Tested-by: Vagrant Cascadian <vagrant@debian.org> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-02-09armv8: Remove dependency of SERDES for LSCH2 and LSCH3Sriram Dash
Remove dependency of SYS_HAS_SERDES for Layerscape Chasis 2 and Layerscape Chasis 3. Signed-off-by: Sriram Dash <sriram.dash@nxp.com> Reviewed-by: York Sun <york.sun@nxp.com>
2018-02-08spl: use ARCH_MX23/28 to specify SPL_LDSCRIPTStefan Agner
Simplify SPL_LDSCRIPT config by using the new arch Kconfig configurations ARCH_MX23 and ARCH_MX28. Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2018-02-08arm: imx: mx28: Move MX28 selection to KconfigStefan Agner
The motivation for moving MX28 selection to Kconfig is to be able to better handle NAND MXS selection through Kconfig. This selection method also aligns with the way other i.MX SoCs are selected in U-Boot. Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2018-02-08arm: imx: mx23: Move MX23 selection to KconfigStefan Agner
The motivation for moving MX23 selection to Kconfig is to be able to better handle NAND MXS selection through Kconfig. This selection method also aligns with the way other i.MX SoCs are selected in U-Boot. Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2018-02-08Convert CONFIG_MXC_GPIO to KconfigAdam Ford
This converts the following to Kconfig: CONFIG_MXC_GPIO Signed-off-by: Adam Ford <aford173@gmail.com>
2018-02-07spl: eMMC/SD: Provide one __weak spl_boot_mode() functionLukasz Majewski
The goal of this patch is to clean up the code related to choosing SPL MMC boot mode. The spl_boot_mode() now is called only in spl_mmc_load_image() function, which is only compiled in if CONFIG_SPL_MMC_SUPPORT is enabled. To achieve the goal, all per mach/arch implementations eligible for unification has been replaced with one __weak implementation. Signed-off-by: Lukasz Majewski <lukma@denx.de> Reviewed-by: Marek Vasut <marex@denx.de> Reviewed-by: Stefano Babic <sbabic@denx.de> Acked-by: Michal Simek <michal.simek@xilinx.com> (For ZynqMP) Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-02-07ARM: dts: keystone-k2g-ice: Add support for QSPIVignesh R
K2G ICE has a s25fl256s1 QSPI NOR flash connected to QSPI at CS0. Add DT entries for the same. Signed-off-by: Vignesh R <vigneshr@ti.com>
2018-02-07move booti_setup to arch/arm/lig/image.cBin Chen
Follow bootz's pattern by moving the booti_setup to arch/arm/lib. This allows to use booti_setup in other paths, e.g booting an Android image containing Image format. Note that kernel relocation is move out of booti_setup and it is the caller's responsibility to do it and allows them do it differently. say, cmd/booti.c just do a manually, while in the bootm path, we can use bootm_load_os(with some changes). Signed-off-by: Bin Chen <bin.chen@linaro.org> Reviewed-by: Tom Rini <trini@konsulko.com>
2018-02-04imx: mx7: run sec_init for CAAM RNGBryan O'Donoghue
This patch adds a sec_init call into arch_misc_init(). Doing so in conjunction with the patch "drivers/crypto/fsl: assign job-rings to non-TrustZone" enables use of the CAAM in Linux when OPTEE/TrustZone is active. u-boot will initialise the RNG and assign ownership of the job-ring registers to a non-TrustZone context. With recent changes by Lukas Auer to fully initialize the RNG in sec_init() this means that u-boot will hand-off the CAAM in a state that Linux then can use the CAAM without touching the reserved DECO registers. This change is safe both for the OPTEE/TrustZone boot path and the regular non-OPTEE/TrustZone boot path. Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Cc: Fabio Estevam <fabio.estevam@nxp.com> Cc: Peng Fan <peng.fan@nxp.com> Cc: Marco Franchi <marco.franchi@nxp.com> Cc: Vanessa Maegima <vanessa.maegima@nxp.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Lukas Auer <lukas.auer@aisec.fraunhofer.de> Tested-by: Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-02-04i2c: imx: Take mx6dqp in consideration in the I2C_PADS_INFO macroEran Matityahu
We should take the MX6DP and MX6QP options in consideration in the I2C_PADS_INFO macro. Based on a patch by Pierluigi Passaro <pierluigi.p@variscite.com> Signed-off-by: Eran Matityahu <eran.m@variscite.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-02-04iomux-v3: Take mx6dqp in consideration for imx_iomux_v3_setup_pad()Eran Matityahu
We should take the MX6DP and MX6QP options in consideration when defining imx_iomux_v3_setup_pad(). Based on a patch by Pierluigi Passaro <pierluigi.p@variscite.com> Signed-off-by: Eran Matityahu <eran.m@variscite.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-02-04arm: dts: imx6ull: move input include to base device treeStefan Agner
The input keycode KEY_POWER is used in the imx6ull.dtsi file, hence include the input header where used. Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2018-02-04imx: mx25: Remove SION bit in all pin-mux that are safeMichael Trimarchi
SION bit should be used in the situation that we need to read back the value of a pin and should not be set by default macro. We get some malfunction as raised by following thread https://www.spinics.net/lists/linux-usb/msg162574.html As reported by this application note: https://www.nxp.com/docs/en/application-note/AN5078.pdf The software input on (SION) bit is an option to force an input path to be active regardless of the value driven by the corresponding module. It is used when the nature direction of a pin depending on selected alternative function is an output, but it is needed to read the real logic value on a pin. The SION bit can be used in: • Loopback: the module of a selected alternative function drives the pad and also receives the pad value as an input • GPIO capture: the module of a selected alternative function drives the pin and the value is captured by the GPIO SION bit is not necessary when the pin is configured as a peripheral apart specific silicon bug. If an application needs to have this set, this should be done in board file or in dts file Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com> Reviewed-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com> Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-02-04ARM: dts: add pinmux and tuning settings for HS200/SDR104Peng Fan
The pinmux and tuning settings are from https://source.codeaurora.org/external/imx/linux-imx/tree/arch/ arm/boot/dts/imx7s.dtsi?h=imx_4.9.11_1.0.0_ga https://source.codeaurora.org/external/imx/linux-imx/tree/arch/ arm/boot/dts/imx7d-sdb.dts?h=imx_4.9.11_1.0.0_ga To support HS200 and SDR104, we need change pinmux settings dynamically. And configure tuning step and start tuning tap, otherwise you may see tuning failure. Signed-off-by: Peng Fan <peng.fan@nxp.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Fabio Estevam <fabio.estevam@nxp.com> Cc: Jaehoon Chung <jh80.chung@samsung.com>
2018-02-04arm: imx: mx53loco: remove usage of mx53_dram_sizePatrick Bruenn
Static variables are not available during board_init_f(). 'static uint32_t mx53_dram_size[2];' was used in board specific dram_init(), dram_init_banksize() and get_effective_memsize() to avoid multiple calls to get_ram_size(). Reused dram initialization functions from arch/arm/mach-imx/mx5/mx53_dram.c Signed-off-by: Patrick Bruenn <p.bruenn@beckhoff.com>
2018-02-04arm: imx: m53evk: remove usage of mx53_dram_sizePatrick Bruenn
Static variables are not available during board_init_f(). 'static uint32_t mx53_dram_size[2];' was used in board specific dram_init(), dram_init_banksize() and get_effective_memsize() to avoid multiple calls to get_ram_size(). Reused dram initialization functions from arch/arm/mach-imx/mx5/mx53_dram.c Signed-off-by: Patrick Bruenn <p.bruenn@beckhoff.com>
2018-02-04arm: imx: cx9020: move dram init into common placePatrick Bruenn
Move dram_init(), dram_init_banksize() and get_effective_memsize() to arch/arm/mach-imx/mx5/mx53_dram.c, where it can be reused by m53evk and mx53loco. Signed-off-by: Patrick Bruenn <p.bruenn@beckhoff.com>
2018-02-04imx: mx8m: add ddr controller memory mapPeng Fan
Add ddrc memory map and enum types used in ddr initialization. Signed-off-by: Peng Fan <peng.fan@nxp.com> Cc: Fabio Estevam <fabio.estevam@nxp.com> Cc: Stefano Babic <sbabic@denx.de>
2018-02-04imx: imx8mq: add dtsi filePeng Fan
Add dtsi file for i.MX8MQ. Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com> Cc: Stefano Babic <sbabic@denx.de>
2018-02-04imx: lcdif: include i.MX8MPeng Fan
Include i.MX8M in lcdif register layout map. Also included i.MX7ULP in this patch, since share same with i.MX8M. Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Stefano Babic <sbabic@denx.de> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-02-04imx: makefile: compile files for i.MX8MPeng Fan
Compile files for i.MX8M Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com> Cc: Stefano Babic <sbabic@denx.de>
2018-02-04imx: mx8m: add soc related settings and filesPeng Fan
Add SoC level initialization code - arch_cpu_init - mmu table - detect cpu revision - reset cpu and wdog settings - timer init - wdog settings - lowlevel init to save/restore registers - a few dummy header file to avoid build failure - ft_system_setup Signed-off-by: Peng Fan <peng.fan@nxp.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Fabio Estevam <fabio.estevam@nxp.com>
2018-02-04imx: mx7: move mmc env code to mmc_env.cPeng Fan
The mx7 mmc env code is shared by i.MX8M, so move it to mmc_env.c. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2018-02-04imx: cpu: support get_boot_device for i.MX8MPeng Fan
Enable get_boot_device for i.MX8M, it supports boot type USB. Signed-off-by: Peng Fan <peng.fan@nxp.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Fabio Estevam <fabio.estevam@nxp.com> Reviewed-by: Stefano Babic <sbabic@denx.de>
2018-02-04imx: mx7: move get_boot_device to cpu.cPeng Fan
Move get_boot_device to cpu.c to prepare adding i.MX8M support, because i.MX8M share same code with i.MX7. Signed-off-by: Peng Fan <peng.fan@nxp.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Fabio Estevam <fabio.estevam@nxp.com> Reviewed-by: Stefano Babic <sbabic@denx.de>
2018-02-04imx: bootaux: support i.MX8MPeng Fan
Add i.MX8M support. Because i.MX8M use SiP call trap to Arm Trusted Firmware to handle M4, so use #ifdef to avoid build error on i.MX6/7. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2018-02-04imx: cleanup bootauxPeng Fan
Move i.MX6/7 bootaux code to imx_bootaux.c. The i.MX6/7 has different src layout, so define M4 reg offset to ease the cleanup. Redefine the M4 related BIT for share common code. Signed-off-by: Peng Fan <peng.fan@nxp.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Fabio Estevam <fabio.estevam@nxp.com>
2018-02-04imx: refactor imx_get_mac_from_fusePeng Fan
Move imx_get_mac_from_fuse to a new mac.c for i.MX6/7. Since fuse regs structure are different for i.MX6/7, use mac address offset in code and define a new local struture imx_mac_fuse. Also sort the config order. Signed-off-by: Peng Fan <peng.fan@nxp.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Fabio Estevam <fabio.estevam@nxp.com> Reviewed-by: Stefano Babic <sbabic@denx.de>
2018-02-04imx: cpu: add cpu speed/grade for i.MX8MPeng Fan
Use more general enum types for speed grade. Refine get_cpu_speed_grade_hz to support i.MX8M. Signed-off-by: Peng Fan <peng.fan@nxp.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Fabio Estevam <fabio.estevam@nxp.com> Reviewed-by: Stefano Babic <sbabic@denx.de>
2018-02-04imx: cpu: move speed/temp to common cpuPeng Fan
The i.MX7 cpu speed/temp code could be reused on i.MX8M, so move them to common cpu code. Signed-off-by: Peng Fan <peng.fan@nxp.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Fabio Estevam <fabio.estevam@nxp.com> Reviewed-by: Stefano Babic <sbabic@denx.de>
2018-02-04imx: add pad settings bit definition for i.MX8MPeng Fan
Add pad settings bit definition for i.MX8M. Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com> Cc: Stefano Babic <sbabic@denx.de> Reviewed-by: Stefano Babic <sbabic@denx.de>
2018-02-04imx: add i.MX8MQ SoC Revision and is_mx8m helperPeng Fan
Add i.MX8MQ SoC Revision Add is_mx8m helper The 7ULP is a dummy number, so use 0xEx. Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com> Cc: Stefano Babic <sbabic@denx.de> Reviewed-by: Stefano Babic <sbabic@denx.de>
2018-02-04imx: spl: implement spl_boot_device for i.MX8MPeng Fan
Implement spl_boot_device for i.MX8M. Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com> Cc: Stefano Babic <sbabic@denx.de> Reviewed-by: Stefano Babic <sbabic@denx.de>
2018-02-04imx: cpu: update cpu file to support i.MX8MPeng Fan
Update get_reset_cause to reflect i.MX8M Compile out get_ahb_clk and set_chipselect_size for i.MX8M Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Stefano Babic <sbabic@denx.de> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com> Reviewed-by: Stefano Babic <sbabic@denx.de>
2018-02-04imx: boot_mode: add USB_BOOT entryPeng Fan
Add USB_BOOT entry. Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Stefano Babic <sbabic@denx.de> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-02-04imx: add sip functionPeng Fan
Add SiP (Silicon Provider) services function to issue SMC call to Arm Trusted Firmware. More SiP information could be found in https://github.com/ARM-software/arm-trusted-firmware/blob/master/ docs/arm-sip-service.rst Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com> Cc: Stefano Babic <sbabic@denx.de>
2018-02-04imx: mx8m: add clock driverPeng Fan
Add clock driver to support i.MX8M. There are two kind PLLs, FRAC pll and SSCG pll. ROM already configured SYS PLL1/2, we only need to configure the output. ocotp/i2c/pll decoding and configuration/usdhc/lcdif/dram pll/ enet clock are configured in the code. Signed-off-by: Peng Fan <peng.fan@nxp.com> Cc: Fabio Estevam <fabio.estevam@nxp.com> Cc: Stefano Babic <sbabic@denx.de>
2018-02-04imx: mx8m: add pin header filePeng Fan
Add pin header file for i.MX8M Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com> Cc: Stefano Babic <sbabic@denx.de> Reviewed-by: Stefano Babic <sbabic@denx.de>
2018-02-04imx: mx8m: add register definition header filePeng Fan
Add register definition header file for i.MX8M Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com> Cc: Stefano Babic <sbabic@denx.de> Reviewed-by: Stefano Babic <sbabic@denx.de>
2018-02-04imx: add i.MX8M into KconfigPeng Fan
Add i.MX8M into Kconfig, create a new folder mx8m dedicated for i.MX8M. Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com> Cc: Stefano Babic <sbabic@denx.de> Reviewed-by: Stefano Babic <sbabic@denx.de>
2018-02-04imx: mx7: psci: add system power off supportAnson Huang
Add i.MX7 PSCI system power off support, linux kernel can use "poweroff" command to power off system via SNVS, PMIC power will be disabled. Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
2018-02-04imx: mx7: psci: add system reset supportAnson Huang
Add i.MX7 PSCI system reset support, linux kernel can use "reboot" command to reset system even wdog driver is disabled in kernel. Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
2018-02-04board: i.MX6QDL: add Engicam i.CoreM6 1.5 QDL MIPI starter kitJagan Teki
i.CoreM6 1.5 is an another i.CoreM6 QDL cpu modules which can be connected to EDIMM starter kit design with eMMC and MIPI-CSI interfaces suitable for Android and video capture application. notable features: CPU NXP i.MX6 S/DL/D/Q, Up to 4 x Cortex-A9@800MHz Memory Up to 2 GB DDR3-1066 Video Interfaces Up to 1 Parallel Up to 2 LVDS HDMI 1.4 port 8 bit CSI INPUT MIPI-CSI INPUT 1 x 10/100 Ethernet interface, 2 x USB, 1 x PCIe, 1 x I2S etc This patch adds support for Quad/Dual and DualLite/Solo SOM's on MIPI starter kit with boot from SD and eMMC. Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
2018-01-31davinci: Fix omapl138_lcdk buildsTom Rini
The omapl138_lcdk platform is not a DA850 SoC so we need to select SOC_DA8XX and not SOC_DA850, as it was before. It does however point out a bit of a misnomer in how all of these PLL defines are named as they are generic to DA8xx, not DA850 centric. Remove the 'if SOC_DA850' under the defaults as these are simply the defaults. As SOC_DA8XX will select SYS_DA850_DDR_INIT when needed, we do not need it under both SOC options. Fixes: 76e22222d3aa ("Convert CONFIG_SYS_DV_CLKMODE et al to Kconfig") Signed-off-by: Tom Rini <trini@konsulko.com>
2018-01-31Merge tag 'xilinx-for-v2018.03' of git://git.denx.de/u-boot-microblazeTom Rini
Xilinx changes for v2018.03 - Several Kconfig fixes (also moving configs to defconfigs) - Some DTS updates - ZynqMP psu rework based on Zynq concept - Add low level initialization for zc770 and zcu102 - Add support for Zynq zc770 x16 nand configuration - Add mini nand/emmc ZynqMP targets - Some arasan nand changes