diff options
Diffstat (limited to 'arch/arm')
57 files changed, 275 insertions, 410 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index fedfdb21457..79f60eb3f34 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -1416,7 +1416,7 @@ config TARGET_TOTAL_COMPUTE select DM_SERIAL select DM_GPIO select MMC - imply OF_HAS_PRIOR_STAGE + imply OF_HAS_PRIOR_STAGE if !BLOBLIST imply MISC_INIT_R config TARGET_LS2080A_EMU diff --git a/arch/arm/cpu/armv7m/start.S b/arch/arm/cpu/armv7m/start.S index 0c07f2140c7..a439404a248 100644 --- a/arch/arm/cpu/armv7m/start.S +++ b/arch/arm/cpu/armv7m/start.S @@ -4,13 +4,19 @@ * Kamil Lulko, <kamil.lulko@gmail.com> */ +#include <linux/linkage.h> #include <asm/assembler.h> -.globl reset -.type reset, %function -reset: - W(b) _main +/* + * Startup code (reset vector) + */ +ENTRY(reset) + W(b) _main @ Jump to _main (C runtime crt0.S) +ENDPROC(reset) -.globl c_runtime_cpu_setup -c_runtime_cpu_setup: - mov pc, lr +/* + * Setup CPU for C runtime + */ +ENTRY(c_runtime_cpu_setup) + mov pc, lr @ Jump back to caller +ENDPROC(c_runtime_cpu_setup) diff --git a/arch/arm/cpu/armv8/fsl-layerscape/fdt.c b/arch/arm/cpu/armv8/fsl-layerscape/fdt.c index ca6be3626fb..e8d2339f1a3 100644 --- a/arch/arm/cpu/armv8/fsl-layerscape/fdt.c +++ b/arch/arm/cpu/armv8/fsl-layerscape/fdt.c @@ -7,6 +7,7 @@ #include <config.h> #include <clock_legacy.h> #include <efi_loader.h> +#include <env.h> #include <log.h> #include <asm/cache.h> #include <linux/libfdt.h> diff --git a/arch/arm/cpu/u-boot-spl.lds b/arch/arm/cpu/u-boot-spl.lds index eee463a1b1c..5aecb61ce90 100644 --- a/arch/arm/cpu/u-boot-spl.lds +++ b/arch/arm/cpu/u-boot-spl.lds @@ -53,13 +53,14 @@ SECTIONS __rel_dyn_end = .; } + . = ALIGN(8); _image_binary_end = .; _end = .; .bss __rel_dyn_start (OVERLAY) : { __bss_start = .; *(.bss*) - . = ALIGN(4); + . = ALIGN(8); __bss_end = .; } __bss_size = __bss_end - __bss_start; diff --git a/arch/arm/cpu/u-boot.lds b/arch/arm/cpu/u-boot.lds index 817e7a983ae..78aad093d3b 100644 --- a/arch/arm/cpu/u-boot.lds +++ b/arch/arm/cpu/u-boot.lds @@ -153,14 +153,14 @@ SECTIONS __efi_runtime_rel_stop = .; } - . = ALIGN(4); + . = ALIGN(8); __image_copy_end = .; /* * if CONFIG_USE_ARCH_MEMSET is not selected __bss_end - __bss_start - * needs to be a multiple of 4 and we overlay .bss with .rel.dyn + * needs to be a multiple of 8 and we overlay .bss with .rel.dyn */ - .rel.dyn ALIGN(4) : { + .rel.dyn ALIGN(8) : { __rel_dyn_start = .; *(.rel*) __rel_dyn_end = .; diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 32b698a7f41..976dbda48c3 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -918,8 +918,7 @@ dtb-$(CONFIG_ARCH_IMX8M) += \ imx8mq-librem5-r4.dtb dtb-$(CONFIG_ARCH_IMX9) += \ - imx93-var-som-symphony.dtb \ - imx93-phyboard-segin.dtb + imx93-var-som-symphony.dtb dtb-$(CONFIG_ARCH_IMXRT) += imxrt1020-evk.dtb \ imxrt1170-evk.dtb \ diff --git a/arch/arm/dts/imx6ulz-bsh-smm-m2-u-boot.dtsi b/arch/arm/dts/imx6ulz-bsh-smm-m2-u-boot.dtsi index 7730bb60dd0..faf596255f1 100644 --- a/arch/arm/dts/imx6ulz-bsh-smm-m2-u-boot.dtsi +++ b/arch/arm/dts/imx6ulz-bsh-smm-m2-u-boot.dtsi @@ -5,8 +5,12 @@ * Author: Michael Trimarchi <michael@amarulasolutions.com> */ -&{/soc} { - bootph-all; +/ { + wdt-reboot { + compatible = "wdt-reboot"; + wdt = <&wdog1>; + bootph-pre-ram; + }; }; &aips2 { diff --git a/arch/arm/dts/imx8mp-venice-gw74xx-u-boot.dtsi b/arch/arm/dts/imx8mp-venice-gw74xx-u-boot.dtsi index a90794d8108..95f5f15e742 100644 --- a/arch/arm/dts/imx8mp-venice-gw74xx-u-boot.dtsi +++ b/arch/arm/dts/imx8mp-venice-gw74xx-u-boot.dtsi @@ -98,6 +98,13 @@ gpios = <6 GPIO_ACTIVE_HIGH>; line-name = "m2_rst"; }; + + m2_wdis2 { + gpio-hog; + output-high; + gpios = <14 GPIO_ACTIVE_HIGH>; + line-name = "m2_wdis2#"; + }; }; &gpio4 { @@ -110,11 +117,11 @@ line-name = "m2_off#"; }; - m2_wdis { + m2_wdis1 { gpio-hog; output-high; gpios = <18 GPIO_ACTIVE_HIGH>; - line-name = "m2_wdis#"; + line-name = "m2_wdis1#"; }; rs485_en { diff --git a/arch/arm/dts/imx8mp-venice-gw82xx-2x-u-boot.dtsi b/arch/arm/dts/imx8mp-venice-gw82xx-2x-u-boot.dtsi new file mode 100644 index 00000000000..2d58b3b8ab7 --- /dev/null +++ b/arch/arm/dts/imx8mp-venice-gw82xx-2x-u-boot.dtsi @@ -0,0 +1,49 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Copyright 2025 Gateworks Corporation + */ +#include "imx8mp-venice-gw702x-u-boot.dtsi" + +&gpio4 { + dio_1 { + gpio-hog; + input; + gpios = <8 GPIO_ACTIVE_HIGH>; + line-name = "dio1"; + }; + + dio_0 { + gpio-hog; + input; + gpios = <11 GPIO_ACTIVE_HIGH>; + line-name = "dio0#"; + }; + + usb1mux { + gpio-hog; + output-high; + gpios = <17 GPIO_ACTIVE_HIGH>; + line-name = "usb1_mux"; + }; + + rs485_en { + gpio-hog; + output-low; + gpios = <22 GPIO_ACTIVE_HIGH>; + line-name = "rs485_en"; + }; + + rs485_term { + gpio-hog; + output-low; + gpios = <23 GPIO_ACTIVE_HIGH>; + line-name = "rs485_term"; + }; + + rs485_half { + gpio-hog; + output-low; + gpios = <27 GPIO_ACTIVE_HIGH>; + line-name = "rs485_hd"; + }; +}; diff --git a/arch/arm/dts/imx93-phyboard-segin.dts b/arch/arm/dts/imx93-phyboard-segin.dts deleted file mode 100644 index 85fb188b057..00000000000 --- a/arch/arm/dts/imx93-phyboard-segin.dts +++ /dev/null @@ -1,117 +0,0 @@ -// SPDX-License-Identifier: (GPL-2.0+ OR MIT) -/* - * Copyright (C) 2023 PHYTEC Messtechnik GmbH - * Author: Wadim Egorov <w.egorov@phytec.de>, Christoph Stoidner <c.stoidner@phytec.de> - * Copyright (C) 2024 Mathieu Othacehe <m.othacehe@gmail.com> - * - * Product homepage: - * phyBOARD-Segin carrier board is reused for the i.MX93 design. - * https://www.phytec.eu/en/produkte/single-board-computer/phyboard-segin-imx6ul/ - */ -/dts-v1/; - -#include "imx93-phycore-som.dtsi" - -/{ - model = "PHYTEC phyBOARD-Segin-i.MX93"; - compatible = "phytec,imx93-phyboard-segin", "phytec,imx93-phycore-som", - "fsl,imx93"; - - chosen { - stdout-path = &lpuart1; - }; - - reg_usdhc2_vmmc: regulator-usdhc2 { - compatible = "regulator-fixed"; - enable-active-high; - gpio = <&gpio3 7 GPIO_ACTIVE_HIGH>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_reg_usdhc2_vmmc>; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - regulator-name = "VCC_SD"; - }; -}; - -/* Console */ -&lpuart1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_uart1>; - status = "okay"; -}; - -/* eMMC */ -&usdhc1 { - no-1-8-v; -}; - -/* SD-Card */ -&usdhc2 { - pinctrl-names = "default", "state_100mhz", "state_200mhz"; - pinctrl-0 = <&pinctrl_usdhc2_default>, <&pinctrl_usdhc2_cd>; - pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_cd>; - pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_cd>; - bus-width = <4>; - cd-gpios = <&gpio3 0 GPIO_ACTIVE_LOW>; - no-mmc; - no-sdio; - vmmc-supply = <®_usdhc2_vmmc>; - status = "okay"; -}; - -&iomuxc { - pinctrl_uart1: uart1grp { - fsl,pins = < - MX93_PAD_UART1_RXD__LPUART1_RX 0x31e - MX93_PAD_UART1_TXD__LPUART1_TX 0x30e - >; - }; - - pinctrl_reg_usdhc2_vmmc: regusdhc2vmmcgrp { - fsl,pins = < - MX93_PAD_SD2_RESET_B__GPIO3_IO07 0x31e - >; - }; - - pinctrl_usdhc2_cd: usdhc2cdgrp { - fsl,pins = < - MX93_PAD_SD2_CD_B__GPIO3_IO00 0x31e - >; - }; - - pinctrl_usdhc2_default: usdhc2grp { - fsl,pins = < - MX93_PAD_SD2_CLK__USDHC2_CLK 0x179e - MX93_PAD_SD2_CMD__USDHC2_CMD 0x139e - MX93_PAD_SD2_DATA0__USDHC2_DATA0 0x138e - MX93_PAD_SD2_DATA1__USDHC2_DATA1 0x138e - MX93_PAD_SD2_DATA2__USDHC2_DATA2 0x138e - MX93_PAD_SD2_DATA3__USDHC2_DATA3 0x139e - MX93_PAD_SD2_VSELECT__USDHC2_VSELECT 0x51e - >; - }; - - pinctrl_usdhc2_100mhz: usdhc2grp { - fsl,pins = < - MX93_PAD_SD2_CLK__USDHC2_CLK 0x179e - MX93_PAD_SD2_CMD__USDHC2_CMD 0x139e - MX93_PAD_SD2_DATA0__USDHC2_DATA0 0x138e - MX93_PAD_SD2_DATA1__USDHC2_DATA1 0x138e - MX93_PAD_SD2_DATA2__USDHC2_DATA2 0x139e - MX93_PAD_SD2_DATA3__USDHC2_DATA3 0x139e - MX93_PAD_SD2_VSELECT__USDHC2_VSELECT 0x51e - >; - }; - - pinctrl_usdhc2_200mhz: usdhc2grp { - fsl,pins = < - MX93_PAD_SD2_CLK__USDHC2_CLK 0x178e - MX93_PAD_SD2_CMD__USDHC2_CMD 0x139e - MX93_PAD_SD2_DATA0__USDHC2_DATA0 0x139e - MX93_PAD_SD2_DATA1__USDHC2_DATA1 0x139e - MX93_PAD_SD2_DATA2__USDHC2_DATA2 0x139e - MX93_PAD_SD2_DATA3__USDHC2_DATA3 0x139e - MX93_PAD_SD2_VSELECT__USDHC2_VSELECT 0x51e - >; - }; -}; diff --git a/arch/arm/dts/imx93-phycore-som.dtsi b/arch/arm/dts/imx93-phycore-som.dtsi deleted file mode 100644 index 88c2657b50e..00000000000 --- a/arch/arm/dts/imx93-phycore-som.dtsi +++ /dev/null @@ -1,126 +0,0 @@ -// SPDX-License-Identifier: (GPL-2.0+ OR MIT) -/* - * Copyright (C) 2023 PHYTEC Messtechnik GmbH - * Author: Wadim Egorov <w.egorov@phytec.de>, Christoph Stoidner <c.stoidner@phytec.de> - * Copyright (C) 2024 Mathieu Othacehe <m.othacehe@gmail.com> - * - * Product homepage: - * https://www.phytec.eu/en/produkte/system-on-modules/phycore-imx-91-93/ - */ - -#include <dt-bindings/leds/common.h> - -#include "imx93.dtsi" - -/{ - model = "PHYTEC phyCORE-i.MX93"; - compatible = "phytec,imx93-phycore-som", "fsl,imx93"; - - reserved-memory { - ranges; - #address-cells = <2>; - #size-cells = <2>; - - linux,cma { - compatible = "shared-dma-pool"; - reusable; - alloc-ranges = <0 0x80000000 0 0x40000000>; - size = <0 0x10000000>; - linux,cma-default; - }; - }; - - leds { - compatible = "gpio-leds"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_leds>; - - led-0 { - color = <LED_COLOR_ID_GREEN>; - function = LED_FUNCTION_HEARTBEAT; - gpios = <&gpio1 1 GPIO_ACTIVE_HIGH>; - linux,default-trigger = "heartbeat"; - }; - }; -}; - -/* Ethernet */ -&fec { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_fec>; - phy-mode = "rmii"; - phy-handle = <ðphy1>; - fsl,magic-packet; - assigned-clocks = <&clk IMX93_CLK_ENET_TIMER1>, - <&clk IMX93_CLK_ENET_REF>, - <&clk IMX93_CLK_ENET_REF_PHY>; - assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>, - <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>, - <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>; - assigned-clock-rates = <100000000>, <50000000>, <50000000>; - status = "okay"; - - mdio: mdio { - clock-frequency = <5000000>; - #address-cells = <1>; - #size-cells = <0>; - - ethphy1: ethernet-phy@1 { - compatible = "ethernet-phy-ieee802.3-c22"; - reg = <1>; - }; - }; -}; - -/* eMMC */ -&usdhc1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_usdhc1>; - bus-width = <8>; - non-removable; - status = "okay"; -}; - -/* Watchdog */ -&wdog3 { - status = "okay"; -}; - -&iomuxc { - pinctrl_fec: fecgrp { - fsl,pins = < - MX93_PAD_ENET2_MDC__ENET1_MDC 0x50e - MX93_PAD_ENET2_MDIO__ENET1_MDIO 0x502 - MX93_PAD_ENET2_RD0__ENET1_RGMII_RD0 0x57e - MX93_PAD_ENET2_RD1__ENET1_RGMII_RD1 0x57e - MX93_PAD_ENET2_RXC__ENET1_RX_ER 0x5fe - MX93_PAD_ENET2_RX_CTL__ENET1_RGMII_RX_CTL 0x57e - MX93_PAD_ENET2_TD0__ENET1_RGMII_TD0 0x50e - MX93_PAD_ENET2_TD1__ENET1_RGMII_TD1 0x50e - MX93_PAD_ENET2_TX_CTL__ENET1_RGMII_TX_CTL 0x50e - MX93_PAD_ENET2_TD2__ENET1_TX_CLK 0x4000050e - >; - }; - - pinctrl_leds: ledsgrp { - fsl,pins = < - MX93_PAD_I2C1_SDA__GPIO1_IO01 0x31e - >; - }; - - pinctrl_usdhc1: usdhc1grp { - fsl,pins = < - MX93_PAD_SD1_CLK__USDHC1_CLK 0x179e - MX93_PAD_SD1_CMD__USDHC1_CMD 0x1386 - MX93_PAD_SD1_DATA0__USDHC1_DATA0 0x138e - MX93_PAD_SD1_DATA1__USDHC1_DATA1 0x1386 - MX93_PAD_SD1_DATA2__USDHC1_DATA2 0x138e - MX93_PAD_SD1_DATA3__USDHC1_DATA3 0x1386 - MX93_PAD_SD1_DATA4__USDHC1_DATA4 0x1386 - MX93_PAD_SD1_DATA5__USDHC1_DATA5 0x1386 - MX93_PAD_SD1_DATA6__USDHC1_DATA6 0x1386 - MX93_PAD_SD1_DATA7__USDHC1_DATA7 0x1386 - MX93_PAD_SD1_STROBE__USDHC1_STROBE 0x179e - >; - }; -}; diff --git a/arch/arm/dts/imxrt1170-evk.dts b/arch/arm/dts/imxrt1170-evk.dts index 0d8e7016860..354352477c7 100644 --- a/arch/arm/dts/imxrt1170-evk.dts +++ b/arch/arm/dts/imxrt1170-evk.dts @@ -234,6 +234,34 @@ (IMX_PAD_SION | 8) /* SEMC_DQS */ >; }; + + pinctrl_flexspi1: flexspi1grp { + fsl,pins = < + IOMUXC_GPIO_SD_B2_05_FLEXSPI1_A_DQS 0xa + IOMUXC_GPIO_SD_B2_06_FLEXSPI1_A_SS0_B 0xa + IOMUXC_GPIO_SD_B2_07_FLEXSPI1_A_SCLK 0xa + IOMUXC_GPIO_SD_B2_08_FLEXSPI1_A_DATA00 0xa + IOMUXC_GPIO_SD_B2_09_FLEXSPI1_A_DATA01 0xa + IOMUXC_GPIO_SD_B2_10_FLEXSPI1_A_DATA02 0xa + IOMUXC_GPIO_SD_B2_11_FLEXSPI1_A_DATA03 0xa + >; + }; + }; +}; + +&flexspi1 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_flexspi1>; + status = "okay"; + + flash@0 { + compatible = "jedec,spi-nor"; + reg = <0>; + #address-cells = <1>; + #size-cells = <1>; + spi-max-frequency = <250000000>; + spi-tx-bus-width = <4>; + spi-rx-bus-width = <4>; }; }; diff --git a/arch/arm/dts/imxrt1170.dtsi b/arch/arm/dts/imxrt1170.dtsi index 2de775f043f..08665eaf06a 100644 --- a/arch/arm/dts/imxrt1170.dtsi +++ b/arch/arm/dts/imxrt1170.dtsi @@ -246,6 +246,19 @@ #interrupt-cells = <2>; }; + flexspi1: spi@400cc000 { + compatible = "nxp,imxrt1170-fspi"; + reg = <0x400cc000 0x800>, <0x30000000 0x10000000>; + reg-names = "fspi_base", "fspi_mmap"; + #address-cells = <1>; + #size-cells = <0>; + interrupts = <130>; + clocks = <&clks IMXRT1170_CLK_DUMMY>, + <&clks IMXRT1170_CLK_FLEXSPI1>; + clock-names = "fspi_en", "fspi"; + status = "disabled"; + }; + gpt1: gpt1@400ec000 { compatible = "fsl,imxrt-gpt"; reg = <0x400ec000 0x4000>; diff --git a/arch/arm/dts/k3-am625-beagleplay-u-boot.dtsi b/arch/arm/dts/k3-am625-beagleplay-u-boot.dtsi index 01b6a8e417c..2a4f0e45365 100644 --- a/arch/arm/dts/k3-am625-beagleplay-u-boot.dtsi +++ b/arch/arm/dts/k3-am625-beagleplay-u-boot.dtsi @@ -9,10 +9,6 @@ #include "k3-binman.dtsi" / { - chosen { - tick-timer = &main_timer0; - }; - /* Keep the LEDs on by default to indicate life */ leds { led-0 { @@ -37,10 +33,6 @@ }; }; -&main_timer0 { - clock-frequency = <25000000>; -}; - &sd_pins_default { /* Force to use SDCD card detect pin */ pinctrl-single,pins = < diff --git a/arch/arm/dts/k3-am625-phyboard-lyra-rdk-u-boot.dtsi b/arch/arm/dts/k3-am625-phyboard-lyra-rdk-u-boot.dtsi index c001e2c96e8..ee273563e83 100644 --- a/arch/arm/dts/k3-am625-phyboard-lyra-rdk-u-boot.dtsi +++ b/arch/arm/dts/k3-am625-phyboard-lyra-rdk-u-boot.dtsi @@ -13,7 +13,6 @@ / { chosen { stdout-path = "serial2:115200n8"; - tick-timer = &main_timer0; }; aliases { @@ -96,10 +95,6 @@ bootph-all; }; -&main_timer0 { - clock-frequency = <25000000>; -}; - &main_uart0 { bootph-all; }; diff --git a/arch/arm/dts/k3-am625-phycore-som-binman.dtsi b/arch/arm/dts/k3-am625-phycore-som-binman.dtsi index 9b536d679af..32d8804a395 100644 --- a/arch/arm/dts/k3-am625-phycore-som-binman.dtsi +++ b/arch/arm/dts/k3-am625-phycore-som-binman.dtsi @@ -36,7 +36,6 @@ ti_fs_enc: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-am62x-hs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg: combined-tifs-cfg.bin { filename = "combined-tifs-cfg.bin"; @@ -45,7 +44,6 @@ sysfw_inner_cert: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-am62x-hs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg: combined-dm-cfg.bin { filename = "combined-dm-cfg.bin"; @@ -82,7 +80,6 @@ ti_fs_enc_fs: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-am62x-hs-fs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_fs: combined-tifs-cfg.bin { filename = "combined-tifs-cfg.bin"; @@ -91,7 +88,6 @@ sysfw_inner_cert_fs: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-am62x-hs-fs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg_fs: combined-dm-cfg.bin { filename = "combined-dm-cfg.bin"; @@ -125,7 +121,6 @@ ti_fs_gp: ti-fs-gp.bin { filename = "ti-sysfw/ti-fs-firmware-am62x-gp.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_gp: combined-tifs-cfg-gp.bin { filename = "combined-tifs-cfg.bin"; diff --git a/arch/arm/dts/k3-am625-r5-beagleplay.dts b/arch/arm/dts/k3-am625-r5-beagleplay.dts index 9e0a6ed6784..f4b2cd8904e 100644 --- a/arch/arm/dts/k3-am625-r5-beagleplay.dts +++ b/arch/arm/dts/k3-am625-r5-beagleplay.dts @@ -46,6 +46,14 @@ }; }; +&main_timer0 { + /delete-property/ clocks; + /delete-property/ clocks-names; + /delete-property/ assigned-clocks; + /delete-property/ assigned-clock-parents; + clock-frequency = <25000000>; +}; + &dmsc { mboxes= <&secure_proxy_main 0>, <&secure_proxy_main 1>, @@ -103,7 +111,6 @@ ti_fs_gp: ti-fs-gp.bin { filename = "ti-sysfw/ti-fs-firmware-am62x-gp.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_gp: combined-tifs-cfg-gp.bin { filename = "combined-tifs-cfg.bin"; diff --git a/arch/arm/dts/k3-am625-r5-phycore-som-2gb.dts b/arch/arm/dts/k3-am625-r5-phycore-som-2gb.dts index 70154409b12..7132fae36fa 100644 --- a/arch/arm/dts/k3-am625-r5-phycore-som-2gb.dts +++ b/arch/arm/dts/k3-am625-r5-phycore-som-2gb.dts @@ -54,6 +54,14 @@ }; }; +&main_timer0 { + /delete-property/ clocks; + /delete-property/ clocks-names; + /delete-property/ assigned-clocks; + /delete-property/ assigned-clock-parents; + clock-frequency = <25000000>; +}; + &secure_proxy_sa3 { /* We require this for boot handshake */ status = "okay"; diff --git a/arch/arm/dts/k3-am625-sk-binman.dtsi b/arch/arm/dts/k3-am625-sk-binman.dtsi index cc619f5920e..6822a5dac89 100644 --- a/arch/arm/dts/k3-am625-sk-binman.dtsi +++ b/arch/arm/dts/k3-am625-sk-binman.dtsi @@ -34,7 +34,6 @@ ti_fs_enc: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-am62x-hs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg: combined-tifs-cfg.bin { filename = "combined-tifs-cfg.bin"; @@ -43,7 +42,6 @@ sysfw_inner_cert: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-am62x-hs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg: combined-dm-cfg.bin { filename = "combined-dm-cfg.bin"; @@ -80,7 +78,6 @@ ti_fs_enc_fs: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-am62x-hs-fs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_fs: combined-tifs-cfg.bin { filename = "combined-tifs-cfg.bin"; @@ -89,7 +86,6 @@ sysfw_inner_cert_fs: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-am62x-hs-fs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg_fs: combined-dm-cfg.bin { filename = "combined-dm-cfg.bin"; @@ -123,7 +119,6 @@ ti_fs_gp: ti-fs-gp.bin { filename = "ti-sysfw/ti-fs-firmware-am62x-gp.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_gp: combined-tifs-cfg-gp.bin { filename = "combined-tifs-cfg.bin"; @@ -263,7 +258,6 @@ }; dm: ti-dm { filename = "ti-dm/am62xx/ipc_echo_testb_mcu1_0_release_strip.xer5f"; - optional; }; }; @@ -391,7 +385,6 @@ dm { ti-dm { filename = "ti-dm/am62xx/ipc_echo_testb_mcu1_0_release_strip.xer5f"; - optional; }; }; diff --git a/arch/arm/dts/k3-am625-verdin-r5.dts b/arch/arm/dts/k3-am625-verdin-r5.dts index 2b333e70f5c..39e8ab8158e 100644 --- a/arch/arm/dts/k3-am625-verdin-r5.dts +++ b/arch/arm/dts/k3-am625-verdin-r5.dts @@ -69,6 +69,14 @@ ti,secure-host; }; +&main_timer0 { + /delete-property/ clocks; + /delete-property/ clocks-names; + /delete-property/ assigned-clocks; + /delete-property/ assigned-clock-parents; + clock-frequency = <25000000>; +}; + &secure_proxy_sa3 { /* We require this for boot handshake */ status = "okay"; diff --git a/arch/arm/dts/k3-am625-verdin-wifi-dev-binman.dtsi b/arch/arm/dts/k3-am625-verdin-wifi-dev-binman.dtsi index 5a8788b227b..bfbba28269c 100644 --- a/arch/arm/dts/k3-am625-verdin-wifi-dev-binman.dtsi +++ b/arch/arm/dts/k3-am625-verdin-wifi-dev-binman.dtsi @@ -34,7 +34,6 @@ ti_fs_enc: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-am62x-hs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg: combined-tifs-cfg.bin { filename = "combined-tifs-cfg.bin"; @@ -43,7 +42,6 @@ sysfw_inner_cert: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-am62x-hs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg: combined-dm-cfg.bin { filename = "combined-dm-cfg.bin"; @@ -80,7 +78,6 @@ ti_fs_enc_fs: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-am62x-hs-fs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_fs: combined-tifs-cfg.bin { filename = "combined-tifs-cfg.bin"; @@ -89,7 +86,6 @@ sysfw_inner_cert_fs: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-am62x-hs-fs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg_fs: combined-dm-cfg.bin { filename = "combined-dm-cfg.bin"; @@ -123,7 +119,6 @@ ti_fs_gp: ti-fs-gp.bin { filename = "ti-sysfw/ti-fs-firmware-am62x-gp.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_gp: combined-tifs-cfg-gp.bin { filename = "combined-tifs-cfg.bin"; diff --git a/arch/arm/dts/k3-am625-verdin-wifi-dev-u-boot.dtsi b/arch/arm/dts/k3-am625-verdin-wifi-dev-u-boot.dtsi index b3d237c8697..8487ea14800 100644 --- a/arch/arm/dts/k3-am625-verdin-wifi-dev-u-boot.dtsi +++ b/arch/arm/dts/k3-am625-verdin-wifi-dev-u-boot.dtsi @@ -12,10 +12,6 @@ eeprom2 = &eeprom_display_adapter; }; - chosen { - tick-timer = &main_timer0; - }; - memory@80000000 { bootph-all; }; @@ -25,10 +21,6 @@ }; }; -&main_timer0 { - clock-frequency = <25000000>; -}; - &main_bcdma { reg = <0x00 0x485c0100 0x00 0x100>, <0x00 0x4c000000 0x00 0x20000>, diff --git a/arch/arm/dts/k3-am62a-phycore-som-binman.dtsi b/arch/arm/dts/k3-am62a-phycore-som-binman.dtsi index 1871926c207..fd340101532 100644 --- a/arch/arm/dts/k3-am62a-phycore-som-binman.dtsi +++ b/arch/arm/dts/k3-am62a-phycore-som-binman.dtsi @@ -41,7 +41,6 @@ ti_fs_enc: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-am62ax-hs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg: combined-tifs-cfg.bin { filename = "combined-tifs-cfg.bin"; @@ -50,7 +49,6 @@ sysfw_inner_cert: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-am62ax-hs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg: combined-dm-cfg.bin { filename = "combined-dm-cfg.bin"; @@ -87,7 +85,6 @@ ti_fs_enc_fs: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-am62ax-hs-fs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_fs: combined-tifs-cfg.bin { filename = "combined-tifs-cfg.bin"; @@ -96,7 +93,6 @@ sysfw_inner_cert_fs: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-am62ax-hs-fs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg_fs: combined-dm-cfg.bin { filename = "combined-dm-cfg.bin"; @@ -130,7 +126,6 @@ ti_fs_gp: ti-fs-gp.bin { filename = "ti-sysfw/ti-fs-firmware-am62ax-gp.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_gp: combined-tifs-cfg-gp.bin { filename = "combined-tifs-cfg.bin"; @@ -269,7 +264,6 @@ }; dm: ti-dm { filename = "ti-dm/am62axx/ipc_echo_testb_mcu1_0_release_strip.xer5f"; - optional; }; }; @@ -456,7 +450,6 @@ dm { ti-dm { filename = "ti-dm/am62axx/ipc_echo_testb_mcu1_0_release_strip.xer5f"; - optional; }; }; diff --git a/arch/arm/dts/k3-am62a-sk-binman.dtsi b/arch/arm/dts/k3-am62a-sk-binman.dtsi index ed973541fff..877a513a241 100644 --- a/arch/arm/dts/k3-am62a-sk-binman.dtsi +++ b/arch/arm/dts/k3-am62a-sk-binman.dtsi @@ -38,7 +38,6 @@ ti_fs_enc: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-am62ax-hs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg: combined-tifs-cfg.bin { filename = "combined-tifs-cfg.bin"; @@ -47,7 +46,6 @@ sysfw_inner_cert: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-am62ax-hs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg: combined-dm-cfg.bin { filename = "combined-dm-cfg.bin"; @@ -84,7 +82,6 @@ ti_fs_enc_fs: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-am62ax-hs-fs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_fs: combined-tifs-cfg.bin { filename = "combined-tifs-cfg.bin"; @@ -93,7 +90,6 @@ sysfw_inner_cert_fs: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-am62ax-hs-fs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg_fs: combined-dm-cfg.bin { filename = "combined-dm-cfg.bin"; @@ -127,7 +123,6 @@ ti_fs_gp: ti-fs-gp.bin { filename = "ti-sysfw/ti-fs-firmware-am62ax-gp.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_gp: combined-tifs-cfg-gp.bin { filename = "combined-tifs-cfg.bin"; @@ -253,7 +248,6 @@ }; dm: ti-dm { filename = "ti-dm/am62axx/ipc_echo_testb_mcu1_0_release_strip.xer5f"; - optional; }; }; @@ -379,7 +373,6 @@ dm { ti-dm { filename = "ti-dm/am62axx/ipc_echo_testb_mcu1_0_release_strip.xer5f"; - optional; }; }; diff --git a/arch/arm/dts/k3-am62a7-phyboard-lyra-rdk-u-boot.dtsi b/arch/arm/dts/k3-am62a7-phyboard-lyra-rdk-u-boot.dtsi index f922f4b4781..73255a18e9b 100644 --- a/arch/arm/dts/k3-am62a7-phyboard-lyra-rdk-u-boot.dtsi +++ b/arch/arm/dts/k3-am62a7-phyboard-lyra-rdk-u-boot.dtsi @@ -13,7 +13,6 @@ / { chosen { stdout-path = "serial2:115200n8"; - tick-timer = &main_timer0; }; aliases { @@ -157,10 +156,6 @@ bootph-all; }; -&main_timer0 { - bootph-all; -}; - &main_uart0 { bootph-all; }; diff --git a/arch/arm/dts/k3-am62a7-r5-phycore-som-2gb.dts b/arch/arm/dts/k3-am62a7-r5-phycore-som-2gb.dts index 0060c7a6934..63b7864a469 100644 --- a/arch/arm/dts/k3-am62a7-r5-phycore-som-2gb.dts +++ b/arch/arm/dts/k3-am62a7-r5-phycore-som-2gb.dts @@ -88,6 +88,15 @@ ti,secure-host; }; +&main_timer0 { + /delete-property/ clocks; + /delete-property/ clocks-names; + /delete-property/ assigned-clocks; + /delete-property/ assigned-clock-parents; + clock-frequency = <25000000>; + bootph-pre-ram; +}; + &main_bcdma { ti,sci = <&dm_tifs>; }; diff --git a/arch/arm/dts/k3-am62p-sk-binman.dtsi b/arch/arm/dts/k3-am62p-sk-binman.dtsi index 8216add3498..d65e5c4d4e1 100644 --- a/arch/arm/dts/k3-am62p-sk-binman.dtsi +++ b/arch/arm/dts/k3-am62p-sk-binman.dtsi @@ -38,7 +38,6 @@ ti_fs_enc_fs: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-am62px-hs-fs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_fs: combined-tifs-cfg.bin { @@ -49,7 +48,6 @@ sysfw_inner_cert_fs: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-am62px-hs-fs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg_fs: combined-dm-cfg.bin { @@ -87,7 +85,6 @@ ti_fs_enc_hs: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-am62px-hs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_hs: combined-tifs-cfg.bin { @@ -98,7 +95,6 @@ sysfw_inner_cert_hs: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-am62px-hs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg_hs: combined-dm-cfg.bin { @@ -203,7 +199,6 @@ dm: ti-dm { filename = "ti-dm/am62pxx/ipc_echo_testb_mcu1_0_release_strip.xer5f"; - optional; }; }; diff --git a/arch/arm/dts/k3-am642-phycore-som-binman.dtsi b/arch/arm/dts/k3-am642-phycore-som-binman.dtsi index 5228eed19bf..966905bd64d 100644 --- a/arch/arm/dts/k3-am642-phycore-som-binman.dtsi +++ b/arch/arm/dts/k3-am642-phycore-som-binman.dtsi @@ -33,7 +33,6 @@ ti_sci_enc: ti-fs-enc.bin { filename = "ti-sysfw/ti-sci-firmware-am64x_sr2-hs-enc.bin"; type = "blob-ext"; - optional; }; combined_sysfw_cfg: combined-sysfw-cfg.bin { filename = "combined-sysfw-cfg.bin"; @@ -42,7 +41,6 @@ sysfw_inner_cert: sysfw-inner-cert { filename = "ti-sysfw/ti-sci-firmware-am64x_sr2-hs-cert.bin"; type = "blob-ext"; - optional; }; }; @@ -73,7 +71,6 @@ ti_sci_enc_fs: ti-fs-enc.bin { filename = "ti-sysfw/ti-sci-firmware-am64x_sr2-hs-fs-enc.bin"; type = "blob-ext"; - optional; }; combined_sysfw_cfg_fs: combined-sysfw-cfg.bin { filename = "combined-sysfw-cfg.bin"; @@ -82,7 +79,6 @@ sysfw_inner_cert_fs: sysfw-inner-cert { filename = "ti-sysfw/ti-sci-firmware-am64x_sr2-hs-fs-cert.bin"; type = "blob-ext"; - optional; }; }; @@ -109,7 +105,6 @@ ti_sci_gp: ti-sci-gp.bin { filename = "ti-sysfw/ti-sci-firmware-am64x-gp.bin"; type = "blob-ext"; - optional; }; combined_sysfw_cfg_gp: combined-sysfw-cfg-gp.bin { filename = "combined-sysfw-cfg.bin"; diff --git a/arch/arm/dts/k3-am64x-binman.dtsi b/arch/arm/dts/k3-am64x-binman.dtsi index f768c4d946d..32e47a3f688 100644 --- a/arch/arm/dts/k3-am64x-binman.dtsi +++ b/arch/arm/dts/k3-am64x-binman.dtsi @@ -29,7 +29,6 @@ ti_sci_enc: ti-fs-enc.bin { filename = "ti-sysfw/ti-sci-firmware-am64x_sr2-hs-enc.bin"; type = "blob-ext"; - optional; }; combined_sysfw_cfg: combined-sysfw-cfg.bin { filename = "combined-sysfw-cfg.bin"; @@ -38,7 +37,6 @@ sysfw_inner_cert: sysfw-inner-cert { filename = "ti-sysfw/ti-sci-firmware-am64x_sr2-hs-cert.bin"; type = "blob-ext"; - optional; }; }; @@ -69,7 +67,6 @@ ti_sci_enc_fs: ti-fs-enc.bin { filename = "ti-sysfw/ti-sci-firmware-am64x_sr2-hs-fs-enc.bin"; type = "blob-ext"; - optional; }; combined_sysfw_cfg_fs: combined-sysfw-cfg.bin { filename = "combined-sysfw-cfg.bin"; @@ -78,7 +75,6 @@ sysfw_inner_cert_fs: sysfw-inner-cert { filename = "ti-sysfw/ti-sci-firmware-am64x_sr2-hs-fs-cert.bin"; type = "blob-ext"; - optional; }; }; @@ -105,7 +101,6 @@ ti_sci_gp: ti-sci-gp.bin { filename = "ti-sysfw/ti-sci-firmware-am64x-gp.bin"; type = "blob-ext"; - optional; }; combined_sysfw_cfg_gp: combined-sysfw-cfg-gp.bin { filename = "combined-sysfw-cfg.bin"; diff --git a/arch/arm/dts/k3-am65x-binman.dtsi b/arch/arm/dts/k3-am65x-binman.dtsi index 350775e42c2..cc82c8b5768 100644 --- a/arch/arm/dts/k3-am65x-binman.dtsi +++ b/arch/arm/dts/k3-am65x-binman.dtsi @@ -32,12 +32,10 @@ ti_sci_cert: ti-sci-cert.bin { filename = "ti-sysfw/ti-sci-firmware-am65x_sr2-hs-cert.bin"; type = "blob-ext"; - optional; }; ti-sci-firmware-am65x-hs-enc.bin { filename = "ti-sysfw/ti-sci-firmware-am65x_sr2-hs-enc.bin"; type = "blob-ext"; - optional; }; }; itb { @@ -73,7 +71,6 @@ ti_sci: ti-sci.bin { filename = "ti-sysfw/ti-sci-firmware-am65x_sr2-gp.bin"; type = "blob-ext"; - optional; }; }; itb_gp { diff --git a/arch/arm/dts/k3-am67a-beagley-ai-u-boot.dtsi b/arch/arm/dts/k3-am67a-beagley-ai-u-boot.dtsi index ba05d410357..2a0023fb7c3 100644 --- a/arch/arm/dts/k3-am67a-beagley-ai-u-boot.dtsi +++ b/arch/arm/dts/k3-am67a-beagley-ai-u-boot.dtsi @@ -88,7 +88,6 @@ ti_fs_enc: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-j722s-hs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg: combined-tifs-cfg.bin { @@ -99,7 +98,6 @@ sysfw_inner_cert: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-j722s-hs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg: combined-dm-cfg.bin { @@ -140,7 +138,6 @@ ti_fs_enc_fs: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-j722s-hs-fs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_fs: combined-tifs-cfg.bin { @@ -151,7 +148,6 @@ sysfw_inner_cert_fs: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-j722s-hs-fs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg_fs: combined-dm-cfg.bin { @@ -181,7 +177,6 @@ dm: ti-dm { filename = "ti-dm/j722s/ipc_echo_testb_mcu1_0_release_strip.xer5f"; - optional; }; }; diff --git a/arch/arm/dts/k3-j7200-binman.dtsi b/arch/arm/dts/k3-j7200-binman.dtsi index 47a4cde6b85..b74bd1657f9 100644 --- a/arch/arm/dts/k3-j7200-binman.dtsi +++ b/arch/arm/dts/k3-j7200-binman.dtsi @@ -35,7 +35,6 @@ ti_fs_enc_sr1: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-j7200-hs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_sr1: combined-tifs-cfg.bin { filename = "combined-tifs-cfg.bin"; @@ -44,7 +43,6 @@ sysfw_inner_cert_sr1: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-j7200-hs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg_sr1: combined-dm-cfg.bin { filename = "combined-dm-cfg.bin"; @@ -80,7 +78,6 @@ ti_fs_enc: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-j7200_sr2-hs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg: combined-tifs-cfg.bin { filename = "combined-tifs-cfg.bin"; @@ -89,7 +86,6 @@ sysfw_inner_cert: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-j7200_sr2-hs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg: combined-dm-cfg.bin { filename = "combined-dm-cfg.bin"; @@ -127,7 +123,6 @@ ti_fs_enc_fs_sr1: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-j7200-hs-fs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_fs_sr1: combined-tifs-cfg.bin { filename = "combined-tifs-cfg.bin"; @@ -136,7 +131,6 @@ sysfw_inner_cert_fs_sr1: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-j7200-hs-fs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg_fs_sr1: combined-dm-cfg.bin { filename = "combined-dm-cfg.bin"; @@ -172,7 +166,6 @@ ti_fs_enc_fs: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-j7200_sr2-hs-fs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_fs: combined-tifs-cfg.bin { filename = "combined-tifs-cfg.bin"; @@ -181,7 +174,6 @@ sysfw_inner_cert_fs: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-j7200_sr2-hs-fs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg_fs: combined-dm-cfg.bin { filename = "combined-dm-cfg.bin"; @@ -216,7 +208,6 @@ ti_fs_gp: ti-fs-gp.bin { filename = "ti-sysfw/ti-fs-firmware-j7200-gp.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_gp: combined-tifs-cfg-gp.bin { filename = "combined-tifs-cfg.bin"; @@ -339,7 +330,6 @@ }; dm: ti-dm { filename = "ti-dm/j7200/ipc_echo_testb_mcu1_0_release_strip.xer5f"; - optional; }; }; @@ -425,7 +415,6 @@ dm { ti-dm { filename = "ti-dm/j7200/ipc_echo_testb_mcu1_0_release_strip.xer5f"; - optional; }; }; diff --git a/arch/arm/dts/k3-j721e-binman.dtsi b/arch/arm/dts/k3-j721e-binman.dtsi index 6adfab164ee..9522a956506 100644 --- a/arch/arm/dts/k3-j721e-binman.dtsi +++ b/arch/arm/dts/k3-j721e-binman.dtsi @@ -46,12 +46,10 @@ ti_fs_cert: ti-fs-cert.bin { filename = "ti-sysfw/ti-fs-firmware-j721e_sr1_1-hs-cert.bin"; type = "blob-ext"; - optional; }; ti-fs-firmware-j721e_sr1_1-hs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-j721e_sr1_1-hs-enc.bin"; type = "blob-ext"; - optional; }; }; @@ -67,12 +65,10 @@ ti_fs_cert_sr2: ti-fs-cert.bin { filename = "ti-sysfw/ti-fs-firmware-j721e_sr2-hs-cert.bin"; type = "blob-ext"; - optional; }; ti-fs-firmware-j721e_sr2-hs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-j721e_sr2-hs-enc.bin"; type = "blob-ext"; - optional; }; }; @@ -148,12 +144,10 @@ ti-fs-cert-fs.bin { filename = "ti-sysfw/ti-fs-firmware-j721e_sr1_1-hs-fs-cert.bin"; type = "blob-ext"; - optional; }; ti-fs-firmware-j721e-hs-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-j721e_sr1_1-hs-fs-enc.bin"; type = "blob-ext"; - optional; }; }; itb_fs_sr1_1 { @@ -235,12 +229,10 @@ ti-fs-cert-fs.bin { filename = "ti-sysfw/ti-fs-firmware-j721e_sr2-hs-fs-cert.bin"; type = "blob-ext"; - optional; }; ti-fs-firmware-j721e-hs-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-j721e_sr2-hs-fs-enc.bin"; type = "blob-ext"; - optional; }; }; itb_fs { @@ -276,7 +268,6 @@ ti_fs: ti-fs.bin { filename = "ti-sysfw/ti-fs-firmware-j721e-gp.bin"; type = "blob-ext"; - optional; }; }; itb_gp { @@ -461,7 +452,6 @@ }; dm: ti-dm { filename = "ti-dm/j721e/ipc_echo_testb_mcu1_0_release_strip.xer5f"; - optional; }; }; @@ -546,7 +536,6 @@ dm { ti-dm { filename = "ti-dm/j721e/ipc_echo_testb_mcu1_0_release_strip.xer5f"; - optional; }; }; diff --git a/arch/arm/dts/k3-j721e-r5-beagleboneai64.dts b/arch/arm/dts/k3-j721e-r5-beagleboneai64.dts index 586ddb6e7c8..5f0dfe9c2fa 100644 --- a/arch/arm/dts/k3-j721e-r5-beagleboneai64.dts +++ b/arch/arm/dts/k3-j721e-r5-beagleboneai64.dts @@ -47,7 +47,6 @@ ti_fs: ti-fs.bin { filename = "ti-sysfw/ti-fs-firmware-j721e-gp.bin"; type = "blob-ext"; - optional; }; }; diff --git a/arch/arm/dts/k3-j721s2-binman.dtsi b/arch/arm/dts/k3-j721s2-binman.dtsi index 73af184d27e..4f524e58ceb 100644 --- a/arch/arm/dts/k3-j721s2-binman.dtsi +++ b/arch/arm/dts/k3-j721s2-binman.dtsi @@ -34,7 +34,6 @@ ti_fs_enc: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-j721s2-hs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg: combined-tifs-cfg.bin { filename = "combined-tifs-cfg.bin"; @@ -43,7 +42,6 @@ sysfw_inner_cert: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-j721s2-hs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg: combined-dm-cfg.bin { filename = "combined-dm-cfg.bin"; @@ -79,7 +77,6 @@ ti_fs_enc_fs: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-j721s2-hs-fs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_fs: combined-tifs-cfg.bin { filename = "combined-tifs-cfg.bin"; @@ -88,7 +85,6 @@ sysfw_inner_cert_fs: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-j721s2-hs-fs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg_fs: combined-dm-cfg.bin { filename = "combined-dm-cfg.bin"; @@ -123,7 +119,6 @@ ti_fs_gp: ti-fs-gp.bin { filename = "ti-sysfw/ti-fs-firmware-j721s2-gp.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_gp: combined-tifs-cfg-gp.bin { filename = "combined-tifs-cfg.bin"; @@ -280,7 +275,6 @@ }; dm: ti-dm { filename = "ti-dm/j721s2/ipc_echo_testb_mcu1_0_release_strip.xer5f"; - optional; }; }; @@ -366,7 +360,6 @@ dm { ti-dm { filename = "ti-dm/j721s2/ipc_echo_testb_mcu1_0_release_strip.xer5f"; - optional; }; }; diff --git a/arch/arm/dts/k3-j722s-binman.dtsi b/arch/arm/dts/k3-j722s-binman.dtsi index 8f1471371e5..57e966ea666 100644 --- a/arch/arm/dts/k3-j722s-binman.dtsi +++ b/arch/arm/dts/k3-j722s-binman.dtsi @@ -36,7 +36,6 @@ ti_fs_enc: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-j722s-hs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg: combined-tifs-cfg.bin { @@ -47,7 +46,6 @@ sysfw_inner_cert: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-j722s-hs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg: combined-dm-cfg.bin { @@ -88,7 +86,6 @@ ti_fs_enc_fs: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-j722s-hs-fs-enc.bin"; type = "blob-ext"; - optional; }; combined_tifs_cfg_fs: combined-tifs-cfg.bin { @@ -99,7 +96,6 @@ sysfw_inner_cert_fs: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-j722s-hs-fs-cert.bin"; type = "blob-ext"; - optional; }; combined_dm_cfg_fs: combined-dm-cfg.bin { @@ -129,7 +125,6 @@ dm: ti-dm { filename = "ti-dm/j722s/ipc_echo_testb_mcu1_0_release_strip.xer5f"; - optional; }; }; diff --git a/arch/arm/dts/k3-j784s4-binman.dtsi b/arch/arm/dts/k3-j784s4-binman.dtsi index cb1fbc65923..a7ce1ee2b03 100644 --- a/arch/arm/dts/k3-j784s4-binman.dtsi +++ b/arch/arm/dts/k3-j784s4-binman.dtsi @@ -39,7 +39,6 @@ ti_fs_enc: ti-fs-enc.bin { type = "blob-ext"; - optional; }; combined_tifs_cfg: combined-tifs-cfg.bin { @@ -49,7 +48,6 @@ sysfw_inner_cert: sysfw-inner-cert { type = "blob-ext"; - optional; }; combined_dm_cfg: combined-dm-cfg.bin { @@ -88,7 +86,6 @@ ti_fs_enc_fs: ti-fs-enc.bin { type = "blob-ext"; - optional; }; combined_tifs_cfg_fs: combined-tifs-cfg.bin { @@ -98,7 +95,6 @@ sysfw_inner_cert_fs: sysfw-inner-cert { type = "blob-ext"; - optional; }; combined_dm_cfg_fs: combined-dm-cfg.bin { @@ -135,7 +131,6 @@ ti_fs_gp: ti-fs-gp.bin { type = "blob-ext"; - optional; }; combined_tifs_cfg_gp: combined-tifs-cfg-gp.bin { @@ -166,7 +161,6 @@ }; dm: ti-dm { - optional; }; }; @@ -255,7 +249,6 @@ images { dm { ti-dm { - optional; }; }; diff --git a/arch/arm/mach-apple/board.c b/arch/arm/mach-apple/board.c index 2644a04a622..2604c5a710e 100644 --- a/arch/arm/mach-apple/board.c +++ b/arch/arm/mach-apple/board.c @@ -6,6 +6,7 @@ #include <dm.h> #include <dm/uclass-internal.h> #include <efi_loader.h> +#include <env.h> #include <lmb.h> #include <asm/armv8/mmu.h> diff --git a/arch/arm/mach-imx/imx8m/soc.c b/arch/arm/mach-imx/imx8m/soc.c index 567e8e9e81a..3cdb71a2528 100644 --- a/arch/arm/mach-imx/imx8m/soc.c +++ b/arch/arm/mach-imx/imx8m/soc.c @@ -38,7 +38,7 @@ DECLARE_GLOBAL_DATA_PTR; -#if defined(CONFIG_IMX_HAB) +#if IS_ENABLED(CONFIG_IMX_HAB) struct imx_fuse const imx_sec_config_fuse = { .bank = 1, .word = 3, @@ -52,7 +52,7 @@ struct imx_fuse const imx_field_return_fuse = { int timer_init(void) { -#ifdef CONFIG_XPL_BUILD +#if IS_ENABLED(CONFIG_XPL_BUILD) struct sctr_regs *sctr = (struct sctr_regs *)SYSCNT_CTRL_BASE_ADDR; unsigned long freq = readl(&sctr->cntfid0); @@ -110,7 +110,7 @@ void set_wdog_reset(struct wdog_regs *wdog) setbits_le16(&wdog->wcr, WDOG_WDT_MASK | WDOG_WDZST_MASK); } -#ifdef CONFIG_ARMV8_PSCI +#if IS_ENABLED(CONFIG_ARMV8_PSCI) #define PTE_MAP_NS PTE_BLOCK_NS #else #define PTE_MAP_NS 0 @@ -700,11 +700,11 @@ int arch_cpu_init(void) return 0; } -#if defined(CONFIG_IMX8MN) || defined(CONFIG_IMX8MP) +#if IS_ENABLED(CONFIG_IMX8MN) || IS_ENABLED(CONFIG_IMX8MP) struct rom_api *g_rom_api = (struct rom_api *)0x980; #endif -#if defined(CONFIG_IMX8M) +#if IS_ENABLED(CONFIG_IMX8M) #include <spl.h> int imx8m_detect_secondary_image_boot(void) { @@ -790,8 +790,8 @@ int boot_mode_getprisec(void) } #endif -#if defined(CONFIG_IMX8MN) || defined(CONFIG_IMX8MP) -#ifdef SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION +#if IS_ENABLED(CONFIG_IMX8MN) || IS_ENABLED(CONFIG_IMX8MP) +#if IS_ENABLED(CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION) #define IMG_CNTN_SET1_OFFSET GENMASK(22, 19) unsigned long arch_spl_mmc_get_uboot_raw_sector(struct mmc *mmc, unsigned long raw_sect) @@ -826,7 +826,7 @@ unsigned long arch_spl_mmc_get_uboot_raw_sector(struct mmc *mmc, return raw_sect; } -#endif /* SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION */ +#endif /* CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION */ #endif bool is_usb_boot(void) @@ -834,7 +834,7 @@ bool is_usb_boot(void) return get_boot_device() == USB_BOOT; } -#ifdef CONFIG_OF_SYSTEM_SETUP +#if IS_ENABLED(CONFIG_OF_SYSTEM_SETUP) bool check_fdt_new_path(void *blob) { const char *soc_path = "/soc@0"; @@ -880,7 +880,7 @@ add_status: return 0; } -#ifdef CONFIG_IMX8MQ +#if IS_ENABLED(CONFIG_IMX8MQ) bool check_dcss_fused(void) { struct ocotp_regs *ocotp = (struct ocotp_regs *)OCOTP_BASE_ADDR; @@ -1026,7 +1026,7 @@ int disable_vpu_nodes(void *blob) return -EPERM; } -#ifdef CONFIG_IMX8MN_LOW_DRIVE_MODE +#if IS_ENABLED(CONFIG_IMX8MN_LOW_DRIVE_MODE) static int low_drive_gpu_freq(void *blob) { static const char *nodes_path_8mn[] = { @@ -1311,7 +1311,7 @@ int ft_system_setup(void *blob, struct bd_info *bd) "/cpus/cpu@3", }; -#ifdef CONFIG_IMX8MQ +#if IS_ENABLED(CONFIG_IMX8MQ) int i = 0; int rc; int nodeoff; @@ -1387,7 +1387,7 @@ usb_modify_speed: if (is_imx8md()) disable_cpu_nodes(blob, nodes_path, 2, 4); -#elif defined(CONFIG_IMX8MM) +#elif IS_ENABLED(CONFIG_IMX8MM) if (is_imx8mml() || is_imx8mmdl() || is_imx8mmsl()) disable_vpu_nodes(blob); @@ -1396,10 +1396,10 @@ usb_modify_speed: else if (is_imx8mms() || is_imx8mmsl()) disable_cpu_nodes(blob, nodes_path, 3, 4); -#elif defined(CONFIG_IMX8MN) +#elif IS_ENABLED(CONFIG_IMX8MN) if (is_imx8mnl() || is_imx8mndl() || is_imx8mnsl()) disable_gpu_nodes(blob); -#ifdef CONFIG_IMX8MN_LOW_DRIVE_MODE +#if IS_ENABLED(CONFIG_IMX8MN_LOW_DRIVE_MODE) else { int ldm_gpu = low_drive_gpu_freq(blob); @@ -1415,7 +1415,7 @@ usb_modify_speed: else if (is_imx8mns() || is_imx8mnsl() || is_imx8mnus()) disable_cpu_nodes(blob, nodes_path, 3, 4); -#elif defined(CONFIG_IMX8MP) +#elif IS_ENABLED(CONFIG_IMX8MP) if (is_imx8mpul()) { /* Disable GPU */ disable_gpu_nodes(blob); @@ -1471,7 +1471,7 @@ void reset_cpu(void) } #endif -#if defined(CONFIG_ARCH_MISC_INIT) +#if IS_ENABLED(CONFIG_ARCH_MISC_INIT) int arch_misc_init(void) { if (IS_ENABLED(CONFIG_FSL_CAAM)) { @@ -1487,8 +1487,8 @@ int arch_misc_init(void) } #endif -#if defined(CONFIG_XPL_BUILD) -#if defined(CONFIG_IMX8MQ) || defined(CONFIG_IMX8MM) || defined(CONFIG_IMX8MN) +#if IS_ENABLED(CONFIG_XPL_BUILD) +#if IS_ENABLED(CONFIG_IMX8MQ) || IS_ENABLED(CONFIG_IMX8MM) || IS_ENABLED(CONFIG_IMX8MN) bool serror_need_skip = true; void do_error(struct pt_regs *pt_regs) @@ -1523,7 +1523,7 @@ void do_error(struct pt_regs *pt_regs) #endif #endif -#if defined(CONFIG_IMX8MN) || defined(CONFIG_IMX8MP) +#if IS_ENABLED(CONFIG_IMX8MN) || IS_ENABLED(CONFIG_IMX8MP) enum env_location arch_env_get_location(enum env_operation op, int prio) { enum boot_device dev = get_boot_device(); @@ -1571,7 +1571,7 @@ enum env_location arch_env_get_location(enum env_operation op, int prio) #endif -#ifdef CONFIG_IMX_BOOTAUX +#if IS_ENABLED(CONFIG_IMX_BOOTAUX) const struct rproc_att hostmap[] = { /* aux core , host core, size */ { 0x00000000, 0x007e0000, 0x00020000 }, diff --git a/arch/arm/mach-imx/imx9/Kconfig b/arch/arm/mach-imx/imx9/Kconfig index 0fd82dc0811..e6cafdcd813 100644 --- a/arch/arm/mach-imx/imx9/Kconfig +++ b/arch/arm/mach-imx/imx9/Kconfig @@ -73,6 +73,7 @@ config TARGET_PHYCORE_IMX93 bool "phycore_imx93" select IMX93 select IMX9_LPDDR4X + imply OF_UPSTREAM select OF_BOARD_FIXUP select OF_BOARD_SETUP diff --git a/arch/arm/mach-imx/mx5/clock.c b/arch/arm/mach-imx/mx5/clock.c index 41116e2c6a2..9901f8a7b56 100644 --- a/arch/arm/mach-imx/mx5/clock.c +++ b/arch/arm/mach-imx/mx5/clock.c @@ -10,6 +10,7 @@ #include <log.h> #include <asm/io.h> #include <linux/errno.h> +#include <linux/string.h> #include <asm/arch/imx-regs.h> #include <asm/arch/crm_regs.h> #include <asm/arch/clock.h> diff --git a/arch/arm/mach-imx/spl_imx_romapi.c b/arch/arm/mach-imx/spl_imx_romapi.c index 3982f4cca18..b7008df8e35 100644 --- a/arch/arm/mach-imx/spl_imx_romapi.c +++ b/arch/arm/mach-imx/spl_imx_romapi.c @@ -35,12 +35,10 @@ ulong __weak spl_romapi_get_uboot_base(u32 image_offset, u32 rom_bt_dev) { u32 sector = 0; - /* - * Some boards use this value even though MMC is not enabled in SPL, for - * example imx8mn_bsh_smm_s2 - */ -#ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR +#if IS_ENABLED(CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR) sector = CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR; +#elif IS_ENABLED(CONFIG_SPL_NAND_RAW_U_BOOT_USE_SECTOR) + sector = CONFIG_SPL_NAND_RAW_U_BOOT_SECTOR; #endif return image_offset + sector * 512 - 0x8000; diff --git a/arch/arm/mach-k3/am62x/boot.c b/arch/arm/mach-k3/am62x/boot.c index 132b42f7edb..a3a6cda6bdb 100644 --- a/arch/arm/mach-k3/am62x/boot.c +++ b/arch/arm/mach-k3/am62x/boot.c @@ -101,3 +101,43 @@ u32 get_boot_device(void) return bootmedia; } + +const char *get_reset_reason(void) +{ + u32 reset_reason = readl(CTRLMMR_MCU_RST_SRC); + + /* After reading reset source register, software must clear it */ + if (reset_reason) + writel(reset_reason, CTRLMMR_MCU_RST_SRC); + + if (reset_reason == 0 || + (reset_reason & (RST_SRC_SW_MAIN_POR_FROM_MAIN | + RST_SRC_SW_MAIN_POR_FROM_MCU | + RST_SRC_DS_MAIN_PORZ))) + return "POR"; + + if (reset_reason & (RST_SRC_SAFETY_ERR | RST_SRC_MAIN_ESM_ERR)) + return "ESM"; + + if (reset_reason & RST_SRC_DM_WDT_RST) + return "WDOG"; + + if (reset_reason & (RST_SRC_SW_MAIN_WARM_FROM_MAIN | + RST_SRC_SW_MAIN_WARM_FROM_MCU | + RST_SRC_SW_MCU_WARM_RST)) + return "RST"; + + if (reset_reason & (RST_SRC_SMS_WARM_RST | RST_SRC_SMS_COLD_RST)) + return "DMSC"; + + if (reset_reason & RST_SRC_DEBUG_RST) + return "JTAG"; + + if (reset_reason & RST_SRC_THERMAL_RST) + return "THERMAL"; + + if (reset_reason & (RST_SRC_MAIN_RESET_PIN | RST_SRC_MCU_RESET_PIN)) + return "PIN"; + + return "UNKNOWN"; +} diff --git a/arch/arm/mach-k3/common.c b/arch/arm/mach-k3/common.c index fc230f180d0..0323001d6d3 100644 --- a/arch/arm/mach-k3/common.c +++ b/arch/arm/mach-k3/common.c @@ -175,11 +175,17 @@ static const char *get_device_type_name(void) } } +__weak const char *get_reset_reason(void) +{ + return NULL; +} + int print_cpuinfo(void) { struct udevice *soc; char name[64]; int ret; + const char *reset_reason; printf("SoC: "); @@ -201,6 +207,10 @@ int print_cpuinfo(void) printf("%s\n", get_device_type_name()); + reset_reason = get_reset_reason(); + if (reset_reason) + printf("Reset reason: %s\n", reset_reason); + return 0; } #endif diff --git a/arch/arm/mach-k3/include/mach/am62_hardware.h b/arch/arm/mach-k3/include/mach/am62_hardware.h index bcbc4821c82..c33362696c4 100644 --- a/arch/arm/mach-k3/include/mach/am62_hardware.h +++ b/arch/arm/mach-k3/include/mach/am62_hardware.h @@ -79,6 +79,25 @@ #define CTRLMMR_MCU_RST_CTRL (MCU_CTRL_MMR0_BASE + 0x18170) +/* Reset Reason Detection */ +#define CTRLMMR_MCU_RST_SRC (MCU_CTRL_MMR0_BASE + 0x18178) + +#define RST_SRC_SAFETY_ERR BIT(31) +#define RST_SRC_MAIN_ESM_ERR BIT(30) +#define RST_SRC_SW_MAIN_POR_FROM_MAIN BIT(25) +#define RST_SRC_SW_MAIN_POR_FROM_MCU BIT(24) +#define RST_SRC_DS_MAIN_PORZ BIT(23) +#define RST_SRC_DM_WDT_RST BIT(22) +#define RST_SRC_SW_MAIN_WARM_FROM_MAIN BIT(21) +#define RST_SRC_SW_MAIN_WARM_FROM_MCU BIT(20) +#define RST_SRC_SW_MCU_WARM_RST BIT(16) +#define RST_SRC_SMS_WARM_RST BIT(13) +#define RST_SRC_SMS_COLD_RST BIT(12) +#define RST_SRC_DEBUG_RST BIT(8) +#define RST_SRC_THERMAL_RST BIT(4) +#define RST_SRC_MAIN_RESET_PIN BIT(2) +#define RST_SRC_MCU_RESET_PIN BIT(0) + /* Debounce register configuration */ #define CTRLMMR_DBOUNCE_CFG(index) (MCU_CTRL_MMR0_BASE + 0x4080 + (index * 4)) diff --git a/arch/arm/mach-k3/include/mach/hardware.h b/arch/arm/mach-k3/include/mach/hardware.h index fc7bee4d00b..81b5f1fa45e 100644 --- a/arch/arm/mach-k3/include/mach/hardware.h +++ b/arch/arm/mach-k3/include/mach/hardware.h @@ -125,4 +125,5 @@ struct rom_extended_boot_data { }; u32 get_boot_device(void); +const char *get_reset_reason(void); #endif /* _ASM_ARCH_HARDWARE_H_ */ diff --git a/arch/arm/mach-k3/r5/common.c b/arch/arm/mach-k3/r5/common.c index 0b6604039f3..fa146549f13 100644 --- a/arch/arm/mach-k3/r5/common.c +++ b/arch/arm/mach-k3/r5/common.c @@ -5,6 +5,7 @@ * Copyright (C) 2023 Texas Instruments Incorporated - https://www.ti.com/ */ +#include <env.h> #include <linux/printk.h> #include <linux/types.h> #include <asm/hardware.h> diff --git a/arch/arm/mach-keystone/cmd_clock.c b/arch/arm/mach-keystone/cmd_clock.c index e9ecc05953a..7b94a80b725 100644 --- a/arch/arm/mach-keystone/cmd_clock.c +++ b/arch/arm/mach-keystone/cmd_clock.c @@ -8,6 +8,7 @@ #include <vsprintf.h> #include <command.h> +#include <linux/string.h> #include <asm/arch/hardware.h> #include <asm/arch/clock.h> #include <asm/arch/psc_defs.h> diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig index 6761a9cb393..f1ccedba5d7 100644 --- a/arch/arm/mach-kirkwood/Kconfig +++ b/arch/arm/mach-kirkwood/Kconfig @@ -50,11 +50,13 @@ config TARGET_DS109 bool "Synology DS109" select KW88F6281 select SHEEVA_88SV131 + select KIRKWOOD_COMMON config TARGET_GURUPLUG bool "GuruPlug Board" select KW88F6281 select SHEEVA_88SV131 + select KIRKWOOD_COMMON config TARGET_SHEEVAPLUG bool "SheevaPlug Board" @@ -86,6 +88,7 @@ config TARGET_DNS325 bool "dns325 Board" select FEROCEON_88FR131 select KW88F6281 + select KIRKWOOD_COMMON config TARGET_ICONNECT bool "iconnect Board" @@ -103,15 +106,18 @@ config TARGET_NET2BIG_V2 bool "LaCie 2Big Network v2 NAS Board" select FEROCEON_88FR131 select KW88F6281 + select KIRKWOOD_COMMON config TARGET_NETSPACE_V2 bool "LaCie netspace_v2 Board" select FEROCEON_88FR131 + select KIRKWOOD_COMMON config TARGET_IB62X0 bool "ib62x0 Board" select FEROCEON_88FR131 select KW88F6281 + select KIRKWOOD_COMMON config TARGET_DOCKSTAR bool "Dockstar Board" @@ -129,6 +135,7 @@ config TARGET_NAS220 bool "BlackArmor NAS220" select FEROCEON_88FR131 select KW88F6192 + select KIRKWOOD_COMMON config TARGET_NSA310S bool "Zyxel NSA310S" @@ -146,11 +153,13 @@ config TARGET_SBx81LIFKW bool "Allied Telesis SBx81GS24/SBx81GT40/SBx81XS6/SBx81XS16" select FEROCEON_88FR131 select KW88F6281 + select KIRKWOOD_COMMON config TARGET_SBx81LIFXCAT bool "Allied Telesis SBx81GP24/SBx81GT24" select FEROCEON_88FR131 select KW88F6281 + select KIRKWOOD_COMMON endchoice diff --git a/arch/arm/mach-socfpga/board.c b/arch/arm/mach-socfpga/board.c index 8506d510413..bda12324803 100644 --- a/arch/arm/mach-socfpga/board.c +++ b/arch/arm/mach-socfpga/board.c @@ -7,6 +7,7 @@ #include <config.h> #include <errno.h> +#include <env.h> #include <fdtdec.h> #include <log.h> #include <init.h> diff --git a/arch/arm/mach-stm32mp/cmd_stm32prog/cmd_stm32prog.c b/arch/arm/mach-stm32mp/cmd_stm32prog/cmd_stm32prog.c index 04640e476e6..506ecac2ef0 100644 --- a/arch/arm/mach-stm32mp/cmd_stm32prog/cmd_stm32prog.c +++ b/arch/arm/mach-stm32mp/cmd_stm32prog/cmd_stm32prog.c @@ -6,6 +6,7 @@ #include <bootm.h> #include <command.h> #include <dfu.h> +#include <env.h> #include <image.h> #include <asm/arch/stm32prog.h> #include <linux/printk.h> diff --git a/arch/arm/mach-tegra/dt-setup.c b/arch/arm/mach-tegra/dt-setup.c index 7f1c3538ebe..a74d59205d4 100644 --- a/arch/arm/mach-tegra/dt-setup.c +++ b/arch/arm/mach-tegra/dt-setup.c @@ -3,6 +3,7 @@ * Copyright (c) 2010-2016, NVIDIA CORPORATION. */ +#include <env.h> #include <fdtdec.h> #include <stdlib.h> #include <linux/if_ether.h> diff --git a/arch/arm/mach-tegra/tegra124/bct.c b/arch/arm/mach-tegra/tegra124/bct.c index a71aa87fce1..4dc4b7138ab 100644 --- a/arch/arm/mach-tegra/tegra124/bct.c +++ b/arch/arm/mach-tegra/tegra124/bct.c @@ -7,6 +7,7 @@ #include <command.h> #include <log.h> #include <vsprintf.h> +#include <linux/string.h> #include <asm/arch-tegra/crypto.h> #include "bct.h" #include "uboot_aes.h" diff --git a/arch/arm/mach-tegra/tegra20/bct.c b/arch/arm/mach-tegra/tegra20/bct.c index b647b6b26d2..253cb243676 100644 --- a/arch/arm/mach-tegra/tegra20/bct.c +++ b/arch/arm/mach-tegra/tegra20/bct.c @@ -7,6 +7,7 @@ #include <command.h> #include <log.h> #include <vsprintf.h> +#include <linux/string.h> #include <asm/arch-tegra/crypto.h> #include "bct.h" #include "uboot_aes.h" diff --git a/arch/arm/mach-tegra/tegra30/bct.c b/arch/arm/mach-tegra/tegra30/bct.c index 250009ea8d8..398ba1de386 100644 --- a/arch/arm/mach-tegra/tegra30/bct.c +++ b/arch/arm/mach-tegra/tegra30/bct.c @@ -7,6 +7,7 @@ #include <command.h> #include <log.h> #include <vsprintf.h> +#include <linux/string.h> #include <asm/arch-tegra/crypto.h> #include "bct.h" #include "uboot_aes.h" diff --git a/arch/arm/mach-uniphier/dram/cmd_ddrmphy.c b/arch/arm/mach-uniphier/dram/cmd_ddrmphy.c index 629f8b90c9d..be4ce3265bb 100644 --- a/arch/arm/mach-uniphier/dram/cmd_ddrmphy.c +++ b/arch/arm/mach-uniphier/dram/cmd_ddrmphy.c @@ -9,6 +9,7 @@ #include <linux/io.h> #include <linux/printk.h> #include <linux/sizes.h> +#include <linux/string.h> #include "../soc-info.h" #include "ddrmphy-regs.h" diff --git a/arch/arm/mach-uniphier/dram/cmd_ddrphy.c b/arch/arm/mach-uniphier/dram/cmd_ddrphy.c index ca519d1c7e0..3ccafe20638 100644 --- a/arch/arm/mach-uniphier/dram/cmd_ddrphy.c +++ b/arch/arm/mach-uniphier/dram/cmd_ddrphy.c @@ -10,6 +10,7 @@ #include <linux/io.h> #include <linux/printk.h> #include <linux/sizes.h> +#include <linux/string.h> #include "../soc-info.h" #include "ddrphy-regs.h" |