From d0e52c6f29efa9b728ed6e7f705d4e92a8ff9d2d Mon Sep 17 00:00:00 2001 From: Ley Foon Tan Date: Fri, 24 May 2019 10:29:58 +0800 Subject: [PATCH 01/51] pci: intel: Increase TLP polling counter Some PCIe devices require longer time to response. Increase polling counter to 20000 (~100ms). Signed-off-by: Ley Foon Tan --- drivers/pci/pcie_intel_fpga.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/pci/pcie_intel_fpga.c b/drivers/pci/pcie_intel_fpga.c index 3cdf05b314..e74b35ac16 100644 --- a/drivers/pci/pcie_intel_fpga.c +++ b/drivers/pci/pcie_intel_fpga.c @@ -56,7 +56,7 @@ #define TLP_COMP_STATUS(s) (((s) >> 13) & 7) #define TLP_BYTE_COUNT(s) (((s) >> 0) & 0xfff) #define TLP_HDR_SIZE 3 -#define TLP_LOOP 500 +#define TLP_LOOP 20000 #define DWORD_MASK 3 #define IS_ROOT_PORT(pcie, bdf) \ From bf9b9813ad6c4727f733828a100267601cef52d2 Mon Sep 17 00:00:00 2001 From: Ley Foon Tan Date: Fri, 24 May 2019 10:29:59 +0800 Subject: [PATCH 02/51] pci: intel: Fix error when enumerating multi-function PCIe device Hardware return completion status non-zero when read from non exist function in multi-function PCIe device. Return error will cause PCIe enumeration fail. Change it to return 0 and return value 0xffffffff when error. Signed-off-by: Ley Foon Tan --- drivers/pci/pcie_intel_fpga.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/pci/pcie_intel_fpga.c b/drivers/pci/pcie_intel_fpga.c index e74b35ac16..a096d1c697 100644 --- a/drivers/pci/pcie_intel_fpga.c +++ b/drivers/pci/pcie_intel_fpga.c @@ -161,8 +161,10 @@ static int tlp_read_packet(struct intel_fpga_pcie *pcie, u32 *value) dw[count++] = cra_readl(pcie, RP_RXCPL_REG); if (ctrl & RP_RXCPL_EOP) { comp_status = TLP_COMP_STATUS(dw[1]); - if (comp_status) - return -EFAULT; + if (comp_status) { + *value = pci_get_ff(PCI_SIZE_32); + return 0; + } if (value && TLP_BYTE_COUNT(dw[1]) == sizeof(u32) && From d44f793207973845fdaa0c539bed785607659bab Mon Sep 17 00:00:00 2001 From: Ley Foon Tan Date: Fri, 24 May 2019 10:30:00 +0800 Subject: [PATCH 03/51] pci: intel: Fix configuration type based on secondary number This fix issue when access config from PCIe switch. The PCIe controller need to send Type 0 config TLP if the targeting bus matches with the secondary bus number, which is when the TLP is targeting the immediate device on the link. The PCIe controller send Type 1 config TLP if the targeting bus is larger than the secondary bus, which is when the TLP is targeting the device not immediate on the link. Signed-off-by: Ley Foon Tan --- drivers/pci/pcie_intel_fpga.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/drivers/pci/pcie_intel_fpga.c b/drivers/pci/pcie_intel_fpga.c index a096d1c697..a5ea4888f3 100644 --- a/drivers/pci/pcie_intel_fpga.c +++ b/drivers/pci/pcie_intel_fpga.c @@ -36,16 +36,18 @@ #define RP_CFG_ADDR(pcie, reg) \ ((pcie->hip_base) + (reg) + (1 << 20)) +#define RP_SECONDARY(pcie) \ + readb(RP_CFG_ADDR(pcie, PCI_SECONDARY_BUS)) #define TLP_REQ_ID(bus, devfn) (((bus) << 8) | (devfn)) #define TLP_CFGRD_DW0(pcie, bus) \ - ((((bus != pcie->first_busno) ? TLP_FMTTYPE_CFGRD0 \ - : TLP_FMTTYPE_CFGRD1) << 24) | \ + ((((bus > RP_SECONDARY(pcie)) ? TLP_FMTTYPE_CFGRD1 \ + : TLP_FMTTYPE_CFGRD0) << 24) | \ TLP_PAYLOAD_SIZE) #define TLP_CFGWR_DW0(pcie, bus) \ - ((((bus != pcie->first_busno) ? TLP_FMTTYPE_CFGWR0 \ - : TLP_FMTTYPE_CFGWR1) << 24) | \ + ((((bus > RP_SECONDARY(pcie)) ? TLP_FMTTYPE_CFGWR1 \ + : TLP_FMTTYPE_CFGWR0) << 24) | \ TLP_PAYLOAD_SIZE) #define TLP_CFG_DW1(pcie, tag, be) \ From af325e9597dfe47943f6f3b92d0b7012317f4a53 Mon Sep 17 00:00:00 2001 From: Ye Li Date: Thu, 11 Jul 2019 03:33:34 +0000 Subject: [PATCH 04/51] serial_lpuart: Fix config check issue when using clk driver in SPL Should use CONFIG_IS_ENABLED not IS_ENABLED for CLK driver, so it will check the CONFIG_SPL_CLK when building SPL Signed-off-by: Ye Li Reviewed-by: Bin Meng --- drivers/serial/serial_lpuart.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/serial/serial_lpuart.c b/drivers/serial/serial_lpuart.c index 57dd4a72c6..4b0a964d1b 100644 --- a/drivers/serial/serial_lpuart.c +++ b/drivers/serial/serial_lpuart.c @@ -106,7 +106,7 @@ u32 __weak get_lpuart_clk(void) return CONFIG_SYS_CLK_FREQ; } -#if IS_ENABLED(CONFIG_CLK) +#if CONFIG_IS_ENABLED(CLK) static int get_lpuart_clk_rate(struct udevice *dev, u32 *clk) { struct clk per_clk; @@ -148,7 +148,7 @@ static void _lpuart_serial_setbrg(struct udevice *dev, u16 sbr; int ret; - if (IS_ENABLED(CONFIG_CLK)) { + if (CONFIG_IS_ENABLED(CLK)) { ret = get_lpuart_clk_rate(dev, &clk); if (ret) return; @@ -237,7 +237,7 @@ static void _lpuart32_serial_setbrg_7ulp(struct udevice *dev, u32 clk; int ret; - if (IS_ENABLED(CONFIG_CLK)) { + if (CONFIG_IS_ENABLED(CLK)) { ret = get_lpuart_clk_rate(dev, &clk); if (ret) return; @@ -306,7 +306,7 @@ static void _lpuart32_serial_setbrg(struct udevice *dev, u32 sbr; int ret; - if (IS_ENABLED(CONFIG_CLK)) { + if (CONFIG_IS_ENABLED(CLK)) { ret = get_lpuart_clk_rate(dev, &clk); if (ret) return; From d8c0332031ea90555d8f974867237a38630fda0d Mon Sep 17 00:00:00 2001 From: Simon Goldschmidt Date: Tue, 16 Jul 2019 22:30:36 +0200 Subject: [PATCH 05/51] spl: implement stack usage check This implements a stack usage check in SPL. Many boards start up SPL to run code + data from one common, rather small SRAM. To implement a sophisticated SPL binary size limit on such boards, the stack size (as well as malloc size and global data size) must be subtracted from this SRAM size. However, to do that properly, the stack size first needs to be known. This patch adds a new Kconfig option: - SPL_SYS_REPORT_STACK_F_USAGE: memset(0xaa) the whole area of the stack very early and check stack usage based on this constant later before the stack is switched to DRAM Initializing the stack and checking it is implemented in weak functions, in case a board does not use the stack as saved in gd->start_addr_sp. Signed-off-by: Simon Goldschmidt --- common/init/board_init.c | 20 ++++++++++++++++++++ common/spl/Kconfig | 19 +++++++++++++++++++ common/spl/spl.c | 25 +++++++++++++++++++++++++ 3 files changed, 64 insertions(+) diff --git a/common/init/board_init.c b/common/init/board_init.c index 526fee35ff..e52106966d 100644 --- a/common/init/board_init.c +++ b/common/init/board_init.c @@ -18,6 +18,23 @@ __weak void arch_setup_gd(struct global_data *gd_ptr) } #endif /* !CONFIG_X86 && !CONFIG_ARM */ +/** + * This function is called after the position of the initial stack is + * determined in gd->start_addr_sp. Boards can override it to set up + * stack-checking markers. + */ +__weak void board_init_f_init_stack_protection(void) +{ +#if CONFIG_IS_ENABLED(SYS_REPORT_STACK_F_USAGE) + ulong stack_bottom = gd->start_addr_sp - + CONFIG_VAL(SIZE_LIMIT_PROVIDE_STACK); + + /* substact some safety margin (0x20) since stack is in use here */ + memset((void *)stack_bottom, CONFIG_VAL(SYS_STACK_F_CHECK_BYTE), + CONFIG_VAL(SIZE_LIMIT_PROVIDE_STACK) - 0x20); +#endif +} + /* * Allocate reserved space for use as 'globals' from 'top' address and * return 'bottom' address of allocated space @@ -126,6 +143,9 @@ void board_init_f_init_reserve(ulong base) /* next alloc will be higher by one 'early malloc arena' size */ base += CONFIG_VAL(SYS_MALLOC_F_LEN); #endif + + if (CONFIG_IS_ENABLED(SYS_REPORT_STACK_F_USAGE)) + board_init_f_init_stack_protection(); } /* diff --git a/common/spl/Kconfig b/common/spl/Kconfig index 54154b93c9..630491699c 100644 --- a/common/spl/Kconfig +++ b/common/spl/Kconfig @@ -62,6 +62,25 @@ config SPL_SIZE_LIMIT_PROVIDE_STACK of SRAM available for SPL when the stack required before reolcation uses this SRAM, too. +config SPL_SYS_STACK_F_CHECK_BYTE + hex + default 0xaa + help + Constant used to check the stack + +config SPL_SYS_REPORT_STACK_F_USAGE + depends on SPL_SIZE_LIMIT_PROVIDE_STACK != 0 + bool "Check and report stack usage in SPL before relocation" + help + If this option is enabled, the initial SPL stack is filled with 0xaa + very early, up to the size configured with + SPL_SIZE_LIMIT_PROVIDE_STACK. + Later when SPL is done using this initial stack and switches to a + stack in DRAM, the actually used size of this initial stack is + reported by examining the memory and searching for the lowest + occurrence of non 0xaa bytes. + This default implementation works for stacks growing down only. + menu "PowerPC SPL Boot options" depends on PPC && (SUPPORT_SPL && !SPL_FRAMEWORK) diff --git a/common/spl/spl.c b/common/spl/spl.c index c182705b3f..2c696f2a79 100644 --- a/common/spl/spl.c +++ b/common/spl/spl.c @@ -709,6 +709,28 @@ void preloader_console_init(void) } #endif +/** + * This function is called before the stack is changed from initial stack to + * relocated stack. It tries to dump the stack size used + */ +__weak void spl_relocate_stack_check(void) +{ +#if CONFIG_IS_ENABLED(SYS_REPORT_STACK_F_USAGE) + ulong init_sp = gd->start_addr_sp; + ulong stack_bottom = init_sp - CONFIG_VAL(SIZE_LIMIT_PROVIDE_STACK); + u8 *ptr = (u8 *)stack_bottom; + ulong i; + + for (i = 0; i < CONFIG_VAL(SIZE_LIMIT_PROVIDE_STACK); i++) { + if (*ptr != CONFIG_VAL(SYS_STACK_F_CHECK_BYTE)) + break; + ptr++; + } + printf("SPL initial stack usage: %lu bytes\n", + CONFIG_VAL(SIZE_LIMIT_PROVIDE_STACK) - i); +#endif +} + /** * spl_relocate_stack_gd() - Relocate stack ready for board_init_r() execution * @@ -733,6 +755,9 @@ ulong spl_relocate_stack_gd(void) gd_t *new_gd; ulong ptr = CONFIG_SPL_STACK_R_ADDR; + if (CONFIG_IS_ENABLED(SYS_REPORT_STACK_F_USAGE)) + spl_relocate_stack_check(); + #if defined(CONFIG_SPL_SYS_MALLOC_SIMPLE) && CONFIG_VAL(SYS_MALLOC_F_LEN) if (CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN) { debug("SPL malloc() before relocation used 0x%lx bytes (%ld KB)\n", From af8a735ed0009b522560b5e5138737ca371a9415 Mon Sep 17 00:00:00 2001 From: Manivannan Sadhasivam Date: Fri, 2 Aug 2019 20:40:07 +0530 Subject: [PATCH 06/51] arm: dts: Import HI3660 devicetree from Linux This commit imports HI3660 SoC devicetree from Linux Signed-off-by: Manivannan Sadhasivam --- arch/arm/dts/hi3660.dtsi | 1157 ++++++++++++++++++++++ arch/arm/dts/hikey960-pinctrl.dtsi | 1060 ++++++++++++++++++++ include/dt-bindings/clock/hi3660-clock.h | 214 ++++ 3 files changed, 2431 insertions(+) create mode 100644 arch/arm/dts/hi3660.dtsi create mode 100644 arch/arm/dts/hikey960-pinctrl.dtsi create mode 100644 include/dt-bindings/clock/hi3660-clock.h diff --git a/arch/arm/dts/hi3660.dtsi b/arch/arm/dts/hi3660.dtsi new file mode 100644 index 0000000000..65a45b0e80 --- /dev/null +++ b/arch/arm/dts/hi3660.dtsi @@ -0,0 +1,1157 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * dts file for Hisilicon Hi3660 SoC + * + * Copyright (C) 2016, Hisilicon Ltd. + */ + +#include +#include +#include + +/ { + compatible = "hisilicon,hi3660"; + interrupt-parent = <&gic>; + #address-cells = <2>; + #size-cells = <2>; + + psci { + compatible = "arm,psci-0.2"; + method = "smc"; + }; + + cpus { + #address-cells = <2>; + #size-cells = <0>; + + cpu-map { + cluster0 { + core0 { + cpu = <&cpu0>; + }; + core1 { + cpu = <&cpu1>; + }; + core2 { + cpu = <&cpu2>; + }; + core3 { + cpu = <&cpu3>; + }; + }; + cluster1 { + core0 { + cpu = <&cpu4>; + }; + core1 { + cpu = <&cpu5>; + }; + core2 { + cpu = <&cpu6>; + }; + core3 { + cpu = <&cpu7>; + }; + }; + }; + + cpu0: cpu@0 { + compatible = "arm,cortex-a53"; + device_type = "cpu"; + reg = <0x0 0x0>; + enable-method = "psci"; + next-level-cache = <&A53_L2>; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; + capacity-dmips-mhz = <592>; + clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER0>; + operating-points-v2 = <&cluster0_opp>; + #cooling-cells = <2>; + dynamic-power-coefficient = <110>; + }; + + cpu1: cpu@1 { + compatible = "arm,cortex-a53"; + device_type = "cpu"; + reg = <0x0 0x1>; + enable-method = "psci"; + next-level-cache = <&A53_L2>; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; + capacity-dmips-mhz = <592>; + clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER0>; + operating-points-v2 = <&cluster0_opp>; + #cooling-cells = <2>; + }; + + cpu2: cpu@2 { + compatible = "arm,cortex-a53"; + device_type = "cpu"; + reg = <0x0 0x2>; + enable-method = "psci"; + next-level-cache = <&A53_L2>; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; + capacity-dmips-mhz = <592>; + clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER0>; + operating-points-v2 = <&cluster0_opp>; + #cooling-cells = <2>; + }; + + cpu3: cpu@3 { + compatible = "arm,cortex-a53"; + device_type = "cpu"; + reg = <0x0 0x3>; + enable-method = "psci"; + next-level-cache = <&A53_L2>; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; + capacity-dmips-mhz = <592>; + clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER0>; + operating-points-v2 = <&cluster0_opp>; + #cooling-cells = <2>; + }; + + cpu4: cpu@100 { + compatible = "arm,cortex-a73"; + device_type = "cpu"; + reg = <0x0 0x100>; + enable-method = "psci"; + next-level-cache = <&A73_L2>; + cpu-idle-states = <&CPU_SLEEP_1 &CLUSTER_SLEEP_1>; + capacity-dmips-mhz = <1024>; + clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER1>; + operating-points-v2 = <&cluster1_opp>; + #cooling-cells = <2>; + dynamic-power-coefficient = <550>; + }; + + cpu5: cpu@101 { + compatible = "arm,cortex-a73"; + device_type = "cpu"; + reg = <0x0 0x101>; + enable-method = "psci"; + next-level-cache = <&A73_L2>; + cpu-idle-states = <&CPU_SLEEP_1 &CLUSTER_SLEEP_1>; + capacity-dmips-mhz = <1024>; + clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER1>; + operating-points-v2 = <&cluster1_opp>; + #cooling-cells = <2>; + }; + + cpu6: cpu@102 { + compatible = "arm,cortex-a73"; + device_type = "cpu"; + reg = <0x0 0x102>; + enable-method = "psci"; + next-level-cache = <&A73_L2>; + cpu-idle-states = <&CPU_SLEEP_1 &CLUSTER_SLEEP_1>; + capacity-dmips-mhz = <1024>; + clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER1>; + operating-points-v2 = <&cluster1_opp>; + #cooling-cells = <2>; + }; + + cpu7: cpu@103 { + compatible = "arm,cortex-a73"; + device_type = "cpu"; + reg = <0x0 0x103>; + enable-method = "psci"; + next-level-cache = <&A73_L2>; + cpu-idle-states = <&CPU_SLEEP_1 &CLUSTER_SLEEP_1>; + capacity-dmips-mhz = <1024>; + clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER1>; + operating-points-v2 = <&cluster1_opp>; + #cooling-cells = <2>; + }; + + idle-states { + entry-method = "psci"; + + CPU_SLEEP_0: cpu-sleep-0 { + compatible = "arm,idle-state"; + local-timer-stop; + arm,psci-suspend-param = <0x0010000>; + entry-latency-us = <400>; + exit-latency-us = <650>; + min-residency-us = <1500>; + }; + CLUSTER_SLEEP_0: cluster-sleep-0 { + compatible = "arm,idle-state"; + local-timer-stop; + arm,psci-suspend-param = <0x1010000>; + entry-latency-us = <500>; + exit-latency-us = <1600>; + min-residency-us = <3500>; + }; + + + CPU_SLEEP_1: cpu-sleep-1 { + compatible = "arm,idle-state"; + local-timer-stop; + arm,psci-suspend-param = <0x0010000>; + entry-latency-us = <400>; + exit-latency-us = <550>; + min-residency-us = <1500>; + }; + + CLUSTER_SLEEP_1: cluster-sleep-1 { + compatible = "arm,idle-state"; + local-timer-stop; + arm,psci-suspend-param = <0x1010000>; + entry-latency-us = <800>; + exit-latency-us = <2900>; + min-residency-us = <3500>; + }; + }; + + A53_L2: l2-cache0 { + compatible = "cache"; + }; + + A73_L2: l2-cache1 { + compatible = "cache"; + }; + }; + + cluster0_opp: opp_table0 { + compatible = "operating-points-v2"; + opp-shared; + + opp00 { + opp-hz = /bits/ 64 <533000000>; + opp-microvolt = <700000>; + clock-latency-ns = <300000>; + }; + + opp01 { + opp-hz = /bits/ 64 <999000000>; + opp-microvolt = <800000>; + clock-latency-ns = <300000>; + }; + + opp02 { + opp-hz = /bits/ 64 <1402000000>; + opp-microvolt = <900000>; + clock-latency-ns = <300000>; + }; + + opp03 { + opp-hz = /bits/ 64 <1709000000>; + opp-microvolt = <1000000>; + clock-latency-ns = <300000>; + }; + + opp04 { + opp-hz = /bits/ 64 <1844000000>; + opp-microvolt = <1100000>; + clock-latency-ns = <300000>; + }; + }; + + cluster1_opp: opp_table1 { + compatible = "operating-points-v2"; + opp-shared; + + opp10 { + opp-hz = /bits/ 64 <903000000>; + opp-microvolt = <700000>; + clock-latency-ns = <300000>; + }; + + opp11 { + opp-hz = /bits/ 64 <1421000000>; + opp-microvolt = <800000>; + clock-latency-ns = <300000>; + }; + + opp12 { + opp-hz = /bits/ 64 <1805000000>; + opp-microvolt = <900000>; + clock-latency-ns = <300000>; + }; + + opp13 { + opp-hz = /bits/ 64 <2112000000>; + opp-microvolt = <1000000>; + clock-latency-ns = <300000>; + }; + + opp14 { + opp-hz = /bits/ 64 <2362000000>; + opp-microvolt = <1100000>; + clock-latency-ns = <300000>; + }; + }; + + gic: interrupt-controller@e82b0000 { + compatible = "arm,gic-400"; + reg = <0x0 0xe82b1000 0 0x1000>, /* GICD */ + <0x0 0xe82b2000 0 0x2000>, /* GICC */ + <0x0 0xe82b4000 0 0x2000>, /* GICH */ + <0x0 0xe82b6000 0 0x2000>; /* GICV */ + #address-cells = <0>; + #interrupt-cells = <3>; + interrupt-controller; + interrupts = ; + }; + + a53-pmu { + compatible = "arm,cortex-a53-pmu"; + interrupts = , + , + , + ; + interrupt-affinity = <&cpu0>, + <&cpu1>, + <&cpu2>, + <&cpu3>; + }; + + a73-pmu { + compatible = "arm,cortex-a73-pmu"; + interrupts = , + , + , + ; + interrupt-affinity = <&cpu4>, + <&cpu5>, + <&cpu6>, + <&cpu7>; + }; + + timer { + compatible = "arm,armv8-timer"; + interrupt-parent = <&gic>; + interrupts = , + , + , + ; + }; + + soc { + compatible = "simple-bus"; + #address-cells = <2>; + #size-cells = <2>; + ranges; + + crg_ctrl: crg_ctrl@fff35000 { + compatible = "hisilicon,hi3660-crgctrl", "syscon"; + reg = <0x0 0xfff35000 0x0 0x1000>; + #clock-cells = <1>; + }; + + crg_rst: crg_rst_controller { + compatible = "hisilicon,hi3660-reset"; + #reset-cells = <2>; + hisi,rst-syscon = <&crg_ctrl>; + }; + + + pctrl: pctrl@e8a09000 { + compatible = "hisilicon,hi3660-pctrl", "syscon"; + reg = <0x0 0xe8a09000 0x0 0x2000>; + #clock-cells = <1>; + }; + + pmuctrl: crg_ctrl@fff34000 { + compatible = "hisilicon,hi3660-pmuctrl", "syscon"; + reg = <0x0 0xfff34000 0x0 0x1000>; + #clock-cells = <1>; + }; + + sctrl: sctrl@fff0a000 { + compatible = "hisilicon,hi3660-sctrl", "syscon"; + reg = <0x0 0xfff0a000 0x0 0x1000>; + #clock-cells = <1>; + }; + + iomcu: iomcu@ffd7e000 { + compatible = "hisilicon,hi3660-iomcu", "syscon"; + reg = <0x0 0xffd7e000 0x0 0x1000>; + #clock-cells = <1>; + + }; + + iomcu_rst: reset { + compatible = "hisilicon,hi3660-reset"; + hisi,rst-syscon = <&iomcu>; + #reset-cells = <2>; + }; + + mailbox: mailbox@e896b000 { + compatible = "hisilicon,hi3660-mbox"; + reg = <0x0 0xe896b000 0x0 0x1000>; + interrupts = , + ; + #mbox-cells = <3>; + }; + + stub_clock: stub_clock@e896b500 { + compatible = "hisilicon,hi3660-stub-clk"; + reg = <0x0 0xe896b500 0x0 0x0100>; + #clock-cells = <1>; + mboxes = <&mailbox 13 3 0>; + }; + + dual_timer0: timer@fff14000 { + compatible = "arm,sp804", "arm,primecell"; + reg = <0x0 0xfff14000 0x0 0x1000>; + interrupts = , + ; + clocks = <&crg_ctrl HI3660_OSC32K>, + <&crg_ctrl HI3660_OSC32K>, + <&crg_ctrl HI3660_OSC32K>; + clock-names = "timer1", "timer2", "apb_pclk"; + }; + + i2c0: i2c@ffd71000 { + compatible = "snps,designware-i2c"; + reg = <0x0 0xffd71000 0x0 0x1000>; + interrupts = ; + #address-cells = <1>; + #size-cells = <0>; + clock-frequency = <400000>; + clocks = <&crg_ctrl HI3660_CLK_GATE_I2C0>; + resets = <&iomcu_rst 0x20 3>; + pinctrl-names = "default"; + pinctrl-0 = <&i2c0_pmx_func &i2c0_cfg_func>; + status = "disabled"; + }; + + i2c1: i2c@ffd72000 { + compatible = "snps,designware-i2c"; + reg = <0x0 0xffd72000 0x0 0x1000>; + interrupts = ; + #address-cells = <1>; + #size-cells = <0>; + clock-frequency = <400000>; + clocks = <&crg_ctrl HI3660_CLK_GATE_I2C1>; + resets = <&iomcu_rst 0x20 4>; + pinctrl-names = "default"; + pinctrl-0 = <&i2c1_pmx_func &i2c1_cfg_func>; + status = "disabled"; + }; + + i2c3: i2c@fdf0c000 { + compatible = "snps,designware-i2c"; + reg = <0x0 0xfdf0c000 0x0 0x1000>; + interrupts = ; + #address-cells = <1>; + #size-cells = <0>; + clock-frequency = <400000>; + clocks = <&crg_ctrl HI3660_CLK_GATE_I2C3>; + resets = <&crg_rst 0x78 7>; + pinctrl-names = "default"; + pinctrl-0 = <&i2c3_pmx_func &i2c3_cfg_func>; + status = "disabled"; + }; + + i2c7: i2c@fdf0b000 { + compatible = "snps,designware-i2c"; + reg = <0x0 0xfdf0b000 0x0 0x1000>; + interrupts = ; + #address-cells = <1>; + #size-cells = <0>; + clock-frequency = <400000>; + clocks = <&crg_ctrl HI3660_CLK_GATE_I2C7>; + resets = <&crg_rst 0x60 14>; + pinctrl-names = "default"; + pinctrl-0 = <&i2c7_pmx_func &i2c7_cfg_func>; + status = "disabled"; + }; + + uart0: serial@fdf02000 { + compatible = "arm,pl011", "arm,primecell"; + reg = <0x0 0xfdf02000 0x0 0x1000>; + interrupts = ; + clocks = <&crg_ctrl HI3660_CLK_MUX_UART0>, + <&crg_ctrl HI3660_PCLK>; + clock-names = "uartclk", "apb_pclk"; + pinctrl-names = "default"; + pinctrl-0 = <&uart0_pmx_func &uart0_cfg_func>; + status = "disabled"; + }; + + uart1: serial@fdf00000 { + compatible = "arm,pl011", "arm,primecell"; + reg = <0x0 0xfdf00000 0x0 0x1000>; + interrupts = ; + dma-names = "rx", "tx"; + dmas = <&dma0 2 &dma0 3>; + clocks = <&crg_ctrl HI3660_CLK_GATE_UART1>, + <&crg_ctrl HI3660_CLK_GATE_UART1>; + clock-names = "uartclk", "apb_pclk"; + pinctrl-names = "default"; + pinctrl-0 = <&uart1_pmx_func &uart1_cfg_func>; + status = "disabled"; + }; + + uart2: serial@fdf03000 { + compatible = "arm,pl011", "arm,primecell"; + reg = <0x0 0xfdf03000 0x0 0x1000>; + interrupts = ; + dma-names = "rx", "tx"; + dmas = <&dma0 4 &dma0 5>; + clocks = <&crg_ctrl HI3660_CLK_GATE_UART2>, + <&crg_ctrl HI3660_PCLK>; + clock-names = "uartclk", "apb_pclk"; + pinctrl-names = "default"; + pinctrl-0 = <&uart2_pmx_func &uart2_cfg_func>; + status = "disabled"; + }; + + uart3: serial@ffd74000 { + compatible = "arm,pl011", "arm,primecell"; + reg = <0x0 0xffd74000 0x0 0x1000>; + interrupts = ; + clocks = <&crg_ctrl HI3660_FACTOR_UART3>, + <&crg_ctrl HI3660_PCLK>; + clock-names = "uartclk", "apb_pclk"; + pinctrl-names = "default"; + pinctrl-0 = <&uart3_pmx_func &uart3_cfg_func>; + status = "disabled"; + }; + + uart4: serial@fdf01000 { + compatible = "arm,pl011", "arm,primecell"; + reg = <0x0 0xfdf01000 0x0 0x1000>; + interrupts = ; + dma-names = "rx", "tx"; + dmas = <&dma0 6 &dma0 7>; + clocks = <&crg_ctrl HI3660_CLK_GATE_UART4>, + <&crg_ctrl HI3660_CLK_GATE_UART4>; + clock-names = "uartclk", "apb_pclk"; + pinctrl-names = "default"; + pinctrl-0 = <&uart4_pmx_func &uart4_cfg_func>; + status = "disabled"; + }; + + uart5: serial@fdf05000 { + compatible = "arm,pl011", "arm,primecell"; + reg = <0x0 0xfdf05000 0x0 0x1000>; + interrupts = ; + dma-names = "rx", "tx"; + dmas = <&dma0 8 &dma0 9>; + clocks = <&crg_ctrl HI3660_CLK_GATE_UART5>, + <&crg_ctrl HI3660_CLK_GATE_UART5>; + clock-names = "uartclk", "apb_pclk"; + pinctrl-names = "default"; + pinctrl-0 = <&uart5_pmx_func &uart5_cfg_func>; + status = "disabled"; + }; + + uart6: serial@fff32000 { + compatible = "arm,pl011", "arm,primecell"; + reg = <0x0 0xfff32000 0x0 0x1000>; + interrupts = ; + clock = <19200000>; + clocks = <&crg_ctrl HI3660_CLK_UART6>, + <&crg_ctrl HI3660_PCLK>; + clock-names = "uartclk", "apb_pclk"; + pinctrl-names = "default"; + pinctrl-0 = <&uart6_pmx_func &uart6_cfg_func>; + status = "disabled"; + }; + + dma0: dma@fdf30000 { + compatible = "hisilicon,k3-dma-1.0"; + reg = <0x0 0xfdf30000 0x0 0x1000>; + #dma-cells = <1>; + dma-channels = <16>; + dma-requests = <32>; + dma-channel-mask = <0xfffe>; + interrupts = ; + clocks = <&crg_ctrl HI3660_CLK_GATE_DMAC>; + dma-no-cci; + dma-type = "hi3660_dma"; + }; + + asp_dmac: dma-controller@e804b000 { + compatible = "hisilicon,hisi-pcm-asp-dma-1.0"; + reg = <0x0 0xe804b000 0x0 0x1000>; + #dma-cells = <1>; + dma-channels = <16>; + dma-requests = <32>; + interrupts = ; + interrupt-names = "asp_dma_irq"; + }; + + rtc0: rtc@fff04000 { + compatible = "arm,pl031", "arm,primecell"; + reg = <0x0 0Xfff04000 0x0 0x1000>; + interrupts = ; + clocks = <&crg_ctrl HI3660_PCLK>; + clock-names = "apb_pclk"; + }; + + gpio0: gpio@e8a0b000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a0b000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pmx0 1 0 7>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO0>; + clock-names = "apb_pclk"; + }; + + gpio1: gpio@e8a0c000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a0c000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pmx0 1 7 7>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO1>; + clock-names = "apb_pclk"; + }; + + gpio2: gpio@e8a0d000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a0d000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pmx0 0 14 8>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO2>; + clock-names = "apb_pclk"; + }; + + gpio3: gpio@e8a0e000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a0e000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pmx0 0 22 8>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO3>; + clock-names = "apb_pclk"; + }; + + gpio4: gpio@e8a0f000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a0f000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pmx0 0 30 8>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO4>; + clock-names = "apb_pclk"; + }; + + gpio5: gpio@e8a10000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a10000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pmx0 0 38 8>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO5>; + clock-names = "apb_pclk"; + }; + + gpio6: gpio@e8a11000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a11000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pmx0 0 46 8>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO6>; + clock-names = "apb_pclk"; + }; + + gpio7: gpio@e8a12000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a12000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pmx0 0 54 8>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO7>; + clock-names = "apb_pclk"; + }; + + gpio8: gpio@e8a13000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a13000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pmx0 0 62 8>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO8>; + clock-names = "apb_pclk"; + }; + + gpio9: gpio@e8a14000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a14000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pmx0 0 70 8>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO9>; + clock-names = "apb_pclk"; + }; + + gpio10: gpio@e8a15000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a15000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pmx0 0 78 8>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO10>; + clock-names = "apb_pclk"; + }; + + gpio11: gpio@e8a16000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a16000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pmx0 0 86 8>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO11>; + clock-names = "apb_pclk"; + }; + + gpio12: gpio@e8a17000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a17000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pmx0 0 94 3 &pmx0 7 101 1>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO12>; + clock-names = "apb_pclk"; + }; + + gpio13: gpio@e8a18000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a18000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pmx0 0 102 8>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO13>; + clock-names = "apb_pclk"; + }; + + gpio14: gpio@e8a19000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a19000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pmx0 0 110 8>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO14>; + clock-names = "apb_pclk"; + }; + + gpio15: gpio@e8a1a000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a1a000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pmx0 0 118 6>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO15>; + clock-names = "apb_pclk"; + }; + + gpio16: gpio@e8a1b000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a1b000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO16>; + clock-names = "apb_pclk"; + }; + + gpio17: gpio@e8a1c000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a1c000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO17>; + clock-names = "apb_pclk"; + }; + + gpio18: gpio@ff3b4000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xff3b4000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pmx2 0 0 8>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO18>; + clock-names = "apb_pclk"; + }; + + gpio19: gpio@ff3b5000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xff3b5000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pmx2 0 8 4>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO19>; + clock-names = "apb_pclk"; + }; + + gpio20: gpio@e8a1f000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a1f000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pmx1 0 0 6>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO20>; + clock-names = "apb_pclk"; + }; + + gpio21: gpio@e8a20000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xe8a20000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + interrupt-controller; + #interrupt-cells = <2>; + gpio-ranges = <&pmx3 0 0 6>; + clocks = <&crg_ctrl HI3660_PCLK_GPIO21>; + clock-names = "apb_pclk"; + }; + + gpio22: gpio@fff0b000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xfff0b000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + /* GPIO176 */ + gpio-ranges = <&pmx4 2 0 6>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&sctrl HI3660_PCLK_AO_GPIO0>; + clock-names = "apb_pclk"; + }; + + gpio23: gpio@fff0c000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xfff0c000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + /* GPIO184 */ + gpio-ranges = <&pmx4 0 6 7>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&sctrl HI3660_PCLK_AO_GPIO1>; + clock-names = "apb_pclk"; + }; + + gpio24: gpio@fff0d000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xfff0d000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + /* GPIO192 */ + gpio-ranges = <&pmx4 0 13 8>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&sctrl HI3660_PCLK_AO_GPIO2>; + clock-names = "apb_pclk"; + }; + + gpio25: gpio@fff0e000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xfff0e000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + /* GPIO200 */ + gpio-ranges = <&pmx4 0 21 4 &pmx4 5 25 3>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&sctrl HI3660_PCLK_AO_GPIO3>; + clock-names = "apb_pclk"; + }; + + gpio26: gpio@fff0f000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xfff0f000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + /* GPIO208 */ + gpio-ranges = <&pmx4 0 28 8>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&sctrl HI3660_PCLK_AO_GPIO4>; + clock-names = "apb_pclk"; + }; + + gpio27: gpio@fff10000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xfff10000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + /* GPIO216 */ + gpio-ranges = <&pmx4 0 36 6>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&sctrl HI3660_PCLK_AO_GPIO5>; + clock-names = "apb_pclk"; + }; + + gpio28: gpio@fff1d000 { + compatible = "arm,pl061", "arm,primecell"; + reg = <0 0xfff1d000 0 0x1000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + interrupt-controller; + #interrupt-cells = <2>; + clocks = <&sctrl HI3660_PCLK_AO_GPIO6>; + clock-names = "apb_pclk"; + }; + + spi2: spi@ffd68000 { + compatible = "arm,pl022", "arm,primecell"; + reg = <0x0 0xffd68000 0x0 0x1000>; + #address-cells = <1>; + #size-cells = <0>; + interrupts = ; + clocks = <&crg_ctrl HI3660_CLK_GATE_SPI2>; + clock-names = "apb_pclk"; + pinctrl-names = "default"; + pinctrl-0 = <&spi2_pmx_func>; + num-cs = <1>; + cs-gpios = <&gpio27 2 0>; + status = "disabled"; + }; + + spi3: spi@ff3b3000 { + compatible = "arm,pl022", "arm,primecell"; + reg = <0x0 0xff3b3000 0x0 0x1000>; + #address-cells = <1>; + #size-cells = <0>; + interrupts = ; + clocks = <&crg_ctrl HI3660_CLK_GATE_SPI3>; + clock-names = "apb_pclk"; + pinctrl-names = "default"; + pinctrl-0 = <&spi3_pmx_func>; + num-cs = <1>; + cs-gpios = <&gpio18 5 0>; + status = "disabled"; + }; + + pcie@f4000000 { + compatible = "hisilicon,kirin960-pcie"; + reg = <0x0 0xf4000000 0x0 0x1000>, + <0x0 0xff3fe000 0x0 0x1000>, + <0x0 0xf3f20000 0x0 0x40000>, + <0x0 0xf5000000 0x0 0x2000>; + reg-names = "dbi", "apb", "phy", "config"; + bus-range = <0x0 0x1>; + #address-cells = <3>; + #size-cells = <2>; + device_type = "pci"; + ranges = <0x02000000 0x0 0x00000000 + 0x0 0xf6000000 + 0x0 0x02000000>; + num-lanes = <1>; + #interrupt-cells = <1>; + interrupts = <0 283 4>; + interrupt-names = "msi"; + interrupt-map-mask = <0xf800 0 0 7>; + interrupt-map = <0x0 0 0 1 + &gic GIC_SPI 282 IRQ_TYPE_LEVEL_HIGH>, + <0x0 0 0 2 + &gic GIC_SPI 283 IRQ_TYPE_LEVEL_HIGH>, + <0x0 0 0 3 + &gic GIC_SPI 284 IRQ_TYPE_LEVEL_HIGH>, + <0x0 0 0 4 + &gic GIC_SPI 285 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&crg_ctrl HI3660_PCIEPHY_REF>, + <&crg_ctrl HI3660_CLK_GATE_PCIEAUX>, + <&crg_ctrl HI3660_PCLK_GATE_PCIE_PHY>, + <&crg_ctrl HI3660_PCLK_GATE_PCIE_SYS>, + <&crg_ctrl HI3660_ACLK_GATE_PCIE>; + clock-names = "pcie_phy_ref", "pcie_aux", + "pcie_apb_phy", "pcie_apb_sys", + "pcie_aclk"; + reset-gpios = <&gpio11 1 0 >; + }; + + /* UFS */ + ufs: ufs@ff3b0000 { + compatible = "hisilicon,hi3660-ufs", "jedec,ufs-1.1"; + /* 0: HCI standard */ + /* 1: UFS SYS CTRL */ + reg = <0x0 0xff3b0000 0x0 0x1000>, + <0x0 0xff3b1000 0x0 0x1000>; + interrupt-parent = <&gic>; + interrupts = ; + clocks = <&crg_ctrl HI3660_CLK_GATE_UFSIO_REF>, + <&crg_ctrl HI3660_CLK_GATE_UFSPHY_CFG>; + clock-names = "ref_clk", "phy_clk"; + freq-table-hz = <0 0>, <0 0>; + /* offset: 0x84; bit: 12 */ + resets = <&crg_rst 0x84 12>; + reset-names = "rst"; + }; + + /* SD */ + dwmmc1: dwmmc1@ff37f000 { + compatible = "hisilicon,hi3660-dw-mshc"; + reg = <0x0 0xff37f000 0x0 0x1000>; + #address-cells = <1>; + #size-cells = <0>; + interrupts = ; + clocks = <&crg_ctrl HI3660_CLK_GATE_SD>, + <&crg_ctrl HI3660_HCLK_GATE_SD>; + clock-names = "ciu", "biu"; + clock-frequency = <3200000>; + resets = <&crg_rst 0x94 18>; + reset-names = "reset"; + hisilicon,peripheral-syscon = <&sctrl>; + card-detect-delay = <200>; + status = "disabled"; + }; + + /* SDIO */ + dwmmc2: dwmmc2@ff3ff000 { + compatible = "hisilicon,hi3660-dw-mshc"; + reg = <0x0 0xff3ff000 0x0 0x1000>; + #address-cells = <0x1>; + #size-cells = <0x0>; + interrupts = ; + clocks = <&crg_ctrl HI3660_CLK_GATE_SDIO0>, + <&crg_ctrl HI3660_HCLK_GATE_SDIO0>; + clock-names = "ciu", "biu"; + resets = <&crg_rst 0x94 20>; + reset-names = "reset"; + card-detect-delay = <200>; + status = "disabled"; + }; + + watchdog0: watchdog@e8a06000 { + compatible = "arm,sp805-wdt", "arm,primecell"; + reg = <0x0 0xe8a06000 0x0 0x1000>; + interrupts = ; + clocks = <&crg_ctrl HI3660_OSC32K>; + clock-names = "apb_pclk"; + }; + + watchdog1: watchdog@e8a07000 { + compatible = "arm,sp805-wdt", "arm,primecell"; + reg = <0x0 0xe8a07000 0x0 0x1000>; + interrupts = ; + clocks = <&crg_ctrl HI3660_OSC32K>; + clock-names = "apb_pclk"; + }; + + tsensor: tsensor@fff30000 { + compatible = "hisilicon,hi3660-tsensor"; + reg = <0x0 0xfff30000 0x0 0x1000>; + interrupts = ; + #thermal-sensor-cells = <1>; + }; + + thermal-zones { + + cls0: cls0 { + polling-delay = <1000>; + polling-delay-passive = <100>; + sustainable-power = <4500>; + + /* sensor ID */ + thermal-sensors = <&tsensor 1>; + + trips { + threshold: trip-point@0 { + temperature = <65000>; + hysteresis = <1000>; + type = "passive"; + }; + + target: trip-point@1 { + temperature = <75000>; + hysteresis = <1000>; + type = "passive"; + }; + }; + + cooling-maps { + map0 { + trip = <&target>; + contribution = <1024>; + cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, + <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, + <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, + <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; + }; + map1 { + trip = <&target>; + contribution = <512>; + cooling-device = <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, + <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, + <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, + <&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; + }; + }; + }; + }; + }; +}; diff --git a/arch/arm/dts/hikey960-pinctrl.dtsi b/arch/arm/dts/hikey960-pinctrl.dtsi new file mode 100644 index 0000000000..d11efc8195 --- /dev/null +++ b/arch/arm/dts/hikey960-pinctrl.dtsi @@ -0,0 +1,1060 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * pinctrl dts fils for Hislicon HiKey960 development board + * + */ + +#include + +/ { + soc { + /* [IOMG_000, IOMG_123] */ + range: gpio-range { + #pinctrl-single,gpio-range-cells = <3>; + }; + + pmx0: pinmux@e896c000 { + compatible = "pinctrl-single"; + reg = <0x0 0xe896c000 0x0 0x1f0>; + #pinctrl-cells = <1>; + #gpio-range-cells = <0x3>; + pinctrl-single,register-width = <0x20>; + pinctrl-single,function-mask = <0x7>; + /* pin base, nr pins & gpio function */ + pinctrl-single,gpio-range = < + &range 0 7 0 + &range 8 116 0>; + + pmu_pmx_func: pmu_pmx_func { + pinctrl-single,pins = < + 0x008 MUX_M1 /* PMU1_SSI */ + 0x00c MUX_M1 /* PMU2_SSI */ + 0x010 MUX_M1 /* PMU_CLKOUT */ + 0x100 MUX_M1 /* PMU_HKADC_SSI */ + >; + }; + + csi0_pwd_n_pmx_func: csi0_pwd_n_pmx_func { + pinctrl-single,pins = < + 0x044 MUX_M0 /* CSI0_PWD_N */ + >; + }; + + csi1_pwd_n_pmx_func: csi1_pwd_n_pmx_func { + pinctrl-single,pins = < + 0x04c MUX_M0 /* CSI1_PWD_N */ + >; + }; + + isp0_pmx_func: isp0_pmx_func { + pinctrl-single,pins = < + 0x058 MUX_M1 /* ISP_CLK0 */ + 0x064 MUX_M1 /* ISP_SCL0 */ + 0x068 MUX_M1 /* ISP_SDA0 */ + >; + }; + + isp1_pmx_func: isp1_pmx_func { + pinctrl-single,pins = < + 0x05c MUX_M1 /* ISP_CLK1 */ + 0x06c MUX_M1 /* ISP_SCL1 */ + 0x070 MUX_M1 /* ISP_SDA1 */ + >; + }; + + pwr_key_pmx_func: pwr_key_pmx_func { + pinctrl-single,pins = < + 0x080 MUX_M0 /* GPIO_034 */ + >; + }; + + i2c3_pmx_func: i2c3_pmx_func { + pinctrl-single,pins = < + 0x02c MUX_M1 /* I2C3_SCL */ + 0x030 MUX_M1 /* I2C3_SDA */ + >; + }; + + i2c4_pmx_func: i2c4_pmx_func { + pinctrl-single,pins = < + 0x090 MUX_M1 /* I2C4_SCL */ + 0x094 MUX_M1 /* I2C4_SDA */ + >; + }; + + pcie_perstn_pmx_func: pcie_perstn_pmx_func { + pinctrl-single,pins = < + 0x15c MUX_M1 /* PCIE_PERST_N */ + >; + }; + + usbhub5734_pmx_func: usbhub5734_pmx_func { + pinctrl-single,pins = < + 0x11c MUX_M0 /* GPIO_073 */ + 0x120 MUX_M0 /* GPIO_074 */ + >; + }; + + uart0_pmx_func: uart0_pmx_func { + pinctrl-single,pins = < + 0x0cc MUX_M2 /* UART0_RXD */ + 0x0d0 MUX_M2 /* UART0_TXD */ + >; + }; + + uart1_pmx_func: uart1_pmx_func { + pinctrl-single,pins = < + 0x0b0 MUX_M2 /* UART1_CTS_N */ + 0x0b4 MUX_M2 /* UART1_RTS_N */ + 0x0a8 MUX_M2 /* UART1_RXD */ + 0x0ac MUX_M2 /* UART1_TXD */ + >; + }; + + uart2_pmx_func: uart2_pmx_func { + pinctrl-single,pins = < + 0x0bc MUX_M2 /* UART2_CTS_N */ + 0x0c0 MUX_M2 /* UART2_RTS_N */ + 0x0c8 MUX_M2 /* UART2_RXD */ + 0x0c4 MUX_M2 /* UART2_TXD */ + >; + }; + + uart3_pmx_func: uart3_pmx_func { + pinctrl-single,pins = < + 0x0dc MUX_M1 /* UART3_CTS_N */ + 0x0e0 MUX_M1 /* UART3_RTS_N */ + 0x0e4 MUX_M1 /* UART3_RXD */ + 0x0e8 MUX_M1 /* UART3_TXD */ + >; + }; + + uart4_pmx_func: uart4_pmx_func { + pinctrl-single,pins = < + 0x0ec MUX_M1 /* UART4_CTS_N */ + 0x0f0 MUX_M1 /* UART4_RTS_N */ + 0x0f4 MUX_M1 /* UART4_RXD */ + 0x0f8 MUX_M1 /* UART4_TXD */ + >; + }; + + uart5_pmx_func: uart5_pmx_func { + pinctrl-single,pins = < + 0x0c4 MUX_M3 /* UART5_CTS_N */ + 0x0c8 MUX_M3 /* UART5_RTS_N */ + 0x0bc MUX_M3 /* UART5_RXD */ + 0x0c0 MUX_M3 /* UART5_TXD */ + >; + }; + + uart6_pmx_func: uart6_pmx_func { + pinctrl-single,pins = < + 0x0cc MUX_M1 /* UART6_CTS_N */ + 0x0d0 MUX_M1 /* UART6_RTS_N */ + 0x0d4 MUX_M1 /* UART6_RXD */ + 0x0d8 MUX_M1 /* UART6_TXD */ + >; + }; + + cam0_rst_pmx_func: cam0_rst_pmx_func { + pinctrl-single,pins = < + 0x0c8 MUX_M0 /* CAM0_RST */ + >; + }; + + cam1_rst_pmx_func: cam1_rst_pmx_func { + pinctrl-single,pins = < + 0x124 MUX_M0 /* CAM1_RST */ + >; + }; + }; + + /* [IOMG_MMC0_000, IOMG_MMC0_005] */ + pmx1: pinmux@ff37e000 { + compatible = "pinctrl-single"; + reg = <0x0 0xff37e000 0x0 0x18>; + #gpio-range-cells = <0x3>; + #pinctrl-cells = <1>; + pinctrl-single,register-width = <0x20>; + pinctrl-single,function-mask = <0x7>; + /* pin base, nr pins & gpio function */ + pinctrl-single,gpio-range = <&range 0 6 0>; + + sd_pmx_func: sd_pmx_func { + pinctrl-single,pins = < + 0x000 MUX_M1 /* SD_CLK */ + 0x004 MUX_M1 /* SD_CMD */ + 0x008 MUX_M1 /* SD_DATA0 */ + 0x00c MUX_M1 /* SD_DATA1 */ + 0x010 MUX_M1 /* SD_DATA2 */ + 0x014 MUX_M1 /* SD_DATA3 */ + >; + }; + }; + + /* [IOMG_FIX_000, IOMG_FIX_011] */ + pmx2: pinmux@ff3b6000 { + compatible = "pinctrl-single"; + reg = <0x0 0xff3b6000 0x0 0x30>; + #pinctrl-cells = <1>; + #gpio-range-cells = <0x3>; + pinctrl-single,register-width = <0x20>; + pinctrl-single,function-mask = <0x7>; + /* pin base, nr pins & gpio function */ + pinctrl-single,gpio-range = <&range 0 12 0>; + + ufs_pmx_func: ufs_pmx_func { + pinctrl-single,pins = < + 0x000 MUX_M1 /* UFS_REF_CLK */ + 0x004 MUX_M1 /* UFS_RST_N */ + >; + }; + + spi3_pmx_func: spi3_pmx_func { + pinctrl-single,pins = < + 0x008 MUX_M1 /* SPI3_CLK */ + 0x00c MUX_M1 /* SPI3_DI */ + 0x010 MUX_M1 /* SPI3_DO */ + 0x014 MUX_M1 /* SPI3_CS0_N */ + >; + }; + }; + + /* [IOMG_MMC1_000, IOMG_MMC1_005] */ + pmx3: pinmux@ff3fd000 { + compatible = "pinctrl-single"; + reg = <0x0 0xff3fd000 0x0 0x18>; + #pinctrl-cells = <1>; + #gpio-range-cells = <0x3>; + pinctrl-single,register-width = <0x20>; + pinctrl-single,function-mask = <0x7>; + /* pin base, nr pins & gpio function */ + pinctrl-single,gpio-range = <&range 0 6 0>; + + sdio_pmx_func: sdio_pmx_func { + pinctrl-single,pins = < + 0x000 MUX_M1 /* SDIO_CLK */ + 0x004 MUX_M1 /* SDIO_CMD */ + 0x008 MUX_M1 /* SDIO_DATA0 */ + 0x00c MUX_M1 /* SDIO_DATA1 */ + 0x010 MUX_M1 /* SDIO_DATA2 */ + 0x014 MUX_M1 /* SDIO_DATA3 */ + >; + }; + }; + + /* [IOMG_AO_000, IOMG_AO_041] */ + pmx4: pinmux@fff11000 { + compatible = "pinctrl-single"; + reg = <0x0 0xfff11000 0x0 0xa8>; + #pinctrl-cells = <1>; + #gpio-range-cells = <0x3>; + pinctrl-single,register-width = <0x20>; + pinctrl-single,function-mask = <0x7>; + /* pin base in node, nr pins & gpio function */ + pinctrl-single,gpio-range = <&range 0 42 0>; + + i2s2_pmx_func: i2s2_pmx_func { + pinctrl-single,pins = < + 0x044 MUX_M1 /* I2S2_DI */ + 0x048 MUX_M1 /* I2S2_DO */ + 0x04c MUX_M1 /* I2S2_XCLK */ + 0x050 MUX_M1 /* I2S2_XFS */ + >; + }; + + slimbus_pmx_func: slimbus_pmx_func { + pinctrl-single,pins = < + 0x02c MUX_M1 /* SLIMBUS_CLK */ + 0x030 MUX_M1 /* SLIMBUS_DATA */ + >; + }; + + i2c0_pmx_func: i2c0_pmx_func { + pinctrl-single,pins = < + 0x014 MUX_M1 /* I2C0_SCL */ + 0x018 MUX_M1 /* I2C0_SDA */ + >; + }; + + i2c1_pmx_func: i2c1_pmx_func { + pinctrl-single,pins = < + 0x01c MUX_M1 /* I2C1_SCL */ + 0x020 MUX_M1 /* I2C1_SDA */ + >; + }; + + i2c7_pmx_func: i2c7_pmx_func { + pinctrl-single,pins = < + 0x024 MUX_M3 /* I2C7_SCL */ + 0x028 MUX_M3 /* I2C7_SDA */ + >; + }; + + pcie_pmx_func: pcie_pmx_func { + pinctrl-single,pins = < + 0x084 MUX_M1 /* PCIE_CLKREQ_N */ + 0x088 MUX_M1 /* PCIE_WAKE_N */ + >; + }; + + spi2_pmx_func: spi2_pmx_func { + pinctrl-single,pins = < + 0x08c MUX_M1 /* SPI2_CLK */ + 0x090 MUX_M1 /* SPI2_DI */ + 0x094 MUX_M1 /* SPI2_DO */ + 0x098 MUX_M1 /* SPI2_CS0_N */ + >; + }; + + i2s0_pmx_func: i2s0_pmx_func { + pinctrl-single,pins = < + 0x034 MUX_M1 /* I2S0_DI */ + 0x038 MUX_M1 /* I2S0_DO */ + 0x03c MUX_M1 /* I2S0_XCLK */ + 0x040 MUX_M1 /* I2S0_XFS */ + >; + }; + }; + + pmx5: pinmux@e896c800 { + compatible = "pinconf-single"; + reg = <0x0 0xe896c800 0x0 0x200>; + #pinctrl-cells = <1>; + pinctrl-single,register-width = <0x20>; + + pmu_cfg_func: pmu_cfg_func { + pinctrl-single,pins = < + 0x010 0x0 /* PMU1_SSI */ + 0x014 0x0 /* PMU2_SSI */ + 0x018 0x0 /* PMU_CLKOUT */ + 0x10c 0x0 /* PMU_HKADC_SSI */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_06MA DRIVE6_MASK + >; + }; + + i2c3_cfg_func: i2c3_cfg_func { + pinctrl-single,pins = < + 0x038 0x0 /* I2C3_SCL */ + 0x03c 0x0 /* I2C3_SDA */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_02MA DRIVE6_MASK + >; + }; + + csi0_pwd_n_cfg_func: csi0_pwd_n_cfg_func { + pinctrl-single,pins = < + 0x050 0x0 /* CSI0_PWD_N */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_04MA DRIVE6_MASK + >; + }; + + csi1_pwd_n_cfg_func: csi1_pwd_n_cfg_func { + pinctrl-single,pins = < + 0x058 0x0 /* CSI1_PWD_N */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_04MA DRIVE6_MASK + >; + }; + + isp0_cfg_func: isp0_cfg_func { + pinctrl-single,pins = < + 0x064 0x0 /* ISP_CLK0 */ + 0x070 0x0 /* ISP_SCL0 */ + 0x074 0x0 /* ISP_SDA0 */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_04MA DRIVE6_MASK>; + }; + + isp1_cfg_func: isp1_cfg_func { + pinctrl-single,pins = < + 0x068 0x0 /* ISP_CLK1 */ + 0x078 0x0 /* ISP_SCL1 */ + 0x07c 0x0 /* ISP_SDA1 */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_04MA DRIVE6_MASK + >; + }; + + pwr_key_cfg_func: pwr_key_cfg_func { + pinctrl-single,pins = < + 0x08c 0x0 /* GPIO_034 */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_02MA DRIVE6_MASK + >; + }; + + uart1_cfg_func: uart1_cfg_func { + pinctrl-single,pins = < + 0x0b4 0x0 /* UART1_RXD */ + 0x0b8 0x0 /* UART1_TXD */ + 0x0bc 0x0 /* UART1_CTS_N */ + 0x0c0 0x0 /* UART1_RTS_N */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_02MA DRIVE6_MASK + >; + }; + + uart2_cfg_func: uart2_cfg_func { + pinctrl-single,pins = < + 0x0c8 0x0 /* UART2_CTS_N */ + 0x0cc 0x0 /* UART2_RTS_N */ + 0x0d0 0x0 /* UART2_TXD */ + 0x0d4 0x0 /* UART2_RXD */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_02MA DRIVE6_MASK + >; + }; + + uart5_cfg_func: uart5_cfg_func { + pinctrl-single,pins = < + 0x0c8 0x0 /* UART5_RXD */ + 0x0cc 0x0 /* UART5_TXD */ + 0x0d0 0x0 /* UART5_CTS_N */ + 0x0d4 0x0 /* UART5_RTS_N */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_02MA DRIVE6_MASK + >; + }; + + cam0_rst_cfg_func: cam0_rst_cfg_func { + pinctrl-single,pins = < + 0x0d4 0x0 /* CAM0_RST */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_04MA DRIVE6_MASK + >; + }; + + uart0_cfg_func: uart0_cfg_func { + pinctrl-single,pins = < + 0x0d8 0x0 /* UART0_RXD */ + 0x0dc 0x0 /* UART0_TXD */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_02MA DRIVE6_MASK + >; + }; + + uart6_cfg_func: uart6_cfg_func { + pinctrl-single,pins = < + 0x0d8 0x0 /* UART6_CTS_N */ + 0x0dc 0x0 /* UART6_RTS_N */ + 0x0e0 0x0 /* UART6_RXD */ + 0x0e4 0x0 /* UART6_TXD */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_02MA DRIVE6_MASK + >; + }; + + uart3_cfg_func: uart3_cfg_func { + pinctrl-single,pins = < + 0x0e8 0x0 /* UART3_CTS_N */ + 0x0ec 0x0 /* UART3_RTS_N */ + 0x0f0 0x0 /* UART3_RXD */ + 0x0f4 0x0 /* UART3_TXD */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_02MA DRIVE6_MASK + >; + }; + + uart4_cfg_func: uart4_cfg_func { + pinctrl-single,pins = < + 0x0f8 0x0 /* UART4_CTS_N */ + 0x0fc 0x0 /* UART4_RTS_N */ + 0x100 0x0 /* UART4_RXD */ + 0x104 0x0 /* UART4_TXD */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_02MA DRIVE6_MASK + >; + }; + + cam1_rst_cfg_func: cam1_rst_cfg_func { + pinctrl-single,pins = < + 0x130 0x0 /* CAM1_RST */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_04MA DRIVE6_MASK + >; + }; + }; + + pmx6: pinmux@ff3b6800 { + compatible = "pinconf-single"; + reg = <0x0 0xff3b6800 0x0 0x18>; + #pinctrl-cells = <1>; + pinctrl-single,register-width = <0x20>; + + ufs_cfg_func: ufs_cfg_func { + pinctrl-single,pins = < + 0x000 0x0 /* UFS_REF_CLK */ + 0x004 0x0 /* UFS_RST_N */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_08MA DRIVE6_MASK + >; + }; + + spi3_cfg_func: spi3_cfg_func { + pinctrl-single,pins = < + 0x008 0x0 /* SPI3_CLK */ + 0x0 /* SPI3_DI */ + 0x010 0x0 /* SPI3_DO */ + 0x014 0x0 /* SPI3_CS0_N */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_02MA DRIVE6_MASK + >; + }; + }; + + pmx7: pinmux@ff3fd800 { + compatible = "pinconf-single"; + reg = <0x0 0xff3fd800 0x0 0x18>; + #pinctrl-cells = <1>; + pinctrl-single,register-width = <0x20>; + + sdio_clk_cfg_func: sdio_clk_cfg_func { + pinctrl-single,pins = < + 0x000 0x0 /* SDIO_CLK */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE6_32MA DRIVE6_MASK + >; + }; + + sdio_cfg_func: sdio_cfg_func { + pinctrl-single,pins = < + 0x004 0x0 /* SDIO_CMD */ + 0x008 0x0 /* SDIO_DATA0 */ + 0x00c 0x0 /* SDIO_DATA1 */ + 0x010 0x0 /* SDIO_DATA2 */ + 0x014 0x0 /* SDIO_DATA3 */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_UP + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE6_19MA DRIVE6_MASK + >; + }; + }; + + pmx8: pinmux@ff37e800 { + compatible = "pinconf-single"; + reg = <0x0 0xff37e800 0x0 0x18>; + #pinctrl-cells = <1>; + pinctrl-single,register-width = <0x20>; + + sd_clk_cfg_func: sd_clk_cfg_func { + pinctrl-single,pins = < + 0x000 0x0 /* SD_CLK */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_DIS + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE6_32MA + DRIVE6_MASK + >; + }; + + sd_cfg_func: sd_cfg_func { + pinctrl-single,pins = < + 0x004 0x0 /* SD_CMD */ + 0x008 0x0 /* SD_DATA0 */ + 0x00c 0x0 /* SD_DATA1 */ + 0x010 0x0 /* SD_DATA2 */ + 0x014 0x0 /* SD_DATA3 */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_UP + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE6_19MA + DRIVE6_MASK + >; + }; + }; + + pmx9: pinmux@fff11800 { + compatible = "pinconf-single"; + reg = <0x0 0xfff11800 0x0 0xbc>; + #pinctrl-cells = <1>; + pinctrl-single,register-width = <0x20>; + + i2c0_cfg_func: i2c0_cfg_func { + pinctrl-single,pins = < + 0x01c 0x0 /* I2C0_SCL */ + 0x020 0x0 /* I2C0_SDA */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_UP + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_02MA DRIVE6_MASK + >; + }; + + i2c1_cfg_func: i2c1_cfg_func { + pinctrl-single,pins = < + 0x024 0x0 /* I2C1_SCL */ + 0x028 0x0 /* I2C1_SDA */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_UP + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_02MA DRIVE6_MASK + >; + }; + + i2c7_cfg_func: i2c7_cfg_func { + pinctrl-single,pins = < + 0x02c 0x0 /* I2C7_SCL */ + 0x030 0x0 /* I2C7_SDA */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_UP + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_02MA DRIVE6_MASK + >; + }; + + slimbus_cfg_func: slimbus_cfg_func { + pinctrl-single,pins = < + 0x034 0x0 /* SLIMBUS_CLK */ + 0x038 0x0 /* SLIMBUS_DATA */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_UP + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_02MA DRIVE6_MASK + >; + }; + + i2s0_cfg_func: i2s0_cfg_func { + pinctrl-single,pins = < + 0x040 0x0 /* I2S0_DI */ + 0x044 0x0 /* I2S0_DO */ + 0x048 0x0 /* I2S0_XCLK */ + 0x04c 0x0 /* I2S0_XFS */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_UP + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_02MA DRIVE6_MASK + >; + }; + + i2s2_cfg_func: i2s2_cfg_func { + pinctrl-single,pins = < + 0x050 0x0 /* I2S2_DI */ + 0x054 0x0 /* I2S2_DO */ + 0x058 0x0 /* I2S2_XCLK */ + 0x05c 0x0 /* I2S2_XFS */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_UP + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_02MA DRIVE6_MASK + >; + }; + + pcie_cfg_func: pcie_cfg_func { + pinctrl-single,pins = < + 0x094 0x0 /* PCIE_CLKREQ_N */ + 0x098 0x0 /* PCIE_WAKE_N */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_UP + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_02MA DRIVE6_MASK + >; + }; + + spi2_cfg_func: spi2_cfg_func { + pinctrl-single,pins = < + 0x09c 0x0 /* SPI2_CLK */ + 0x0a0 0x0 /* SPI2_DI */ + 0x0a4 0x0 /* SPI2_DO */ + 0x0a8 0x0 /* SPI2_CS0_N */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_UP + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_02MA DRIVE6_MASK + >; + }; + + usb_cfg_func: usb_cfg_func { + pinctrl-single,pins = < + 0x0ac 0x0 /* GPIO_219 */ + >; + pinctrl-single,bias-pulldown = < + PULL_DIS + PULL_DOWN + PULL_DIS + PULL_DOWN + >; + pinctrl-single,bias-pullup = < + PULL_UP + PULL_UP + PULL_DIS + PULL_UP + >; + pinctrl-single,drive-strength = < + DRIVE7_02MA DRIVE6_MASK + >; + }; + }; + }; +}; diff --git a/include/dt-bindings/clock/hi3660-clock.h b/include/dt-bindings/clock/hi3660-clock.h new file mode 100644 index 0000000000..e1374e1809 --- /dev/null +++ b/include/dt-bindings/clock/hi3660-clock.h @@ -0,0 +1,214 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* + * Copyright (c) 2016-2017 Linaro Ltd. + * Copyright (c) 2016-2017 HiSilicon Technologies Co., Ltd. + */ + +#ifndef __DTS_HI3660_CLOCK_H +#define __DTS_HI3660_CLOCK_H + +/* fixed rate clocks */ +#define HI3660_CLKIN_SYS 0 +#define HI3660_CLKIN_REF 1 +#define HI3660_CLK_FLL_SRC 2 +#define HI3660_CLK_PPLL0 3 +#define HI3660_CLK_PPLL1 4 +#define HI3660_CLK_PPLL2 5 +#define HI3660_CLK_PPLL3 6 +#define HI3660_CLK_SCPLL 7 +#define HI3660_PCLK 8 +#define HI3660_CLK_UART0_DBG 9 +#define HI3660_CLK_UART6 10 +#define HI3660_OSC32K 11 +#define HI3660_OSC19M 12 +#define HI3660_CLK_480M 13 +#define HI3660_CLK_INV 14 + +/* clk in crgctrl */ +#define HI3660_FACTOR_UART3 15 +#define HI3660_CLK_FACTOR_MMC 16 +#define HI3660_CLK_GATE_I2C0 17 +#define HI3660_CLK_GATE_I2C1 18 +#define HI3660_CLK_GATE_I2C2 19 +#define HI3660_CLK_GATE_I2C6 20 +#define HI3660_CLK_DIV_SYSBUS 21 +#define HI3660_CLK_DIV_320M 22 +#define HI3660_CLK_DIV_A53 23 +#define HI3660_CLK_GATE_SPI0 24 +#define HI3660_CLK_GATE_SPI2 25 +#define HI3660_PCIEPHY_REF 26 +#define HI3660_CLK_ABB_USB 27 +#define HI3660_HCLK_GATE_SDIO0 28 +#define HI3660_HCLK_GATE_SD 29 +#define HI3660_CLK_GATE_AOMM 30 +#define HI3660_PCLK_GPIO0 31 +#define HI3660_PCLK_GPIO1 32 +#define HI3660_PCLK_GPIO2 33 +#define HI3660_PCLK_GPIO3 34 +#define HI3660_PCLK_GPIO4 35 +#define HI3660_PCLK_GPIO5 36 +#define HI3660_PCLK_GPIO6 37 +#define HI3660_PCLK_GPIO7 38 +#define HI3660_PCLK_GPIO8 39 +#define HI3660_PCLK_GPIO9 40 +#define HI3660_PCLK_GPIO10 41 +#define HI3660_PCLK_GPIO11 42 +#define HI3660_PCLK_GPIO12 43 +#define HI3660_PCLK_GPIO13 44 +#define HI3660_PCLK_GPIO14 45 +#define HI3660_PCLK_GPIO15 46 +#define HI3660_PCLK_GPIO16 47 +#define HI3660_PCLK_GPIO17 48 +#define HI3660_PCLK_GPIO18 49 +#define HI3660_PCLK_GPIO19 50 +#define HI3660_PCLK_GPIO20 51 +#define HI3660_PCLK_GPIO21 52 +#define HI3660_CLK_GATE_SPI3 53 +#define HI3660_CLK_GATE_I2C7 54 +#define HI3660_CLK_GATE_I2C3 55 +#define HI3660_CLK_GATE_SPI1 56 +#define HI3660_CLK_GATE_UART1 57 +#define HI3660_CLK_GATE_UART2 58 +#define HI3660_CLK_GATE_UART4 59 +#define HI3660_CLK_GATE_UART5 60 +#define HI3660_CLK_GATE_I2C4 61 +#define HI3660_CLK_GATE_DMAC 62 +#define HI3660_PCLK_GATE_DSS 63 +#define HI3660_ACLK_GATE_DSS 64 +#define HI3660_CLK_GATE_LDI1 65 +#define HI3660_CLK_GATE_LDI0 66 +#define HI3660_CLK_GATE_VIVOBUS 67 +#define HI3660_CLK_GATE_EDC0 68 +#define HI3660_CLK_GATE_TXDPHY0_CFG 69 +#define HI3660_CLK_GATE_TXDPHY0_REF 70 +#define HI3660_CLK_GATE_TXDPHY1_CFG 71 +#define HI3660_CLK_GATE_TXDPHY1_REF 72 +#define HI3660_ACLK_GATE_USB3OTG 73 +#define HI3660_CLK_GATE_SPI4 74 +#define HI3660_CLK_GATE_SD 75 +#define HI3660_CLK_GATE_SDIO0 76 +#define HI3660_CLK_GATE_UFS_SUBSYS 77 +#define HI3660_PCLK_GATE_DSI0 78 +#define HI3660_PCLK_GATE_DSI1 79 +#define HI3660_ACLK_GATE_PCIE 80 +#define HI3660_PCLK_GATE_PCIE_SYS 81 +#define HI3660_CLK_GATE_PCIEAUX 82 +#define HI3660_PCLK_GATE_PCIE_PHY 83 +#define HI3660_CLK_ANDGT_LDI0 84 +#define HI3660_CLK_ANDGT_LDI1 85 +#define HI3660_CLK_ANDGT_EDC0 86 +#define HI3660_CLK_GATE_UFSPHY_GT 87 +#define HI3660_CLK_ANDGT_MMC 88 +#define HI3660_CLK_ANDGT_SD 89 +#define HI3660_CLK_A53HPM_ANDGT 90 +#define HI3660_CLK_ANDGT_SDIO 91 +#define HI3660_CLK_ANDGT_UART0 92 +#define HI3660_CLK_ANDGT_UART1 93 +#define HI3660_CLK_ANDGT_UARTH 94 +#define HI3660_CLK_ANDGT_SPI 95 +#define HI3660_CLK_VIVOBUS_ANDGT 96 +#define HI3660_CLK_AOMM_ANDGT 97 +#define HI3660_CLK_320M_PLL_GT 98 +#define HI3660_AUTODIV_EMMC0BUS 99 +#define HI3660_AUTODIV_SYSBUS 100 +#define HI3660_CLK_GATE_UFSPHY_CFG 101 +#define HI3660_CLK_GATE_UFSIO_REF 102 +#define HI3660_CLK_MUX_SYSBUS 103 +#define HI3660_CLK_MUX_UART0 104 +#define HI3660_CLK_MUX_UART1 105 +#define HI3660_CLK_MUX_UARTH 106 +#define HI3660_CLK_MUX_SPI 107 +#define HI3660_CLK_MUX_I2C 108 +#define HI3660_CLK_MUX_MMC_PLL 109 +#define HI3660_CLK_MUX_LDI1 110 +#define HI3660_CLK_MUX_LDI0 111 +#define HI3660_CLK_MUX_SD_PLL 112 +#define HI3660_CLK_MUX_SD_SYS 113 +#define HI3660_CLK_MUX_EDC0 114 +#define HI3660_CLK_MUX_SDIO_SYS 115 +#define HI3660_CLK_MUX_SDIO_PLL 116 +#define HI3660_CLK_MUX_VIVOBUS 117 +#define HI3660_CLK_MUX_A53HPM 118 +#define HI3660_CLK_MUX_320M 119 +#define HI3660_CLK_MUX_IOPERI 120 +#define HI3660_CLK_DIV_UART0 121 +#define HI3660_CLK_DIV_UART1 122 +#define HI3660_CLK_DIV_UARTH 123 +#define HI3660_CLK_DIV_MMC 124 +#define HI3660_CLK_DIV_SD 125 +#define HI3660_CLK_DIV_EDC0 126 +#define HI3660_CLK_DIV_LDI0 127 +#define HI3660_CLK_DIV_SDIO 128 +#define HI3660_CLK_DIV_LDI1 129 +#define HI3660_CLK_DIV_SPI 130 +#define HI3660_CLK_DIV_VIVOBUS 131 +#define HI3660_CLK_DIV_I2C 132 +#define HI3660_CLK_DIV_UFSPHY 133 +#define HI3660_CLK_DIV_CFGBUS 134 +#define HI3660_CLK_DIV_MMC0BUS 135 +#define HI3660_CLK_DIV_MMC1BUS 136 +#define HI3660_CLK_DIV_UFSPERI 137 +#define HI3660_CLK_DIV_AOMM 138 +#define HI3660_CLK_DIV_IOPERI 139 +#define HI3660_VENC_VOLT_HOLD 140 +#define HI3660_PERI_VOLT_HOLD 141 +#define HI3660_CLK_GATE_VENC 142 +#define HI3660_CLK_GATE_VDEC 143 +#define HI3660_CLK_ANDGT_VENC 144 +#define HI3660_CLK_ANDGT_VDEC 145 +#define HI3660_CLK_MUX_VENC 146 +#define HI3660_CLK_MUX_VDEC 147 +#define HI3660_CLK_DIV_VENC 148 +#define HI3660_CLK_DIV_VDEC 149 +#define HI3660_CLK_FAC_ISP_SNCLK 150 +#define HI3660_CLK_GATE_ISP_SNCLK0 151 +#define HI3660_CLK_GATE_ISP_SNCLK1 152 +#define HI3660_CLK_GATE_ISP_SNCLK2 153 +#define HI3660_CLK_ANGT_ISP_SNCLK 154 +#define HI3660_CLK_MUX_ISP_SNCLK 155 +#define HI3660_CLK_DIV_ISP_SNCLK 156 + +/* clk in pmuctrl */ +#define HI3660_GATE_ABB_192 0 + +/* clk in pctrl */ +#define HI3660_GATE_UFS_TCXO_EN 0 +#define HI3660_GATE_USB_TCXO_EN 1 + +/* clk in sctrl */ +#define HI3660_PCLK_AO_GPIO0 0 +#define HI3660_PCLK_AO_GPIO1 1 +#define HI3660_PCLK_AO_GPIO2 2 +#define HI3660_PCLK_AO_GPIO3 3 +#define HI3660_PCLK_AO_GPIO4 4 +#define HI3660_PCLK_AO_GPIO5 5 +#define HI3660_PCLK_AO_GPIO6 6 +#define HI3660_PCLK_GATE_MMBUF 7 +#define HI3660_CLK_GATE_DSS_AXI_MM 8 +#define HI3660_PCLK_MMBUF_ANDGT 9 +#define HI3660_CLK_MMBUF_PLL_ANDGT 10 +#define HI3660_CLK_FLL_MMBUF_ANDGT 11 +#define HI3660_CLK_SYS_MMBUF_ANDGT 12 +#define HI3660_CLK_GATE_PCIEPHY_GT 13 +#define HI3660_ACLK_MUX_MMBUF 14 +#define HI3660_CLK_SW_MMBUF 15 +#define HI3660_CLK_DIV_AOBUS 16 +#define HI3660_PCLK_DIV_MMBUF 17 +#define HI3660_ACLK_DIV_MMBUF 18 +#define HI3660_CLK_DIV_PCIEPHY 19 + +/* clk in iomcu */ +#define HI3660_CLK_I2C0_IOMCU 0 +#define HI3660_CLK_I2C1_IOMCU 1 +#define HI3660_CLK_I2C2_IOMCU 2 +#define HI3660_CLK_I2C6_IOMCU 3 +#define HI3660_CLK_IOMCU_PERI0 4 + +/* clk in stub clock */ +#define HI3660_CLK_STUB_CLUSTER0 0 +#define HI3660_CLK_STUB_CLUSTER1 1 +#define HI3660_CLK_STUB_GPU 2 +#define HI3660_CLK_STUB_DDR 3 +#define HI3660_CLK_STUB_NUM 4 + +#endif /* __DTS_HI3660_CLOCK_H */ From 881b6324f01638505f3e9fd87fd1b49961d14a54 Mon Sep 17 00:00:00 2001 From: Manivannan Sadhasivam Date: Fri, 2 Aug 2019 20:40:08 +0530 Subject: [PATCH 07/51] arm: dts: Add devicetree for Hikey960 board This commit adds devicetree for Hikey960 board. Most of the contents are copied from Linux kernel with some modifications for u-boot. To be more precise, SD card's speed related properties are removed due to a bug in u-boot clock implementation. Hence forcing the SD controller to work in standard speed. Signed-off-by: Manivannan Sadhasivam --- arch/arm/dts/Makefile | 1 + arch/arm/dts/hi3660-hikey960-u-boot.dtsi | 10 + arch/arm/dts/hi3660-hikey960.dts | 607 +++++++++++++++++++++++ 3 files changed, 618 insertions(+) create mode 100644 arch/arm/dts/hi3660-hikey960-u-boot.dtsi create mode 100644 arch/arm/dts/hi3660-hikey960.dts diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 9e7d6d6490..ce1eacb7ef 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -15,6 +15,7 @@ dtb-$(CONFIG_EXYNOS4) += exynos4210-origen.dtb \ exynos4412-odroid.dtb dtb-$(CONFIG_TARGET_HIKEY) += hi6220-hikey.dtb +dtb-$(CONFIG_TARGET_HIKEY960) += hi3660-hikey960.dtb dtb-$(CONFIG_TARGET_POPLAR) += hi3798cv200-poplar.dtb diff --git a/arch/arm/dts/hi3660-hikey960-u-boot.dtsi b/arch/arm/dts/hi3660-hikey960-u-boot.dtsi new file mode 100644 index 0000000000..648c77f8c5 --- /dev/null +++ b/arch/arm/dts/hi3660-hikey960-u-boot.dtsi @@ -0,0 +1,10 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * U-Boot additions + * + * Copyright (c) 2019 Linaro Ltd. + */ + +&dwmmc1 { + u-boot,dm-pre-reloc; +}; diff --git a/arch/arm/dts/hi3660-hikey960.dts b/arch/arm/dts/hi3660-hikey960.dts new file mode 100644 index 0000000000..9fbfb422c8 --- /dev/null +++ b/arch/arm/dts/hi3660-hikey960.dts @@ -0,0 +1,607 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * dts file for Hisilicon HiKey960 Development Board + * + * Copyright (C) 2016, Hisilicon Ltd. + * + */ + +/dts-v1/; + +#include "hi3660.dtsi" +#include "hikey960-pinctrl.dtsi" +#include +#include +#include + +/ { + model = "HiKey960"; + compatible = "hisilicon,hi3660-hikey960", "hisilicon,hi3660"; + + aliases { + mshc1 = &dwmmc1; + mshc2 = &dwmmc2; + serial0 = &uart0; + serial1 = &uart1; + serial2 = &uart2; + serial3 = &uart3; + serial4 = &uart4; + serial5 = &uart5; + serial6 = &uart6; + }; + + chosen { + stdout-path = "serial6:115200n8"; + }; + + memory@0 { + device_type = "memory"; + /* rewrite this at bootloader */ + reg = <0x0 0x0 0x0 0x0>; + }; + + reserved-memory { + #address-cells = <2>; + #size-cells = <2>; + ranges; + + ramoops@32000000 { + compatible = "ramoops"; + reg = <0x0 0x32000000 0x0 0x00100000>; + record-size = <0x00020000>; + console-size = <0x00020000>; + ftrace-size = <0x00020000>; + }; + }; + + reboot-mode-syscon@32100000 { + compatible = "syscon", "simple-mfd"; + reg = <0x0 0x32100000 0x0 0x00001000>; + + reboot-mode { + compatible = "syscon-reboot-mode"; + offset = <0x0>; + + mode-normal = <0x77665501>; + mode-bootloader = <0x77665500>; + mode-recovery = <0x77665502>; + }; + }; + + keys { + compatible = "gpio-keys"; + pinctrl-names = "default"; + pinctrl-0 = <&pwr_key_pmx_func &pwr_key_cfg_func>; + + power { + wakeup-source; + gpios = <&gpio4 2 GPIO_ACTIVE_LOW>; + label = "GPIO Power"; + linux,code = ; + }; + }; + + leds { + compatible = "gpio-leds"; + + user_led1 { + label = "green:user1"; + /* gpio_150_user_led1 */ + gpios = <&gpio18 6 0>; + linux,default-trigger = "heartbeat"; + }; + + user_led2 { + label = "green:user2"; + /* gpio_151_user_led2 */ + gpios = <&gpio18 7 0>; + linux,default-trigger = "none"; + }; + + user_led3 { + label = "green:user3"; + /* gpio_189_user_led3 */ + gpios = <&gpio23 5 0>; + linux,default-trigger = "mmc0"; + }; + + user_led4 { + label = "green:user4"; + /* gpio_190_user_led4 */ + gpios = <&gpio23 6 0>; + panic-indicator; + linux,default-trigger = "none"; + }; + + wlan_active_led { + label = "yellow:wlan"; + /* gpio_205_wifi_active */ + gpios = <&gpio25 5 0>; + linux,default-trigger = "phy0tx"; + default-state = "off"; + }; + + bt_active_led { + label = "blue:bt"; + gpios = <&gpio25 7 0>; + /* gpio_207_user_led1 */ + linux,default-trigger = "hci0-power"; + default-state = "off"; + }; + }; + + pmic: pmic@fff34000 { + compatible = "hisilicon,hi6421v530-pmic"; + reg = <0x0 0xfff34000 0x0 0x1000>; + interrupt-controller; + #interrupt-cells = <2>; + + regulators { + ldo3: LDO3 { /* HDMI */ + regulator-name = "VOUT3_1V85"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <2200000>; + regulator-enable-ramp-delay = <120>; + }; + + ldo9: LDO9 { /* SDCARD I/O */ + regulator-name = "VOUT9_1V8_2V95"; + regulator-min-microvolt = <1750000>; + regulator-max-microvolt = <3300000>; + regulator-enable-ramp-delay = <240>; + }; + + ldo11: LDO11 { /* Low Speed Connector */ + regulator-name = "VOUT11_1V8_2V95"; + regulator-min-microvolt = <1750000>; + regulator-max-microvolt = <3300000>; + regulator-enable-ramp-delay = <240>; + }; + + ldo15: LDO15 { /* UFS VCC */ + regulator-name = "VOUT15_3V0"; + regulator-min-microvolt = <1750000>; + regulator-max-microvolt = <3000000>; + regulator-boot-on; + regulator-always-on; + regulator-enable-ramp-delay = <120>; + }; + + ldo16: LDO16 { /* SD VDD */ + regulator-name = "VOUT16_2V95"; + regulator-min-microvolt = <1750000>; + regulator-max-microvolt = <3000000>; + regulator-enable-ramp-delay = <360>; + }; + }; + }; + + wlan_en: wlan-en-1-8v { + compatible = "regulator-fixed"; + regulator-name = "wlan-en-regulator"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + + /* GPIO_051_WIFI_EN */ + gpio = <&gpio6 3 0>; + + /* WLAN card specific delay */ + startup-delay-us = <70000>; + enable-active-high; + }; + + firmware { + optee { + compatible = "linaro,optee-tz"; + method = "smc"; + }; + }; +}; + +/* + * Legend: proper name = the GPIO line is used as GPIO + * NC = not connected (pin out but not routed from the chip to + * anything the board) + * "[PER]" = pin is muxed for [peripheral] (not GPIO) + * "" = no idea, schematic doesn't say, could be + * unrouted (not connected to any external pin) + * LSEC = Low Speed External Connector + * HSEC = High Speed External Connector + * + * Line names are taken from "HiKey 960 Board ver A" schematics + * from Huawei. The 40 pin low speed expansion connector is named + * J2002 63453-140LF. + * + * For the lines routed to the external connectors the + * lines are named after the 96Boards CE Specification 1.0, + * Appendix "Expansion Connector Signal Description". + * + * When the 96Board naming of a line and the schematic name of + * the same line are in conflict, the 96Board specification + * takes precedence, which means that the external UART on the + * LSEC is named UART0 while the schematic and SoC names this + * UART3. This is only for the informational lines i.e. "[FOO]", + * the GPIO named lines "GPIO-A" thru "GPIO-L" are the only + * ones actually used for GPIO. + */ +&gpio0 { + /* GPIO_000-GPIO_007 */ + gpio-line-names = + "", + "TP901", /* TEST_MODE connected to TP901 */ + "[PMU0_SSI]", + "[PMU1_SSI]", + "[PMU2_SSI]", + "[PMU0_CLKOUT]", + "[JTAG_TCK]", + "[JTAG_TMS]"; +}; + +&gpio1 { + /* GPIO_008-GPIO_015 */ + gpio-line-names = + "[JTAG_TRST_N]", + "[JTAG_TDI]", + "[JTAG_TDO]", + "NC", "NC", + "[I2C3_SCL]", + "[I2C3_SDA]", + "NC"; +}; + +&gpio2 { + /* GPIO_016-GPIO_023 */ + gpio-line-names = + "NC", "NC", "NC", + "GPIO-J", /* LSEC pin 32: GPIO_019 */ + "GPIO_020_HDMI_SEL", + "GPIO-L", /* LSEC pin 34: GPIO_021 */ + "GPIO_022_UFSBUCK_INT_N", + "GPIO-G"; /* LSEC pin 29: LCD_TE0 */ +}; + +&gpio3 { + /* GPIO_024-GPIO_031 */ + /* The rail from pin BK36 is named LCD_TE0, we assume to be muxed as GPIO for GPIO-G */ + gpio-line-names = + "[CSI0_MCLK]", /* HSEC pin 15: ISP_CCLK0_MCAM */ + "[CSI1_MCLK]", /* HSEC pin 17: ISP_CCLK1_SCAM */ + "NC", + "[I2C2_SCL]", /* HSEC pin 32: ISP_SCL0 */ + "[I2C2_SDA]", /* HSEC pin 34: ISP_SDA0 */ + "[I2C3_SCL]", /* HSEC pin 36: ISP_SCL1 */ + "[I2C3_SDA]", /* HSEC pin 38: ISP_SDA1 */ + "NC"; +}; + +&gpio4 { + /* GPIO_032-GPIO_039 */ + gpio-line-names = + "NC", "NC", + "PWR_BTN_N", /* LSEC pin 4: GPIO_034_PWRON_DET */ + "GPIO_035_PMU2_EN", + "GPIO_036_USB_HUB_RESET", + "NC", "NC", "NC"; +}; + +&gpio5 { + /* GPIO_040-GPIO_047 */ + gpio-line-names = + "GPIO-H", /* LSEC pin 30: GPIO_040_LCD_RST_N */ + "GPIO_041_HDMI_PD", + "TP904", /* Test point */ + "TP905", /* Test point */ + "NC", "NC", + "GPIO_046_HUB_VDD33_EN", + "GPIO_047_PMU1_EN"; +}; + +&gpio6 { + /* GPIO_048-GPIO_055 */ + gpio-line-names = + "NC", "NC", "NC", + "GPIO_051_WIFI_EN", + "GPIO-I", /* LSEC pin 31: GPIO_052_CAM0_RST_N */ + /* + * These two pins should be used for SD(IO) data according to the + * 96boards specification but seems to be repurposed for a IRDA UART. + * They are however named according to the spec. + */ + "[SD_DAT1]", /* HSEC pin 3: UART0_IRDA_RXD */ + "[SD_DAT2]", /* HSEC pin 5: UART0_IRDA_TXD */ + "[UART1_RXD]"; /* LSEC pin 13: DEBUG_UART6_RXD */ +}; + +&gpio7 { + /* GPIO_056-GPIO_063 */ + gpio-line-names = + "[UART1_TXD]", /* LSEC pin 11: DEBUG_UART6_TXD */ + "[UART0_CTS]", /* LSEC pin 3: UART3_CTS_N */ + "[UART0_RTS]", /* LSEC pin 9: UART3_RTS_N */ + "[UART0_RXD]", /* LSEC pin 7: UART3_RXD */ + "[UART0_TXD]", /* LSEC pin 5: UART3_TXD */ + "[SOC_BT_UART4_CTS_N]", + "[SOC_BT_UART4_RTS_N]", + "[SOC_BT_UART4_RXD]"; +}; + +&gpio8 { + /* GPIO_064-GPIO_071 */ + gpio-line-names = + "[SOC_BT_UART4_TXD]", + "NC", + "[PMU_HKADC_SSI]", + "NC", + "GPIO_068_SEL", + "NC", "NC", "NC"; + +}; + +&gpio9 { + /* GPIO_072-GPIO_079 */ + gpio-line-names = + "NC", "NC", "NC", + "GPIO-K", /* LSEC pin 33: GPIO_075_CAM1_RST_N */ + "NC", "NC", "NC", "NC"; +}; + +&gpio10 { + /* GPIO_080-GPIO_087 */ + gpio-line-names = "NC", "NC", "NC", "NC", "NC", "NC", "NC", "NC"; +}; + +&gpio11 { + /* GPIO_088-GPIO_095 */ + gpio-line-names = + "NC", + "[PCIE_PERST_N]", + "NC", "NC", "NC", "NC", "NC", "NC"; +}; + +&gpio12 { + /* GPIO_096-GPIO_103 */ + gpio-line-names = "NC", "NC", "NC", "", "", "", "", "NC"; +}; + +&gpio13 { + /* GPIO_104-GPIO_111 */ + gpio-line-names = "NC", "NC", "NC", "NC", "NC", "NC", "NC", "NC"; +}; + +&gpio14 { + /* GPIO_112-GPIO_119 */ + gpio-line-names = "NC", "NC", "NC", "NC", "NC", "NC", "NC", "NC"; +}; + +&gpio15 { + /* GPIO_120-GPIO_127 */ + gpio-line-names = + "NC", "NC", "NC", "NC", "NC", "NC", + "GPIO_126_BT_EN", + "TP902"; /* GPIO_127_JTAG_SEL0 */ +}; + +&gpio16 { + /* GPIO_128-GPIO_135 */ + gpio-line-names = "", "", "", "", "", "", "", ""; +}; + +&gpio17 { + /* GPIO_136-GPIO_143 */ + gpio-line-names = "", "", "", "", "", "", "", ""; +}; + +&gpio18 { + /* GPIO_144-GPIO_151 */ + gpio-line-names = + "[UFS_REF_CLK]", + "[UFS_RST_N]", + "[SPI1_SCLK]", /* HSEC pin 9: GPIO_146_SPI3_CLK */ + "[SPI1_DIN]", /* HSEC pin 11: GPIO_147_SPI3_DI */ + "[SPI1_DOUT]", /* HSEC pin 1: GPIO_148_SPI3_DO */ + "[SPI1_CS]", /* HSEC pin 7: GPIO_149_SPI3_CS0_N */ + "GPIO_150_USER_LED1", + "GPIO_151_USER_LED2"; +}; + +&gpio19 { + /* GPIO_152-GPIO_159 */ + gpio-line-names = "NC", "NC", "NC", "NC", "", "", "", ""; +}; + +&gpio20 { + /* GPIO_160-GPIO_167 */ + gpio-line-names = + "[SD_CLK]", + "[SD_CMD]", + "[SD_DATA0]", + "[SD_DATA1]", + "[SD_DATA2]", + "[SD_DATA3]", + "", ""; +}; + +&gpio21 { + /* GPIO_168-GPIO_175 */ + gpio-line-names = + "[WL_SDIO_CLK]", + "[WL_SDIO_CMD]", + "[WL_SDIO_DATA0]", + "[WL_SDIO_DATA1]", + "[WL_SDIO_DATA2]", + "[WL_SDIO_DATA3]", + "", ""; +}; + +&gpio22 { + /* GPIO_176-GPIO_183 */ + gpio-line-names = + "[GPIO_176_PMU_PWR_HOLD]", + "NA", + "[SYSCLK_EN]", + "GPIO_179_WL_WAKEUP_AP", + "GPIO_180_HDMI_INT", + "NA", + "GPIO-F", /* LSEC pin 28: LCD_BL_PWM */ + "[I2C0_SCL]"; /* LSEC pin 15 */ +}; + +&gpio23 { + /* GPIO_184-GPIO_191 */ + gpio-line-names = + "[I2C0_SDA]", /* LSEC pin 17 */ + "[I2C1_SCL]", /* Actual SoC I2C1 */ + "[I2C1_SDA]", /* Actual SoC I2C1 */ + "[I2C1_SCL]", /* LSEC pin 19: I2C7_SCL */ + "[I2C1_SDA]", /* LSEC pin 21: I2C7_SDA */ + "GPIO_189_USER_LED3", + "GPIO_190_USER_LED4", + ""; +}; + +&gpio24 { + /* GPIO_192-GPIO_199 */ + gpio-line-names = + "[PCM_DI]", /* LSEC pin 22: GPIO_192_I2S0_DI */ + "[PCM_DO]", /* LSEC pin 20: GPIO_193_I2S0_DO */ + "[PCM_CLK]", /* LSEC pin 18: GPIO_194_I2S0_XCLK */ + "[PCM_FS]", /* LSEC pin 16: GPIO_195_I2S0_XFS */ + "[GPIO_196_I2S2_DI]", + "[GPIO_197_I2S2_DO]", + "[GPIO_198_I2S2_XCLK]", + "[GPIO_199_I2S2_XFS]"; +}; + +&gpio25 { + /* GPIO_200-GPIO_207 */ + gpio-line-names = + "NC", + "NC", + "GPIO_202_VBUS_TYPEC", + "GPIO_203_SD_DET", + "GPIO_204_PMU12_IRQ_N", + "GPIO_205_WIFI_ACTIVE", + "GPIO_206_USBSW_SEL", + "GPIO_207_BT_ACTIVE"; +}; + +&gpio26 { + /* GPIO_208-GPIO_215 */ + gpio-line-names = + "GPIO-A", /* LSEC pin 23: GPIO_208 */ + "GPIO-B", /* LSEC pin 24: GPIO_209 */ + "GPIO-C", /* LSEC pin 25: GPIO_210 */ + "GPIO-D", /* LSEC pin 26: GPIO_211 */ + "GPIO-E", /* LSEC pin 27: GPIO_212 */ + "[PCIE_CLKREQ_N]", + "[PCIE_WAKE_N]", + "[SPI0_CLK]"; /* LSEC pin 8: SPI2_CLK */ +}; + +&gpio27 { + /* GPIO_216-GPIO_223 */ + gpio-line-names = + "[SPI0_DIN]", /* LSEC pin 10: SPI2_DI */ + "[SPI0_DOUT]", /* LSEC pin 14: SPI2_DO */ + "[SPI0_CS]", /* LSEC pin 12: SPI2_CS0_N */ + "GPIO_219_CC_INT", + "NC", + "NC", + "[PMU_INT]", + ""; +}; + +&gpio28 { + /* GPIO_224-GPIO_231 */ + gpio-line-names = + "", "", "", "", "", "", "", ""; +}; + +&i2c0 { + /* On Low speed expansion */ + label = "LS-I2C0"; + status = "okay"; +}; + +&i2c1 { + status = "okay"; + + adv7533: adv7533@39 { + status = "ok"; + compatible = "adi,adv7533"; + reg = <0x39>; + }; +}; + +&uart3 { + /* On Low speed expansion */ + label = "LS-UART0"; + status = "okay"; +}; + +&uart4 { + status = "okay"; + + bluetooth { + compatible = "ti,wl1837-st"; + enable-gpios = <&gpio15 6 GPIO_ACTIVE_HIGH>; + max-speed = <3000000>; + }; +}; + +&i2c7 { + /* On Low speed expansion */ + label = "LS-I2C1"; + status = "okay"; +}; + +&uart6 { + /* On Low speed expansion */ + label = "LS-UART1"; + status = "okay"; +}; + +&spi2 { + /* On Low speed expansion */ + label = "LS-SPI0"; + status = "okay"; +}; + +&spi3 { + /* On High speed expansion */ + label = "HS-SPI1"; + status = "okay"; +}; + +&dwmmc1 { + cd-gpios = <&gpio25 3 GPIO_ACTIVE_LOW>; + pinctrl-names = "default"; + pinctrl-0 = <&sd_pmx_func + &sd_clk_cfg_func + &sd_cfg_func>; + vmmc-supply = <&ldo16>; + vqmmc-supply = <&ldo9>; + status = "okay"; +}; + +&dwmmc2 { /* WIFI */ + bus-width = <0x4>; + non-removable; + broken-cd; + cap-power-off-card; + pinctrl-names = "default"; + pinctrl-0 = <&sdio_pmx_func + &sdio_clk_cfg_func + &sdio_cfg_func>; + /* WL_EN */ + vmmc-supply = <&wlan_en>; + status = "ok"; + + wlcore: wlcore@2 { + compatible = "ti,wl1837"; + reg = <2>; /* sdio func num */ + /* WL_IRQ, GPIO_179_WL_WAKEUP_AP */ + interrupt-parent = <&gpio22>; + interrupts = <3 IRQ_TYPE_EDGE_RISING>; + }; +}; From c62c7ef779cc145b9ee5c19486b4a3bf59ec1194 Mon Sep 17 00:00:00 2001 From: Manivannan Sadhasivam Date: Fri, 2 Aug 2019 20:40:09 +0530 Subject: [PATCH 08/51] board: hisilicon: Add support for Hikey960 board This commit adds board support for Hikey960 board from Hisilicon. This board is one of the Consumer Edition boards of the 96Boards family powered by Kirin960 SoC. More information about this board can be found in 96Boards website: https://www.96boards.org/product/hikey960/ The initial supported/tested devices include: - Debug serial - SD With these support, it's good enough for loading Linux Kernel from SD. Signed-off-by: Manivannan Sadhasivam --- arch/arm/Kconfig | 13 ++ arch/arm/include/asm/arch-hi3660/hi3660.h | 52 +++++ board/hisilicon/hikey960/Kconfig | 15 ++ board/hisilicon/hikey960/MAINTAINERS | 6 + board/hisilicon/hikey960/Makefile | 3 + board/hisilicon/hikey960/README | 247 ++++++++++++++++++++++ board/hisilicon/hikey960/hikey960.c | 186 ++++++++++++++++ configs/hikey960_defconfig | 30 +++ include/configs/hikey960.h | 60 ++++++ 9 files changed, 612 insertions(+) create mode 100644 arch/arm/include/asm/arch-hi3660/hi3660.h create mode 100644 board/hisilicon/hikey960/Kconfig create mode 100644 board/hisilicon/hikey960/MAINTAINERS create mode 100644 board/hisilicon/hikey960/Makefile create mode 100644 board/hisilicon/hikey960/README create mode 100644 board/hisilicon/hikey960/hikey960.c create mode 100644 configs/hikey960_defconfig create mode 100644 include/configs/hikey960.h diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 3f0e301d41..be2c96a93d 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -1209,6 +1209,18 @@ config TARGET_HIKEY Support for HiKey 96boards platform. It features a HI6220 SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM. +config TARGET_HIKEY960 + bool "Support HiKey960 96boards Consumer Edition Platform" + select ARM64 + select DM + select DM_SERIAL + select OF_CONTROL + select PL01X_SERIAL + imply CMD_DM + help + Support for HiKey960 96boards platform. It features a HI3660 + SoC, with 4xA73 CPU, 4xA53 CPU, MALI-G71 GPU, and 3GB RAM. + config TARGET_POPLAR bool "Support Poplar 96boards Enterprise Edition Platform" select ARM64 @@ -1778,6 +1790,7 @@ source "board/grinn/chiliboard/Kconfig" source "board/gumstix/pepper/Kconfig" source "board/h2200/Kconfig" source "board/hisilicon/hikey/Kconfig" +source "board/hisilicon/hikey960/Kconfig" source "board/hisilicon/poplar/Kconfig" source "board/isee/igep003x/Kconfig" source "board/phytec/pcm051/Kconfig" diff --git a/arch/arm/include/asm/arch-hi3660/hi3660.h b/arch/arm/include/asm/arch-hi3660/hi3660.h new file mode 100644 index 0000000000..3ca0951543 --- /dev/null +++ b/arch/arm/include/asm/arch-hi3660/hi3660.h @@ -0,0 +1,52 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ +/* + * (C) Copyright 2019 Linaro + * Author: Manivannan Sadhasivam + */ + +#ifndef __HI3660_H__ +#define __HI3660_H__ + +#define HI3660_UART6_BASE 0xfff32000 + +#define PMU_REG_BASE 0xfff34000 +#define PMIC_HARDWARE_CTRL0 (PMU_REG_BASE + (0x0C5 << 2)) + +#define SCTRL_REG_BASE 0xfff0a000 +#define SCTRL_SCFPLLCTRL0 (SCTRL_REG_BASE + 0x120) +#define SCTRL_SCFPLLCTRL0_FPLL0_EN BIT(0) + +#define CRG_REG_BASE 0xfff35000 +#define CRG_PEREN2 (CRG_REG_BASE + 0x020) +#define CRG_PERDIS2 (CRG_REG_BASE + 0x024) +#define CRG_PERCLKEN2 (CRG_REG_BASE + 0x028) +#define CRG_PERSTAT2 (CRG_REG_BASE + 0x02C) +#define CRG_PEREN4 (CRG_REG_BASE + 0x040) +#define CRG_PERDIS4 (CRG_REG_BASE + 0x044) +#define CRG_PERCLKEN4 (CRG_REG_BASE + 0x048) +#define CRG_PERSTAT4 (CRG_REG_BASE + 0x04C) +#define CRG_PERRSTEN2 (CRG_REG_BASE + 0x078) +#define CRG_PERRSTDIS2 (CRG_REG_BASE + 0x07C) +#define CRG_PERRSTSTAT2 (CRG_REG_BASE + 0x080) +#define CRG_PERRSTEN3 (CRG_REG_BASE + 0x084) +#define CRG_PERRSTDIS3 (CRG_REG_BASE + 0x088) +#define CRG_PERRSTSTAT3 (CRG_REG_BASE + 0x08C) +#define CRG_PERRSTEN4 (CRG_REG_BASE + 0x090) +#define CRG_PERRSTDIS4 (CRG_REG_BASE + 0x094) +#define CRG_PERRSTSTAT4 (CRG_REG_BASE + 0x098) +#define CRG_ISOEN (CRG_REG_BASE + 0x144) +#define CRG_ISODIS (CRG_REG_BASE + 0x148) +#define CRG_ISOSTAT (CRG_REG_BASE + 0x14C) + +#define PINMUX4_BASE 0xfff11000 +#define PINMUX4_SDDET (PINMUX4_BASE + 0x60) + +#define PINCONF3_BASE 0xff37e800 +#define PINCONF3_SDCLK (PINCONF3_BASE + 0x00) +#define PINCONF3_SDCMD (PINCONF3_BASE + 0x04) +#define PINCONF3_SDDATA0 (PINCONF3_BASE + 0x08) +#define PINCONF3_SDDATA1 (PINCONF3_BASE + 0x0c) +#define PINCONF3_SDDATA2 (PINCONF3_BASE + 0x10) +#define PINCONF3_SDDATA3 (PINCONF3_BASE + 0x14) + +#endif /*__HI3660_H__*/ diff --git a/board/hisilicon/hikey960/Kconfig b/board/hisilicon/hikey960/Kconfig new file mode 100644 index 0000000000..89f096d649 --- /dev/null +++ b/board/hisilicon/hikey960/Kconfig @@ -0,0 +1,15 @@ +if TARGET_HIKEY960 + +config SYS_BOARD + default "hikey960" + +config SYS_VENDOR + default "hisilicon" + +config SYS_SOC + default "hi3660" + +config SYS_CONFIG_NAME + default "hikey960" + +endif diff --git a/board/hisilicon/hikey960/MAINTAINERS b/board/hisilicon/hikey960/MAINTAINERS new file mode 100644 index 0000000000..2c98932163 --- /dev/null +++ b/board/hisilicon/hikey960/MAINTAINERS @@ -0,0 +1,6 @@ +HIKEY960 BOARD +M: Manivannan Sadhasivam +S: Maintained +F: board/hisilicon/hikey960 +F: include/configs/hikey960.h +F: configs/hikey960_defconfig diff --git a/board/hisilicon/hikey960/Makefile b/board/hisilicon/hikey960/Makefile new file mode 100644 index 0000000000..ea5a70921f --- /dev/null +++ b/board/hisilicon/hikey960/Makefile @@ -0,0 +1,3 @@ +# SPDX-License-Identifier: GPL-2.0+ + +obj-y := hikey960.o diff --git a/board/hisilicon/hikey960/README b/board/hisilicon/hikey960/README new file mode 100644 index 0000000000..e1e330d535 --- /dev/null +++ b/board/hisilicon/hikey960/README @@ -0,0 +1,247 @@ +Introduction +============ + +HiKey960 is one of the 96Boards Consumer Edition board from HiSilicon. +The board/SoC has: - +* HiSilicon Kirin960 (HI3660) SoC with 4xCortex-A73 and 4xCortex-A53 +* ARM Mali G71 MP8 GPU +* 3GB LPDDR4 SDRAM +* 32GB UFS Flash Storage +* microSD +* 802.11a/b/g/n WiFi, Bluetooth + +More information about this board can be found in 96Boards website: +https://www.96boards.org/product/hikey960/ + +Currently the u-boot port supports: - +* SD card + +Compile from source +=================== + +First get all the sources + + > mkdir -p ~/hikey960/src ~/hikey960/bin + > cd ~/hikey960/src + > git clone https://github.com/ARM-software/arm-trusted-firmware + > git clone https://github.com/96boards-hikey/OpenPlatformPkg -b testing/hikey960_v1.3.4 + > git clone https://github.com/96boards-hikey/l-loader -b testing/hikey960_v1.2 + > wget http://snapshots.linaro.org/96boards/reference-platform/components/uefi-staging/latest/hikey960/release/config + > wget http://snapshots.linaro.org/96boards/reference-platform/components/uefi-staging/latest/hikey960/release/hisi-sec_usb_xloader.img + > wget http://snapshots.linaro.org/96boards/reference-platform/components/uefi-staging/latest/hikey960/release/hisi-sec_uce_boot.img + > wget http://snapshots.linaro.org/96boards/reference-platform/components/uefi-staging/latest/hikey960/release/sec_xloader.img + > wget http://snapshots.linaro.org/96boards/reference-platform/components/uefi-staging/latest/hikey960/release/recovery.bin + > wget http://snapshots.linaro.org/96boards/reference-platform/components/uefi-staging/latest/hikey960/release/hikey_idt + +Get the SCP_BL2 lpm3.img binary. It is shipped as part of the UEFI source. +The latest version can be obtained from the OpenPlatformPkg repo. + + > cp OpenPlatformPkg/Platforms/Hisilicon/HiKey960/Binary/lpm3.img ~/hikey960/bin/ + +Compile U-Boot +============== + + > cd ~/hikey960/src/u-boot + > make CROSS_COMPILE=aarch64-linux-gnu- hikey960_defconfig + > make CROSS_COMPILE=aarch64-linux-gnu- + > cp u-boot.bin ~/hikey960/bin/ + +Compile ARM Trusted Firmware (ATF) +================================== + + > cd ~/hikey960/src/arm-trusted-firmware + > make CROSS_COMPILE=aarch64-linux-gnu- all fip \ + SCP_BL2=~/hikey960/bin/lpm3.img \ + BL33=~/hikey960/bin/u-boot.bin DEBUG=1 PLAT=hikey960 + +Copy the resulting FIP binary + > cp build/hikey960/debug/fip.bin ~/hikey960/bin + +Compile l-loader +================ + > cd ~/hikey960/src/l-loader + > ln -sf ~/hikey960/src/arm-trusted-firmware/build/hikey960/debug/bl1.bin + > ln -sf ~/hikey960/src/arm-trusted-firmware/build/hikey960/debug/bl2.bin + > ln -sf ~/hikey960/src/arm-trusted-firmware/build/hikey960/debug/fip.bin + > ln -sf ~/hikey960/bin/u-boot.bin + > make hikey960 PTABLE_LST=linux-32g NS_BL1U=u-boot.bin + +Copy the resulting binaries + > cp *.img ~/hikey960/bin + > cp l-loader.bin ~/hikey960/bin + +These instructions are adapted from +https://github.com/ARM-software/arm-trusted-firmware/blob/master/docs/plat/hikey960.rst + +Setup Console +============= + +Install ser2net. Use telnet as the console since UEFI in recovery mode +output window fails to display in minicom. + + > sudo apt-get install ser2net + +Configure ser2net + + > sudo vi /etc/ser2net.conf + +Append one line for serial-over-USB in #ser2net.conf + + > 2004:telnet:0:/dev/ttyUSB0:115200 8DATABITS NONE 1STOPBIT banner + +Start ser2net + + > sudo killall ser2net + > sudo ser2net -u + +Open the console. + + > telnet localhost 2004 + +And you could open the console remotely, too. + +Flashing +======== + +1. Boot Hikey960 into recovery mode as per the below document: +https://github.com/96boards/documentation/blob/master/consumer/hikey/hikey960/installation/board-recovery.md + +Once Hikey960 is in recovery mode, flash the recovery binary: + + > cd ~/hikey960/src + > chmod +x ./hikey_idt + > sudo ./hikey_idt -c config -p /dev/ttyUSB1 + +Now move to the Hikey960 console and press `f` during UEFI boot. This +will allow the board to boot into fastboot mode. Once the board is in +fastboot mode, you should see the ID of the HiKey960 board using the +following command + + > sudo fastboot devices + +1ED3822A018E3372 fastboot + +3. Flash the images + +Now, the images can be flashed using fastboot: + + > sudo fastboot flash ptable ~/hikey960/bin/prm_ptable.img + > sudo fastboot flash xloader ~/hikey960/bin/sec_xloader.img + > sudo fastboot flash fastboot ~/hikey960/bin/l-loader.bin + > sudo fastboot flash fip ~/hikey960/bin/fip.bin + +4. Set the "Boot Mode" switch to OFF position for normal boot mode. +Then power on HiKey960 + +Observe the console traces using UART6 on the Low Speed Expansion header: + +NOTICE: BL2: v2.1(debug):v2.1-531-g3ee48f40 +NOTICE: BL2: Built : 18:15:58, Aug 2 2019 +INFO: BL2: Doing platform setup +INFO: UFS LUN0 contains 1024 blocks with 4096-byte size +INFO: UFS LUN1 contains 1024 blocks with 4096-byte size +INFO: UFS LUN2 contains 2048 blocks with 4096-byte size +INFO: UFS LUN3 contains 7805952 blocks with 4096-byte size +INFO: ufs: change power mode success +INFO: BL2: Loading image id 2 +INFO: Loading image id=2 at address 0x89c80000 +INFO: Image id=2 loaded: 0x89c80000 - 0x89cb5088 +INFO: BL2: Initiating SCP_BL2 transfer to SCP +INFO: BL2: SCP_BL2: 0x89c80000@0x35088 +INFO: BL2: SCP_BL2 HEAD: +INFO: BL2: SCP_BL2 0x7000 0x179 0x159 0x149 +INFO: BL2: SCP_BL2 0x189 0x18b 0x18d 0x0 +INFO: BL2: SCP_BL2 0x0 0x0 0x0 0x18f +INFO: BL2: SCP_BL2 0x191 0x0 0x193 0x195 +INFO: BL2: SCP_BL2 0x18fd 0x18fd 0x18fd 0x18fd +INFO: BL2: SCP_BL2 0x18fd 0x18fd 0x18fd 0x18fd +INFO: BL2: SCP_BL2 0x18fd 0x18fd 0x18fd 0x18fd +INFO: BL2: SCP_BL2 0x4d454355 0x43494741 0x424d554e 0x21215245 +INFO: BL2: SCP_BL2 0x4a054904 0x42912000 0xf841bfbc 0xe7fa0b04 +INFO: BL2: SCP_BL2 0xb88cf000 0x3b18 0x3d1c 0x6809493e +INFO: BL2: SCP_BL2 0x4613680a 0x201f102 0xf0002a04 0x600a804c +INFO: BL2: SCP_BL2 0x204f04f 0xf203fb02 0xf102440a 0x60100204 +INFO: BL2: SCP_BL2 0x160f04f 0xf103fb01 0x68004834 0x61044408 +INFO: BL2: SCP_BL2 0x61866145 0xf8c061c7 0xf8c08020 0xf8c09024 +INFO: BL2: SCP_BL2 0xf8c0a028 0xf3efb02c 0xf3ef8208 0x68118309 +INFO: BL2: SCP_BL2 0xf1026401 0xf0110204 0xbf070f04 0x46113220 +INFO: BL2: SCP_BL2 TAIL: +INFO: BL2: SCP_BL2 0x0 0x0 0x0 0x0 +INFO: BL2: SCP_BL2 0x0 0x0 0x0 0x0 +INFO: BL2: SCP_BL2 0x0 0x0 0x0 0x0 +INFO: BL2: SCP_BL2 0x0 0x0 0x0 0x0 +INFO: BL2: SCP_BL2 0x0 0x0 0x0 0x0 +INFO: BL2: SCP_BL2 0x0 0x0 0x0 0x0 +INFO: BL2: SCP_BL2 0x0 0x0 0x0 0x0 +INFO: BL2: SCP_BL2 0x0 0x0 0x0 0x0 +INFO: BL2: SCP_BL2 0x0 0x0 0x0 0x0 +INFO: BL2: SCP_BL2 0x0 0x0 0x0 0x0 +INFO: BL2: SCP_BL2 0x0 0x19cad151 0x19b80040 0x0 +INFO: BL2: SCP_BL2 0x0 0x0 0x0 0x0 +INFO: BL2: SCP_BL2 0x0 0x0 0x0 0x0 +INFO: BL2: SCP_BL2 0x0 0x0 0x0 0x0 +INFO: BL2: SCP_BL2 0x0 0x0 0x0 0x0 +INFO: BL2: SCP_BL2 0x0 0x0 0x0 0x0 +INFO: BL2: SCP_BL2 transferred to SCP +INFO: start fw loading +INFO: fw load success +WARNING: BL2: Platform setup already done!! +INFO: BL2: Loading image id 3 +INFO: Loading image id=3 at address 0x1ac58000 +INFO: Image id=3 loaded: 0x1ac58000 - 0x1ac63024 +INFO: BL2: Loading image id 5 +INFO: Loading image id=5 at address 0x1ac98000 +INFO: Image id=5 loaded: 0x1ac98000 - 0x1ad0819c +NOTICE: BL2: Booting BL31 +INFO: Entry point address = 0x1ac58000 +INFO: SPSR = 0x3cd +NOTICE: BL31: v2.1(debug):v2.1-531-g3ee48f40 +NOTICE: BL31: Built : 18:16:01, Aug 2 2019 +INFO: ARM GICv2 driver initialized +INFO: BL31: Initializing runtime services +INFO: BL31: cortex_a53: CPU workaround for 855873 was applied +INFO: plat_setup_psci_ops: sec_entrypoint=0x1ac580fc +INFO: BL31: Preparing for EL3 exit to normal world +INFO: Entry point address = 0x1ac98000 +INFO: SPSR = 0x3c9 + + +U-Boot 2019.07-00628-g286f05a6fc-dirty (Aug 02 2019 - 17:14:05 +0530) +Hikey960 + +DRAM: 3 GiB +PSCI: v1.1 +MMC: dwmmc1@ff37f000: 0 +Loading Environment from EXT4... ** File not found /uboot.env ** + +** Unable to read "/uboot.env" from mmc0:2 ** +In: serial@fff32000 +Out: serial@fff32000 +Err: serial@fff32000 +Net: Net Initialization Skipped +No ethernet found. +Hit any key to stop autoboot: 0 +switch to partitions #0, OK +mmc0 is current device +Scanning mmc 0:1... +Found /extlinux/extlinux.conf +Retrieving file: /extlinux/extlinux.conf +201 bytes read in 12 ms (15.6 KiB/s) +1: hikey960-kernel +Retrieving file: /Image +24689152 bytes read in 4377 ms (5.4 MiB/s) +append: earlycon=pl011,mmio32,0xfff32000 console=ttyAMA6,115200 rw root=/dev/mmcblk0p2 rot +Retrieving file: /hi3660-hikey960.dtb +35047 bytes read in 14 ms (2.4 MiB/s) +## Flattened Device Tree blob at 10000000 + Booting using the fdt blob at 0x10000000 + Using Device Tree in place at 0000000010000000, end 000000001000b8e6 + +Starting kernel ... + +[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034] +[ 0.000000] Linux version 5.2.0-03138-gd75da80dce39 (mani@Mani-XPS-13-9360) (gcc versi9 +[ 0.000000] Machine model: HiKey960 +[ 0.000000] earlycon: pl11 at MMIO32 0x00000000fff32000 (options '') +[ 0.000000] printk: bootconsole [pl11] enabled +[ 0.000000] efi: Getting EFI parameters from FDT: diff --git a/board/hisilicon/hikey960/hikey960.c b/board/hisilicon/hikey960/hikey960.c new file mode 100644 index 0000000000..eb9b99eaa9 --- /dev/null +++ b/board/hisilicon/hikey960/hikey960.c @@ -0,0 +1,186 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * (C) Copyright 2019 Linaro + * Author: Manivannan Sadhasivam + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define PMIC_REG_TO_BUS_ADDR(x) (x << 2) +#define PMIC_VSEL_MASK 0x7 + +DECLARE_GLOBAL_DATA_PTR; + +#if !CONFIG_IS_ENABLED(OF_CONTROL) +#include + +static const struct pl01x_serial_platdata serial_platdata = { + .base = HI3660_UART6_BASE, + .type = TYPE_PL011, + .clock = 19200000 +}; + +U_BOOT_DEVICE(hikey960_serial0) = { + .name = "serial_pl01x", + .platdata = &serial_platdata, +}; +#endif + +static struct mm_region hikey_mem_map[] = { + { + .virt = 0x0UL, /* DDR */ + .phys = 0x0UL, + .size = 0xC0000000UL, + .attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) | + PTE_BLOCK_INNER_SHARE + }, { + .virt = 0xE0000000UL, /* Peripheral block */ + .phys = 0xE0000000UL, + .size = 0x20000000UL, + .attrs = PTE_BLOCK_MEMTYPE(MT_DEVICE_NGNRNE) | + PTE_BLOCK_NON_SHARE | + PTE_BLOCK_PXN | PTE_BLOCK_UXN + }, { + /* List terminator */ + 0, + } +}; + +struct mm_region *mem_map = hikey_mem_map; + +int board_early_init_f(void) +{ + return 0; +} + +int misc_init_r(void) +{ + return 0; +} + +int dram_init(void) +{ + gd->ram_size = PHYS_SDRAM_1_SIZE; + + return 0; +} + +int dram_init_banksize(void) +{ + gd->bd->bi_dram[0].start = PHYS_SDRAM_1; + gd->bd->bi_dram[0].size = gd->ram_size; + + return 0; +} + +void hikey960_sd_init(void) +{ + u32 data; + + /* Enable FPLL0 */ + data = readl(SCTRL_SCFPLLCTRL0); + data |= SCTRL_SCFPLLCTRL0_FPLL0_EN; + writel(data, SCTRL_SCFPLLCTRL0); + + /* Configure LDO16 */ + data = readl(PMU_REG_BASE + PMIC_REG_TO_BUS_ADDR(0x79)) & + PMIC_VSEL_MASK; + data |= 6; + writel(data, PMU_REG_BASE + PMIC_REG_TO_BUS_ADDR(0x79)); + + data = readl(PMU_REG_BASE + PMIC_REG_TO_BUS_ADDR(0x78)); + data |= 2; + writel(data, PMU_REG_BASE + PMIC_REG_TO_BUS_ADDR(0x78)); + + udelay(100); + + /* Configure LDO9 */ + data = readl(PMU_REG_BASE + PMIC_REG_TO_BUS_ADDR(0x6b)) & + PMIC_VSEL_MASK; + data |= 5; + writel(data, PMU_REG_BASE + PMIC_REG_TO_BUS_ADDR(0x6b)); + + data = readl(PMU_REG_BASE + PMIC_REG_TO_BUS_ADDR(0x6a)); + data |= 2; + writel(data, PMU_REG_BASE + PMIC_REG_TO_BUS_ADDR(0x6a)); + + udelay(100); + + /* GPIO CD */ + writel(0, PINMUX4_SDDET); + + /* SD Pinconf */ + writel(15 << 4, PINCONF3_SDCLK); + writel((1 << 0) | (8 << 4), PINCONF3_SDCMD); + writel((1 << 0) | (8 << 4), PINCONF3_SDDATA0); + writel((1 << 0) | (8 << 4), PINCONF3_SDDATA1); + writel((1 << 0) | (8 << 4), PINCONF3_SDDATA2); + writel((1 << 0) | (8 << 4), PINCONF3_SDDATA3); + + /* Set SD clock mux */ + do { + data = readl(CRG_REG_BASE + 0xb8); + data |= ((1 << 6) | (1 << 6 << 16) | (0 << 4) | (3 << 4 << 16)); + writel(data, CRG_REG_BASE + 0xb8); + + data = readl(CRG_REG_BASE + 0xb8); + } while ((data & ((1 << 6) | (3 << 4))) != ((1 << 6) | (0 << 4))); + + /* Take SD out of reset */ + writel(1 << 18, CRG_PERRSTDIS4); + do { + data = readl(CRG_PERRSTSTAT4); + } while ((data & (1 << 18)) == (1 << 18)); + + /* Enable hclk_gate_sd */ + data = readl(CRG_REG_BASE + 0); + data |= (1 << 30); + writel(data, CRG_REG_BASE + 0); + + /* Enable clk_andgt_mmc */ + data = readl(CRG_REG_BASE + 0xf4); + data |= ((1 << 3) | (1 << 3 << 16)); + writel(data, CRG_REG_BASE + 0xf4); + + /* Enable clk_gate_sd */ + data = readl(CRG_PEREN4); + data |= (1 << 17); + writel(data, CRG_PEREN4); + do { + data = readl(CRG_PERCLKEN4); + } while ((data & (1 << 17)) != (1 << 17)); +} + +static void show_psci_version(void) +{ + struct arm_smccc_res res; + + arm_smccc_smc(ARM_PSCI_0_2_FN_PSCI_VERSION, 0, 0, 0, 0, 0, 0, 0, &res); + + printf("PSCI: v%ld.%ld\n", + PSCI_VERSION_MAJOR(res.a0), + PSCI_VERSION_MINOR(res.a0)); +} + +int board_init(void) +{ + /* Init SD */ + hikey960_sd_init(); + + show_psci_version(); + + return 0; +} + +void reset_cpu(ulong addr) +{ + psci_system_reset(); +} diff --git a/configs/hikey960_defconfig b/configs/hikey960_defconfig new file mode 100644 index 0000000000..6ed252f658 --- /dev/null +++ b/configs/hikey960_defconfig @@ -0,0 +1,30 @@ +CONFIG_ARM=y +CONFIG_TARGET_HIKEY960=y +CONFIG_SYS_TEXT_BASE=0x1ac98000 +CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_NR_DRAM_BANKS=1 +CONFIG_IDENT_STRING="\nHikey960" +# CONFIG_DISPLAY_CPUINFO is not set +# CONFIG_DISPLAY_BOARDINFO is not set +CONFIG_DISTRO_DEFAULTS=y +CONFIG_BOOTDELAY=3 +CONFIG_SYS_PROMPT="U-Boot => " +CONFIG_USE_BOOTARGS=y +CONFIG_BOOTARGS="console=ttyAMA6,115200n8 root=/dev/mmcblk0p2 rw" +CONFIG_MISC_INIT_R=y +CONFIG_BOARD_EARLY_INIT_F=y +CONFIG_DEFAULT_DEVICE_TREE="hi3660-hikey960" +CONFIG_OF_LIBFDT_OVERLAY=y +CONFIG_CMD_MMC=y +CONFIG_CMD_GPT=y +CONFIG_CMD_MD5SUM=y +CONFIG_CMD_MEMINFO=y +CONFIG_ENV_IS_IN_EXT4=y +CONFIG_ENV_EXT4_INTERFACE="mmc" +CONFIG_ENV_EXT4_DEVICE_AND_PART="0:2" +CONFIG_ENV_EXT4_FILE="/uboot.env" +CONFIG_DM_MMC=y +CONFIG_MMC_DW=y +CONFIG_MMC_DW_K3=y +CONFIG_PINCTRL=y +CONFIG_PINCTRL_SINGLE=y diff --git a/include/configs/hikey960.h b/include/configs/hikey960.h new file mode 100644 index 0000000000..f6f9c8d85a --- /dev/null +++ b/include/configs/hikey960.h @@ -0,0 +1,60 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ +/* + * (C) Copyright 2019 Linaro + * Author: Manivannan Sadhasivam + */ + +#ifndef __HIKEY_H +#define __HIKEY_H + +#include + +#define CONFIG_SYS_BOOTM_LEN SZ_64M + +/* Physical Memory Map */ + +/* CONFIG_SYS_TEXT_BASE needs to align with where ATF loads bl33.bin */ + +#define PHYS_SDRAM_1 0x00000000 +#define PHYS_SDRAM_1_SIZE 0xC0000000 + +#define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1 + +#define CONFIG_SYS_INIT_RAM_SIZE 0x1000 + +#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_SDRAM_BASE + 0x7fff0) + +#define CONFIG_SYS_LOAD_ADDR (CONFIG_SYS_SDRAM_BASE + 0x80000) + +/* Generic Timer Definitions */ +#define COUNTER_FREQUENCY 19000000 + +/* Generic Interrupt Controller Definitions */ +#define GICD_BASE 0xe82b1000 +#define GICC_BASE 0xe82b2000 + +/* Size of malloc() pool */ +#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + SZ_8M) + +#define CONFIG_ENV_SIZE 0x1000 + +#define BOOT_TARGET_DEVICES(func) \ + func(MMC, mmc, 0) +#include + +#define CONFIG_EXTRA_ENV_SETTINGS \ + "image=Image\0" \ + "fdtfile=hi3660-hikey960.dtb\0" \ + "fdt_addr_r=0x10000000\0" \ + "kernel_addr_r=0x11000000\0" \ + "scriptaddr=0x00020000\0" \ + "fdt_high=0xffffffffffffffff\0" \ + "initrd_high=0xffffffffffffffff\0" \ + BOOTENV + +#define CONFIG_ENV_SIZE 0x1000 + +/* TODO: Remove this once the SD clock is fixed */ +#define CONFIG_SYS_MMC_MAX_BLK_COUNT 1024 + +#endif /* __HIKEY_H */ From 122537e1f37db0710e6d35514975bf883a64154f Mon Sep 17 00:00:00 2001 From: Manivannan Sadhasivam Date: Fri, 2 Aug 2019 20:40:10 +0530 Subject: [PATCH 09/51] mmc: Add support for HI3660 SoC reusing hi6220_dw_mmc driver This commit adds MMC driver support for HI3660 SoC reusing hi6220_dw_mmc driver. Since HI3660 operates at different clock rate and uses fifo mode now, let's introduce the platform data and utilize it for different SoCs supported by this driver. Signed-off-by: Manivannan Sadhasivam --- drivers/mmc/hi6220_dw_mmc.c | 29 ++++++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/drivers/mmc/hi6220_dw_mmc.c b/drivers/mmc/hi6220_dw_mmc.c index effd1e4c7c..6de7924383 100644 --- a/drivers/mmc/hi6220_dw_mmc.c +++ b/drivers/mmc/hi6220_dw_mmc.c @@ -22,6 +22,11 @@ struct hi6220_dwmmc_priv_data { struct dwmci_host host; }; +struct hisi_mmc_data { + unsigned int clock; + bool use_fifo; +}; + static int hi6220_dwmmc_ofdata_to_platdata(struct udevice *dev) { struct hi6220_dwmmc_priv_data *priv = dev_get_priv(dev); @@ -49,13 +54,17 @@ static int hi6220_dwmmc_probe(struct udevice *dev) struct mmc_uclass_priv *upriv = dev_get_uclass_priv(dev); struct hi6220_dwmmc_priv_data *priv = dev_get_priv(dev); struct dwmci_host *host = &priv->host; + struct hisi_mmc_data *mmc_data; + + mmc_data = (struct hisi_mmc_data *)dev_get_driver_data(dev); /* Use default bus speed due to absence of clk driver */ - host->bus_hz = 50000000; + host->bus_hz = mmc_data->clock; dwmci_setup_cfg(&plat->cfg, host, host->bus_hz, 400000); host->mmc = &plat->mmc; + host->fifo_mode = mmc_data->use_fifo; host->mmc->priv = &priv->host; upriv->mmc = host->mmc; host->mmc->dev = dev; @@ -75,9 +84,23 @@ static int hi6220_dwmmc_bind(struct udevice *dev) return 0; } +static const struct hisi_mmc_data hi3660_mmc_data = { + .clock = 3200000, + .use_fifo = true, +}; + +static const struct hisi_mmc_data hi6220_mmc_data = { + .clock = 50000000, + .use_fifo = false, +}; + static const struct udevice_id hi6220_dwmmc_ids[] = { - { .compatible = "hisilicon,hi6220-dw-mshc" }, - { .compatible = "hisilicon,hi3798cv200-dw-mshc" }, + { .compatible = "hisilicon,hi6220-dw-mshc", + .data = (ulong)&hi6220_mmc_data }, + { .compatible = "hisilicon,hi3798cv200-dw-mshc", + .data = (ulong)&hi6220_mmc_data }, + { .compatible = "hisilicon,hi3660-dw-mshc", + .data = (ulong)&hi3660_mmc_data }, { } }; From 379e574f7a2d31b80a504d07b607031541923e09 Mon Sep 17 00:00:00 2001 From: Manivannan Sadhasivam Date: Fri, 2 Aug 2019 20:40:11 +0530 Subject: [PATCH 10/51] MAINTAINERS: Add entry for HI3660 SoC Add MAINTAINERS entry for HI3660 SoC by adding the arch includes. While doing so, adding myself as the co-maintainer for HISILICON SoCs since I'm planning to maintain HI3660 SoC separately and considering doing improvements to the existing HiSilicon SoC architecture. Signed-off-by: Manivannan Sadhasivam --- MAINTAINERS | 2 ++ 1 file changed, 2 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index b443c5af75..f983bfd489 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -168,9 +168,11 @@ F: board/freescale/*mx*/ ARM HISILICON M: Peter Griffin +M: Manivannan Sadhasivam S: Maintained F: arch/arm/cpu/armv8/hisilicon F: arch/arm/include/asm/arch-hi6220/ +F: arch/arm/include/asm/arch-hi3660/ ARM MARVELL KIRKWOOD ARMADA-XP ARMADA-38X ARMADA-37XX ARMADA-7K/8K M: Stefan Roese From 0d6c7c60ea17c2323c1f78dbc71343d537dd33e3 Mon Sep 17 00:00:00 2001 From: Igor Opaniuk Date: Thu, 8 Aug 2019 15:33:09 +0300 Subject: [PATCH 11/51] MAINTAINERS: Add entries for Android A/B and AVB 1. Add myself as Android A/B and AVB maintainer 2. Add Sam Protsenko as Designated reviewer for A/B Signed-off-by: Igor Opaniuk --- MAINTAINERS | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index f983bfd489..74a1423f50 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -50,6 +50,26 @@ so much easier [Ed] Maintainers List (try to look for most precise areas first) ----------------------------------- +ANDROID AB +M: Igor Opaniuk +R: Sam Protsenko +S: Maintained +F: cmd/ab_select.c +F: common/android_ab.c +F: doc/android/ab.txt +F: include/android_ab.h +F: test/py/tests/test_android/test_ab.py + +ANDROID AVB +M: Igor Opaniuk +S: Maintained +F: cmd/avb.c +F: common/avb_verify.c +F: doc/android/avb2.txt +F: include/avb_verify.h +F: lib/libavb/ +F: test/py/tests/test_android/test_avb.py + ARC M: Alexey Brodkin M: Eugeniy Paltsev From 0c670fc1481d2296f1f5837ea5c15cfbdaed710c Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:36 -0600 Subject: [PATCH 12/51] common: Move gzip functions into a new gzip header As part of the effort to remove things from common.h, create a new header for the gzip functions. Move the function declarations to it and add missing documentation. Signed-off-by: Simon Glass Reviewed-by: Simon Goldschmidt --- board/menlo/m53menlo/m53menlo.c | 1 + cmd/bmp.c | 8 +-- cmd/config.c | 1 + cmd/fpga.c | 1 + cmd/license.c | 1 + cmd/unzip.c | 1 + cmd/ximg.c | 1 + common/image.c | 1 + common/spl/spl_fit.c | 1 + common/spl/spl_ymodem.c | 1 + drivers/video/cfb_console.c | 1 + fs/ubifs/ubifs.c | 1 + include/common.h | 52 ---------------- include/gzip.h | 103 ++++++++++++++++++++++++++++++++ lib/fdtdec.c | 1 + lib/gunzip.c | 5 +- lib/gzip.c | 1 + test/compression.c | 1 + 18 files changed, 124 insertions(+), 58 deletions(-) create mode 100644 include/gzip.h diff --git a/board/menlo/m53menlo/m53menlo.c b/board/menlo/m53menlo/m53menlo.c index f2227f6992..a63af5fae0 100644 --- a/board/menlo/m53menlo/m53menlo.c +++ b/board/menlo/m53menlo/m53menlo.c @@ -20,6 +20,7 @@ #include #include #include +#include #include #include #include diff --git a/cmd/bmp.c b/cmd/bmp.c index 00f0256a30..d2a39f677f 100644 --- a/cmd/bmp.c +++ b/cmd/bmp.c @@ -9,16 +9,16 @@ */ #include -#include -#include -#include #include #include -#include +#include +#include +#include #include #include #include #include +#include static int bmp_info (ulong addr); diff --git a/cmd/config.c b/cmd/config.c index fcc9116a49..d2810d573b 100644 --- a/cmd/config.c +++ b/cmd/config.c @@ -5,6 +5,7 @@ #include #include +#include #include #include "config_data_gz.h" diff --git a/cmd/fpga.c b/cmd/fpga.c index eba989a730..9fc2df699d 100644 --- a/cmd/fpga.c +++ b/cmd/fpga.c @@ -11,6 +11,7 @@ #include #include #include +#include #include static long do_fpga_get_device(char *arg) diff --git a/cmd/license.c b/cmd/license.c index 1c0794f095..c5b04c331b 100644 --- a/cmd/license.c +++ b/cmd/license.c @@ -6,6 +6,7 @@ #include #include +#include #include #include "license_data_gz.h" diff --git a/cmd/unzip.c b/cmd/unzip.c index 6c0f97cb4b..8474d9becf 100644 --- a/cmd/unzip.c +++ b/cmd/unzip.c @@ -6,6 +6,7 @@ #include #include +#include static int do_unzip(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) { diff --git a/cmd/ximg.c b/cmd/ximg.c index 9e53cc4557..920a80edc8 100644 --- a/cmd/ximg.c +++ b/cmd/ximg.c @@ -13,6 +13,7 @@ */ #include #include +#include #include #include #include diff --git a/common/image.c b/common/image.c index 495883185d..719229cc43 100644 --- a/common/image.c +++ b/common/image.c @@ -17,6 +17,7 @@ #include #include +#include #include #include diff --git a/common/spl/spl_fit.c b/common/spl/spl_fit.c index 969f7775c1..2e2e09eafb 100644 --- a/common/spl/spl_fit.c +++ b/common/spl/spl_fit.c @@ -7,6 +7,7 @@ #include #include #include +#include #include #include #include diff --git a/common/spl/spl_ymodem.c b/common/spl/spl_ymodem.c index fa539ecd7a..20f4260062 100644 --- a/common/spl/spl_ymodem.c +++ b/common/spl/spl_ymodem.c @@ -9,6 +9,7 @@ * Matt Porter */ #include +#include #include #include #include diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c index 636c3e8c18..ac02921d46 100644 --- a/drivers/video/cfb_console.c +++ b/drivers/video/cfb_console.c @@ -66,6 +66,7 @@ #include #include +#include #include #include #include diff --git a/fs/ubifs/ubifs.c b/fs/ubifs/ubifs.c index d5101d3c45..72e8a24d3b 100644 --- a/fs/ubifs/ubifs.c +++ b/fs/ubifs/ubifs.c @@ -12,6 +12,7 @@ */ #include +#include #include #include "ubifs.h" #include diff --git a/include/common.h b/include/common.h index 2c21dee850..d337f68bc4 100644 --- a/include/common.h +++ b/include/common.h @@ -428,51 +428,6 @@ void wait_ticks (unsigned long); ulong usec2ticks (unsigned long usec); ulong ticks2usec (unsigned long ticks); -/* lib/gunzip.c */ -int gzip_parse_header(const unsigned char *src, unsigned long len); -int gunzip(void *, int, unsigned char *, unsigned long *); -int zunzip(void *dst, int dstlen, unsigned char *src, unsigned long *lenp, - int stoponerr, int offset); - -/** - * gzwrite progress indicators: defined weak to allow board-specific - * overrides: - * - * gzwrite_progress_init called on startup - * gzwrite_progress called during decompress/write loop - * gzwrite_progress_finish called at end of loop to - * indicate success (retcode=0) or failure - */ -void gzwrite_progress_init(u64 expected_size); - -void gzwrite_progress(int iteration, - u64 bytes_written, - u64 total_bytes); - -void gzwrite_progress_finish(int retcode, - u64 totalwritten, - u64 totalsize, - u32 expected_crc, - u32 calculated_crc); - -/** - * decompress and write gzipped image from memory to block device - * - * @param src compressed image address - * @param len compressed image length in bytes - * @param dev block device descriptor - * @param szwritebuf bytes per write (pad to erase size) - * @param startoffs offset in bytes of first write - * @param szexpected expected uncompressed length - * may be zero to use gzip trailer - * for files under 4GiB - */ -int gzwrite(unsigned char *src, int len, - struct blk_desc *dev, - unsigned long szwritebuf, - u64 startoffs, - u64 szexpected); - /* lib/lz4_wrapper.c */ int ulz4fn(const void *src, size_t srcn, void *dst, size_t *dstn); @@ -506,13 +461,6 @@ unsigned int rand_r(unsigned int *seedp); int serial_printf (const char *fmt, ...) __attribute__ ((format (__printf__, 1, 2))); -/* lib/gzip.c */ -int gzip(void *dst, unsigned long *lenp, - unsigned char *src, unsigned long srclen); -int zzip(void *dst, unsigned long *lenp, unsigned char *src, - unsigned long srclen, int stoponerr, - int (*func)(unsigned long, unsigned long)); - /* lib/net_utils.c */ #include static inline struct in_addr env_get_ip(char *var) diff --git a/include/gzip.h b/include/gzip.h new file mode 100644 index 0000000000..2e340673c3 --- /dev/null +++ b/include/gzip.h @@ -0,0 +1,103 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ +/* + * (C) Copyright 2000-2009 + * Wolfgang Denk, DENX Software Engineering, wd@denx.de. + */ + +#ifndef __GZIP_H +#define __GZIP_H + +/** + * gzip_parse_header() - Parse a header from a gzip file + * + * This returns the length of the header. + * + * @src: Pointer to gzip file + * @len: Length of data + * @return length of header in bytes, or -1 if not enough data + */ +int gzip_parse_header(const unsigned char *src, unsigned long len); + +/** + * gunzip() - Decompress gzipped data + * + * @dst: Destination for uncompressed data + * @dstlen: Size of destination buffer + * @src: Source data to decompress + * @lenp: Returns length of uncompressed data + * @return 0 if OK, -1 on error + */ +int gunzip(void *dst, int dstlen, unsigned char *src, unsigned long *lenp); + +/** + * zunzip() - Uncompress blocks compressed with zlib without headers + * + * @dst: Destination for uncompressed data + * @dstlen: Size of destination buffer + * @src: Source data to decompress + * @lenp: On entry, length data at @src. On exit, number of bytes used from @src + * @stoponerr: 0 to continue when a decode error is found, 1 to stop + * @offset: start offset within the src buffer + * @return 0 if OK, -1 on error + */ +int zunzip(void *dst, int dstlen, unsigned char *src, unsigned long *lenp, + int stoponerr, int offset); + +/** + * gzwrite progress indicators: defined weak to allow board-specific + * overrides: + * + * gzwrite_progress_init called on startup + * gzwrite_progress called during decompress/write loop + * gzwrite_progress_finish called at end of loop to + * indicate success (retcode=0) or failure + */ +void gzwrite_progress_init(u64 expected_size); + +void gzwrite_progress(int iteration, u64 bytes_written, u64 total_bytes); + +void gzwrite_progress_finish(int retcode, u64 totalwritten, u64 totalsize, + u32 expected_crc, u32 calculated_crc); + +/** + * gzwrite() - decompress and write gzipped image from memory to block device + * + * @src: compressed image address + * @len: compressed image length in bytes + * @dev: block device descriptor + * @szwritebuf: bytes per write (pad to erase size) + * @startoffs: offset in bytes of first write + * @szexpected: expected uncompressed length, may be zero to use gzip trailer + * for files under 4GiB + * @return 0 if OK, -1 on error + */ +int gzwrite(unsigned char *src, int len, struct blk_desc *dev, ulong szwritebuf, + u64 startoffs, u64 szexpected); + +/** + * gzip()- Compress data into a buffer using the gzip algorithm + * + * @dst: Destination buffer for compressed data + * @lenp: On entry, space available in destination buffer (in bytes). On exit, + * number of bytes used in the buffer + * @src: Source data to compress + * @srclen: Size of source data + * @return 0 if OK, -1 on error + */ +int gzip(void *dst, unsigned long *lenp, unsigned char *src, ulong srclen); + +/** + * zzip() - Compress blocks with zlib + * + * @dst: Destination for compressed data + * @lenp: On entry, length data at @dst. On exit, number of bytes written to + * @dst + * @src: Source data to compress + * @srclen: Size of source data + * @stoponerr: 0 to continue when a decode error is found, 1 to stop + * @func: Some sort of function that is called to do something. !ADD DOCS HERE! + */ +int zzip(void *dst, ulong *lenp, unsigned char *src, ulong srclen, + int stoponerr, int (*func)(ulong, ulong)); + +#endif diff --git a/lib/fdtdec.c b/lib/fdtdec.c index 3ee786b579..464de5b3b5 100644 --- a/lib/fdtdec.c +++ b/lib/fdtdec.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include diff --git a/lib/gunzip.c b/lib/gunzip.c index 15c7b2c932..1d65616c13 100644 --- a/lib/gunzip.c +++ b/lib/gunzip.c @@ -5,14 +5,15 @@ */ #include -#include #include #include +#include +#include #include #include #include +#include #include -#include #define HEADER0 '\x1f' #define HEADER1 '\x8b' diff --git a/lib/gzip.c b/lib/gzip.c index 674d732fe6..c6c0ec880c 100644 --- a/lib/gzip.c +++ b/lib/gzip.c @@ -7,6 +7,7 @@ #include #include #include +#include #include #include #include diff --git a/test/compression.c b/test/compression.c index dc5e94684f..08fef59d0a 100644 --- a/test/compression.c +++ b/test/compression.c @@ -6,6 +6,7 @@ #include #include #include +#include #include #include #include From 4575a77b7adaf95638d288d5b2429a44bebd6068 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:37 -0600 Subject: [PATCH 13/51] common: Drop the dpram_... functions These declarations are not used anymore, so drop them. Signed-off-by: Simon Glass Reviewed-by: Simon Goldschmidt --- include/common.h | 5 ----- 1 file changed, 5 deletions(-) diff --git a/include/common.h b/include/common.h index d337f68bc4..df589163e5 100644 --- a/include/common.h +++ b/include/common.h @@ -379,11 +379,6 @@ void enable_interrupts (void); int disable_interrupts (void); /* $(CPU)/.../commproc.c */ -int dpram_init (void); -uint dpram_base(void); -uint dpram_base_align(uint align); -uint dpram_alloc(uint size); -uint dpram_alloc_align(uint size,uint align); void bootcount_store (ulong); ulong bootcount_load (void); From 3c1ecde402ca5ba851ce846ceeeffc6e5ab30490 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:38 -0600 Subject: [PATCH 14/51] common: Move lcd_setmem() to lcd.h This function relates to lcd.h and is about to become obsolete with the driver-model conversion. Move it out of common.h Signed-off-by: Simon Glass --- common/board_f.c | 1 + include/common.h | 3 --- include/lcd.h | 1 + 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/common/board_f.c b/common/board_f.c index 4760d728f3..ed3cf6afbe 100644 --- a/common/board_f.c +++ b/common/board_f.c @@ -19,6 +19,7 @@ #include #include #include +#include #include #include #include diff --git a/include/common.h b/include/common.h index df589163e5..e96dc7ebc6 100644 --- a/include/common.h +++ b/include/common.h @@ -385,9 +385,6 @@ ulong bootcount_load (void); /* $(CPU)/.../ */ void mii_init (void); -/* $(CPU)/.../lcd.c */ -ulong lcd_setmem (ulong); - /* $(CPU)/.../video.c */ ulong video_setmem (ulong); diff --git a/include/lcd.h b/include/lcd.h index cb6b6a4d12..9a4c0da5ba 100644 --- a/include/lcd.h +++ b/include/lcd.h @@ -30,6 +30,7 @@ extern struct vidinfo panel_info; void lcd_ctrl_init(void *lcdbase); void lcd_enable(void); void lcd_setcolreg(ushort regno, ushort red, ushort green, ushort blue); +ulong lcd_setmem(ulong addr); /** * Set whether we need to flush the dcache when changing the LCD image. This From 9fe657daa79fb27b5f49fb9ce32cb8f5a216ae09 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:39 -0600 Subject: [PATCH 15/51] common: Remove video_setmem() This function is no-longer defined in U-Boot. Drop the declaration from common.h Signed-off-by: Simon Glass --- common/board_f.c | 7 ------- include/common.h | 3 --- 2 files changed, 10 deletions(-) diff --git a/common/board_f.c b/common/board_f.c index ed3cf6afbe..7d656fae6a 100644 --- a/common/board_f.c +++ b/common/board_f.c @@ -426,13 +426,6 @@ static int reserve_video(void) gd->relocaddr = lcd_setmem(gd->relocaddr); gd->fb_base = gd->relocaddr; # endif /* CONFIG_FB_ADDR */ -#elif defined(CONFIG_VIDEO) && \ - (!defined(CONFIG_PPC)) && \ - !defined(CONFIG_ARM) && !defined(CONFIG_X86) && \ - !defined(CONFIG_M68K) - /* reserve memory for video display (always full pages) */ - gd->relocaddr = video_setmem(gd->relocaddr); - gd->fb_base = gd->relocaddr; #endif return 0; diff --git a/include/common.h b/include/common.h index e96dc7ebc6..4d0dd3f1b7 100644 --- a/include/common.h +++ b/include/common.h @@ -385,9 +385,6 @@ ulong bootcount_load (void); /* $(CPU)/.../ */ void mii_init (void); -/* $(CPU)/.../video.c */ -ulong video_setmem (ulong); - /* arch/$(ARCH)/lib/cache.c */ void enable_caches(void); void flush_cache (unsigned long, unsigned long); From af95f2061aee57ce76e1d62a6962724cc5a849a8 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:40 -0600 Subject: [PATCH 16/51] env: Create a new file for environment functions At present we have environment.h but this file includes all the environment-related header files as well as internals such as default_environment. It seems desirable to have a new header to hold the commonly used environment functions, so that most files can avoid including all of this unnecessary stuff. Create a new env.h header and move one function over to it. Signed-off-by: Simon Glass Acked-by: Joe Hershberger Reviewed-by: Simon Goldschmidt --- common/command.c | 1 + include/common.h | 4 ---- include/env.h | 28 ++++++++++++++++++++++++++++ 3 files changed, 29 insertions(+), 4 deletions(-) create mode 100644 include/env.h diff --git a/common/command.c b/common/command.c index db25bf54e0..4b887a267f 100644 --- a/common/command.c +++ b/common/command.c @@ -11,6 +11,7 @@ #include #include #include +#include #include /* diff --git a/include/common.h b/include/common.h index 4d0dd3f1b7..6b890470c1 100644 --- a/include/common.h +++ b/include/common.h @@ -247,10 +247,6 @@ static inline int env_set_addr(const char *varname, const void *addr) return env_set_hex(varname, (ulong)addr); } -#ifdef CONFIG_AUTO_COMPLETE -int env_complete(char *var, int maxv, char *cmdv[], int maxsz, char *buf, - bool dollar_comp); -#endif int get_env_id (void); void pci_init_board(void); diff --git a/include/env.h b/include/env.h new file mode 100644 index 0000000000..157ee9b724 --- /dev/null +++ b/include/env.h @@ -0,0 +1,28 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ +/* + * Common environment functions + * + * (C) Copyright 2000-2009 + * Wolfgang Denk, DENX Software Engineering, wd@denx.de. + */ + +#ifndef __ENV_H +#define __ENV_H + +#include + +/** + * env_complete() - return an auto-complete for environment variables + * + * @var: partial name to auto-complete + * @maxv: Maximum number of matches to return + * @cmdv: Returns a list of possible matches + * @maxsz: Size of buffer to use for matches + * @buf: Buffer to use for matches + * @dollar_comp: non-zero to wrap each match in ${...} + * @return number of matches found (in @cmdv) + */ +int env_complete(char *var, int maxv, char *cmdv[], int maxsz, char *buf, + bool dollar_comp); + +#endif From f1f0ae6a9ce7f4bd148daac233a70a065623d3dd Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:41 -0600 Subject: [PATCH 17/51] env: Move get_env_id() to env.h Move this function over to the new header file. Also rename it to have an env_ prefix like the other functions. Signed-off-by: Simon Glass Acked-by: Joe Hershberger --- cmd/nvedit.c | 5 +++-- drivers/net/netconsole.c | 5 +++-- include/common.h | 2 -- include/env.h | 10 ++++++++++ net/eth_common.c | 3 ++- 5 files changed, 18 insertions(+), 7 deletions(-) diff --git a/cmd/nvedit.c b/cmd/nvedit.c index 46b1e60f0a..4f3edab8b9 100644 --- a/cmd/nvedit.c +++ b/cmd/nvedit.c @@ -27,6 +27,7 @@ #include #include #include +#include #include #include #include @@ -69,14 +70,14 @@ NAND|NVRAM|ONENAND|SATA|SPI_FLASH|REMOTE|UBI} or CONFIG_ENV_IS_NOWHERE /* * This variable is incremented on each do_env_set(), so it can - * be used via get_env_id() as an indication, if the environment + * be used via env_get_id() as an indication, if the environment * has changed or not. So it is possible to reread an environment * variable only if the environment was changed ... done so for * example in NetInitLoop() */ static int env_id = 1; -int get_env_id(void) +int env_get_id(void) { return env_id; } diff --git a/drivers/net/netconsole.c b/drivers/net/netconsole.c index ce5a15ef57..73005ff94d 100644 --- a/drivers/net/netconsole.c +++ b/drivers/net/netconsole.c @@ -6,6 +6,7 @@ #include #include +#include #include #include @@ -55,7 +56,7 @@ static int is_broadcast(struct in_addr ip) static struct in_addr netmask; static struct in_addr our_ip; static int env_changed_id; - int env_id = get_env_id(); + int env_id = env_get_id(); /* update only when the environment has changed */ if (env_changed_id != env_id) { @@ -75,7 +76,7 @@ static int refresh_settings_from_env(void) { const char *p; static int env_changed_id; - int env_id = get_env_id(); + int env_id = env_get_id(); /* update only when the environment has changed */ if (env_changed_id != env_id) { diff --git a/include/common.h b/include/common.h index 6b890470c1..997da857b2 100644 --- a/include/common.h +++ b/include/common.h @@ -247,8 +247,6 @@ static inline int env_set_addr(const char *varname, const void *addr) return env_set_hex(varname, (ulong)addr); } -int get_env_id (void); - void pci_init_board(void); /* common/exports.c */ diff --git a/include/env.h b/include/env.h index 157ee9b724..b82d80de17 100644 --- a/include/env.h +++ b/include/env.h @@ -11,6 +11,16 @@ #include +/** + * env_get_id() - Gets a sequence number for the environment + * + * This value increments every time the environment changes, so can be used an + * an indication of this + * + * @return environment ID + */ +int env_get_id(void); + /** * env_complete() - return an auto-complete for environment variables * diff --git a/net/eth_common.c b/net/eth_common.c index 63f9379eec..dcc59186d8 100644 --- a/net/eth_common.c +++ b/net/eth_common.c @@ -7,6 +7,7 @@ #include #include +#include #include #include #include @@ -110,7 +111,7 @@ void eth_set_current(void) static int env_changed_id; int env_id; - env_id = get_env_id(); + env_id = env_get_id(); if ((act == NULL) || (env_changed_id != env_id)) { act = env_get("ethact"); env_changed_id = env_id; From 3a7d55716d6bfe5122de9692383357344fff2a94 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:42 -0600 Subject: [PATCH 18/51] env: Move env_get_f() to env.h Move this function over to the new header file. Signed-off-by: Simon Glass Acked-by: Joe Hershberger --- arch/arm/cpu/armv8/fsl-layerscape/cpu.c | 1 + arch/powerpc/cpu/mpc85xx/cpu_init.c | 1 + arch/powerpc/cpu/mpc85xx/fdt.c | 1 + arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c | 1 + board/esd/meesc/meesc.c | 1 + board/freescale/b4860qds/b4860qds.c | 1 + board/freescale/mpc837xerdb/mpc837xerdb.c | 1 + board/liebherr/mccmon6/mccmon6.c | 1 + board/micronas/vct/vct.c | 1 + board/socrates/socrates.c | 1 + board/st/stm32mp1/stm32mp1.c | 1 + board/xes/common/board.c | 1 + cmd/mtdparts.c | 1 + drivers/ddr/fsl/fsl_ddr_gen4.c | 1 + drivers/ddr/fsl/interactive.c | 1 + drivers/ddr/fsl/options.c | 1 + drivers/mtd/cfi_flash.c | 1 + drivers/mtd/mtd_uboot.c | 1 + drivers/net/fm/b4860.c | 1 + include/common.h | 12 ------------ include/env.h | 12 ++++++++++++ post/post.c | 1 + 22 files changed, 32 insertions(+), 12 deletions(-) diff --git a/arch/arm/cpu/armv8/fsl-layerscape/cpu.c b/arch/arm/cpu/armv8/fsl-layerscape/cpu.c index edb9c96658..9577ada113 100644 --- a/arch/arm/cpu/armv8/fsl-layerscape/cpu.c +++ b/arch/arm/cpu/armv8/fsl-layerscape/cpu.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include diff --git a/arch/powerpc/cpu/mpc85xx/cpu_init.c b/arch/powerpc/cpu/mpc85xx/cpu_init.c index cbcd62e19a..cac9280790 100644 --- a/arch/powerpc/cpu/mpc85xx/cpu_init.c +++ b/arch/powerpc/cpu/mpc85xx/cpu_init.c @@ -10,6 +10,7 @@ */ #include +#include #include #include #include diff --git a/arch/powerpc/cpu/mpc85xx/fdt.c b/arch/powerpc/cpu/mpc85xx/fdt.c index 20ecca605f..d17c382cc9 100644 --- a/arch/powerpc/cpu/mpc85xx/fdt.c +++ b/arch/powerpc/cpu/mpc85xx/fdt.c @@ -7,6 +7,7 @@ */ #include +#include #include #include #include diff --git a/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c b/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c index 2fab9aaff4..fcfa730233 100644 --- a/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c +++ b/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c @@ -4,6 +4,7 @@ */ #include +#include #ifdef CONFIG_SYS_P4080_ERRATUM_SERDES8 #include #endif diff --git a/board/esd/meesc/meesc.c b/board/esd/meesc/meesc.c index 29b6341132..b0d2f7b6f8 100644 --- a/board/esd/meesc/meesc.c +++ b/board/esd/meesc/meesc.c @@ -10,6 +10,7 @@ */ #include +#include #include #include #include diff --git a/board/freescale/b4860qds/b4860qds.c b/board/freescale/b4860qds/b4860qds.c index 9eed95b656..33cd4b4964 100644 --- a/board/freescale/b4860qds/b4860qds.c +++ b/board/freescale/b4860qds/b4860qds.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/mpc837xerdb/mpc837xerdb.c b/board/freescale/mpc837xerdb/mpc837xerdb.c index 18f396aac8..4ad62bcf1d 100644 --- a/board/freescale/mpc837xerdb/mpc837xerdb.c +++ b/board/freescale/mpc837xerdb/mpc837xerdb.c @@ -6,6 +6,7 @@ */ #include +#include #include #include #include diff --git a/board/liebherr/mccmon6/mccmon6.c b/board/liebherr/mccmon6/mccmon6.c index 0e069a7755..7d2751ab03 100644 --- a/board/liebherr/mccmon6/mccmon6.c +++ b/board/liebherr/mccmon6/mccmon6.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include diff --git a/board/micronas/vct/vct.c b/board/micronas/vct/vct.c index af3f11e8ac..e73d16db3e 100644 --- a/board/micronas/vct/vct.c +++ b/board/micronas/vct/vct.c @@ -7,6 +7,7 @@ #include #include +#include #include #include #include "vct.h" diff --git a/board/socrates/socrates.c b/board/socrates/socrates.c index ff465a8ef2..da9ae5bebb 100644 --- a/board/socrates/socrates.c +++ b/board/socrates/socrates.c @@ -11,6 +11,7 @@ */ #include +#include #include #include #include diff --git a/board/st/stm32mp1/stm32mp1.c b/board/st/stm32mp1/stm32mp1.c index b99c6c08a3..1f9251d7a0 100644 --- a/board/st/stm32mp1/stm32mp1.c +++ b/board/st/stm32mp1/stm32mp1.c @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include diff --git a/board/xes/common/board.c b/board/xes/common/board.c index 66467c6485..43575bc302 100644 --- a/board/xes/common/board.c +++ b/board/xes/common/board.c @@ -4,6 +4,7 @@ */ #include +#include #include "fsl_8xxx_misc.h" int checkboard(void) diff --git a/cmd/mtdparts.c b/cmd/mtdparts.c index f7ed1a0779..46155cabf6 100644 --- a/cmd/mtdparts.c +++ b/cmd/mtdparts.c @@ -72,6 +72,7 @@ #include #include +#include #include #include #include diff --git a/drivers/ddr/fsl/fsl_ddr_gen4.c b/drivers/ddr/fsl/fsl_ddr_gen4.c index 30f7863b39..17a4a8282b 100644 --- a/drivers/ddr/fsl/fsl_ddr_gen4.c +++ b/drivers/ddr/fsl/fsl_ddr_gen4.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/drivers/ddr/fsl/interactive.c b/drivers/ddr/fsl/interactive.c index 4de0eae5f2..8e171e67fe 100644 --- a/drivers/ddr/fsl/interactive.c +++ b/drivers/ddr/fsl/interactive.c @@ -13,6 +13,7 @@ #include #include +#include #include #include #include diff --git a/drivers/ddr/fsl/options.c b/drivers/ddr/fsl/options.c index 4573ffa115..b9179315f2 100644 --- a/drivers/ddr/fsl/options.c +++ b/drivers/ddr/fsl/options.c @@ -5,6 +5,7 @@ */ #include +#include #include #include diff --git a/drivers/mtd/cfi_flash.c b/drivers/mtd/cfi_flash.c index 6b97e145e9..6c22f074b0 100644 --- a/drivers/mtd/cfi_flash.c +++ b/drivers/mtd/cfi_flash.c @@ -19,6 +19,7 @@ #include #include #include +#include #include #include #include diff --git a/drivers/mtd/mtd_uboot.c b/drivers/mtd/mtd_uboot.c index 0a41ed477c..5574227598 100644 --- a/drivers/mtd/mtd_uboot.c +++ b/drivers/mtd/mtd_uboot.c @@ -4,6 +4,7 @@ * Heiko Schocher, DENX Software Engineering, hs@denx.de. */ #include +#include #include #include #include /* LEGACY */ diff --git a/drivers/net/fm/b4860.c b/drivers/net/fm/b4860.c index 1e20685803..5be0ad2ab3 100644 --- a/drivers/net/fm/b4860.c +++ b/drivers/net/fm/b4860.c @@ -4,6 +4,7 @@ * Roy Zang */ #include +#include #include #include #include diff --git a/include/common.h b/include/common.h index 997da857b2..2aabd267b9 100644 --- a/include/common.h +++ b/include/common.h @@ -162,18 +162,6 @@ int envmatch (uchar *, int); */ char *env_get(const char *varname); -/** - * env_get_f() - Look up the value of an environment variable (early) - * - * This function is called from env_get() if the environment has not been - * loaded yet (GD_FLG_ENV_READY flag is 0). Some environment locations will - * support reading the value (slowly) and some will not. - * - * @varname: Variable to look up - * @return value of variable, or NULL if not found - */ -int env_get_f(const char *name, char *buf, unsigned len); - /** * env_get_ulong() - Return an environment variable as an integer value * diff --git a/include/env.h b/include/env.h index b82d80de17..19b559abf1 100644 --- a/include/env.h +++ b/include/env.h @@ -21,6 +21,18 @@ */ int env_get_id(void); +/** + * env_get_f() - Look up the value of an environment variable (early) + * + * This function is called from env_get() if the environment has not been + * loaded yet (GD_FLG_ENV_READY flag is 0). Some environment locations will + * support reading the value (slowly) and some will not. + * + * @varname: Variable to look up + * @return value of variable, or NULL if not found + */ +int env_get_f(const char *name, char *buf, unsigned int len); + /** * env_complete() - return an auto-complete for environment variables * diff --git a/post/post.c b/post/post.c index ebb620590e..fb751d9a83 100644 --- a/post/post.c +++ b/post/post.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include From 4bfd1f5d626778dd17f9827e5c462cc2697e0e90 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:43 -0600 Subject: [PATCH 19/51] env: Move env_init() to env.h Move env_init() over to the new header file. Signed-off-by: Simon Glass Acked-by: Joe Hershberger --- arch/arm/cpu/armv8/fsl-layerscape/spl.c | 1 + arch/mips/lib/bootm.c | 1 + board/Arcturus/ucp1020/spl.c | 1 + board/birdland/bav335x/board.c | 1 + board/freescale/b4860qds/spl.c | 1 + board/freescale/p1010rdb/spl.c | 1 + board/freescale/p1022ds/spl.c | 1 + board/freescale/p1_p2_rdb_pc/spl.c | 1 + board/gateworks/gw_ventana/gw_ventana_spl.c | 1 + board/liebherr/display5/spl.c | 1 + board/tcl/sl50/board.c | 1 + board/ti/am335x/board.c | 1 + board/ti/am57xx/board.c | 1 + board/ti/dra7xx/evm.c | 1 + common/board_f.c | 1 + common/spl/spl_net.c | 1 + env/env.c | 1 + include/common.h | 1 - include/env.h | 10 ++++++++++ 19 files changed, 27 insertions(+), 1 deletion(-) diff --git a/arch/arm/cpu/armv8/fsl-layerscape/spl.c b/arch/arm/cpu/armv8/fsl-layerscape/spl.c index 3e53084b21..8eeeef199b 100644 --- a/arch/arm/cpu/armv8/fsl-layerscape/spl.c +++ b/arch/arm/cpu/armv8/fsl-layerscape/spl.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/arch/mips/lib/bootm.c b/arch/mips/lib/bootm.c index 6a462f3e5a..8c0d7672f2 100644 --- a/arch/mips/lib/bootm.c +++ b/arch/mips/lib/bootm.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include diff --git a/board/Arcturus/ucp1020/spl.c b/board/Arcturus/ucp1020/spl.c index 451a9d78bb..f3b7d99878 100644 --- a/board/Arcturus/ucp1020/spl.c +++ b/board/Arcturus/ucp1020/spl.c @@ -9,6 +9,7 @@ #include #include +#include #include #include #include diff --git a/board/birdland/bav335x/board.c b/board/birdland/bav335x/board.c index b95186026f..b0339ad8f0 100644 --- a/board/birdland/bav335x/board.c +++ b/board/birdland/bav335x/board.c @@ -8,6 +8,7 @@ */ #include +#include #include #include #include diff --git a/board/freescale/b4860qds/spl.c b/board/freescale/b4860qds/spl.c index 887fa04627..d9aa57f41c 100644 --- a/board/freescale/b4860qds/spl.c +++ b/board/freescale/b4860qds/spl.c @@ -4,6 +4,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/p1010rdb/spl.c b/board/freescale/p1010rdb/spl.c index e07640a0ed..95f8b5837d 100644 --- a/board/freescale/p1010rdb/spl.c +++ b/board/freescale/p1010rdb/spl.c @@ -4,6 +4,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/p1022ds/spl.c b/board/freescale/p1022ds/spl.c index cfdd9fc9c9..92fd199876 100644 --- a/board/freescale/p1022ds/spl.c +++ b/board/freescale/p1022ds/spl.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/p1_p2_rdb_pc/spl.c b/board/freescale/p1_p2_rdb_pc/spl.c index 48ab271fb2..9d7b5eff6f 100644 --- a/board/freescale/p1_p2_rdb_pc/spl.c +++ b/board/freescale/p1_p2_rdb_pc/spl.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/gateworks/gw_ventana/gw_ventana_spl.c b/board/gateworks/gw_ventana/gw_ventana_spl.c index eaf7aa9eca..740fc57b91 100644 --- a/board/gateworks/gw_ventana/gw_ventana_spl.c +++ b/board/gateworks/gw_ventana/gw_ventana_spl.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include #include diff --git a/board/liebherr/display5/spl.c b/board/liebherr/display5/spl.c index 27f843ec45..d92760b487 100644 --- a/board/liebherr/display5/spl.c +++ b/board/liebherr/display5/spl.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include diff --git a/board/tcl/sl50/board.c b/board/tcl/sl50/board.c index 6bb6482dd0..8ddbee5436 100644 --- a/board/tcl/sl50/board.c +++ b/board/tcl/sl50/board.c @@ -8,6 +8,7 @@ */ #include +#include #include #include #include diff --git a/board/ti/am335x/board.c b/board/ti/am335x/board.c index 2c32b92d94..58d09f7c20 100644 --- a/board/ti/am335x/board.c +++ b/board/ti/am335x/board.c @@ -9,6 +9,7 @@ #include #include +#include #include #include #include diff --git a/board/ti/am57xx/board.c b/board/ti/am57xx/board.c index 1a903f13a6..0dacfd4327 100644 --- a/board/ti/am57xx/board.c +++ b/board/ti/am57xx/board.c @@ -8,6 +8,7 @@ */ #include +#include #include #include #include diff --git a/board/ti/dra7xx/evm.c b/board/ti/dra7xx/evm.c index 179adc2fff..97eef65d51 100644 --- a/board/ti/dra7xx/evm.c +++ b/board/ti/dra7xx/evm.c @@ -10,6 +10,7 @@ * Steve Sakoman */ #include +#include #include #include #include diff --git a/common/board_f.c b/common/board_f.c index 7d656fae6a..18937bf6f5 100644 --- a/common/board_f.c +++ b/common/board_f.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include diff --git a/common/spl/spl_net.c b/common/spl/spl_net.c index c91ad2b6dd..803303249c 100644 --- a/common/spl/spl_net.c +++ b/common/spl/spl_net.c @@ -7,6 +7,7 @@ * Ilya Yanok */ #include +#include #include #include #include diff --git a/env/env.c b/env/env.c index d3cbe2f915..9d421e8125 100644 --- a/env/env.c +++ b/env/env.c @@ -5,6 +5,7 @@ */ #include +#include #include DECLARE_GLOBAL_DATA_PTR; diff --git a/include/common.h b/include/common.h index 2aabd267b9..55cbe1f97d 100644 --- a/include/common.h +++ b/include/common.h @@ -146,7 +146,6 @@ int do_fat_fsload(cmd_tbl_t *, int, int, char * const []); int do_ext2load(cmd_tbl_t *, int, int, char * const []); /* common/cmd_nvedit.c */ -int env_init (void); void env_relocate (void); int envmatch (uchar *, int); diff --git a/include/env.h b/include/env.h index 19b559abf1..5d205ef02d 100644 --- a/include/env.h +++ b/include/env.h @@ -21,6 +21,16 @@ */ int env_get_id(void); +/** + * env_init() - Set up the pre-relocation environment + * + * This locates the environment or uses the default if nothing is available. + * This must be called before env_get() will work. + * + * @return 0 if OK, -ENODEV if no environment drivers are enabled + */ +int env_init(void); + /** * env_get_f() - Look up the value of an environment variable (early) * From 3f989e7b0e43402d0a50e19939e4f57374319734 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:44 -0600 Subject: [PATCH 20/51] env: Move env_relocate() to env.h Move env_relocate() over to the new header file. Signed-off-by: Simon Glass Acked-by: Joe Hershberger --- common/board_r.c | 1 + env/common.c | 1 + include/common.h | 1 - include/env.h | 8 ++++++++ 4 files changed, 10 insertions(+), 1 deletion(-) diff --git a/common/board_r.c b/common/board_r.c index 84aec7fc71..99b128571e 100644 --- a/common/board_r.c +++ b/common/board_r.c @@ -18,6 +18,7 @@ #include #include #include +#include #include #include #include diff --git a/env/common.c b/env/common.c index bd340fe9d5..1fbc4a874d 100644 --- a/env/common.c +++ b/env/common.c @@ -9,6 +9,7 @@ #include #include +#include #include #include #include diff --git a/include/common.h b/include/common.h index 55cbe1f97d..cb6b584b70 100644 --- a/include/common.h +++ b/include/common.h @@ -146,7 +146,6 @@ int do_fat_fsload(cmd_tbl_t *, int, int, char * const []); int do_ext2load(cmd_tbl_t *, int, int, char * const []); /* common/cmd_nvedit.c */ -void env_relocate (void); int envmatch (uchar *, int); /** diff --git a/include/env.h b/include/env.h index 5d205ef02d..72980962bf 100644 --- a/include/env.h +++ b/include/env.h @@ -31,6 +31,14 @@ int env_get_id(void); */ int env_init(void); +/** + * env_relocate() - Set up the post-relocation environment + * + * This loads the environment into RAM so that it can be modified. This is + * called after relocation, before the environment is used + */ +void env_relocate(void); + /** * env_get_f() - Look up the value of an environment variable (early) * From b9ca02c2d554cb46a4579e1382561c529820b494 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:45 -0600 Subject: [PATCH 21/51] env: Move envmatch() to env.h Move envmatch() over to the new header file. Also rename it to env_match() to better line up with other functions. Signed-off-by: Simon Glass Acked-by: Joe Hershberger --- cmd/nvedit.c | 12 ++---------- examples/api/glue.c | 3 ++- include/common.h | 3 --- include/env.h | 11 +++++++++++ 4 files changed, 15 insertions(+), 14 deletions(-) diff --git a/cmd/nvedit.c b/cmd/nvedit.c index 4f3edab8b9..751b77d0e9 100644 --- a/cmd/nvedit.c +++ b/cmd/nvedit.c @@ -709,7 +709,7 @@ int env_get_f(const char *name, char *buf, unsigned len) return -1; } - val = envmatch((uchar *)name, i); + val = env_match((uchar *)name, i); if (val < 0) continue; @@ -785,15 +785,7 @@ U_BOOT_CMD( #endif #endif /* CONFIG_SPL_BUILD */ - -/* - * Match a name / name=value pair - * - * s1 is either a simple 'name', or a 'name=value' pair. - * i2 is the environment index for a 'name2=value2' pair. - * If the names match, return the index for the value2, else -1. - */ -int envmatch(uchar *s1, int i2) +int env_match(uchar *s1, int i2) { if (s1 == NULL) return -1; diff --git a/examples/api/glue.c b/examples/api/glue.c index 9c8ed8d11c..4086616a94 100644 --- a/examples/api/glue.c +++ b/examples/api/glue.c @@ -4,6 +4,7 @@ */ #include +#include #include #include @@ -365,7 +366,7 @@ const char * ub_env_enum(const char *last) /* * It's OK to pass only the name piece as last (and not the whole - * 'name=val' string), since the API_ENUM_ENV call uses envmatch() + * 'name=val' string), since the API_ENUM_ENV call uses env_match() * internally, which handles such case */ if (!syscall(API_ENV_ENUM, NULL, last, &env)) diff --git a/include/common.h b/include/common.h index cb6b584b70..26ec18ded4 100644 --- a/include/common.h +++ b/include/common.h @@ -145,9 +145,6 @@ int do_fat_fsload(cmd_tbl_t *, int, int, char * const []); /* common/cmd_ext2.c */ int do_ext2load(cmd_tbl_t *, int, int, char * const []); -/* common/cmd_nvedit.c */ -int envmatch (uchar *, int); - /** * env_get() - Look up the value of an environment variable * diff --git a/include/env.h b/include/env.h index 72980962bf..bf34ac3f86 100644 --- a/include/env.h +++ b/include/env.h @@ -39,6 +39,17 @@ int env_init(void); */ void env_relocate(void); +/** + * env_match() - Match a name / name=value pair + * + * This is used prior to relocation for finding envrionment variables + * + * @name: A simple 'name', or a 'name=value' pair. + * @index: The environment index for a 'name2=value2' pair. + * @return index for the value if the names match, else -1. + */ +int env_match(unsigned char *name, int index); + /** * env_get_f() - Look up the value of an environment variable (early) * From c7694dd4837ba12db3bcda872a1047a44566e0e8 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:46 -0600 Subject: [PATCH 22/51] env: Move env_set_hex() to env.h Move env_set_hex() over to the new header file along with env_set_addr() which uses it. Signed-off-by: Simon Glass Acked-by: Joe Hershberger --- api/api.c | 1 + arch/arm/mach-tegra/cboot.c | 1 + arch/arm/mach-uniphier/board_late_init.c | 1 + board/BuR/common/common.c | 1 + board/boundary/nitrogen6x/nitrogen6x.c | 1 + board/broadcom/bcmstb/bcmstb.c | 1 + board/emulation/qemu-riscv/qemu-riscv.c | 1 + board/freescale/qemu-ppce500/qemu-ppce500.c | 1 + board/raspberrypi/rpi/rpi.c | 1 + board/sunxi/board.c | 1 + board/xilinx/zynqmp/cmds.c | 1 + cmd/cbfs.c | 1 + cmd/cramfs.c | 1 + cmd/fdt.c | 1 + cmd/jffs2.c | 1 + cmd/load.c | 1 + cmd/lzmadec.c | 1 + cmd/nand.c | 1 + cmd/reiser.c | 1 + cmd/setexpr.c | 1 + cmd/spl.c | 1 + cmd/tpm-v1.c | 1 + cmd/trace.c | 1 + cmd/ubi.c | 1 + cmd/unzip.c | 1 + cmd/ximg.c | 1 + cmd/zfs.c | 1 + cmd/zip.c | 1 + common/autoboot.c | 1 + common/bootm.c | 1 + common/bootm_os.c | 1 + drivers/fastboot/fb_command.c | 1 + drivers/net/fm/fm.c | 1 + drivers/usb/gadget/f_sdp.c | 1 + fs/fs.c | 1 + fs/ubifs/ubifs.c | 1 + include/common.h | 21 -------------------- include/env.h | 22 +++++++++++++++++++++ net/net.c | 1 + 39 files changed, 59 insertions(+), 21 deletions(-) diff --git a/api/api.c b/api/api.c index 9f03f1a35b..8a41b7cce7 100644 --- a/api/api.c +++ b/api/api.c @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include diff --git a/arch/arm/mach-tegra/cboot.c b/arch/arm/mach-tegra/cboot.c index a829ef794f..bd4f33686d 100644 --- a/arch/arm/mach-tegra/cboot.c +++ b/arch/arm/mach-tegra/cboot.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/arch/arm/mach-uniphier/board_late_init.c b/arch/arm/mach-uniphier/board_late_init.c index 3180b24330..14b61fc7df 100644 --- a/arch/arm/mach-uniphier/board_late_init.c +++ b/arch/arm/mach-uniphier/board_late_init.c @@ -6,6 +6,7 @@ */ #include +#include #include #include #include diff --git a/board/BuR/common/common.c b/board/BuR/common/common.c index 89087d7dba..148fc9075e 100644 --- a/board/BuR/common/common.c +++ b/board/BuR/common/common.c @@ -10,6 +10,7 @@ */ #include #include +#include #include #include #include diff --git a/board/boundary/nitrogen6x/nitrogen6x.c b/board/boundary/nitrogen6x/nitrogen6x.c index 867eade4bd..26af3f7102 100644 --- a/board/boundary/nitrogen6x/nitrogen6x.c +++ b/board/boundary/nitrogen6x/nitrogen6x.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include diff --git a/board/broadcom/bcmstb/bcmstb.c b/board/broadcom/bcmstb/bcmstb.c index 7f8e0f951d..5fc2c0591b 100644 --- a/board/broadcom/bcmstb/bcmstb.c +++ b/board/broadcom/bcmstb/bcmstb.c @@ -8,6 +8,7 @@ #include #include +#include #include #include #include diff --git a/board/emulation/qemu-riscv/qemu-riscv.c b/board/emulation/qemu-riscv/qemu-riscv.c index d6167aaef1..49e304f7eb 100644 --- a/board/emulation/qemu-riscv/qemu-riscv.c +++ b/board/emulation/qemu-riscv/qemu-riscv.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/qemu-ppce500/qemu-ppce500.c b/board/freescale/qemu-ppce500/qemu-ppce500.c index 42a6b5427a..fb36d8366c 100644 --- a/board/freescale/qemu-ppce500/qemu-ppce500.c +++ b/board/freescale/qemu-ppce500/qemu-ppce500.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/raspberrypi/rpi/rpi.c b/board/raspberrypi/rpi/rpi.c index 617c892dde..104589bff1 100644 --- a/board/raspberrypi/rpi/rpi.c +++ b/board/raspberrypi/rpi/rpi.c @@ -6,6 +6,7 @@ #include #include #include +#include #include #include #include diff --git a/board/sunxi/board.c b/board/sunxi/board.c index 98bc3cd0c1..bb425cbf66 100644 --- a/board/sunxi/board.c +++ b/board/sunxi/board.c @@ -12,6 +12,7 @@ #include #include +#include #include #include #include diff --git a/board/xilinx/zynqmp/cmds.c b/board/xilinx/zynqmp/cmds.c index 321670d4e3..ed7ba58c64 100644 --- a/board/xilinx/zynqmp/cmds.c +++ b/board/xilinx/zynqmp/cmds.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include diff --git a/cmd/cbfs.c b/cmd/cbfs.c index c118a952ac..3d1fc95972 100644 --- a/cmd/cbfs.c +++ b/cmd/cbfs.c @@ -8,6 +8,7 @@ */ #include #include +#include #include static int do_cbfs_init(cmd_tbl_t *cmdtp, int flag, int argc, diff --git a/cmd/cramfs.c b/cmd/cramfs.c index 598028cfad..2188910b2a 100644 --- a/cmd/cramfs.c +++ b/cmd/cramfs.c @@ -12,6 +12,7 @@ */ #include #include +#include #include #include #include diff --git a/cmd/fdt.c b/cmd/fdt.c index 10d8f3230b..25a6ed40d2 100644 --- a/cmd/fdt.c +++ b/cmd/fdt.c @@ -9,6 +9,7 @@ #include #include +#include #include #include #include diff --git a/cmd/jffs2.c b/cmd/jffs2.c index 64621f2546..b47cd3d989 100644 --- a/cmd/jffs2.c +++ b/cmd/jffs2.c @@ -72,6 +72,7 @@ */ #include #include +#include #include #include #include diff --git a/cmd/load.c b/cmd/load.c index dd1e8dac13..713fe56b55 100644 --- a/cmd/load.c +++ b/cmd/load.c @@ -10,6 +10,7 @@ #include #include #include +#include #include #include #include diff --git a/cmd/lzmadec.c b/cmd/lzmadec.c index 6860b5f758..e3b9cc75ac 100644 --- a/cmd/lzmadec.c +++ b/cmd/lzmadec.c @@ -11,6 +11,7 @@ #include #include +#include #include #include diff --git a/cmd/nand.c b/cmd/nand.c index 899d504533..27efef20bc 100644 --- a/cmd/nand.c +++ b/cmd/nand.c @@ -23,6 +23,7 @@ #include #include #include +#include #include #include #include diff --git a/cmd/reiser.c b/cmd/reiser.c index 2c0bca1c54..7f51b927a4 100644 --- a/cmd/reiser.c +++ b/cmd/reiser.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include diff --git a/cmd/setexpr.c b/cmd/setexpr.c index 1a6cecdeda..0182f19938 100644 --- a/cmd/setexpr.c +++ b/cmd/setexpr.c @@ -11,6 +11,7 @@ #include #include #include +#include #include static ulong get_arg(char *s, int w) diff --git a/cmd/spl.c b/cmd/spl.c index 038f48818d..56051b8a4b 100644 --- a/cmd/spl.c +++ b/cmd/spl.c @@ -7,6 +7,7 @@ #include #include #include +#include #include DECLARE_GLOBAL_DATA_PTR; diff --git a/cmd/tpm-v1.c b/cmd/tpm-v1.c index b75e0933a1..2807331524 100644 --- a/cmd/tpm-v1.c +++ b/cmd/tpm-v1.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/cmd/trace.c b/cmd/trace.c index 7d328f88be..392b129536 100644 --- a/cmd/trace.c +++ b/cmd/trace.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/cmd/ubi.c b/cmd/ubi.c index c511a2fb76..ca5dc9021b 100644 --- a/cmd/ubi.c +++ b/cmd/ubi.c @@ -13,6 +13,7 @@ #include #include +#include #include #include #include diff --git a/cmd/unzip.c b/cmd/unzip.c index 8474d9becf..afd58e7cdb 100644 --- a/cmd/unzip.c +++ b/cmd/unzip.c @@ -6,6 +6,7 @@ #include #include +#include #include static int do_unzip(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) diff --git a/cmd/ximg.c b/cmd/ximg.c index 920a80edc8..a9481004f0 100644 --- a/cmd/ximg.c +++ b/cmd/ximg.c @@ -13,6 +13,7 @@ */ #include #include +#include #include #include #include diff --git a/cmd/zfs.c b/cmd/zfs.c index 384ac4c939..ed5402bb13 100644 --- a/cmd/zfs.c +++ b/cmd/zfs.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #include diff --git a/cmd/zip.c b/cmd/zip.c index 9cd400a7e8..8ef46e9815 100644 --- a/cmd/zip.c +++ b/cmd/zip.c @@ -6,6 +6,7 @@ #include #include +#include static int do_zip(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) { diff --git a/common/autoboot.c b/common/autoboot.c index 7a91736a00..b28bd6823d 100644 --- a/common/autoboot.c +++ b/common/autoboot.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include diff --git a/common/bootm.c b/common/bootm.c index 4629cdd82d..02295daf79 100644 --- a/common/bootm.c +++ b/common/bootm.c @@ -7,6 +7,7 @@ #ifndef USE_HOSTCC #include #include +#include #include #include #include diff --git a/common/bootm_os.c b/common/bootm_os.c index 855c471c28..6fb7d658da 100644 --- a/common/bootm_os.c +++ b/common/bootm_os.c @@ -6,6 +6,7 @@ #include #include +#include #include #include #include diff --git a/drivers/fastboot/fb_command.c b/drivers/fastboot/fb_command.c index 200f9910c5..4864344853 100644 --- a/drivers/fastboot/fb_command.c +++ b/drivers/fastboot/fb_command.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/drivers/net/fm/fm.c b/drivers/net/fm/fm.c index 0a43dfe74e..ce0f1678fd 100644 --- a/drivers/net/fm/fm.c +++ b/drivers/net/fm/fm.c @@ -4,6 +4,7 @@ * Dave Liu */ #include +#include #include #include #include diff --git a/drivers/usb/gadget/f_sdp.c b/drivers/usb/gadget/f_sdp.c index fab7ce6f97..bcd1c5d47c 100644 --- a/drivers/usb/gadget/f_sdp.c +++ b/drivers/usb/gadget/f_sdp.c @@ -19,6 +19,7 @@ #include #include #include +#include #include #include diff --git a/fs/fs.c b/fs/fs.c index 48d8f1f6da..d8a4ced469 100644 --- a/fs/fs.c +++ b/fs/fs.c @@ -6,6 +6,7 @@ #include #include #include +#include #include #include #include diff --git a/fs/ubifs/ubifs.c b/fs/ubifs/ubifs.c index 72e8a24d3b..67a0e8caae 100644 --- a/fs/ubifs/ubifs.c +++ b/fs/ubifs/ubifs.c @@ -12,6 +12,7 @@ */ #include +#include #include #include #include "ubifs.h" diff --git a/include/common.h b/include/common.h index 26ec18ded4..100eac6e5e 100644 --- a/include/common.h +++ b/include/common.h @@ -209,27 +209,6 @@ int env_set(const char *varname, const char *value); */ int env_set_ulong(const char *varname, ulong value); -/** - * env_set_hex() - set an environment variable to a hex value - * - * @varname: Variable to adjust - * @value: Value to set for the variable (will be converted to a hex string) - * @return 0 if OK, 1 on error - */ -int env_set_hex(const char *varname, ulong value); - -/** - * env_set_addr - Set an environment variable to an address in hex - * - * @varname: Environment variable to set - * @addr: Value to set it to - * @return 0 if ok, 1 on error - */ -static inline int env_set_addr(const char *varname, const void *addr) -{ - return env_set_hex(varname, (ulong)addr); -} - void pci_init_board(void); /* common/exports.c */ diff --git a/include/env.h b/include/env.h index bf34ac3f86..5c780f30d6 100644 --- a/include/env.h +++ b/include/env.h @@ -10,6 +10,7 @@ #define __ENV_H #include +#include /** * env_get_id() - Gets a sequence number for the environment @@ -62,6 +63,27 @@ int env_match(unsigned char *name, int index); */ int env_get_f(const char *name, char *buf, unsigned int len); +/** + * env_set_hex() - set an environment variable to a hex value + * + * @varname: Variable to adjust + * @value: Value to set for the variable (will be converted to a hex string) + * @return 0 if OK, 1 on error + */ +int env_set_hex(const char *varname, ulong value); + +/** + * env_set_addr - Set an environment variable to an address in hex + * + * @varname: Environment variable to set + * @addr: Value to set it to + * @return 0 if ok, 1 on error + */ +static inline int env_set_addr(const char *varname, const void *addr) +{ + return env_set_hex(varname, (ulong)addr); +} + /** * env_complete() - return an auto-complete for environment variables * diff --git a/net/net.c b/net/net.c index 58b0417cbe..1a175c4597 100644 --- a/net/net.c +++ b/net/net.c @@ -90,6 +90,7 @@ #include #include #include +#include #include #include #include From 168068fb3d7da3d95bf37b21f39347f48d38497f Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:47 -0600 Subject: [PATCH 23/51] env: Move env_set_ulong() to env.h Move env_set_ulong() over to the new header file. Signed-off-by: Simon Glass Acked-by: Joe Hershberger --- arch/arm/mach-uniphier/mmc-first-dev.c | 1 + board/BuR/brppt1/board.c | 1 + board/BuR/common/br_resetc.c | 1 + board/CZ.NIC/turris_omnia/turris_omnia.c | 1 + board/engicam/common/board.c | 1 + board/gdsys/mpc8308/gazerbeam.c | 1 + board/grinn/liteboard/board.c | 1 + board/imgtec/ci20/ci20.c | 1 + board/synopsys/hsdk/hsdk.c | 1 + board/warp7/warp7.c | 1 + cmd/tpm-common.c | 1 + drivers/bootcount/bootcount_env.c | 1 + drivers/scsi/scsi.c | 1 + include/bootcount.h | 1 + include/common.h | 9 --------- include/env.h | 9 +++++++++ 16 files changed, 23 insertions(+), 9 deletions(-) diff --git a/arch/arm/mach-uniphier/mmc-first-dev.c b/arch/arm/mach-uniphier/mmc-first-dev.c index 2f1c109b9e..149e662070 100644 --- a/arch/arm/mach-uniphier/mmc-first-dev.c +++ b/arch/arm/mach-uniphier/mmc-first-dev.c @@ -5,6 +5,7 @@ */ #include +#include #include #include diff --git a/board/BuR/brppt1/board.c b/board/BuR/brppt1/board.c index b8ab19c0e7..ef4f5c9501 100644 --- a/board/BuR/brppt1/board.c +++ b/board/BuR/brppt1/board.c @@ -10,6 +10,7 @@ */ #include +#include #include #include #include diff --git a/board/BuR/common/br_resetc.c b/board/BuR/common/br_resetc.c index c8cc73ab14..c0e7fb65b2 100644 --- a/board/BuR/common/br_resetc.c +++ b/board/BuR/common/br_resetc.c @@ -6,6 +6,7 @@ * B&R Industrial Automation GmbH - http://www.br-automation.com/ * */ #include +#include #include #include #include diff --git a/board/CZ.NIC/turris_omnia/turris_omnia.c b/board/CZ.NIC/turris_omnia/turris_omnia.c index 5f6ea35e5f..418657c2d5 100644 --- a/board/CZ.NIC/turris_omnia/turris_omnia.c +++ b/board/CZ.NIC/turris_omnia/turris_omnia.c @@ -8,6 +8,7 @@ */ #include +#include #include #include #include diff --git a/board/engicam/common/board.c b/board/engicam/common/board.c index 567b9f63e5..0c47afe5b5 100644 --- a/board/engicam/common/board.c +++ b/board/engicam/common/board.c @@ -6,6 +6,7 @@ */ #include +#include #include #include #include diff --git a/board/gdsys/mpc8308/gazerbeam.c b/board/gdsys/mpc8308/gazerbeam.c index cd621744d2..ddd6ee8953 100644 --- a/board/gdsys/mpc8308/gazerbeam.c +++ b/board/gdsys/mpc8308/gazerbeam.c @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include diff --git a/board/grinn/liteboard/board.c b/board/grinn/liteboard/board.c index 1491b8c3d4..1558ea4b84 100644 --- a/board/grinn/liteboard/board.c +++ b/board/grinn/liteboard/board.c @@ -17,6 +17,7 @@ #include #include #include +#include #include #include #include diff --git a/board/imgtec/ci20/ci20.c b/board/imgtec/ci20/ci20.c index 9811ef559f..f72a660581 100644 --- a/board/imgtec/ci20/ci20.c +++ b/board/imgtec/ci20/ci20.c @@ -7,6 +7,7 @@ */ #include +#include #include #include #include diff --git a/board/synopsys/hsdk/hsdk.c b/board/synopsys/hsdk/hsdk.c index ac4d980c49..8a7642a0aa 100644 --- a/board/synopsys/hsdk/hsdk.c +++ b/board/synopsys/hsdk/hsdk.c @@ -6,6 +6,7 @@ #include #include +#include #include #include #include diff --git a/board/warp7/warp7.c b/board/warp7/warp7.c index 134a6c99d7..39ae982257 100644 --- a/board/warp7/warp7.c +++ b/board/warp7/warp7.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include #include diff --git a/cmd/tpm-common.c b/cmd/tpm-common.c index 89f2aa001b..38900fb159 100644 --- a/cmd/tpm-common.c +++ b/cmd/tpm-common.c @@ -6,6 +6,7 @@ #include #include #include +#include #include #include #include diff --git a/drivers/bootcount/bootcount_env.c b/drivers/bootcount/bootcount_env.c index 9084ca8a6e..50e0857b3b 100644 --- a/drivers/bootcount/bootcount_env.c +++ b/drivers/bootcount/bootcount_env.c @@ -5,6 +5,7 @@ */ #include +#include #include void bootcount_store(ulong a) diff --git a/drivers/scsi/scsi.c b/drivers/scsi/scsi.c index 75900d8228..48cb2a2818 100644 --- a/drivers/scsi/scsi.c +++ b/drivers/scsi/scsi.c @@ -6,6 +6,7 @@ #include #include +#include #include #include #include diff --git a/include/bootcount.h b/include/bootcount.h index daee84316c..8fa8cf8218 100644 --- a/include/bootcount.h +++ b/include/bootcount.h @@ -9,6 +9,7 @@ #include #include #include +#include #ifdef CONFIG_DM_BOOTCOUNT diff --git a/include/common.h b/include/common.h index 100eac6e5e..283cb23fd1 100644 --- a/include/common.h +++ b/include/common.h @@ -200,15 +200,6 @@ int env_get_yesno(const char *var); */ int env_set(const char *varname, const char *value); -/** - * env_set_ulong() - set an environment variable to an integer - * - * @varname: Variable to adjust - * @value: Value to set for the variable (will be converted to a string) - * @return 0 if OK, 1 on error - */ -int env_set_ulong(const char *varname, ulong value); - void pci_init_board(void); /* common/exports.c */ diff --git a/include/env.h b/include/env.h index 5c780f30d6..8898b78b8e 100644 --- a/include/env.h +++ b/include/env.h @@ -63,6 +63,15 @@ int env_match(unsigned char *name, int index); */ int env_get_f(const char *name, char *buf, unsigned int len); +/** + * env_set_ulong() - set an environment variable to an integer + * + * @varname: Variable to adjust + * @value: Value to set for the variable (will be converted to a string) + * @return 0 if OK, 1 on error + */ +int env_set_ulong(const char *varname, ulong value); + /** * env_set_hex() - set an environment variable to a hex value * From 9eef56dbe34596b403e8c476c2e30ed697638f77 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:48 -0600 Subject: [PATCH 24/51] env: Move env_get_ulong() to env.h Move env_get_ulong() over to the new header file. Signed-off-by: Simon Glass Acked-by: Joe Hershberger --- board/BuR/brxre1/board.c | 1 + board/gdsys/p1022/controlcenterd-id.c | 1 + board/synopsys/hsdk/env-lib.c | 1 + board/ti/ks2_evm/board_k2g.c | 1 + board/toradex/colibri_imx6/colibri_imx6.c | 1 + include/common.h | 13 ------------- include/env.h | 13 +++++++++++++ lib/fdtdec.c | 1 + net/bootp.c | 1 + 9 files changed, 20 insertions(+), 13 deletions(-) diff --git a/board/BuR/brxre1/board.c b/board/BuR/brxre1/board.c index 0d1c6c4720..873208c668 100644 --- a/board/BuR/brxre1/board.c +++ b/board/BuR/brxre1/board.c @@ -9,6 +9,7 @@ * */ #include +#include #include #include #include diff --git a/board/gdsys/p1022/controlcenterd-id.c b/board/gdsys/p1022/controlcenterd-id.c index 6ac956caca..43f5404231 100644 --- a/board/gdsys/p1022/controlcenterd-id.c +++ b/board/gdsys/p1022/controlcenterd-id.c @@ -12,6 +12,7 @@ #include #include +#include #include #include #include diff --git a/board/synopsys/hsdk/env-lib.c b/board/synopsys/hsdk/env-lib.c index 66e4581fae..f443c21e6d 100644 --- a/board/synopsys/hsdk/env-lib.c +++ b/board/synopsys/hsdk/env-lib.c @@ -5,6 +5,7 @@ */ #include "env-lib.h" +#include #define MAX_CMD_LEN 25 diff --git a/board/ti/ks2_evm/board_k2g.c b/board/ti/ks2_evm/board_k2g.c index 6d0fc21c67..4ff9a44b37 100644 --- a/board/ti/ks2_evm/board_k2g.c +++ b/board/ti/ks2_evm/board_k2g.c @@ -6,6 +6,7 @@ * Texas Instruments Incorporated, */ #include +#include #include #include #include diff --git a/board/toradex/colibri_imx6/colibri_imx6.c b/board/toradex/colibri_imx6/colibri_imx6.c index 6417ba4980..f657db87d8 100644 --- a/board/toradex/colibri_imx6/colibri_imx6.c +++ b/board/toradex/colibri_imx6/colibri_imx6.c @@ -8,6 +8,7 @@ #include #include +#include #include #include diff --git a/include/common.h b/include/common.h index 283cb23fd1..48f443e851 100644 --- a/include/common.h +++ b/include/common.h @@ -157,19 +157,6 @@ int do_ext2load(cmd_tbl_t *, int, int, char * const []); */ char *env_get(const char *varname); -/** - * env_get_ulong() - Return an environment variable as an integer value - * - * Most U-Boot environment variables store hex values. For those which store - * (e.g.) base-10 integers, this function can be used to read the value. - * - * @name: Variable to look up - * @base: Base to use (e.g. 10 for base 10, 2 for binary) - * @default_val: Default value to return if no value is found - * @return the value found, or @default_val if none - */ -ulong env_get_ulong(const char *name, int base, ulong default_val); - /** * env_get_hex() - Return an environment variable as a hex value * diff --git a/include/env.h b/include/env.h index 8898b78b8e..9124718f2d 100644 --- a/include/env.h +++ b/include/env.h @@ -63,6 +63,19 @@ int env_match(unsigned char *name, int index); */ int env_get_f(const char *name, char *buf, unsigned int len); +/** + * env_get_ulong() - Return an environment variable as an integer value + * + * Most U-Boot environment variables store hex values. For those which store + * (e.g.) base-10 integers, this function can be used to read the value. + * + * @name: Variable to look up + * @base: Base to use (e.g. 10 for base 10, 2 for binary) + * @default_val: Default value to return if no value is found + * @return the value found, or @default_val if none + */ +ulong env_get_ulong(const char *name, int base, ulong default_val); + /** * env_set_ulong() - set an environment variable to an integer * diff --git a/lib/fdtdec.c b/lib/fdtdec.c index 464de5b3b5..ef5e54875c 100644 --- a/lib/fdtdec.c +++ b/lib/fdtdec.c @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include diff --git a/net/bootp.c b/net/bootp.c index 9a2b512e4a..505489140e 100644 --- a/net/bootp.c +++ b/net/bootp.c @@ -10,6 +10,7 @@ #include #include +#include #include #include #include From 6bf6dbee0111d40b4b37799d24eed8b6af7d7b29 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:49 -0600 Subject: [PATCH 25/51] env: Move env_get_yesno() to env.h Move env_get_yesno() over to the new header file. Signed-off-by: Simon Glass Acked-by: Joe Hershberger --- arch/powerpc/cpu/mpc85xx/mp.c | 1 + board/gateworks/gw_ventana/gw_ventana_spl.c | 1 + cmd/source.c | 1 + include/common.h | 6 ------ include/env.h | 8 ++++++++ 5 files changed, 11 insertions(+), 6 deletions(-) diff --git a/arch/powerpc/cpu/mpc85xx/mp.c b/arch/powerpc/cpu/mpc85xx/mp.c index b0aa72ed6e..119d4b3510 100644 --- a/arch/powerpc/cpu/mpc85xx/mp.c +++ b/arch/powerpc/cpu/mpc85xx/mp.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/board/gateworks/gw_ventana/gw_ventana_spl.c b/board/gateworks/gw_ventana/gw_ventana_spl.c index 740fc57b91..6886ff9b33 100644 --- a/board/gateworks/gw_ventana/gw_ventana_spl.c +++ b/board/gateworks/gw_ventana/gw_ventana_spl.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include diff --git a/cmd/source.c b/cmd/source.c index 1a9a71aa37..3a51ebf0b6 100644 --- a/cmd/source.c +++ b/cmd/source.c @@ -16,6 +16,7 @@ #include #include +#include #include #include #include diff --git a/include/common.h b/include/common.h index 48f443e851..83050073bf 100644 --- a/include/common.h +++ b/include/common.h @@ -169,12 +169,6 @@ char *env_get(const char *varname); */ ulong env_get_hex(const char *varname, ulong default_val); -/* - * Read an environment variable as a boolean - * Return -1 if variable does not exist (default to true) - */ -int env_get_yesno(const char *var); - /** * env_set() - set an environment variable * diff --git a/include/env.h b/include/env.h index 9124718f2d..d7190da335 100644 --- a/include/env.h +++ b/include/env.h @@ -63,6 +63,14 @@ int env_match(unsigned char *name, int index); */ int env_get_f(const char *name, char *buf, unsigned int len); +/** + * env_get_yesno() - Read an environment variable as a boolean + * + * @return 1 if yes/true (Y/y/T/t), -1 if variable does not exist (i.e. default + * to true), 0 if otherwise + */ +int env_get_yesno(const char *var); + /** * env_get_ulong() - Return an environment variable as an integer value * From cdbff9fc4002fdd47181088d5abe90e5f2fa1904 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:50 -0600 Subject: [PATCH 26/51] env: Move env_get_hex() to env.h Move env_get_hex() over to the new header file. Signed-off-by: Simon Glass Acked-by: Joe Hershberger --- arch/x86/lib/zimage.c | 1 + cmd/elf.c | 1 + common/image-fdt.c | 1 + include/common.h | 12 ------------ include/env.h | 12 ++++++++++++ 5 files changed, 15 insertions(+), 12 deletions(-) diff --git a/arch/x86/lib/zimage.c b/arch/x86/lib/zimage.c index 230b38e938..6a6258a505 100644 --- a/arch/x86/lib/zimage.c +++ b/arch/x86/lib/zimage.c @@ -13,6 +13,7 @@ */ #include +#include #include #include #include diff --git a/cmd/elf.c b/cmd/elf.c index d883be4193..5e5cf47cf8 100644 --- a/cmd/elf.c +++ b/cmd/elf.c @@ -16,6 +16,7 @@ #include #include #include +#include #include #include #include diff --git a/common/image-fdt.c b/common/image-fdt.c index e70da3dcb3..4247dcee0c 100644 --- a/common/image-fdt.c +++ b/common/image-fdt.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include diff --git a/include/common.h b/include/common.h index 83050073bf..8d8bbc4da3 100644 --- a/include/common.h +++ b/include/common.h @@ -157,18 +157,6 @@ int do_ext2load(cmd_tbl_t *, int, int, char * const []); */ char *env_get(const char *varname); -/** - * env_get_hex() - Return an environment variable as a hex value - * - * Decode an environment as a hex number (it may or may not have a 0x - * prefix). If the environment variable cannot be found, or does not start - * with hex digits, the default value is returned. - * - * @varname: Variable to decode - * @default_val: Value to return on error - */ -ulong env_get_hex(const char *varname, ulong default_val); - /** * env_set() - set an environment variable * diff --git a/include/env.h b/include/env.h index d7190da335..dd063feb39 100644 --- a/include/env.h +++ b/include/env.h @@ -93,6 +93,18 @@ ulong env_get_ulong(const char *name, int base, ulong default_val); */ int env_set_ulong(const char *varname, ulong value); +/** + * env_get_hex() - Return an environment variable as a hex value + * + * Decode an environment as a hex number (it may or may not have a 0x + * prefix). If the environment variable cannot be found, or does not start + * with hex digits, the default value is returned. + * + * @varname: Variable to decode + * @default_val: Value to return on error + */ +ulong env_get_hex(const char *varname, ulong default_val); + /** * env_set_hex() - set an environment variable to a hex value * From 9fb625ce05539fe6876a59ce1dcadb76b33c6f6e Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:51 -0600 Subject: [PATCH 27/51] env: Move env_set() to env.h Move env_set() over to the new header file. Acked-by: Joe Hershberger Signed-off-by: Simon Glass --- arch/arm/cpu/arm926ejs/spear/spr_misc.c | 1 + arch/arm/cpu/armv7/vf610/generic.c | 1 + arch/arm/cpu/armv8/fsl-layerscape/soc.c | 1 + arch/arm/mach-davinci/misc.c | 1 + arch/arm/mach-imx/mx6/opos6ul.c | 1 + arch/arm/mach-imx/mx7/soc.c | 1 + arch/arm/mach-meson/board-common.c | 1 + arch/arm/mach-omap2/utils.c | 1 + arch/arm/mach-rmobile/cpu_info.c | 1 + arch/arm/mach-rockchip/rk3288/rk3288.c | 1 + arch/arm/mach-socfpga/misc_gen5.c | 1 + arch/arm/mach-socfpga/misc_s10.c | 1 + arch/arm/mach-stm32mp/cpu.c | 1 + arch/arm/mach-tegra/board2.c | 1 + board/Arcturus/ucp1020/cmd_arc.c | 1 + board/Arcturus/ucp1020/ucp1020.c | 1 + board/CZ.NIC/turris_mox/turris_mox.c | 1 + board/LaCie/net2big_v2/net2big_v2.c | 1 + board/LaCie/netspace_v2/netspace_v2.c | 1 + board/Synology/ds414/cmd_syno.c | 1 + board/alliedtelesis/x530/x530.c | 1 + board/amazon/kc1/kc1.c | 1 + board/amlogic/p200/p200.c | 1 + board/amlogic/p201/p201.c | 1 + board/amlogic/p212/p212.c | 1 + board/amlogic/q200/q200.c | 1 + board/aristainetos/aristainetos-v2.c | 1 + board/armltd/integrator/integrator.c | 1 + board/atmel/common/board.c | 1 + board/atmel/common/mac_eeprom.c | 1 + board/atmel/sama5d3xek/sama5d3xek.c | 1 + board/bachmann/ot1200/ot1200.c | 1 + board/bosch/shc/board.c | 1 + board/buffalo/lsxl/lsxl.c | 1 + board/cadence/xtfpga/xtfpga.c | 1 + board/ccv/xpress/xpress.c | 1 + board/compulab/cl-som-imx7/cl-som-imx7.c | 1 + board/compulab/cm_fx6/cm_fx6.c | 1 + board/compulab/cm_t335/cm_t335.c | 1 + board/compulab/cm_t35/cm_t35.c | 1 + board/compulab/cm_t54/cm_t54.c | 1 + board/congatec/cgtqmx6eval/cgtqmx6eval.c | 1 + board/cssi/MCR3000/MCR3000.c | 1 + board/davinci/da8xxevm/da850evm.c | 1 + board/davinci/da8xxevm/omapl138_lcdk.c | 1 + board/dhelectronics/dh_imx6/dh_imx6.c | 1 + board/eets/pdu001/board.c | 1 + board/el/el6x/el6x.c | 1 + board/freescale/common/cmd_esbc_validate.c | 1 + board/freescale/common/fsl_chain_of_trust.c | 1 + board/freescale/common/sys_eeprom.c | 1 + board/freescale/imx8mq_evk/imx8mq_evk.c | 1 + board/freescale/imx8qm_mek/imx8qm_mek.c | 1 + board/freescale/imx8qxp_mek/imx8qxp_mek.c | 1 + board/freescale/ls2080ardb/ls2080ardb.c | 1 + board/freescale/mpc8323erdb/mpc8323erdb.c | 1 + board/freescale/mx53loco/mx53loco.c | 1 + board/freescale/mx6sabreauto/mx6sabreauto.c | 1 + board/freescale/mx6sabresd/mx6sabresd.c | 1 + board/freescale/mx6sxsabresd/mx6sxsabresd.c | 1 + board/freescale/mx6ul_14x14_evk/mx6ul_14x14_evk.c | 1 + board/freescale/mx6ullevk/mx6ullevk.c | 1 + board/gardena/smart-gateway-at91sam/board.c | 1 + board/gardena/smart-gateway-mt7688/board.c | 1 + board/gateworks/gw_ventana/gw_ventana.c | 1 + board/ge/bx50v3/bx50v3.c | 1 + board/ge/common/ge_common.c | 1 + board/ge/mx53ppd/mx53ppd.c | 1 + board/grinn/chiliboard/board.c | 1 + board/gumstix/pepper/board.c | 1 + board/highbank/highbank.c | 1 + board/intel/edison/edison.c | 1 + board/isee/igep003x/board.c | 1 + board/isee/igep00x0/igep00x0.c | 1 + board/k+p/kp_imx53/kp_id_rev.c | 1 + board/k+p/kp_imx53/kp_imx53.c | 1 + board/k+p/kp_imx6q_tpc/kp_imx6q_tpc.c | 1 + board/keymile/common/common.c | 1 + board/keymile/common/ivm.c | 1 + board/keymile/km83xx/km83xx.c | 1 + board/keymile/km_arm/km_arm.c | 1 + board/keymile/kmp204x/kmp204x.c | 1 + board/kosagi/novena/novena.c | 1 + board/laird/wb50n/wb50n.c | 1 + board/lg/sniper/sniper.c | 1 + board/liebherr/display5/display5.c | 1 + board/logicpd/imx6/imx6logic.c | 1 + board/logicpd/zoom1/zoom1.c | 1 + board/nokia/rx51/rx51.c | 1 + board/overo/overo.c | 1 + board/phytec/pcm051/board.c | 1 + board/phytec/pcm052/pcm052.c | 1 + board/phytec/pfla02/pfla02.c | 1 + board/phytec/phycore_rk3288/phycore-rk3288.c | 1 + board/qualcomm/dragonboard410c/dragonboard410c.c | 1 + board/qualcomm/dragonboard820c/dragonboard820c.c | 1 + board/renesas/blanche/blanche.c | 1 + board/renesas/sh7752evb/sh7752evb.c | 1 + board/renesas/sh7753evb/sh7753evb.c | 1 + board/renesas/sh7757lcr/sh7757lcr.c | 1 + board/rockchip/tinker_rk3288/tinker-rk3288.c | 1 + board/samsung/common/misc.c | 1 + board/samsung/trats/trats.c | 1 + board/samsung/universal_c210/universal.c | 1 + board/samtec/vining_fpga/socfpga.c | 1 + board/siemens/common/factoryset.c | 1 + board/siemens/draco/board.c | 1 + board/siemens/pxm2/board.c | 1 + board/siemens/rut/board.c | 1 + board/siemens/taurus/taurus.c | 1 + board/silica/pengwyn/board.c | 1 + board/softing/vining_2000/vining_2000.c | 1 + board/solidrun/mx6cuboxi/mx6cuboxi.c | 1 + board/technologic/ts4800/ts4800.c | 1 + board/theobroma-systems/puma_rk3399/puma-rk3399.c | 1 + board/ti/am43xx/board.c | 1 + board/ti/am65x/evm.c | 1 + board/ti/beagle/beagle.c | 1 + board/ti/common/board_detect.c | 1 + board/ti/evm/evm.c | 1 + board/ti/panda/panda.c | 1 + board/ti/ti814x/evm.c | 1 + board/ti/ti816x/evm.c | 1 + board/timll/devkit8000/devkit8000.c | 1 + board/toradex/apalis-imx8/apalis-imx8.c | 1 + board/toradex/apalis_imx6/apalis_imx6.c | 1 + board/toradex/colibri-imx6ull/colibri-imx6ull.c | 1 + board/toradex/colibri-imx8x/colibri-imx8x.c | 1 + board/toradex/colibri_vf/colibri_vf.c | 1 + board/toradex/common/tdx-common.c | 1 + board/tqc/tqma6/tqma6.c | 1 + board/udoo/neo/neo.c | 1 + board/udoo/udoo.c | 1 + board/varisys/common/sys_eeprom.c | 1 + board/vscom/baltos/board.c | 1 + board/wandboard/wandboard.c | 1 + board/xilinx/zynq/board.c | 1 + board/xilinx/zynqmp/zynqmp.c | 1 + cmd/avb.c | 1 + cmd/binop.c | 1 + cmd/dtimg.c | 1 + cmd/gpt.c | 1 + cmd/ini.c | 1 + cmd/md5sum.c | 1 + cmd/net.c | 1 + cmd/nvedit_efi.c | 1 + cmd/part.c | 1 + cmd/pxe.c | 1 + cmd/qfw.c | 1 + common/cli_hush.c | 1 + common/console.c | 1 + common/hash.c | 1 + common/hwconfig.c | 1 + common/image-android.c | 1 + common/main.c | 1 + common/spl/spl_dfu.c | 1 + common/update.c | 1 + drivers/net/fec_mxc.c | 1 + drivers/net/lan91c96.c | 1 + drivers/net/ne2000_base.c | 1 + drivers/net/sandbox-raw.c | 1 + drivers/usb/gadget/ether.c | 1 + env/flags.c | 1 + examples/api/demo.c | 1 + include/command.h | 1 + include/common.h | 12 ------------ include/env.h | 12 ++++++++++++ include/env_flags.h | 1 + include/exports.h | 1 + include/net.h | 1 + include/search.h | 1 + lib/efi_loader/efi_variable.c | 1 + lib/uuid.c | 1 + net/dns.c | 1 + net/eth-uclass.c | 1 + net/eth_legacy.c | 1 + net/wol.c | 1 + test/dm/eth.c | 1 + tools/env/fw_env.c | 1 + tools/env/fw_env.h | 1 + tools/env/fw_env_main.c | 1 + 181 files changed, 191 insertions(+), 12 deletions(-) diff --git a/arch/arm/cpu/arm926ejs/spear/spr_misc.c b/arch/arm/cpu/arm926ejs/spear/spr_misc.c index 371dea5657..533268513e 100644 --- a/arch/arm/cpu/arm926ejs/spear/spr_misc.c +++ b/arch/arm/cpu/arm926ejs/spear/spr_misc.c @@ -6,6 +6,7 @@ #include #include +#include #include #include #include diff --git a/arch/arm/cpu/armv7/vf610/generic.c b/arch/arm/cpu/armv7/vf610/generic.c index 337f4af7a8..7e4641fd32 100644 --- a/arch/arm/cpu/armv7/vf610/generic.c +++ b/arch/arm/cpu/armv7/vf610/generic.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #ifdef CONFIG_FSL_ESDHC_IMX #include diff --git a/arch/arm/cpu/armv8/fsl-layerscape/soc.c b/arch/arm/cpu/armv8/fsl-layerscape/soc.c index 7414215208..00c705f74e 100644 --- a/arch/arm/cpu/armv8/fsl-layerscape/soc.c +++ b/arch/arm/cpu/armv8/fsl-layerscape/soc.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include diff --git a/arch/arm/mach-davinci/misc.c b/arch/arm/mach-davinci/misc.c index df500c8f35..b310bc7293 100644 --- a/arch/arm/mach-davinci/misc.c +++ b/arch/arm/mach-davinci/misc.c @@ -9,6 +9,7 @@ */ #include +#include #include #include #include diff --git a/arch/arm/mach-imx/mx6/opos6ul.c b/arch/arm/mach-imx/mx6/opos6ul.c index 264fa8a48e..8b921a7d37 100644 --- a/arch/arm/mach-imx/mx6/opos6ul.c +++ b/arch/arm/mach-imx/mx6/opos6ul.c @@ -13,6 +13,7 @@ #include #include #include +#include #include DECLARE_GLOBAL_DATA_PTR; diff --git a/arch/arm/mach-imx/mx7/soc.c b/arch/arm/mach-imx/mx7/soc.c index 1b4bbc5037..3b8e1ba9c3 100644 --- a/arch/arm/mach-imx/mx7/soc.c +++ b/arch/arm/mach-imx/mx7/soc.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include diff --git a/arch/arm/mach-meson/board-common.c b/arch/arm/mach-meson/board-common.c index 18383f774e..08a7aae2b9 100644 --- a/arch/arm/mach-meson/board-common.c +++ b/arch/arm/mach-meson/board-common.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/arch/arm/mach-omap2/utils.c b/arch/arm/mach-omap2/utils.c index 7d01446940..5478416e9c 100644 --- a/arch/arm/mach-omap2/utils.c +++ b/arch/arm/mach-omap2/utils.c @@ -4,6 +4,7 @@ * Aneesh V */ #include +#include #include #include #include diff --git a/arch/arm/mach-rmobile/cpu_info.c b/arch/arm/mach-rmobile/cpu_info.c index dc407d2a61..9ef94a4899 100644 --- a/arch/arm/mach-rmobile/cpu_info.c +++ b/arch/arm/mach-rmobile/cpu_info.c @@ -5,6 +5,7 @@ */ #include #include +#include #include #ifdef CONFIG_ARCH_CPU_INIT diff --git a/arch/arm/mach-rockchip/rk3288/rk3288.c b/arch/arm/mach-rockchip/rk3288/rk3288.c index b462c09069..057ce92080 100644 --- a/arch/arm/mach-rockchip/rk3288/rk3288.c +++ b/arch/arm/mach-rockchip/rk3288/rk3288.c @@ -4,6 +4,7 @@ */ #include #include +#include #include #include #include diff --git a/arch/arm/mach-socfpga/misc_gen5.c b/arch/arm/mach-socfpga/misc_gen5.c index 71547d81ab..31681b799d 100644 --- a/arch/arm/mach-socfpga/misc_gen5.c +++ b/arch/arm/mach-socfpga/misc_gen5.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/arch/arm/mach-socfpga/misc_s10.c b/arch/arm/mach-socfpga/misc_s10.c index 29abc4a54c..0a5fab11c0 100644 --- a/arch/arm/mach-socfpga/misc_s10.c +++ b/arch/arm/mach-socfpga/misc_s10.c @@ -6,6 +6,7 @@ #include #include +#include #include #include #include diff --git a/arch/arm/mach-stm32mp/cpu.c b/arch/arm/mach-stm32mp/cpu.c index 10190f40d4..b06b84c315 100644 --- a/arch/arm/mach-stm32mp/cpu.c +++ b/arch/arm/mach-stm32mp/cpu.c @@ -5,6 +5,7 @@ #include #include #include +#include #include #include #include diff --git a/arch/arm/mach-tegra/board2.c b/arch/arm/mach-tegra/board2.c index bbc487aa3b..f13bd256cc 100644 --- a/arch/arm/mach-tegra/board2.c +++ b/arch/arm/mach-tegra/board2.c @@ -7,6 +7,7 @@ #include #include #include +#include #include #include #include diff --git a/board/Arcturus/ucp1020/cmd_arc.c b/board/Arcturus/ucp1020/cmd_arc.c index 7a510c61fb..755f569d13 100644 --- a/board/Arcturus/ucp1020/cmd_arc.c +++ b/board/Arcturus/ucp1020/cmd_arc.c @@ -10,6 +10,7 @@ #include #include +#include #include #include #include diff --git a/board/Arcturus/ucp1020/ucp1020.c b/board/Arcturus/ucp1020/ucp1020.c index 54fd1782cb..6a880c97bc 100644 --- a/board/Arcturus/ucp1020/ucp1020.c +++ b/board/Arcturus/ucp1020/ucp1020.c @@ -10,6 +10,7 @@ #include #include +#include #include #include #include diff --git a/board/CZ.NIC/turris_mox/turris_mox.c b/board/CZ.NIC/turris_mox/turris_mox.c index 3818e3752a..f3c89d63d5 100644 --- a/board/CZ.NIC/turris_mox/turris_mox.c +++ b/board/CZ.NIC/turris_mox/turris_mox.c @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include diff --git a/board/LaCie/net2big_v2/net2big_v2.c b/board/LaCie/net2big_v2/net2big_v2.c index fb08e50415..1609089502 100644 --- a/board/LaCie/net2big_v2/net2big_v2.c +++ b/board/LaCie/net2big_v2/net2big_v2.c @@ -10,6 +10,7 @@ #include #include +#include #include #include #include diff --git a/board/LaCie/netspace_v2/netspace_v2.c b/board/LaCie/netspace_v2/netspace_v2.c index 453c0dd467..ba667934e4 100644 --- a/board/LaCie/netspace_v2/netspace_v2.c +++ b/board/LaCie/netspace_v2/netspace_v2.c @@ -10,6 +10,7 @@ #include #include +#include #include #include #include diff --git a/board/Synology/ds414/cmd_syno.c b/board/Synology/ds414/cmd_syno.c index 59e6fe0310..777948f90f 100644 --- a/board/Synology/ds414/cmd_syno.c +++ b/board/Synology/ds414/cmd_syno.c @@ -7,6 +7,7 @@ #include #include +#include #include #include #include diff --git a/board/alliedtelesis/x530/x530.c b/board/alliedtelesis/x530/x530.c index 97dbed79dd..e0fa8067c1 100644 --- a/board/alliedtelesis/x530/x530.c +++ b/board/alliedtelesis/x530/x530.c @@ -6,6 +6,7 @@ #include #include #include +#include #include #include #include diff --git a/board/amazon/kc1/kc1.c b/board/amazon/kc1/kc1.c index 031fd11092..9034c4fbff 100644 --- a/board/amazon/kc1/kc1.c +++ b/board/amazon/kc1/kc1.c @@ -7,6 +7,7 @@ #include #include +#include #include #include #include diff --git a/board/amlogic/p200/p200.c b/board/amlogic/p200/p200.c index 62f0f4c871..7f33ce0f0b 100644 --- a/board/amlogic/p200/p200.c +++ b/board/amlogic/p200/p200.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/amlogic/p201/p201.c b/board/amlogic/p201/p201.c index ef0c65cd9f..0a17fbedf1 100644 --- a/board/amlogic/p201/p201.c +++ b/board/amlogic/p201/p201.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/amlogic/p212/p212.c b/board/amlogic/p212/p212.c index 1159cee4ce..4d6ac7264c 100644 --- a/board/amlogic/p212/p212.c +++ b/board/amlogic/p212/p212.c @@ -6,6 +6,7 @@ #include #include +#include #include #include #include diff --git a/board/amlogic/q200/q200.c b/board/amlogic/q200/q200.c index 2ea97c362e..880945f143 100644 --- a/board/amlogic/q200/q200.c +++ b/board/amlogic/q200/q200.c @@ -6,6 +6,7 @@ #include #include +#include #include #include #include diff --git a/board/aristainetos/aristainetos-v2.c b/board/aristainetos/aristainetos-v2.c index c81c441172..c0a2e41f02 100644 --- a/board/aristainetos/aristainetos-v2.c +++ b/board/aristainetos/aristainetos-v2.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include #include diff --git a/board/armltd/integrator/integrator.c b/board/armltd/integrator/integrator.c index 69d92a32a5..0a2baa7297 100644 --- a/board/armltd/integrator/integrator.c +++ b/board/armltd/integrator/integrator.c @@ -18,6 +18,7 @@ #include #include +#include #include #include #include diff --git a/board/atmel/common/board.c b/board/atmel/common/board.c index 20c3b8c086..c41706c400 100644 --- a/board/atmel/common/board.c +++ b/board/atmel/common/board.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include diff --git a/board/atmel/common/mac_eeprom.c b/board/atmel/common/mac_eeprom.c index 7ff1ec7462..f016ef7a6a 100644 --- a/board/atmel/common/mac_eeprom.c +++ b/board/atmel/common/mac_eeprom.c @@ -6,6 +6,7 @@ #include #include +#include #include #include #include diff --git a/board/atmel/sama5d3xek/sama5d3xek.c b/board/atmel/sama5d3xek/sama5d3xek.c index e373f45800..acf61486d2 100644 --- a/board/atmel/sama5d3xek/sama5d3xek.c +++ b/board/atmel/sama5d3xek/sama5d3xek.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #include diff --git a/board/bachmann/ot1200/ot1200.c b/board/bachmann/ot1200/ot1200.c index 067a970830..36f37084b3 100644 --- a/board/bachmann/ot1200/ot1200.c +++ b/board/bachmann/ot1200/ot1200.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include diff --git a/board/bosch/shc/board.c b/board/bosch/shc/board.c index feed63bdf2..29be3739f9 100644 --- a/board/bosch/shc/board.c +++ b/board/bosch/shc/board.c @@ -12,6 +12,7 @@ */ #include +#include #include #include #include diff --git a/board/buffalo/lsxl/lsxl.c b/board/buffalo/lsxl/lsxl.c index bf69a746e4..b2ccb83c8a 100644 --- a/board/buffalo/lsxl/lsxl.c +++ b/board/buffalo/lsxl/lsxl.c @@ -8,6 +8,7 @@ */ #include +#include #include #include #include diff --git a/board/cadence/xtfpga/xtfpga.c b/board/cadence/xtfpga/xtfpga.c index bdda9314a5..256611638a 100644 --- a/board/cadence/xtfpga/xtfpga.c +++ b/board/cadence/xtfpga/xtfpga.c @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include diff --git a/board/ccv/xpress/xpress.c b/board/ccv/xpress/xpress.c index 35e1c557b5..05286e643c 100644 --- a/board/ccv/xpress/xpress.c +++ b/board/ccv/xpress/xpress.c @@ -16,6 +16,7 @@ #include #include #include +#include #include #include #include diff --git a/board/compulab/cl-som-imx7/cl-som-imx7.c b/board/compulab/cl-som-imx7/cl-som-imx7.c index 94e7bf194b..6cc7554c1a 100644 --- a/board/compulab/cl-som-imx7/cl-som-imx7.c +++ b/board/compulab/cl-som-imx7/cl-som-imx7.c @@ -8,6 +8,7 @@ */ #include +#include #include #include #include diff --git a/board/compulab/cm_fx6/cm_fx6.c b/board/compulab/cm_fx6/cm_fx6.c index e9262c64a5..57bbe41b8c 100644 --- a/board/compulab/cm_fx6/cm_fx6.c +++ b/board/compulab/cm_fx6/cm_fx6.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include diff --git a/board/compulab/cm_t335/cm_t335.c b/board/compulab/cm_t335/cm_t335.c index 95cbb77753..fca7685ca7 100644 --- a/board/compulab/cm_t335/cm_t335.c +++ b/board/compulab/cm_t335/cm_t335.c @@ -8,6 +8,7 @@ */ #include +#include #include #include #include diff --git a/board/compulab/cm_t35/cm_t35.c b/board/compulab/cm_t35/cm_t35.c index 4d171f4900..ead4700646 100644 --- a/board/compulab/cm_t35/cm_t35.c +++ b/board/compulab/cm_t35/cm_t35.c @@ -12,6 +12,7 @@ */ #include +#include #include #include #include diff --git a/board/compulab/cm_t54/cm_t54.c b/board/compulab/cm_t54/cm_t54.c index 504a537f45..d7c59d5a32 100644 --- a/board/compulab/cm_t54/cm_t54.c +++ b/board/compulab/cm_t54/cm_t54.c @@ -8,6 +8,7 @@ */ #include +#include #include #include #include diff --git a/board/congatec/cgtqmx6eval/cgtqmx6eval.c b/board/congatec/cgtqmx6eval/cgtqmx6eval.c index 7c767fb8b4..6b3d5b833f 100644 --- a/board/congatec/cgtqmx6eval/cgtqmx6eval.c +++ b/board/congatec/cgtqmx6eval/cgtqmx6eval.c @@ -20,6 +20,7 @@ #include #include #include +#include #include #include #include diff --git a/board/cssi/MCR3000/MCR3000.c b/board/cssi/MCR3000/MCR3000.c index d26ac35b44..445b84c180 100644 --- a/board/cssi/MCR3000/MCR3000.c +++ b/board/cssi/MCR3000/MCR3000.c @@ -8,6 +8,7 @@ */ #include +#include #include #include #include diff --git a/board/davinci/da8xxevm/da850evm.c b/board/davinci/da8xxevm/da850evm.c index 2d5710076d..d3f3819f11 100644 --- a/board/davinci/da8xxevm/da850evm.c +++ b/board/davinci/da8xxevm/da850evm.c @@ -10,6 +10,7 @@ #include #include +#include #include #include #include diff --git a/board/davinci/da8xxevm/omapl138_lcdk.c b/board/davinci/da8xxevm/omapl138_lcdk.c index 578d928443..08881f039d 100644 --- a/board/davinci/da8xxevm/omapl138_lcdk.c +++ b/board/davinci/da8xxevm/omapl138_lcdk.c @@ -9,6 +9,7 @@ */ #include +#include #include #include #include diff --git a/board/dhelectronics/dh_imx6/dh_imx6.c b/board/dhelectronics/dh_imx6/dh_imx6.c index 40cc2a854e..1994dec8f9 100644 --- a/board/dhelectronics/dh_imx6/dh_imx6.c +++ b/board/dhelectronics/dh_imx6/dh_imx6.c @@ -21,6 +21,7 @@ #include #include #include +#include #include #include #include diff --git a/board/eets/pdu001/board.c b/board/eets/pdu001/board.c index b857a5a935..74a6684274 100644 --- a/board/eets/pdu001/board.c +++ b/board/eets/pdu001/board.c @@ -10,6 +10,7 @@ */ #include +#include #include #include #include diff --git a/board/el/el6x/el6x.c b/board/el/el6x/el6x.c index 55db26a819..18d69a7da3 100644 --- a/board/el/el6x/el6x.c +++ b/board/el/el6x/el6x.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include diff --git a/board/freescale/common/cmd_esbc_validate.c b/board/freescale/common/cmd_esbc_validate.c index b06235f291..36b620ca23 100644 --- a/board/freescale/common/cmd_esbc_validate.c +++ b/board/freescale/common/cmd_esbc_validate.c @@ -5,6 +5,7 @@ #include #include +#include #include int do_esbc_halt(cmd_tbl_t *cmdtp, int flag, int argc, diff --git a/board/freescale/common/fsl_chain_of_trust.c b/board/freescale/common/fsl_chain_of_trust.c index dddfd26a13..a024e7239e 100644 --- a/board/freescale/common/fsl_chain_of_trust.c +++ b/board/freescale/common/fsl_chain_of_trust.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/common/sys_eeprom.c b/board/freescale/common/sys_eeprom.c index ab0fe0baf1..510d7c266b 100644 --- a/board/freescale/common/sys_eeprom.c +++ b/board/freescale/common/sys_eeprom.c @@ -8,6 +8,7 @@ #include #include +#include #include #include diff --git a/board/freescale/imx8mq_evk/imx8mq_evk.c b/board/freescale/imx8mq_evk/imx8mq_evk.c index 322713cced..1463e6e696 100644 --- a/board/freescale/imx8mq_evk/imx8mq_evk.c +++ b/board/freescale/imx8mq_evk/imx8mq_evk.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/board/freescale/imx8qm_mek/imx8qm_mek.c b/board/freescale/imx8qm_mek/imx8qm_mek.c index b7a609b097..f4b0ffc59d 100644 --- a/board/freescale/imx8qm_mek/imx8qm_mek.c +++ b/board/freescale/imx8qm_mek/imx8qm_mek.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/board/freescale/imx8qxp_mek/imx8qxp_mek.c b/board/freescale/imx8qxp_mek/imx8qxp_mek.c index 3cf73e1ab6..26bbbca8fc 100644 --- a/board/freescale/imx8qxp_mek/imx8qxp_mek.c +++ b/board/freescale/imx8qxp_mek/imx8qxp_mek.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/board/freescale/ls2080ardb/ls2080ardb.c b/board/freescale/ls2080ardb/ls2080ardb.c index ce419dfcae..a278e2fc11 100644 --- a/board/freescale/ls2080ardb/ls2080ardb.c +++ b/board/freescale/ls2080ardb/ls2080ardb.c @@ -4,6 +4,7 @@ * Copyright 2017 NXP */ #include +#include #include #include #include diff --git a/board/freescale/mpc8323erdb/mpc8323erdb.c b/board/freescale/mpc8323erdb/mpc8323erdb.c index 2dc6d7f5f5..e5aecc4e1f 100644 --- a/board/freescale/mpc8323erdb/mpc8323erdb.c +++ b/board/freescale/mpc8323erdb/mpc8323erdb.c @@ -10,6 +10,7 @@ */ #include +#include #include #include #include diff --git a/board/freescale/mx53loco/mx53loco.c b/board/freescale/mx53loco/mx53loco.c index d023ce667d..a177815bb8 100644 --- a/board/freescale/mx53loco/mx53loco.c +++ b/board/freescale/mx53loco/mx53loco.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #include diff --git a/board/freescale/mx6sabreauto/mx6sabreauto.c b/board/freescale/mx6sabreauto/mx6sabreauto.c index e1a3b47425..dc156efbbc 100644 --- a/board/freescale/mx6sabreauto/mx6sabreauto.c +++ b/board/freescale/mx6sabreauto/mx6sabreauto.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include diff --git a/board/freescale/mx6sabresd/mx6sabresd.c b/board/freescale/mx6sabresd/mx6sabresd.c index 63e1dd0a83..b0c0117968 100644 --- a/board/freescale/mx6sabresd/mx6sabresd.c +++ b/board/freescale/mx6sabresd/mx6sabresd.c @@ -10,6 +10,7 @@ #include #include #include +#include #include #include #include diff --git a/board/freescale/mx6sxsabresd/mx6sxsabresd.c b/board/freescale/mx6sxsabresd/mx6sxsabresd.c index 8ee85cc384..1c10958879 100644 --- a/board/freescale/mx6sxsabresd/mx6sxsabresd.c +++ b/board/freescale/mx6sxsabresd/mx6sxsabresd.c @@ -15,6 +15,7 @@ #include #include #include +#include #include #include #include diff --git a/board/freescale/mx6ul_14x14_evk/mx6ul_14x14_evk.c b/board/freescale/mx6ul_14x14_evk/mx6ul_14x14_evk.c index 785247f7e2..ccbe404478 100644 --- a/board/freescale/mx6ul_14x14_evk/mx6ul_14x14_evk.c +++ b/board/freescale/mx6ul_14x14_evk/mx6ul_14x14_evk.c @@ -16,6 +16,7 @@ #include #include #include +#include #include #include #include diff --git a/board/freescale/mx6ullevk/mx6ullevk.c b/board/freescale/mx6ullevk/mx6ullevk.c index 1f0f70efbd..e119347802 100644 --- a/board/freescale/mx6ullevk/mx6ullevk.c +++ b/board/freescale/mx6ullevk/mx6ullevk.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include diff --git a/board/gardena/smart-gateway-at91sam/board.c b/board/gardena/smart-gateway-at91sam/board.c index 6a1389eb05..3e2da0d6f8 100644 --- a/board/gardena/smart-gateway-at91sam/board.c +++ b/board/gardena/smart-gateway-at91sam/board.c @@ -6,6 +6,7 @@ #include #include +#include #include #include #include diff --git a/board/gardena/smart-gateway-mt7688/board.c b/board/gardena/smart-gateway-mt7688/board.c index 6e11077977..baa3e5726c 100644 --- a/board/gardena/smart-gateway-mt7688/board.c +++ b/board/gardena/smart-gateway-mt7688/board.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/board/gateworks/gw_ventana/gw_ventana.c b/board/gateworks/gw_ventana/gw_ventana.c index 92edc10381..3c40a4a892 100644 --- a/board/gateworks/gw_ventana/gw_ventana.c +++ b/board/gateworks/gw_ventana/gw_ventana.c @@ -21,6 +21,7 @@ #include #include #include +#include #include #include #include diff --git a/board/ge/bx50v3/bx50v3.c b/board/ge/bx50v3/bx50v3.c index 806525204f..917ecc4c18 100644 --- a/board/ge/bx50v3/bx50v3.c +++ b/board/ge/bx50v3/bx50v3.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include diff --git a/board/ge/common/ge_common.c b/board/ge/common/ge_common.c index 4e6ef9c480..501c8b2daf 100644 --- a/board/ge/common/ge_common.c +++ b/board/ge/common/ge_common.c @@ -4,6 +4,7 @@ */ #include +#include #include #include diff --git a/board/ge/mx53ppd/mx53ppd.c b/board/ge/mx53ppd/mx53ppd.c index bf75bd2d46..aadf4668d9 100644 --- a/board/ge/mx53ppd/mx53ppd.c +++ b/board/ge/mx53ppd/mx53ppd.c @@ -16,6 +16,7 @@ #include #include #include +#include #include #include #include diff --git a/board/grinn/chiliboard/board.c b/board/grinn/chiliboard/board.c index dc0de620fc..6b9e6e9a09 100644 --- a/board/grinn/chiliboard/board.c +++ b/board/grinn/chiliboard/board.c @@ -16,6 +16,7 @@ #include #include #include +#include #include #include #include diff --git a/board/gumstix/pepper/board.c b/board/gumstix/pepper/board.c index ea29dcd75e..7ae4c5cd77 100644 --- a/board/gumstix/pepper/board.c +++ b/board/gumstix/pepper/board.c @@ -7,6 +7,7 @@ */ #include +#include #include #include #include diff --git a/board/highbank/highbank.c b/board/highbank/highbank.c index 996daffa1b..9563763dfa 100644 --- a/board/highbank/highbank.c +++ b/board/highbank/highbank.c @@ -5,6 +5,7 @@ #include #include +#include #include #include diff --git a/board/intel/edison/edison.c b/board/intel/edison/edison.c index d80ee3aa8a..f8f498d088 100644 --- a/board/intel/edison/edison.c +++ b/board/intel/edison/edison.c @@ -4,6 +4,7 @@ */ #include #include +#include #include #include #include diff --git a/board/isee/igep003x/board.c b/board/isee/igep003x/board.c index 965a009a9f..398c945990 100644 --- a/board/isee/igep003x/board.c +++ b/board/isee/igep003x/board.c @@ -6,6 +6,7 @@ */ #include +#include #include #include #include diff --git a/board/isee/igep00x0/igep00x0.c b/board/isee/igep00x0/igep00x0.c index 367af82d4a..74fc5f0890 100644 --- a/board/isee/igep00x0/igep00x0.c +++ b/board/isee/igep00x0/igep00x0.c @@ -4,6 +4,7 @@ * ISEE 2007 SL, */ #include +#include #include #include #include diff --git a/board/k+p/kp_imx53/kp_id_rev.c b/board/k+p/kp_imx53/kp_id_rev.c index e8f51769f6..642adf78d8 100644 --- a/board/k+p/kp_imx53/kp_id_rev.c +++ b/board/k+p/kp_imx53/kp_id_rev.c @@ -10,6 +10,7 @@ */ #include +#include #include #include #include "kp_id_rev.h" diff --git a/board/k+p/kp_imx53/kp_imx53.c b/board/k+p/kp_imx53/kp_imx53.c index b447e13461..84cddd4894 100644 --- a/board/k+p/kp_imx53/kp_imx53.c +++ b/board/k+p/kp_imx53/kp_imx53.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include #include "kp_id_rev.h" diff --git a/board/k+p/kp_imx6q_tpc/kp_imx6q_tpc.c b/board/k+p/kp_imx6q_tpc/kp_imx6q_tpc.c index 7bdc64b1be..2c541ace02 100644 --- a/board/k+p/kp_imx6q_tpc/kp_imx6q_tpc.c +++ b/board/k+p/kp_imx6q_tpc/kp_imx6q_tpc.c @@ -17,6 +17,7 @@ #include #include #include +#include #include #include #include diff --git a/board/keymile/common/common.c b/board/keymile/common/common.c index 92d4a6ff61..08f7f8d884 100644 --- a/board/keymile/common/common.c +++ b/board/keymile/common/common.c @@ -8,6 +8,7 @@ */ #include +#include #include #include #include diff --git a/board/keymile/common/ivm.c b/board/keymile/common/ivm.c index 23bd21c4bc..da0634f01b 100644 --- a/board/keymile/common/ivm.c +++ b/board/keymile/common/ivm.c @@ -6,6 +6,7 @@ #include #include +#include #include #include "common.h" diff --git a/board/keymile/km83xx/km83xx.c b/board/keymile/km83xx/km83xx.c index 880ce67fa6..51778368d9 100644 --- a/board/keymile/km83xx/km83xx.c +++ b/board/keymile/km83xx/km83xx.c @@ -14,6 +14,7 @@ */ #include +#include #include #include #include diff --git a/board/keymile/km_arm/km_arm.c b/board/keymile/km_arm/km_arm.c index 3db80615ef..922cc621f7 100644 --- a/board/keymile/km_arm/km_arm.c +++ b/board/keymile/km_arm/km_arm.c @@ -12,6 +12,7 @@ */ #include +#include #include #include #include diff --git a/board/keymile/kmp204x/kmp204x.c b/board/keymile/kmp204x/kmp204x.c index e7dcefacdd..4d1e38aa3a 100644 --- a/board/keymile/kmp204x/kmp204x.c +++ b/board/keymile/kmp204x/kmp204x.c @@ -8,6 +8,7 @@ #include #include +#include #include #include #include diff --git a/board/kosagi/novena/novena.c b/board/kosagi/novena/novena.c index dcf3d7ff89..e0f0d7c60c 100644 --- a/board/kosagi/novena/novena.c +++ b/board/kosagi/novena/novena.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include diff --git a/board/laird/wb50n/wb50n.c b/board/laird/wb50n/wb50n.c index 89d3795857..a2f8eaf0ba 100644 --- a/board/laird/wb50n/wb50n.c +++ b/board/laird/wb50n/wb50n.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include diff --git a/board/lg/sniper/sniper.c b/board/lg/sniper/sniper.c index a7de4c2167..b4205d6ed4 100644 --- a/board/lg/sniper/sniper.c +++ b/board/lg/sniper/sniper.c @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include diff --git a/board/liebherr/display5/display5.c b/board/liebherr/display5/display5.c index ea49b7197f..5c70e1b6f2 100644 --- a/board/liebherr/display5/display5.c +++ b/board/liebherr/display5/display5.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include #include diff --git a/board/logicpd/imx6/imx6logic.c b/board/logicpd/imx6/imx6logic.c index 6e3ffa72d7..7a59b89d94 100644 --- a/board/logicpd/imx6/imx6logic.c +++ b/board/logicpd/imx6/imx6logic.c @@ -9,6 +9,7 @@ */ #include +#include #include #include #include diff --git a/board/logicpd/zoom1/zoom1.c b/board/logicpd/zoom1/zoom1.c index 5e32077d64..54716125f3 100644 --- a/board/logicpd/zoom1/zoom1.c +++ b/board/logicpd/zoom1/zoom1.c @@ -15,6 +15,7 @@ */ #include #include +#include #include #include #include diff --git a/board/nokia/rx51/rx51.c b/board/nokia/rx51/rx51.c index 76f6ede38c..71ca79deab 100644 --- a/board/nokia/rx51/rx51.c +++ b/board/nokia/rx51/rx51.c @@ -22,6 +22,7 @@ */ #include +#include #include #include #include diff --git a/board/overo/overo.c b/board/overo/overo.c index 8fa41f8155..f13bff1871 100644 --- a/board/overo/overo.c +++ b/board/overo/overo.c @@ -13,6 +13,7 @@ */ #include #include +#include #include #include #include diff --git a/board/phytec/pcm051/board.c b/board/phytec/pcm051/board.c index e720fdc0d9..0cb85e940c 100644 --- a/board/phytec/pcm051/board.c +++ b/board/phytec/pcm051/board.c @@ -9,6 +9,7 @@ */ #include +#include #include #include #include diff --git a/board/phytec/pcm052/pcm052.c b/board/phytec/pcm052/pcm052.c index c30df5df9d..dffd03786d 100644 --- a/board/phytec/pcm052/pcm052.c +++ b/board/phytec/pcm052/pcm052.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include #include diff --git a/board/phytec/pfla02/pfla02.c b/board/phytec/pfla02/pfla02.c index 753cf2b87d..ae9ffe0390 100644 --- a/board/phytec/pfla02/pfla02.c +++ b/board/phytec/pfla02/pfla02.c @@ -15,6 +15,7 @@ #include #include #include +#include #include #include #include diff --git a/board/phytec/phycore_rk3288/phycore-rk3288.c b/board/phytec/phycore_rk3288/phycore-rk3288.c index 92f3bd25f4..9f945e829d 100644 --- a/board/phytec/phycore_rk3288/phycore-rk3288.c +++ b/board/phytec/phycore_rk3288/phycore-rk3288.c @@ -7,6 +7,7 @@ #include #include #include +#include #include #include #include diff --git a/board/qualcomm/dragonboard410c/dragonboard410c.c b/board/qualcomm/dragonboard410c/dragonboard410c.c index 9ceed3ad9b..06d3d7e0f8 100644 --- a/board/qualcomm/dragonboard410c/dragonboard410c.c +++ b/board/qualcomm/dragonboard410c/dragonboard410c.c @@ -7,6 +7,7 @@ #include #include +#include #include #include #include diff --git a/board/qualcomm/dragonboard820c/dragonboard820c.c b/board/qualcomm/dragonboard820c/dragonboard820c.c index ff6903523d..7a889646df 100644 --- a/board/qualcomm/dragonboard820c/dragonboard820c.c +++ b/board/qualcomm/dragonboard820c/dragonboard820c.c @@ -6,6 +6,7 @@ */ #include +#include #include #include #include diff --git a/board/renesas/blanche/blanche.c b/board/renesas/blanche/blanche.c index f5ada6e288..898abfbd85 100644 --- a/board/renesas/blanche/blanche.c +++ b/board/renesas/blanche/blanche.c @@ -18,6 +18,7 @@ #include #include #include +#include #include #include #include diff --git a/board/renesas/sh7752evb/sh7752evb.c b/board/renesas/sh7752evb/sh7752evb.c index da33a0bd8a..b14ce263f7 100644 --- a/board/renesas/sh7752evb/sh7752evb.c +++ b/board/renesas/sh7752evb/sh7752evb.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/board/renesas/sh7753evb/sh7753evb.c b/board/renesas/sh7753evb/sh7753evb.c index 5ddddb6571..f643867806 100644 --- a/board/renesas/sh7753evb/sh7753evb.c +++ b/board/renesas/sh7753evb/sh7753evb.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/board/renesas/sh7757lcr/sh7757lcr.c b/board/renesas/sh7757lcr/sh7757lcr.c index 3222701ad2..2d32440aeb 100644 --- a/board/renesas/sh7757lcr/sh7757lcr.c +++ b/board/renesas/sh7757lcr/sh7757lcr.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/board/rockchip/tinker_rk3288/tinker-rk3288.c b/board/rockchip/tinker_rk3288/tinker-rk3288.c index e6b018d89c..e379950095 100644 --- a/board/rockchip/tinker_rk3288/tinker-rk3288.c +++ b/board/rockchip/tinker_rk3288/tinker-rk3288.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/samsung/common/misc.c b/board/samsung/common/misc.c index 53cd1b2907..3ef1e79980 100644 --- a/board/samsung/common/misc.c +++ b/board/samsung/common/misc.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include diff --git a/board/samsung/trats/trats.c b/board/samsung/trats/trats.c index e0846bcb5b..ec85f707c1 100644 --- a/board/samsung/trats/trats.c +++ b/board/samsung/trats/trats.c @@ -7,6 +7,7 @@ */ #include +#include #include #include #include diff --git a/board/samsung/universal_c210/universal.c b/board/samsung/universal_c210/universal.c index f8281f209a..ed9c5b50d9 100644 --- a/board/samsung/universal_c210/universal.c +++ b/board/samsung/universal_c210/universal.c @@ -6,6 +6,7 @@ */ #include +#include #include #include #include diff --git a/board/samtec/vining_fpga/socfpga.c b/board/samtec/vining_fpga/socfpga.c index efc8ddf162..63ce4a20b5 100644 --- a/board/samtec/vining_fpga/socfpga.c +++ b/board/samtec/vining_fpga/socfpga.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/board/siemens/common/factoryset.c b/board/siemens/common/factoryset.c index 96615424f6..cd224a8e1c 100644 --- a/board/siemens/common/factoryset.c +++ b/board/siemens/common/factoryset.c @@ -8,6 +8,7 @@ #if !defined(CONFIG_SPL_BUILD) #include +#include #include #include #include diff --git a/board/siemens/draco/board.c b/board/siemens/draco/board.c index 95b89dac0e..a6840b895b 100644 --- a/board/siemens/draco/board.c +++ b/board/siemens/draco/board.c @@ -13,6 +13,7 @@ */ #include +#include #include #include #include diff --git a/board/siemens/pxm2/board.c b/board/siemens/pxm2/board.c index 1b9e83e248..0a82a5ef5c 100644 --- a/board/siemens/pxm2/board.c +++ b/board/siemens/pxm2/board.c @@ -13,6 +13,7 @@ */ #include +#include #include #include #include diff --git a/board/siemens/rut/board.c b/board/siemens/rut/board.c index 25e2ed22a6..539ecef22c 100644 --- a/board/siemens/rut/board.c +++ b/board/siemens/rut/board.c @@ -11,6 +11,7 @@ */ #include +#include #include #include #include diff --git a/board/siemens/taurus/taurus.c b/board/siemens/taurus/taurus.c index 6ea97eb4e8..d0efb67bbc 100644 --- a/board/siemens/taurus/taurus.c +++ b/board/siemens/taurus/taurus.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include diff --git a/board/silica/pengwyn/board.c b/board/silica/pengwyn/board.c index 90ea8c601c..dc10b76160 100644 --- a/board/silica/pengwyn/board.c +++ b/board/silica/pengwyn/board.c @@ -6,6 +6,7 @@ */ #include +#include #include #include #include diff --git a/board/softing/vining_2000/vining_2000.c b/board/softing/vining_2000/vining_2000.c index 533280130e..d1df8fc0cc 100644 --- a/board/softing/vining_2000/vining_2000.c +++ b/board/softing/vining_2000/vining_2000.c @@ -16,6 +16,7 @@ #include #include #include +#include #include #include #include diff --git a/board/solidrun/mx6cuboxi/mx6cuboxi.c b/board/solidrun/mx6cuboxi/mx6cuboxi.c index d333ccc446..f82fb0786a 100644 --- a/board/solidrun/mx6cuboxi/mx6cuboxi.c +++ b/board/solidrun/mx6cuboxi/mx6cuboxi.c @@ -18,6 +18,7 @@ #include #include #include +#include #include #include #include diff --git a/board/technologic/ts4800/ts4800.c b/board/technologic/ts4800/ts4800.c index 927a19d05a..38d3a3de26 100644 --- a/board/technologic/ts4800/ts4800.c +++ b/board/technologic/ts4800/ts4800.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include diff --git a/board/theobroma-systems/puma_rk3399/puma-rk3399.c b/board/theobroma-systems/puma_rk3399/puma-rk3399.c index a7e7f022ba..a00587c3fa 100644 --- a/board/theobroma-systems/puma_rk3399/puma-rk3399.c +++ b/board/theobroma-systems/puma_rk3399/puma-rk3399.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/ti/am43xx/board.c b/board/ti/am43xx/board.c index d29a22cf05..756b516aa6 100644 --- a/board/ti/am43xx/board.c +++ b/board/ti/am43xx/board.c @@ -8,6 +8,7 @@ */ #include +#include #include #include #include diff --git a/board/ti/am65x/evm.c b/board/ti/am65x/evm.c index 7bd8c4fa66..e01adcd642 100644 --- a/board/ti/am65x/evm.c +++ b/board/ti/am65x/evm.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c index 91e0a4c026..0138fc91fc 100644 --- a/board/ti/beagle/beagle.c +++ b/board/ti/beagle/beagle.c @@ -14,6 +14,7 @@ */ #include #include +#include #include #ifdef CONFIG_LED_STATUS #include diff --git a/board/ti/common/board_detect.c b/board/ti/common/board_detect.c index 32fa10599e..bc89cc57bd 100644 --- a/board/ti/common/board_detect.c +++ b/board/ti/common/board_detect.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include "board_detect.h" diff --git a/board/ti/evm/evm.c b/board/ti/evm/evm.c index 93408047b2..d0b9bafbd1 100644 --- a/board/ti/evm/evm.c +++ b/board/ti/evm/evm.c @@ -12,6 +12,7 @@ */ #include #include +#include #include #include #include diff --git a/board/ti/panda/panda.c b/board/ti/panda/panda.c index f88aa4dfc6..20199da390 100644 --- a/board/ti/panda/panda.c +++ b/board/ti/panda/panda.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include "panda_mux_data.h" diff --git a/board/ti/ti814x/evm.c b/board/ti/ti814x/evm.c index d8ee51b366..a4c094b6dc 100644 --- a/board/ti/ti814x/evm.c +++ b/board/ti/ti814x/evm.c @@ -9,6 +9,7 @@ #include #include +#include #include #include #include diff --git a/board/ti/ti816x/evm.c b/board/ti/ti816x/evm.c index 240df8cbe1..de9e91a685 100644 --- a/board/ti/ti816x/evm.c +++ b/board/ti/ti816x/evm.c @@ -7,6 +7,7 @@ */ #include +#include #include #include #include diff --git a/board/timll/devkit8000/devkit8000.c b/board/timll/devkit8000/devkit8000.c index 50b70a501c..f8970b0b6d 100644 --- a/board/timll/devkit8000/devkit8000.c +++ b/board/timll/devkit8000/devkit8000.c @@ -17,6 +17,7 @@ */ #include #include +#include #include #include #include diff --git a/board/toradex/apalis-imx8/apalis-imx8.c b/board/toradex/apalis-imx8/apalis-imx8.c index 5433c7581b..a770472e17 100644 --- a/board/toradex/apalis-imx8/apalis-imx8.c +++ b/board/toradex/apalis-imx8/apalis-imx8.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #include diff --git a/board/toradex/apalis_imx6/apalis_imx6.c b/board/toradex/apalis_imx6/apalis_imx6.c index 341735153b..89f1b728fd 100644 --- a/board/toradex/apalis_imx6/apalis_imx6.c +++ b/board/toradex/apalis_imx6/apalis_imx6.c @@ -26,6 +26,7 @@ #include #include #include +#include #include #include #include diff --git a/board/toradex/colibri-imx6ull/colibri-imx6ull.c b/board/toradex/colibri-imx6ull/colibri-imx6ull.c index 21addaf6ed..d1ae463941 100644 --- a/board/toradex/colibri-imx6ull/colibri-imx6ull.c +++ b/board/toradex/colibri-imx6ull/colibri-imx6ull.c @@ -17,6 +17,7 @@ #include #include #include +#include #include #include #include diff --git a/board/toradex/colibri-imx8x/colibri-imx8x.c b/board/toradex/colibri-imx8x/colibri-imx8x.c index 8c725b7593..69628b906c 100644 --- a/board/toradex/colibri-imx8x/colibri-imx8x.c +++ b/board/toradex/colibri-imx8x/colibri-imx8x.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #include diff --git a/board/toradex/colibri_vf/colibri_vf.c b/board/toradex/colibri_vf/colibri_vf.c index dad754b31f..04d8ffd1e6 100644 --- a/board/toradex/colibri_vf/colibri_vf.c +++ b/board/toradex/colibri_vf/colibri_vf.c @@ -15,6 +15,7 @@ #include #include #include +#include #include #include #include diff --git a/board/toradex/common/tdx-common.c b/board/toradex/common/tdx-common.c index 2d560cceaf..71642a13ea 100644 --- a/board/toradex/common/tdx-common.c +++ b/board/toradex/common/tdx-common.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/board/tqc/tqma6/tqma6.c b/board/tqc/tqma6/tqma6.c index 5f0c7aace3..5b20afd488 100644 --- a/board/tqc/tqma6/tqma6.c +++ b/board/tqc/tqma6/tqma6.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #include diff --git a/board/udoo/neo/neo.c b/board/udoo/neo/neo.c index d51f648178..5c468a6a97 100644 --- a/board/udoo/neo/neo.c +++ b/board/udoo/neo/neo.c @@ -15,6 +15,7 @@ #include #include #include +#include #include #include #include diff --git a/board/udoo/udoo.c b/board/udoo/udoo.c index c34a5a636b..f2c2bf47b0 100644 --- a/board/udoo/udoo.c +++ b/board/udoo/udoo.c @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include diff --git a/board/varisys/common/sys_eeprom.c b/board/varisys/common/sys_eeprom.c index dea9af9b5d..77772a6923 100644 --- a/board/varisys/common/sys_eeprom.c +++ b/board/varisys/common/sys_eeprom.c @@ -12,6 +12,7 @@ #include #include +#include #include #include diff --git a/board/vscom/baltos/board.c b/board/vscom/baltos/board.c index c5949ad267..5f5a51bfbf 100644 --- a/board/vscom/baltos/board.c +++ b/board/vscom/baltos/board.c @@ -8,6 +8,7 @@ */ #include +#include #include #include #include diff --git a/board/wandboard/wandboard.c b/board/wandboard/wandboard.c index 74d7a17028..69cdf3e9c9 100644 --- a/board/wandboard/wandboard.c +++ b/board/wandboard/wandboard.c @@ -20,6 +20,7 @@ #include #include #include +#include #include #include #include diff --git a/board/xilinx/zynq/board.c b/board/xilinx/zynq/board.c index 6857f2c0b8..35191b2f81 100644 --- a/board/xilinx/zynq/board.c +++ b/board/xilinx/zynq/board.c @@ -6,6 +6,7 @@ #include #include +#include #include #include #include diff --git a/board/xilinx/zynqmp/zynqmp.c b/board/xilinx/zynqmp/zynqmp.c index 057ca1fbf7..d649daba96 100644 --- a/board/xilinx/zynqmp/zynqmp.c +++ b/board/xilinx/zynqmp/zynqmp.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include diff --git a/cmd/avb.c b/cmd/avb.c index 3f6fd763a0..5bc158252b 100644 --- a/cmd/avb.c +++ b/cmd/avb.c @@ -7,6 +7,7 @@ #include #include +#include #include #include #include diff --git a/cmd/binop.c b/cmd/binop.c index 116a2c0d55..6d2df5f3dd 100644 --- a/cmd/binop.c +++ b/cmd/binop.c @@ -2,6 +2,7 @@ #include #include +#include #include #include #include diff --git a/cmd/dtimg.c b/cmd/dtimg.c index ae7d82f26d..6c5d53cc68 100644 --- a/cmd/dtimg.c +++ b/cmd/dtimg.c @@ -4,6 +4,7 @@ * Sam Protsenko */ +#include #include #include diff --git a/cmd/gpt.c b/cmd/gpt.c index 33cda51396..0c4349f4b2 100644 --- a/cmd/gpt.c +++ b/cmd/gpt.c @@ -11,6 +11,7 @@ */ #include +#include #include #include #include diff --git a/cmd/ini.c b/cmd/ini.c index 8c28fa6394..f4faa7cae1 100644 --- a/cmd/ini.c +++ b/cmd/ini.c @@ -13,6 +13,7 @@ #include #include +#include #include #include #include diff --git a/cmd/md5sum.c b/cmd/md5sum.c index 9d2d4180c5..63cbae0364 100644 --- a/cmd/md5sum.c +++ b/cmd/md5sum.c @@ -9,6 +9,7 @@ #include #include +#include #include #include #include diff --git a/cmd/net.c b/cmd/net.c index 89721b8f8b..237403977e 100644 --- a/cmd/net.c +++ b/cmd/net.c @@ -9,6 +9,7 @@ */ #include #include +#include #include static int netboot_common(enum proto_t, cmd_tbl_t *, int, char * const []); diff --git a/cmd/nvedit_efi.c b/cmd/nvedit_efi.c index 60a8ac84c8..ed6d09a530 100644 --- a/cmd/nvedit_efi.c +++ b/cmd/nvedit_efi.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include diff --git a/cmd/part.c b/cmd/part.c index 653e13ced1..6cfb67b279 100644 --- a/cmd/part.c +++ b/cmd/part.c @@ -18,6 +18,7 @@ #include #include #include +#include #include #include diff --git a/cmd/pxe.c b/cmd/pxe.c index 1dd0a74ea3..2059975446 100644 --- a/cmd/pxe.c +++ b/cmd/pxe.c @@ -6,6 +6,7 @@ #include #include +#include #include #include #include diff --git a/cmd/qfw.c b/cmd/qfw.c index 7bf700538c..af826627a2 100644 --- a/cmd/qfw.c +++ b/cmd/qfw.c @@ -5,6 +5,7 @@ #include #include +#include #include #include diff --git a/common/cli_hush.c b/common/cli_hush.c index 955e8fe536..8f86e4aa4a 100644 --- a/common/cli_hush.c +++ b/common/cli_hush.c @@ -75,6 +75,7 @@ #define __U_BOOT__ #ifdef __U_BOOT__ +#include #include /* malloc, free, realloc*/ #include /* isalpha, isdigit */ #include /* readline */ diff --git a/common/console.c b/common/console.c index d086feabb1..0f7e0916cd 100644 --- a/common/console.c +++ b/common/console.c @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include diff --git a/common/hash.c b/common/hash.c index 413a5bfcda..d33e329897 100644 --- a/common/hash.c +++ b/common/hash.c @@ -12,6 +12,7 @@ #ifndef USE_HOSTCC #include #include +#include #include #include #include diff --git a/common/hwconfig.c b/common/hwconfig.c index e9e956a322..72f3c4e0fa 100644 --- a/common/hwconfig.c +++ b/common/hwconfig.c @@ -11,6 +11,7 @@ #ifndef HWCONFIG_TEST #include #include +#include #include #include #include diff --git a/common/image-android.c b/common/image-android.c index 6c9568a655..264bf90007 100644 --- a/common/image-android.c +++ b/common/image-android.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/common/main.c b/common/main.c index ce39c8d189..3a657c3d9a 100644 --- a/common/main.c +++ b/common/main.c @@ -10,6 +10,7 @@ #include #include #include +#include #include /* diff --git a/common/spl/spl_dfu.c b/common/spl/spl_dfu.c index c0225dc4e1..a05b867567 100644 --- a/common/spl/spl_dfu.c +++ b/common/spl/spl_dfu.c @@ -6,6 +6,7 @@ * Ravi B */ #include +#include #include #include #include diff --git a/common/update.c b/common/update.c index f237ea53bb..457b29f42a 100644 --- a/common/update.c +++ b/common/update.c @@ -17,6 +17,7 @@ #endif #include +#include #include #include #include diff --git a/drivers/net/fec_mxc.c b/drivers/net/fec_mxc.c index 96e3ad9a1a..a8b141aba2 100644 --- a/drivers/net/fec_mxc.c +++ b/drivers/net/fec_mxc.c @@ -9,6 +9,7 @@ #include #include +#include #include #include #include diff --git a/drivers/net/lan91c96.c b/drivers/net/lan91c96.c index f2489aaf82..c08bd21f95 100644 --- a/drivers/net/lan91c96.c +++ b/drivers/net/lan91c96.c @@ -46,6 +46,7 @@ #include #include +#include #include #include "lan91c96.h" #include diff --git a/drivers/net/ne2000_base.c b/drivers/net/ne2000_base.c index 421aa20ea6..3bc7a35086 100644 --- a/drivers/net/ne2000_base.c +++ b/drivers/net/ne2000_base.c @@ -74,6 +74,7 @@ Add SNMP #include #include +#include #include #include #include diff --git a/drivers/net/sandbox-raw.c b/drivers/net/sandbox-raw.c index 7e6625d020..3707ee35eb 100644 --- a/drivers/net/sandbox-raw.c +++ b/drivers/net/sandbox-raw.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include diff --git a/drivers/usb/gadget/ether.c b/drivers/usb/gadget/ether.c index 0b5a1a4796..fa49d3126f 100644 --- a/drivers/usb/gadget/ether.c +++ b/drivers/usb/gadget/ether.c @@ -9,6 +9,7 @@ #include #include +#include #include #include #include diff --git a/env/flags.c b/env/flags.c index 79dccc05fe..7277711594 100644 --- a/env/flags.c +++ b/env/flags.c @@ -4,6 +4,7 @@ * Joe Hershberger, National Instruments, joe.hershberger@ni.com */ +#include #include #include diff --git a/examples/api/demo.c b/examples/api/demo.c index e177bf17eb..e7523786b4 100644 --- a/examples/api/demo.c +++ b/examples/api/demo.c @@ -6,6 +6,7 @@ */ #include +#include #include #include diff --git a/include/command.h b/include/command.h index 2bfee89df3..f6170e7151 100644 --- a/include/command.h +++ b/include/command.h @@ -10,6 +10,7 @@ #ifndef __COMMAND_H #define __COMMAND_H +#include #include #ifndef NULL diff --git a/include/common.h b/include/common.h index 8d8bbc4da3..739bbd400a 100644 --- a/include/common.h +++ b/include/common.h @@ -157,18 +157,6 @@ int do_ext2load(cmd_tbl_t *, int, int, char * const []); */ char *env_get(const char *varname); -/** - * env_set() - set an environment variable - * - * This sets or deletes the value of an environment variable. For setting the - * value the variable is created if it does not already exist. - * - * @varname: Variable to adjust - * @value: Value to set for the variable, or NULL or "" to delete the variable - * @return 0 if OK, 1 on error - */ -int env_set(const char *varname, const char *value); - void pci_init_board(void); /* common/exports.c */ diff --git a/include/env.h b/include/env.h index dd063feb39..6770a6176d 100644 --- a/include/env.h +++ b/include/env.h @@ -71,6 +71,18 @@ int env_get_f(const char *name, char *buf, unsigned int len); */ int env_get_yesno(const char *var); +/** + * env_set() - set an environment variable + * + * This sets or deletes the value of an environment variable. For setting the + * value the variable is created if it does not already exist. + * + * @varname: Variable to adjust + * @value: Value to set for the variable, or NULL or "" to delete the variable + * @return 0 if OK, 1 on error + */ +int env_set(const char *varname, const char *value); + /** * env_get_ulong() - Return an environment variable as an integer value * diff --git a/include/env_flags.h b/include/env_flags.h index 23744e395c..f2306436b4 100644 --- a/include/env_flags.h +++ b/include/env_flags.h @@ -146,6 +146,7 @@ int env_flags_validate_env_set_params(char *name, char *const val[], int count); #else /* !USE_HOSTCC */ +#include #include /* diff --git a/include/exports.h b/include/exports.h index bf8d53c6b0..147a00f860 100644 --- a/include/exports.h +++ b/include/exports.h @@ -3,6 +3,7 @@ #ifndef __ASSEMBLY__ #ifdef CONFIG_PHY_AQUANTIA +#include #include #endif diff --git a/include/net.h b/include/net.h index 7684076af6..0262175c81 100644 --- a/include/net.h +++ b/include/net.h @@ -14,6 +14,7 @@ #include #include /* for nton* / ntoh* stuff */ +#include #include #define DEBUG_LL_STATE 0 /* Link local state machine changes */ diff --git a/include/search.h b/include/search.h index 5d07b49073..9750336b5e 100644 --- a/include/search.h +++ b/include/search.h @@ -14,6 +14,7 @@ #ifndef _SEARCH_H_ #define _SEARCH_H_ +#include #include #define __set_errno(val) do { errno = val; } while (0) diff --git a/lib/efi_loader/efi_variable.c b/lib/efi_loader/efi_variable.c index 889a7f2ba0..8a0e0db13e 100644 --- a/lib/efi_loader/efi_variable.c +++ b/lib/efi_loader/efi_variable.c @@ -5,6 +5,7 @@ * Copyright (c) 2017 Rob Clark */ +#include #include #include #include diff --git a/lib/uuid.c b/lib/uuid.c index ca8be2cdca..a48e19c06e 100644 --- a/lib/uuid.c +++ b/lib/uuid.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/net/dns.c b/net/dns.c index eee8a02f7c..67d761d7c0 100644 --- a/net/dns.c +++ b/net/dns.c @@ -24,6 +24,7 @@ #include #include +#include #include #include diff --git a/net/eth-uclass.c b/net/eth-uclass.c index 031d558625..4e4f472431 100644 --- a/net/eth-uclass.c +++ b/net/eth-uclass.c @@ -7,6 +7,7 @@ #include #include +#include #include #include #include diff --git a/net/eth_legacy.c b/net/eth_legacy.c index e250a430f3..0f558b23ce 100644 --- a/net/eth_legacy.c +++ b/net/eth_legacy.c @@ -7,6 +7,7 @@ #include #include +#include #include #include #include diff --git a/net/wol.c b/net/wol.c index 946bd91b47..51543343e4 100644 --- a/net/wol.c +++ b/net/wol.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include "wol.h" diff --git a/test/dm/eth.c b/test/dm/eth.c index 6e002b8dce..ad5354b4bf 100644 --- a/test/dm/eth.c +++ b/test/dm/eth.c @@ -8,6 +8,7 @@ #include #include +#include #include #include #include diff --git a/tools/env/fw_env.c b/tools/env/fw_env.c index eef12dd2b7..f06252d916 100644 --- a/tools/env/fw_env.c +++ b/tools/env/fw_env.c @@ -10,6 +10,7 @@ #define _GNU_SOURCE #include +#include #include #include #include diff --git a/tools/env/fw_env.h b/tools/env/fw_env.h index b250e2f3d7..3d2b457b31 100644 --- a/tools/env/fw_env.h +++ b/tools/env/fw_env.h @@ -4,6 +4,7 @@ * Wolfgang Denk, DENX Software Engineering, wd@denx.de. */ +#include #include /* diff --git a/tools/env/fw_env_main.c b/tools/env/fw_env_main.c index 26ba6624cd..1d193bd437 100644 --- a/tools/env/fw_env_main.c +++ b/tools/env/fw_env_main.c @@ -26,6 +26,7 @@ * of AES key), eg. '-a aabbccddeeff00112233445566778899'. */ +#include #include #include #include From 7b51b576d6db714e8668a98de67e93651e18123c Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:52 -0600 Subject: [PATCH 28/51] env: Move env_get() to env.h Move env_get() over to the new header file. Acked-by: Joe Hershberger Signed-off-by: Simon Glass --- arch/arm/lib/bootm.c | 1 + arch/arm/mach-imx/video.c | 1 + arch/arm/mach-kirkwood/cpu.c | 1 + arch/m68k/lib/bootm.c | 1 + arch/microblaze/lib/bootm.c | 1 + arch/nds32/lib/bootm.c | 1 + arch/powerpc/cpu/mpc85xx/mp.c | 1 + arch/powerpc/lib/bootm.c | 1 + arch/xtensa/lib/bootm.c | 1 + board/BuS/eb_cpu5282/eb_cpu5282.c | 1 + board/CarMediaLab/flea3/flea3.c | 1 + board/bluegiga/apx4devkit/apx4devkit.c | 1 + board/bluewater/gurnard/gurnard.c | 1 + board/broadcom/bcm23550_w1d/bcm23550_w1d.c | 1 + board/broadcom/bcm28155_ap/bcm28155_ap.c | 1 + board/compulab/common/omap3_display.c | 1 + board/freescale/bsc9131rdb/bsc9131rdb.c | 1 + board/freescale/bsc9132qds/bsc9132qds.c | 1 + board/freescale/c29xpcie/c29xpcie.c | 1 + board/freescale/common/vid.c | 1 + board/freescale/corenet_ds/corenet_ds.c | 1 + board/freescale/ls1088a/eth_ls1088aqds.c | 1 + board/freescale/ls1088a/ls1088a.c | 1 + board/freescale/ls2080aqds/eth.c | 1 + board/freescale/ls2080aqds/ls2080aqds.c | 1 + board/freescale/lx2160a/eth_lx2160aqds.c | 1 + board/freescale/mpc837xemds/pci.c | 1 + board/freescale/mpc8572ds/mpc8572ds.c | 1 + board/freescale/mx51evk/mx51evk_video.c | 1 + board/freescale/mx53loco/mx53loco_video.c | 1 + board/freescale/p1010rdb/p1010rdb.c | 1 + board/freescale/p1022ds/p1022ds.c | 1 + board/freescale/p1023rdb/p1023rdb.c | 1 + board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c | 1 + board/freescale/p1_twr/p1_twr.c | 1 + board/freescale/p2041rdb/p2041rdb.c | 1 + board/freescale/t102xqds/t102xqds.c | 1 + board/freescale/t102xrdb/t102xrdb.c | 1 + board/freescale/t1040qds/t1040qds.c | 1 + board/freescale/t104xrdb/t104xrdb.c | 1 + board/freescale/t208xqds/t208xqds.c | 1 + board/freescale/t208xrdb/t208xrdb.c | 1 + board/freescale/t4qds/t4240emu.c | 1 + board/freescale/t4qds/t4240qds.c | 1 + board/freescale/t4rdb/t4240rdb.c | 1 + board/gateworks/gw_ventana/common.c | 1 + board/gdsys/a38x/keyprogram.c | 1 + board/gdsys/mpc8308/hrcon.c | 1 + board/gdsys/mpc8308/strider.c | 1 + board/gdsys/p1022/controlcenterd.c | 1 + board/hisilicon/poplar/poplar.c | 1 + board/menlo/m53menlo/m53menlo.c | 1 + board/nvidia/p2371-2180/p2371-2180.c | 1 + board/nvidia/p2771-0000/p2771-0000.c | 1 + board/renesas/alt/alt.c | 1 + board/renesas/gose/gose.c | 1 + board/renesas/koelsch/koelsch.c | 1 + board/renesas/lager/lager.c | 1 + board/renesas/porter/porter.c | 1 + board/renesas/silk/silk.c | 1 + board/renesas/stout/stout.c | 1 + board/samsung/common/exynos5-dt.c | 1 + board/samsung/odroid/odroid.c | 1 + board/siemens/common/board.c | 1 + board/ti/ks2_evm/board.c | 1 + board/toradex/common/tdx-cfg-block.c | 1 + board/varisys/cyrus/cyrus.c | 1 + board/work-microwave/work_92105/work_92105_display.c | 1 + cmd/bdinfo.c | 1 + cmd/bootefi.c | 1 + cmd/bootm.c | 1 + cmd/bootmenu.c | 1 + cmd/fpga.c | 1 + cmd/itest.c | 1 + cmd/mvebu/bubt.c | 1 + common/bootretry.c | 1 + common/cli.c | 1 + common/cli_simple.c | 1 + common/fdt_support.c | 1 + common/image.c | 1 + common/spl/spl_ext.c | 1 + common/spl/spl_fat.c | 1 + common/splash.c | 1 + common/splash_source.c | 1 + common/usb_hub.c | 1 + common/usb_kbd.c | 1 + disk/part.c | 1 + disk/part_amiga.c | 1 + drivers/dfu/dfu.c | 1 + drivers/fastboot/fb_common.c | 1 + drivers/fastboot/fb_getvar.c | 1 + drivers/fastboot/fb_mmc.c | 1 + drivers/input/i8042.c | 1 + drivers/input/input.c | 1 + drivers/misc/fs_loader.c | 1 + drivers/net/dc2114x.c | 1 + drivers/net/fm/fdt.c | 1 + drivers/net/fsl-mc/mc.c | 1 + drivers/net/fsl_mcdmafec.c | 1 + drivers/net/ftmac100.c | 1 + drivers/net/mcffec.c | 1 + drivers/net/phy/micrel_ksz90x1.c | 1 + drivers/net/sh_eth.c | 1 + drivers/pci/fsl_pci_init.c | 1 + drivers/pci/pci.c | 1 + drivers/pci/pci_common.c | 1 + drivers/reset/reset-socfpga.c | 1 + drivers/rtc/m41t60.c | 1 + drivers/serial/usbtty.c | 1 + drivers/usb/gadget/designware_udc.c | 1 + drivers/usb/gadget/f_dfu.c | 1 + drivers/usb/gadget/f_fastboot.c | 1 + drivers/usb/gadget/f_rockusb.c | 1 + drivers/usb/host/ehci-fsl.c | 1 + drivers/video/ati_radeon_fb.c | 1 + drivers/video/cfb_console.c | 1 + drivers/video/mb862xx.c | 1 + drivers/video/mx3fb.c | 1 + drivers/video/mxsfb.c | 1 + drivers/video/videomodes.c | 1 + env/callback.c | 1 + env/eeprom.c | 1 + env/nvram.c | 1 + include/common.h | 12 ------------ include/env.h | 12 ++++++++++++ lib/efi_loader/efi_console.c | 1 + lib/smbios.c | 1 + net/link_local.c | 1 + net/tftp.c | 1 + 129 files changed, 139 insertions(+), 12 deletions(-) diff --git a/arch/arm/lib/bootm.c b/arch/arm/lib/bootm.c index bf68a5ba62..1638f1e81d 100644 --- a/arch/arm/lib/bootm.c +++ b/arch/arm/lib/bootm.c @@ -15,6 +15,7 @@ #include #include #include +#include #include #include #include diff --git a/arch/arm/mach-imx/video.c b/arch/arm/mach-imx/video.c index 22a371a212..1bc9b7cc7e 100644 --- a/arch/arm/mach-imx/video.c +++ b/arch/arm/mach-imx/video.c @@ -1,6 +1,7 @@ // SPDX-License-Identifier: GPL-2.0+ #include +#include #include #include diff --git a/arch/arm/mach-kirkwood/cpu.c b/arch/arm/mach-kirkwood/cpu.c index 8f8e300385..6ad2543438 100644 --- a/arch/arm/mach-kirkwood/cpu.c +++ b/arch/arm/mach-kirkwood/cpu.c @@ -6,6 +6,7 @@ */ #include +#include #include #include #include diff --git a/arch/m68k/lib/bootm.c b/arch/m68k/lib/bootm.c index 1b15430297..5b7a68b250 100644 --- a/arch/m68k/lib/bootm.c +++ b/arch/m68k/lib/bootm.c @@ -6,6 +6,7 @@ #include #include +#include #include #include #include diff --git a/arch/microblaze/lib/bootm.c b/arch/microblaze/lib/bootm.c index 083a43c3a5..ec332944d8 100644 --- a/arch/microblaze/lib/bootm.c +++ b/arch/microblaze/lib/bootm.c @@ -9,6 +9,7 @@ #include #include +#include #include #include #include diff --git a/arch/nds32/lib/bootm.c b/arch/nds32/lib/bootm.c index 0cfdc52b46..a472f6a187 100644 --- a/arch/nds32/lib/bootm.c +++ b/arch/nds32/lib/bootm.c @@ -7,6 +7,7 @@ #include #include +#include #include #include #include diff --git a/arch/powerpc/cpu/mpc85xx/mp.c b/arch/powerpc/cpu/mpc85xx/mp.c index 119d4b3510..3882c95f92 100644 --- a/arch/powerpc/cpu/mpc85xx/mp.c +++ b/arch/powerpc/cpu/mpc85xx/mp.c @@ -6,6 +6,7 @@ #include #include #include +#include #include #include #include diff --git a/arch/powerpc/lib/bootm.c b/arch/powerpc/lib/bootm.c index 15e9c2a83e..52bcd4e6f1 100644 --- a/arch/powerpc/lib/bootm.c +++ b/arch/powerpc/lib/bootm.c @@ -8,6 +8,7 @@ #include +#include #include #include #include diff --git a/arch/xtensa/lib/bootm.c b/arch/xtensa/lib/bootm.c index aceed153d7..93eea53c5f 100644 --- a/arch/xtensa/lib/bootm.c +++ b/arch/xtensa/lib/bootm.c @@ -6,6 +6,7 @@ #include #include +#include #include #include #include diff --git a/board/BuS/eb_cpu5282/eb_cpu5282.c b/board/BuS/eb_cpu5282/eb_cpu5282.c index 379194803a..0b916d2482 100644 --- a/board/BuS/eb_cpu5282/eb_cpu5282.c +++ b/board/BuS/eb_cpu5282/eb_cpu5282.c @@ -11,6 +11,7 @@ #include #include "asm/m5282.h" #include +#include #include #include diff --git a/board/CarMediaLab/flea3/flea3.c b/board/CarMediaLab/flea3/flea3.c index 9eec1b7838..be0bc228ec 100644 --- a/board/CarMediaLab/flea3/flea3.c +++ b/board/CarMediaLab/flea3/flea3.c @@ -9,6 +9,7 @@ #include #include +#include #include #include #include diff --git a/board/bluegiga/apx4devkit/apx4devkit.c b/board/bluegiga/apx4devkit/apx4devkit.c index 9aa87f5ccf..9268aa0daa 100644 --- a/board/bluegiga/apx4devkit/apx4devkit.c +++ b/board/bluegiga/apx4devkit/apx4devkit.c @@ -21,6 +21,7 @@ #include #include #include +#include #include #include #include diff --git a/board/bluewater/gurnard/gurnard.c b/board/bluewater/gurnard/gurnard.c index 3cda2fafab..48e31d9065 100644 --- a/board/bluewater/gurnard/gurnard.c +++ b/board/bluewater/gurnard/gurnard.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #ifndef CONFIG_DM_ETH diff --git a/board/broadcom/bcm23550_w1d/bcm23550_w1d.c b/board/broadcom/bcm23550_w1d/bcm23550_w1d.c index 72a32a2765..ce9f0494ee 100644 --- a/board/broadcom/bcm23550_w1d/bcm23550_w1d.c +++ b/board/broadcom/bcm23550_w1d/bcm23550_w1d.c @@ -6,6 +6,7 @@ #include #include #include +#include #include #include #include diff --git a/board/broadcom/bcm28155_ap/bcm28155_ap.c b/board/broadcom/bcm28155_ap/bcm28155_ap.c index 6faeb6a515..87616386cb 100644 --- a/board/broadcom/bcm28155_ap/bcm28155_ap.c +++ b/board/broadcom/bcm28155_ap/bcm28155_ap.c @@ -6,6 +6,7 @@ #include #include #include +#include #include #include #include diff --git a/board/compulab/common/omap3_display.c b/board/compulab/common/omap3_display.c index bc9f31ab87..cb9ebae7f9 100644 --- a/board/compulab/common/omap3_display.c +++ b/board/compulab/common/omap3_display.c @@ -10,6 +10,7 @@ #include #include #include +#include #include #include #include diff --git a/board/freescale/bsc9131rdb/bsc9131rdb.c b/board/freescale/bsc9131rdb/bsc9131rdb.c index 9d9c83f716..30e7a1f7ed 100644 --- a/board/freescale/bsc9131rdb/bsc9131rdb.c +++ b/board/freescale/bsc9131rdb/bsc9131rdb.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include diff --git a/board/freescale/bsc9132qds/bsc9132qds.c b/board/freescale/bsc9132qds/bsc9132qds.c index 36a55285e8..dd9ad90508 100644 --- a/board/freescale/bsc9132qds/bsc9132qds.c +++ b/board/freescale/bsc9132qds/bsc9132qds.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include diff --git a/board/freescale/c29xpcie/c29xpcie.c b/board/freescale/c29xpcie/c29xpcie.c index 8ee3e140bb..6d103be7ff 100644 --- a/board/freescale/c29xpcie/c29xpcie.c +++ b/board/freescale/c29xpcie/c29xpcie.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include diff --git a/board/freescale/common/vid.c b/board/freescale/common/vid.c index 0ca389c9ae..b804971981 100644 --- a/board/freescale/common/vid.c +++ b/board/freescale/common/vid.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #ifdef CONFIG_FSL_LSCH2 diff --git a/board/freescale/corenet_ds/corenet_ds.c b/board/freescale/corenet_ds/corenet_ds.c index b166faf326..3ce9a76aae 100644 --- a/board/freescale/corenet_ds/corenet_ds.c +++ b/board/freescale/corenet_ds/corenet_ds.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/ls1088a/eth_ls1088aqds.c b/board/freescale/ls1088a/eth_ls1088aqds.c index f16b78cf03..d4ab9791e9 100644 --- a/board/freescale/ls1088a/eth_ls1088aqds.c +++ b/board/freescale/ls1088a/eth_ls1088aqds.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/ls1088a/ls1088a.c b/board/freescale/ls1088a/ls1088a.c index 6d11a134dc..a1c9eb3f46 100644 --- a/board/freescale/ls1088a/ls1088a.c +++ b/board/freescale/ls1088a/ls1088a.c @@ -3,6 +3,7 @@ * Copyright 2017-2018 NXP */ #include +#include #include #include #include diff --git a/board/freescale/ls2080aqds/eth.c b/board/freescale/ls2080aqds/eth.c index f706fd4cb6..1b4e6c65fb 100644 --- a/board/freescale/ls2080aqds/eth.c +++ b/board/freescale/ls2080aqds/eth.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/board/freescale/ls2080aqds/ls2080aqds.c b/board/freescale/ls2080aqds/ls2080aqds.c index a0a3301691..e9e0999a18 100644 --- a/board/freescale/ls2080aqds/ls2080aqds.c +++ b/board/freescale/ls2080aqds/ls2080aqds.c @@ -3,6 +3,7 @@ * Copyright 2015 Freescale Semiconductor */ #include +#include #include #include #include diff --git a/board/freescale/lx2160a/eth_lx2160aqds.c b/board/freescale/lx2160a/eth_lx2160aqds.c index f6e22d7337..92c06e5060 100644 --- a/board/freescale/lx2160a/eth_lx2160aqds.c +++ b/board/freescale/lx2160a/eth_lx2160aqds.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include diff --git a/board/freescale/mpc837xemds/pci.c b/board/freescale/mpc837xemds/pci.c index 4217638952..41b78cf5e4 100644 --- a/board/freescale/mpc837xemds/pci.c +++ b/board/freescale/mpc837xemds/pci.c @@ -6,6 +6,7 @@ #include #include #include +#include #include #include #include diff --git a/board/freescale/mpc8572ds/mpc8572ds.c b/board/freescale/mpc8572ds/mpc8572ds.c index 6abeeba43b..89f4d6c05f 100644 --- a/board/freescale/mpc8572ds/mpc8572ds.c +++ b/board/freescale/mpc8572ds/mpc8572ds.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/mx51evk/mx51evk_video.c b/board/freescale/mx51evk/mx51evk_video.c index 995fb9a9ab..3715c5d738 100644 --- a/board/freescale/mx51evk/mx51evk_video.c +++ b/board/freescale/mx51evk/mx51evk_video.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include diff --git a/board/freescale/mx53loco/mx53loco_video.c b/board/freescale/mx53loco/mx53loco_video.c index 160af1ef0d..ff3fc8ce3e 100644 --- a/board/freescale/mx53loco/mx53loco_video.c +++ b/board/freescale/mx53loco/mx53loco_video.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include diff --git a/board/freescale/p1010rdb/p1010rdb.c b/board/freescale/p1010rdb/p1010rdb.c index b0db353167..449df937e6 100644 --- a/board/freescale/p1010rdb/p1010rdb.c +++ b/board/freescale/p1010rdb/p1010rdb.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include diff --git a/board/freescale/p1022ds/p1022ds.c b/board/freescale/p1022ds/p1022ds.c index 835ede562e..9406e75517 100644 --- a/board/freescale/p1022ds/p1022ds.c +++ b/board/freescale/p1022ds/p1022ds.c @@ -7,6 +7,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/p1023rdb/p1023rdb.c b/board/freescale/p1023rdb/p1023rdb.c index d0012ea38b..7db04043ca 100644 --- a/board/freescale/p1023rdb/p1023rdb.c +++ b/board/freescale/p1023rdb/p1023rdb.c @@ -8,6 +8,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c b/board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c index 4b151e8ef3..a04a73528f 100644 --- a/board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c +++ b/board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/p1_twr/p1_twr.c b/board/freescale/p1_twr/p1_twr.c index fe99ebf4b2..01cac181b3 100644 --- a/board/freescale/p1_twr/p1_twr.c +++ b/board/freescale/p1_twr/p1_twr.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/p2041rdb/p2041rdb.c b/board/freescale/p2041rdb/p2041rdb.c index 6324027c8a..baf1506908 100644 --- a/board/freescale/p2041rdb/p2041rdb.c +++ b/board/freescale/p2041rdb/p2041rdb.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/t102xqds/t102xqds.c b/board/freescale/t102xqds/t102xqds.c index d770aebebb..6c754503d1 100644 --- a/board/freescale/t102xqds/t102xqds.c +++ b/board/freescale/t102xqds/t102xqds.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/t102xrdb/t102xrdb.c b/board/freescale/t102xrdb/t102xrdb.c index acc0be07c5..793f54d69e 100644 --- a/board/freescale/t102xrdb/t102xrdb.c +++ b/board/freescale/t102xrdb/t102xrdb.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/t1040qds/t1040qds.c b/board/freescale/t1040qds/t1040qds.c index 911190b1fe..55516b9f06 100644 --- a/board/freescale/t1040qds/t1040qds.c +++ b/board/freescale/t1040qds/t1040qds.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/t104xrdb/t104xrdb.c b/board/freescale/t104xrdb/t104xrdb.c index c9557b465f..c7a645108f 100644 --- a/board/freescale/t104xrdb/t104xrdb.c +++ b/board/freescale/t104xrdb/t104xrdb.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/t208xqds/t208xqds.c b/board/freescale/t208xqds/t208xqds.c index abd069fdfe..86d6b1defe 100644 --- a/board/freescale/t208xqds/t208xqds.c +++ b/board/freescale/t208xqds/t208xqds.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/t208xrdb/t208xrdb.c b/board/freescale/t208xrdb/t208xrdb.c index adae3f96ca..d03d48bcfa 100644 --- a/board/freescale/t208xrdb/t208xrdb.c +++ b/board/freescale/t208xrdb/t208xrdb.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/t4qds/t4240emu.c b/board/freescale/t4qds/t4240emu.c index 512229a380..d9cb967c22 100644 --- a/board/freescale/t4qds/t4240emu.c +++ b/board/freescale/t4qds/t4240emu.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/t4qds/t4240qds.c b/board/freescale/t4qds/t4240qds.c index 125bfa31bf..bb18b97e6a 100644 --- a/board/freescale/t4qds/t4240qds.c +++ b/board/freescale/t4qds/t4240qds.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/freescale/t4rdb/t4240rdb.c b/board/freescale/t4rdb/t4240rdb.c index 3bfebb6214..0c95607762 100644 --- a/board/freescale/t4rdb/t4240rdb.c +++ b/board/freescale/t4rdb/t4240rdb.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/gateworks/gw_ventana/common.c b/board/gateworks/gw_ventana/common.c index a543916615..1240a9da17 100644 --- a/board/gateworks/gw_ventana/common.c +++ b/board/gateworks/gw_ventana/common.c @@ -10,6 +10,7 @@ #include #include #include +#include #include #include #include diff --git a/board/gdsys/a38x/keyprogram.c b/board/gdsys/a38x/keyprogram.c index 291edc340d..000897984a 100644 --- a/board/gdsys/a38x/keyprogram.c +++ b/board/gdsys/a38x/keyprogram.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include diff --git a/board/gdsys/mpc8308/hrcon.c b/board/gdsys/mpc8308/hrcon.c index d14a28ec94..60faa4688c 100644 --- a/board/gdsys/mpc8308/hrcon.c +++ b/board/gdsys/mpc8308/hrcon.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include diff --git a/board/gdsys/mpc8308/strider.c b/board/gdsys/mpc8308/strider.c index 1fdea675bd..886bc2b035 100644 --- a/board/gdsys/mpc8308/strider.c +++ b/board/gdsys/mpc8308/strider.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include diff --git a/board/gdsys/p1022/controlcenterd.c b/board/gdsys/p1022/controlcenterd.c index 7bdc924a89..6eb3d6c5d0 100644 --- a/board/gdsys/p1022/controlcenterd.c +++ b/board/gdsys/p1022/controlcenterd.c @@ -23,6 +23,7 @@ #include #include +#include #include #include #include diff --git a/board/hisilicon/poplar/poplar.c b/board/hisilicon/poplar/poplar.c index 77948445e2..4926419a90 100644 --- a/board/hisilicon/poplar/poplar.c +++ b/board/hisilicon/poplar/poplar.c @@ -155,6 +155,7 @@ static void usb2_phy_init(void) } #if defined(CONFIG_USB_GADGET) && defined(CONFIG_USB_GADGET_DWC2_OTG) +#include #include #include #include diff --git a/board/menlo/m53menlo/m53menlo.c b/board/menlo/m53menlo/m53menlo.c index a63af5fae0..bda5f0df5b 100644 --- a/board/menlo/m53menlo/m53menlo.c +++ b/board/menlo/m53menlo/m53menlo.c @@ -18,6 +18,7 @@ #include #include #include +#include #include #include #include diff --git a/board/nvidia/p2371-2180/p2371-2180.c b/board/nvidia/p2371-2180/p2371-2180.c index 4985302d6b..b1da5c9982 100644 --- a/board/nvidia/p2371-2180/p2371-2180.c +++ b/board/nvidia/p2371-2180/p2371-2180.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include diff --git a/board/nvidia/p2771-0000/p2771-0000.c b/board/nvidia/p2771-0000/p2771-0000.c index d294c7ae01..8c91b75f96 100644 --- a/board/nvidia/p2771-0000/p2771-0000.c +++ b/board/nvidia/p2771-0000/p2771-0000.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/board/renesas/alt/alt.c b/board/renesas/alt/alt.c index 0726776a57..77979704be 100644 --- a/board/renesas/alt/alt.c +++ b/board/renesas/alt/alt.c @@ -6,6 +6,7 @@ */ #include +#include #include #include #include diff --git a/board/renesas/gose/gose.c b/board/renesas/gose/gose.c index 7c61008739..bffa85c232 100644 --- a/board/renesas/gose/gose.c +++ b/board/renesas/gose/gose.c @@ -6,6 +6,7 @@ */ #include +#include #include #include #include diff --git a/board/renesas/koelsch/koelsch.c b/board/renesas/koelsch/koelsch.c index d07a7ca2ab..1bb3b492e2 100644 --- a/board/renesas/koelsch/koelsch.c +++ b/board/renesas/koelsch/koelsch.c @@ -7,6 +7,7 @@ */ #include +#include #include #include #include diff --git a/board/renesas/lager/lager.c b/board/renesas/lager/lager.c index f062bb0172..bda3295bad 100644 --- a/board/renesas/lager/lager.c +++ b/board/renesas/lager/lager.c @@ -8,6 +8,7 @@ */ #include +#include #include #include #include diff --git a/board/renesas/porter/porter.c b/board/renesas/porter/porter.c index 2e15a4cbbd..d3afc2a400 100644 --- a/board/renesas/porter/porter.c +++ b/board/renesas/porter/porter.c @@ -7,6 +7,7 @@ */ #include +#include #include #include #include diff --git a/board/renesas/silk/silk.c b/board/renesas/silk/silk.c index 59ba262ad7..bda6a414e6 100644 --- a/board/renesas/silk/silk.c +++ b/board/renesas/silk/silk.c @@ -7,6 +7,7 @@ */ #include +#include #include #include #include diff --git a/board/renesas/stout/stout.c b/board/renesas/stout/stout.c index 7c515950d6..95b5711fdb 100644 --- a/board/renesas/stout/stout.c +++ b/board/renesas/stout/stout.c @@ -9,6 +9,7 @@ */ #include +#include #include #include #include diff --git a/board/samsung/common/exynos5-dt.c b/board/samsung/common/exynos5-dt.c index 87eb381345..387d1b9180 100644 --- a/board/samsung/common/exynos5-dt.c +++ b/board/samsung/common/exynos5-dt.c @@ -6,6 +6,7 @@ #include #include #include +#include #include #include #include diff --git a/board/samsung/odroid/odroid.c b/board/samsung/odroid/odroid.c index 3e594fd850..9aa97f0f2c 100644 --- a/board/samsung/odroid/odroid.c +++ b/board/samsung/odroid/odroid.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #include diff --git a/board/siemens/common/board.c b/board/siemens/common/board.c index 622bde5f9f..676935a843 100644 --- a/board/siemens/common/board.c +++ b/board/siemens/common/board.c @@ -10,6 +10,7 @@ */ #include +#include #include #include #include diff --git a/board/ti/ks2_evm/board.c b/board/ti/ks2_evm/board.c index eed62e9cac..e9bc68049b 100644 --- a/board/ti/ks2_evm/board.c +++ b/board/ti/ks2_evm/board.c @@ -8,6 +8,7 @@ #include #include "board.h" +#include #include #include #include diff --git a/board/toradex/common/tdx-cfg-block.c b/board/toradex/common/tdx-cfg-block.c index c19d7611c2..9c86230595 100644 --- a/board/toradex/common/tdx-cfg-block.c +++ b/board/toradex/common/tdx-cfg-block.c @@ -21,6 +21,7 @@ #endif #include #include +#include #include #include #include diff --git a/board/varisys/cyrus/cyrus.c b/board/varisys/cyrus/cyrus.c index 4ccce8a736..fa02fefefa 100644 --- a/board/varisys/cyrus/cyrus.c +++ b/board/varisys/cyrus/cyrus.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/board/work-microwave/work_92105/work_92105_display.c b/board/work-microwave/work_92105/work_92105_display.c index ffa0fcfa87..db04dcabc7 100644 --- a/board/work-microwave/work_92105/work_92105_display.c +++ b/board/work-microwave/work_92105/work_92105_display.c @@ -15,6 +15,7 @@ #include #include #include +#include #include #include #include diff --git a/cmd/bdinfo.c b/cmd/bdinfo.c index 86c17dc427..ae6006f85f 100644 --- a/cmd/bdinfo.c +++ b/cmd/bdinfo.c @@ -9,6 +9,7 @@ */ #include #include +#include #include DECLARE_GLOBAL_DATA_PTR; diff --git a/cmd/bootefi.c b/cmd/bootefi.c index a45bfd139f..f613cce7e2 100644 --- a/cmd/bootefi.c +++ b/cmd/bootefi.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include diff --git a/cmd/bootm.c b/cmd/bootm.c index 41b341e2e5..b326ac9b43 100644 --- a/cmd/bootm.c +++ b/cmd/bootm.c @@ -10,6 +10,7 @@ #include #include #include +#include #include #include #include diff --git a/cmd/bootmenu.c b/cmd/bootmenu.c index 0ae9d5a681..3dc2c854ac 100644 --- a/cmd/bootmenu.c +++ b/cmd/bootmenu.c @@ -6,6 +6,7 @@ #include #include #include +#include #include #include #include diff --git a/cmd/fpga.c b/cmd/fpga.c index 9fc2df699d..b1c7b5453b 100644 --- a/cmd/fpga.c +++ b/cmd/fpga.c @@ -9,6 +9,7 @@ */ #include #include +#include #include #include #include diff --git a/cmd/itest.c b/cmd/itest.c index fd6f4166f1..8b630d71e6 100644 --- a/cmd/itest.c +++ b/cmd/itest.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include diff --git a/cmd/mvebu/bubt.c b/cmd/mvebu/bubt.c index b4d371f305..84d2d531f0 100644 --- a/cmd/mvebu/bubt.c +++ b/cmd/mvebu/bubt.c @@ -7,6 +7,7 @@ #include #include #include +#include #include #include #include diff --git a/common/bootretry.c b/common/bootretry.c index 072055b010..47aaaa8220 100644 --- a/common/bootretry.c +++ b/common/bootretry.c @@ -7,6 +7,7 @@ #include #include #include +#include #include #include diff --git a/common/cli.c b/common/cli.c index f4054fb1fc..49b910666b 100644 --- a/common/cli.c +++ b/common/cli.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include diff --git a/common/cli_simple.c b/common/cli_simple.c index 311880ad56..6c881c133c 100644 --- a/common/cli_simple.c +++ b/common/cli_simple.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #define DEBUG_PARSER 0 /* set to 1 to debug */ diff --git a/common/fdt_support.c b/common/fdt_support.c index 86de5b8f05..baf7924ff6 100644 --- a/common/fdt_support.c +++ b/common/fdt_support.c @@ -7,6 +7,7 @@ */ #include +#include #include #include #include diff --git a/common/image.c b/common/image.c index 719229cc43..4a578f3ef0 100644 --- a/common/image.c +++ b/common/image.c @@ -8,6 +8,7 @@ #ifndef USE_HOSTCC #include +#include #include #ifdef CONFIG_SHOW_BOOT_PROGRESS diff --git a/common/spl/spl_ext.c b/common/spl/spl_ext.c index fe05223605..2a6252229c 100644 --- a/common/spl/spl_ext.c +++ b/common/spl/spl_ext.c @@ -1,6 +1,7 @@ // SPDX-License-Identifier: GPL-2.0+ #include +#include #include #include #include diff --git a/common/spl/spl_fat.c b/common/spl/spl_fat.c index 163e540622..aa371ab52c 100644 --- a/common/spl/spl_fat.c +++ b/common/spl/spl_fat.c @@ -9,6 +9,7 @@ */ #include +#include #include #include #include diff --git a/common/splash.c b/common/splash.c index 79d50577ee..e15cc847b6 100644 --- a/common/splash.c +++ b/common/splash.c @@ -21,6 +21,7 @@ */ #include +#include #include #include diff --git a/common/splash_source.c b/common/splash_source.c index 8f276a34ca..d37b4b304c 100644 --- a/common/splash_source.c +++ b/common/splash_source.c @@ -7,6 +7,7 @@ #include #include +#include #include #include #include diff --git a/common/usb_hub.c b/common/usb_hub.c index 9069f4b33a..25c2ac4345 100644 --- a/common/usb_hub.c +++ b/common/usb_hub.c @@ -24,6 +24,7 @@ #include #include #include +#include #include #include #include diff --git a/common/usb_kbd.c b/common/usb_kbd.c index cc99c6be07..3873737461 100644 --- a/common/usb_kbd.c +++ b/common/usb_kbd.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include diff --git a/disk/part.c b/disk/part.c index 7e84214731..8982ef3bae 100644 --- a/disk/part.c +++ b/disk/part.c @@ -6,6 +6,7 @@ #include #include +#include #include #include #include diff --git a/disk/part_amiga.c b/disk/part_amiga.c index 86d008d476..5a2bb718b5 100644 --- a/disk/part_amiga.c +++ b/disk/part_amiga.c @@ -6,6 +6,7 @@ */ #include #include +#include #include #include "part_amiga.h" diff --git a/drivers/dfu/dfu.c b/drivers/dfu/dfu.c index 318949529b..d2b67b18cf 100644 --- a/drivers/dfu/dfu.c +++ b/drivers/dfu/dfu.c @@ -7,6 +7,7 @@ */ #include +#include #include #include #include diff --git a/drivers/fastboot/fb_common.c b/drivers/fastboot/fb_common.c index 17eca73be0..e76af8ecc3 100644 --- a/drivers/fastboot/fb_common.c +++ b/drivers/fastboot/fb_common.c @@ -11,6 +11,7 @@ */ #include +#include #include #include diff --git a/drivers/fastboot/fb_getvar.c b/drivers/fastboot/fb_getvar.c index ebe5c8a104..95cb434189 100644 --- a/drivers/fastboot/fb_getvar.c +++ b/drivers/fastboot/fb_getvar.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include diff --git a/drivers/fastboot/fb_mmc.c b/drivers/fastboot/fb_mmc.c index 0a335db3a6..b0b19c5762 100644 --- a/drivers/fastboot/fb_mmc.c +++ b/drivers/fastboot/fb_mmc.c @@ -6,6 +6,7 @@ #include #include #include +#include #include #include #include diff --git a/drivers/input/i8042.c b/drivers/input/i8042.c index 9a5dc46207..98015899f2 100644 --- a/drivers/input/i8042.c +++ b/drivers/input/i8042.c @@ -8,6 +8,7 @@ #include #include +#include #include #include #include diff --git a/drivers/input/input.c b/drivers/input/input.c index 4f514dba56..6ab378b979 100644 --- a/drivers/input/input.c +++ b/drivers/input/input.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include diff --git a/drivers/misc/fs_loader.c b/drivers/misc/fs_loader.c index f42eeff8f6..88e486e9d5 100644 --- a/drivers/misc/fs_loader.c +++ b/drivers/misc/fs_loader.c @@ -5,6 +5,7 @@ */ #include #include +#include #include #include #include diff --git a/drivers/net/dc2114x.c b/drivers/net/dc2114x.c index e3c403c13f..43c2253f10 100644 --- a/drivers/net/dc2114x.c +++ b/drivers/net/dc2114x.c @@ -1,6 +1,7 @@ // SPDX-License-Identifier: GPL-2.0+ #include +#include #include #include #include diff --git a/drivers/net/fm/fdt.c b/drivers/net/fm/fdt.c index 6125797125..72d1294751 100644 --- a/drivers/net/fm/fdt.c +++ b/drivers/net/fm/fdt.c @@ -3,6 +3,7 @@ * Copyright 2016 Freescale Semiconductor, Inc. */ #include +#include #include /* For struct qe_firmware */ #ifdef CONFIG_SYS_DPAA_FMAN diff --git a/drivers/net/fsl-mc/mc.c b/drivers/net/fsl-mc/mc.c index cc59b21f9f..1d96e4bdc2 100644 --- a/drivers/net/fsl-mc/mc.c +++ b/drivers/net/fsl-mc/mc.c @@ -5,6 +5,7 @@ * Copyright 2017-2018 NXP */ #include +#include #include #include #include diff --git a/drivers/net/fsl_mcdmafec.c b/drivers/net/fsl_mcdmafec.c index 88309b186c..41752c0b6a 100644 --- a/drivers/net/fsl_mcdmafec.c +++ b/drivers/net/fsl_mcdmafec.c @@ -8,6 +8,7 @@ */ #include +#include #include #include #include diff --git a/drivers/net/ftmac100.c b/drivers/net/ftmac100.c index c08889c4b1..d8f1dde657 100644 --- a/drivers/net/ftmac100.c +++ b/drivers/net/ftmac100.c @@ -8,6 +8,7 @@ #include #include +#include #include #include #include diff --git a/drivers/net/mcffec.c b/drivers/net/mcffec.c index 2b54e3a549..a8553cbbc2 100644 --- a/drivers/net/mcffec.c +++ b/drivers/net/mcffec.c @@ -8,6 +8,7 @@ */ #include +#include #include #include diff --git a/drivers/net/phy/micrel_ksz90x1.c b/drivers/net/phy/micrel_ksz90x1.c index f18e40a2fe..0105fc5af1 100644 --- a/drivers/net/phy/micrel_ksz90x1.c +++ b/drivers/net/phy/micrel_ksz90x1.c @@ -10,6 +10,7 @@ */ #include #include +#include #include #include #include diff --git a/drivers/net/sh_eth.c b/drivers/net/sh_eth.c index 2d5c97062f..e2ca4749f7 100644 --- a/drivers/net/sh_eth.c +++ b/drivers/net/sh_eth.c @@ -10,6 +10,7 @@ #include #include +#include #include #include #include diff --git a/drivers/pci/fsl_pci_init.c b/drivers/pci/fsl_pci_init.c index b4c8556686..ab5e49941f 100644 --- a/drivers/pci/fsl_pci_init.c +++ b/drivers/pci/fsl_pci_init.c @@ -4,6 +4,7 @@ */ #include +#include #include #include diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c index e2195726c8..5db24f1c51 100644 --- a/drivers/pci/pci.c +++ b/drivers/pci/pci.c @@ -17,6 +17,7 @@ #include #include +#include #include #include #include diff --git a/drivers/pci/pci_common.c b/drivers/pci/pci_common.c index 9f2d2678e3..5231b69dc9 100644 --- a/drivers/pci/pci_common.c +++ b/drivers/pci/pci_common.c @@ -11,6 +11,7 @@ #include #include +#include #include #include #include diff --git a/drivers/reset/reset-socfpga.c b/drivers/reset/reset-socfpga.c index 822a3fe265..93ec9cfdb6 100644 --- a/drivers/reset/reset-socfpga.c +++ b/drivers/reset/reset-socfpga.c @@ -16,6 +16,7 @@ #include #include #include +#include #include #include #include diff --git a/drivers/rtc/m41t60.c b/drivers/rtc/m41t60.c index c84c8e11b3..532d2105e1 100644 --- a/drivers/rtc/m41t60.c +++ b/drivers/rtc/m41t60.c @@ -17,6 +17,7 @@ #include #include +#include #include #include diff --git a/drivers/serial/usbtty.c b/drivers/serial/usbtty.c index d0465b844e..76d9c8a3a6 100644 --- a/drivers/serial/usbtty.c +++ b/drivers/serial/usbtty.c @@ -10,6 +10,7 @@ #include #include #include +#include #include #include #include "usbtty.h" diff --git a/drivers/usb/gadget/designware_udc.c b/drivers/usb/gadget/designware_udc.c index fa947dade6..432f312cee 100644 --- a/drivers/usb/gadget/designware_udc.c +++ b/drivers/usb/gadget/designware_udc.c @@ -10,6 +10,7 @@ #include #include +#include #include #include "ep0.h" #include diff --git a/drivers/usb/gadget/f_dfu.c b/drivers/usb/gadget/f_dfu.c index e27f146605..6756155133 100644 --- a/drivers/usb/gadget/f_dfu.c +++ b/drivers/usb/gadget/f_dfu.c @@ -14,6 +14,7 @@ * (C) Copyright 2006 by Harald Welte */ +#include #include #include #include diff --git a/drivers/usb/gadget/f_fastboot.c b/drivers/usb/gadget/f_fastboot.c index 3ad4346f2d..fc27dbe8de 100644 --- a/drivers/usb/gadget/f_fastboot.c +++ b/drivers/usb/gadget/f_fastboot.c @@ -11,6 +11,7 @@ */ #include #include +#include #include #include #include diff --git a/drivers/usb/gadget/f_rockusb.c b/drivers/usb/gadget/f_rockusb.c index f3d24772cd..1cfeabcd31 100644 --- a/drivers/usb/gadget/f_rockusb.c +++ b/drivers/usb/gadget/f_rockusb.c @@ -6,6 +6,7 @@ */ #include #include +#include #include #include #include diff --git a/drivers/usb/host/ehci-fsl.c b/drivers/usb/host/ehci-fsl.c index b8f8e7a794..ced295ef0f 100644 --- a/drivers/usb/host/ehci-fsl.c +++ b/drivers/usb/host/ehci-fsl.c @@ -8,6 +8,7 @@ */ #include +#include #include #include #include diff --git a/drivers/video/ati_radeon_fb.c b/drivers/video/ati_radeon_fb.c index 87557e52c0..6fce033636 100644 --- a/drivers/video/ati_radeon_fb.c +++ b/drivers/video/ati_radeon_fb.c @@ -19,6 +19,7 @@ #include #include +#include #include #include #include diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c index ac02921d46..e5c077e4f5 100644 --- a/drivers/video/cfb_console.c +++ b/drivers/video/cfb_console.c @@ -65,6 +65,7 @@ */ #include +#include #include #include #include diff --git a/drivers/video/mb862xx.c b/drivers/video/mb862xx.c index 1a3c970b3d..301c1f0df1 100644 --- a/drivers/video/mb862xx.c +++ b/drivers/video/mb862xx.c @@ -12,6 +12,7 @@ #include #include +#include #include #include #include "videomodes.h" diff --git a/drivers/video/mx3fb.c b/drivers/video/mx3fb.c index 176ae70b7c..a984443ef9 100644 --- a/drivers/video/mx3fb.c +++ b/drivers/video/mx3fb.c @@ -6,6 +6,7 @@ * HALE electronic GmbH, */ #include +#include #include #include diff --git a/drivers/video/mxsfb.c b/drivers/video/mxsfb.c index 6c9a7c05e8..6922a130c6 100644 --- a/drivers/video/mxsfb.c +++ b/drivers/video/mxsfb.c @@ -6,6 +6,7 @@ */ #include #include +#include #include #include #include diff --git a/drivers/video/videomodes.c b/drivers/video/videomodes.c index d7614329ff..ac25b45f81 100644 --- a/drivers/video/videomodes.c +++ b/drivers/video/videomodes.c @@ -58,6 +58,7 @@ #include #include +#include #include #include diff --git a/env/callback.c b/env/callback.c index 54d2de4a96..95be80d454 100644 --- a/env/callback.c +++ b/env/callback.c @@ -5,6 +5,7 @@ */ #include +#include #include #if defined(CONFIG_NEEDS_MANUAL_RELOC) diff --git a/env/eeprom.c b/env/eeprom.c index ac2689cc14..8d82cf892c 100644 --- a/env/eeprom.c +++ b/env/eeprom.c @@ -9,6 +9,7 @@ #include #include +#include #include #include #if defined(CONFIG_I2C_ENV_EEPROM_BUS) diff --git a/env/nvram.c b/env/nvram.c index df1b37913d..a5b1873aaf 100644 --- a/env/nvram.c +++ b/env/nvram.c @@ -25,6 +25,7 @@ #include #include +#include #include #include #include diff --git a/include/common.h b/include/common.h index 739bbd400a..70f40daa9e 100644 --- a/include/common.h +++ b/include/common.h @@ -145,18 +145,6 @@ int do_fat_fsload(cmd_tbl_t *, int, int, char * const []); /* common/cmd_ext2.c */ int do_ext2load(cmd_tbl_t *, int, int, char * const []); -/** - * env_get() - Look up the value of an environment variable - * - * In U-Boot proper this can be called before relocation (which is when the - * environment is loaded from storage, i.e. GD_FLG_ENV_READY is 0). In that - * case this function calls env_get_f(). - * - * @varname: Variable to look up - * @return value of variable, or NULL if not found - */ -char *env_get(const char *varname); - void pci_init_board(void); /* common/exports.c */ diff --git a/include/env.h b/include/env.h index 6770a6176d..297fd7a071 100644 --- a/include/env.h +++ b/include/env.h @@ -51,6 +51,18 @@ void env_relocate(void); */ int env_match(unsigned char *name, int index); +/** + * env_get() - Look up the value of an environment variable + * + * In U-Boot proper this can be called before relocation (which is when the + * environment is loaded from storage, i.e. GD_FLG_ENV_READY is 0). In that + * case this function calls env_get_f(). + * + * @varname: Variable to look up + * @return value of variable, or NULL if not found + */ +char *env_get(const char *varname); + /** * env_get_f() - Look up the value of an environment variable (early) * diff --git a/lib/efi_loader/efi_console.c b/lib/efi_loader/efi_console.c index 6c8229da42..d4765afb98 100644 --- a/lib/efi_loader/efi_console.c +++ b/lib/efi_loader/efi_console.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include diff --git a/lib/smbios.c b/lib/smbios.c index e8ee55c4ae..7b74971f68 100644 --- a/lib/smbios.c +++ b/lib/smbios.c @@ -6,6 +6,7 @@ */ #include +#include #include #include #include diff --git a/net/link_local.c b/net/link_local.c index 31cdef4083..dd9fcad087 100644 --- a/net/link_local.c +++ b/net/link_local.c @@ -12,6 +12,7 @@ */ #include +#include #include #include "arp.h" #include "net_rand.h" diff --git a/net/tftp.c b/net/tftp.c index 34488b76c8..5a69bca641 100644 --- a/net/tftp.c +++ b/net/tftp.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include From b79cf1af0d1cf175c4414ea1b8465747431d77cf Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:53 -0600 Subject: [PATCH 29/51] env: Move eth_env_get/set_enetaddr() to env.h Move these two functions over to the new header file. Acked-by: Joe Hershberger Signed-off-by: Simon Glass --- include/env.h | 18 ++++++++++++++++++ include/environment.h | 2 -- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/include/env.h b/include/env.h index 297fd7a071..2e9a850284 100644 --- a/include/env.h +++ b/include/env.h @@ -164,4 +164,22 @@ static inline int env_set_addr(const char *varname, const void *addr) int env_complete(char *var, int maxv, char *cmdv[], int maxsz, char *buf, bool dollar_comp); +/** + * eth_env_get_enetaddr() - Get an ethernet address from the environmnet + * + * @name: Environment variable to get (e.g. "ethaddr") + * @enetaddr: Place to put MAC address (6 bytes) + * @return 0 if OK, 1 on error + */ +int eth_env_get_enetaddr(const char *name, uint8_t *enetaddr); + +/** + * eth_env_set_enetaddr() - Set an ethernet address in the environmnet + * + * @name: Environment variable to set (e.g. "ethaddr") + * @enetaddr: Pointer to MAC address to put into the variable (6 bytes) + * @return 0 if OK, 1 on error + */ +int eth_env_set_enetaddr(const char *name, const uint8_t *enetaddr); + #endif diff --git a/include/environment.h b/include/environment.h index de67cf4f0e..77915f459e 100644 --- a/include/environment.h +++ b/include/environment.h @@ -326,8 +326,6 @@ int env_erase(void); void env_fix_drivers(void); void eth_parse_enetaddr(const char *addr, uint8_t *enetaddr); -int eth_env_get_enetaddr(const char *name, uint8_t *enetaddr); -int eth_env_set_enetaddr(const char *name, const uint8_t *enetaddr); #endif /* DO_DEPS_ONLY */ From 36c8b143c0c113232bcf47d6499a3982fdfaf98a Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:54 -0600 Subject: [PATCH 30/51] env: net: Move eth_parse_enetaddr() to net.c/h This function fits better with the network subsystem, so move it. Signed-off-by: Simon Glass Suggested-by: Joe Hershberger --- cmd/nvedit.c | 12 ------------ include/environment.h | 2 -- include/net.h | 11 +++++++++++ net/net.c | 12 ++++++++++++ 4 files changed, 23 insertions(+), 14 deletions(-) diff --git a/cmd/nvedit.c b/cmd/nvedit.c index 751b77d0e9..01110e9b3a 100644 --- a/cmd/nvedit.c +++ b/cmd/nvedit.c @@ -358,18 +358,6 @@ ulong env_get_hex(const char *varname, ulong default_val) return value; } -void eth_parse_enetaddr(const char *addr, uint8_t *enetaddr) -{ - char *end; - int i; - - for (i = 0; i < 6; ++i) { - enetaddr[i] = addr ? simple_strtoul(addr, &end, 16) : 0; - if (addr) - addr = (*end) ? end + 1 : end; - } -} - int eth_env_get_enetaddr(const char *name, uint8_t *enetaddr) { eth_parse_enetaddr(env_get(name), enetaddr); diff --git a/include/environment.h b/include/environment.h index 77915f459e..0de9d3fc60 100644 --- a/include/environment.h +++ b/include/environment.h @@ -325,8 +325,6 @@ int env_erase(void); */ void env_fix_drivers(void); -void eth_parse_enetaddr(const char *addr, uint8_t *enetaddr); - #endif /* DO_DEPS_ONLY */ #endif /* _ENVIRONMENT_H_ */ diff --git a/include/net.h b/include/net.h index 0262175c81..a54d5eeac5 100644 --- a/include/net.h +++ b/include/net.h @@ -875,4 +875,15 @@ int update_tftp(ulong addr, char *interface, char *devstring); /**********************************************************************/ +/** + * eth_parse_enetaddr() - Parse a MAC address + * + * Convert a string MAC address + * + * @addr: MAC address in aa:bb:cc:dd:ee:ff format, where each part is a 2-digit + * hex value + * @enetaddr: Place to put MAC address (6 bytes) + */ +void eth_parse_enetaddr(const char *addr, uint8_t *enetaddr); + #endif /* __NET_H__ */ diff --git a/net/net.c b/net/net.c index 1a175c4597..f0a3996cd6 100644 --- a/net/net.c +++ b/net/net.c @@ -1614,3 +1614,15 @@ ushort env_get_vlan(char *var) { return string_to_vlan(env_get(var)); } + +void eth_parse_enetaddr(const char *addr, uint8_t *enetaddr) +{ + char *end; + int i; + + for (i = 0; i < 6; ++i) { + enetaddr[i] = addr ? simple_strtoul(addr, &end, 16) : 0; + if (addr) + addr = (*end) ? end + 1 : end; + } +} From 03ed91887fa8da9d34a3921c1e111b28dff47a26 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:55 -0600 Subject: [PATCH 31/51] env: Move env_fix_drivers() to env.h Move this function over to the new header file. Signed-off-by: Simon Glass --- include/env.h | 5 +++++ include/environment.h | 5 ----- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/include/env.h b/include/env.h index 2e9a850284..8082f7a0eb 100644 --- a/include/env.h +++ b/include/env.h @@ -182,4 +182,9 @@ int eth_env_get_enetaddr(const char *name, uint8_t *enetaddr); */ int eth_env_set_enetaddr(const char *name, const uint8_t *enetaddr); +/** + * env_fix_drivers() - Updates envdriver as per relocation + */ +void env_fix_drivers(void); + #endif diff --git a/include/environment.h b/include/environment.h index 0de9d3fc60..7be1ef98ad 100644 --- a/include/environment.h +++ b/include/environment.h @@ -320,11 +320,6 @@ int env_save(void); */ int env_erase(void); -/** - * env_fix_drivers() - Updates envdriver as per relocation - */ -void env_fix_drivers(void); - #endif /* DO_DEPS_ONLY */ #endif /* _ENVIRONMENT_H_ */ From 0b9d8a0556e577190876ae756cf1de97104c9b41 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:56 -0600 Subject: [PATCH 32/51] env: Move set_default_vars to env.h Move this function to the new header file and rename it so it has an env_ prefix. Acked-by: Joe Hershberger Signed-off-by: Simon Glass --- cmd/nvedit.c | 2 +- env/common.c | 2 +- include/env.h | 11 +++++++++++ include/environment.h | 3 --- 4 files changed, 13 insertions(+), 5 deletions(-) diff --git a/cmd/nvedit.c b/cmd/nvedit.c index 01110e9b3a..d1178f6033 100644 --- a/cmd/nvedit.c +++ b/cmd/nvedit.c @@ -820,7 +820,7 @@ static int do_env_default(cmd_tbl_t *cmdtp, int flag, } if (!all && (argc > 0)) { /* Reset individual variables */ - set_default_vars(argc, argv, env_flag); + env_set_default_vars(argc, argv, env_flag); return 0; } diff --git a/env/common.c b/env/common.c index 1fbc4a874d..db2a033f68 100644 --- a/env/common.c +++ b/env/common.c @@ -92,7 +92,7 @@ void set_default_env(const char *s, int flags) /* [re]set individual variables to their value in the default environment */ -int set_default_vars(int nvars, char * const vars[], int flags) +int env_set_default_vars(int nvars, char * const vars[], int flags) { /* * Special use-case: import from default environment diff --git a/include/env.h b/include/env.h index 8082f7a0eb..fc3519f8c5 100644 --- a/include/env.h +++ b/include/env.h @@ -187,4 +187,15 @@ int eth_env_set_enetaddr(const char *name, const uint8_t *enetaddr); */ void env_fix_drivers(void); +/** + * env_set_default_vars() - reset variables to their default value + * + * This resets individual variables to their value in the default environment + * + * @nvars: Number of variables to set/reset + * @vars: List of variables to set/reset + * @flags: Flags controlling matching (H_... - see search.h) + */ +int env_set_default_vars(int nvars, char *const vars[], int flags); + #endif diff --git a/include/environment.h b/include/environment.h index 7be1ef98ad..97d4886599 100644 --- a/include/environment.h +++ b/include/environment.h @@ -274,9 +274,6 @@ char *env_get_default(const char *name); /* [re]set to the default environment */ void set_default_env(const char *s, int flags); -/* [re]set individual variables to their value in the default environment */ -int set_default_vars(int nvars, char * const vars[], int flags); - /* Import from binary representation into hash table */ int env_import(const char *buf, int check); From 4be490ae337355c56da6122d263ef7747d48f983 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:57 -0600 Subject: [PATCH 33/51] env: Move env_load/save functions to env.h Move these function to the new header file. Acked-by: Joe Hershberger Signed-off-by: Simon Glass --- include/env.h | 21 +++++++++++++++++++++ include/environment.h | 21 --------------------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/include/env.h b/include/env.h index fc3519f8c5..69ccfb706e 100644 --- a/include/env.h +++ b/include/env.h @@ -198,4 +198,25 @@ void env_fix_drivers(void); */ int env_set_default_vars(int nvars, char *const vars[], int flags); +/** + * env_load() - Load the environment from storage + * + * @return 0 if OK, -ve on error + */ +int env_load(void); + +/** + * env_save() - Save the environment to storage + * + * @return 0 if OK, -ve on error + */ +int env_save(void); + +/** + * env_erase() - Erase the environment on storage + * + * @return 0 if OK, -ve on error + */ +int env_erase(void); + #endif diff --git a/include/environment.h b/include/environment.h index 97d4886599..b921b8f28e 100644 --- a/include/environment.h +++ b/include/environment.h @@ -296,27 +296,6 @@ int env_import_redund(const char *buf1, int buf1_status, */ int env_get_char(int index); -/** - * env_load() - Load the environment from storage - * - * @return 0 if OK, -ve on error - */ -int env_load(void); - -/** - * env_save() - Save the environment to storage - * - * @return 0 if OK, -ve on error - */ -int env_save(void); - -/** - * env_erase() - Erase the environment on storage - * - * @return 0 if OK, -ve on error - */ -int env_erase(void); - #endif /* DO_DEPS_ONLY */ #endif /* _ENVIRONMENT_H_ */ From 4e9ce8a65fe4510664822a2de4b0d2cf61859b6c Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:58 -0600 Subject: [PATCH 34/51] env: Move env import/export functions to env.h Move these functions to the new header file. Acked-by: Joe Hershberger Signed-off-by: Simon Glass --- include/env.h | 38 ++++++++++++++++++++++++++++++++++++++ include/environment.h | 12 ------------ 2 files changed, 38 insertions(+), 12 deletions(-) diff --git a/include/env.h b/include/env.h index 69ccfb706e..0b03f8aa42 100644 --- a/include/env.h +++ b/include/env.h @@ -12,6 +12,8 @@ #include #include +struct environment_s; + /** * env_get_id() - Gets a sequence number for the environment * @@ -219,4 +221,40 @@ int env_save(void); */ int env_erase(void); +/** + * env_import() - Import from a binary representation into hash table + * + * This imports the environment from a buffer. The format for each variable is + * var=value\0 with a double \0 at the end of the buffer. + * + * @buf: Buffer containing the environment (struct environemnt_s *) + * @check: non-zero to check the CRC at the start of the environment, 0 to + * ignore it + * @return 0 if imported successfully, -ENOMSG if the CRC was bad, -EIO if + * something else went wrong + */ +int env_import(const char *buf, int check); + +/** + * env_export() - Export the environment to a buffer + * + * Export from hash table into binary representation + * + * @env_out: Buffer to contain the environment (must be large enough!) + * @return 0 if OK, 1 on error + */ +int env_export(struct environment_s *env_out); + +/** + * env_import_redund() - Select and import one of two redundant environments + * + * @buf1: First environment (struct environemnt_s *) + * @buf1_read_fail: 0 if buf1 is valid, non-zero if invalid + * @buf2: Second environment (struct environemnt_s *) + * @buf2_read_fail: 0 if buf2 is valid, non-zero if invalid + * @return 0 if OK, -EIO if no environment is valid, -ENOMSG if the CRC was bad + */ +int env_import_redund(const char *buf1, int buf1_read_fail, + const char *buf2, int buf2_read_fail); + #endif diff --git a/include/environment.h b/include/environment.h index b921b8f28e..c740d5a216 100644 --- a/include/environment.h +++ b/include/environment.h @@ -274,18 +274,6 @@ char *env_get_default(const char *name); /* [re]set to the default environment */ void set_default_env(const char *s, int flags); -/* Import from binary representation into hash table */ -int env_import(const char *buf, int check); - -/* Export from hash table into binary representation */ -int env_export(env_t *env_out); - -#ifdef CONFIG_SYS_REDUNDAND_ENVIRONMENT -/* Select and import one of two redundant environments */ -int env_import_redund(const char *buf1, int buf1_status, - const char *buf2, int buf2_status); -#endif - /** * env_get_char() - Get a character from the early environment * From 1f3db0c135fcaf40ff88bdcd058b56bc7e1f58f3 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:46:59 -0600 Subject: [PATCH 35/51] env: Drop env_crc_update() This function is not defined or used in U-Boot. Drop it. Signed-off-by: Simon Glass Acked-by: Joe Hershberger --- include/environment.h | 3 --- 1 file changed, 3 deletions(-) diff --git a/include/environment.h b/include/environment.h index c740d5a216..27c0fee65f 100644 --- a/include/environment.h +++ b/include/environment.h @@ -265,9 +265,6 @@ struct env_driver { extern struct hsearch_data env_htab; -/* Function that updates CRC of the enironment */ -void env_crc_update(void); - /* Look up the variable from the default environment */ char *env_get_default(const char *name); From 0ac7d722ede8e64973f68dbcd07b9521ba04cb63 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:47:00 -0600 Subject: [PATCH 36/51] env: Move get/set_default_env() to env.h Move these functions to the new header file and rename set_default_env() to env_set_default() so that it has a consistent env_ prefix. Acked-by: Joe Hershberger Signed-off-by: Simon Glass --- arch/arm/mach-imx/mx6/opos6ul.c | 2 +- board/phytec/pcm052/pcm052.c | 2 +- cmd/nvedit.c | 2 +- common/board_r.c | 2 +- common/spl/spl_dfu.c | 2 +- env/common.c | 14 +++++++------- env/ext4.c | 3 ++- env/fat.c | 3 ++- env/mmc.c | 5 +++-- env/nand.c | 7 ++++--- env/sata.c | 3 ++- env/sf.c | 11 ++++++----- env/ubi.c | 7 ++++--- include/env.h | 11 +++++++++++ include/environment.h | 6 ------ 15 files changed, 46 insertions(+), 34 deletions(-) diff --git a/arch/arm/mach-imx/mx6/opos6ul.c b/arch/arm/mach-imx/mx6/opos6ul.c index 8b921a7d37..183a0c961c 100644 --- a/arch/arm/mach-imx/mx6/opos6ul.c +++ b/arch/arm/mach-imx/mx6/opos6ul.c @@ -128,7 +128,7 @@ int board_late_init(void) /* In bootstrap don't use the env vars */ if (((reg & 0x3000000) >> 24) == 0x1) { - set_default_env(NULL, 0); + env_set_default(NULL, 0); env_set("preboot", ""); } diff --git a/board/phytec/pcm052/pcm052.c b/board/phytec/pcm052/pcm052.c index dffd03786d..2417111765 100644 --- a/board/phytec/pcm052/pcm052.c +++ b/board/phytec/pcm052/pcm052.c @@ -377,7 +377,7 @@ int board_late_init(void) if ((reg & SRC_SBMR1_BOOTCFG1_SDMMC) && !(reg & SRC_SBMR1_BOOTCFG1_MMC)) { printf("------ SD card boot -------\n"); - set_default_env("!LVFBootloader", 0); + env_set_default("!LVFBootloader", 0); env_set("bootcmd", "run prepare_install_bk4r1_envs; run install_bk4r1rs"); } diff --git a/cmd/nvedit.c b/cmd/nvedit.c index d1178f6033..acbe85b8e4 100644 --- a/cmd/nvedit.c +++ b/cmd/nvedit.c @@ -814,7 +814,7 @@ static int do_env_default(cmd_tbl_t *cmdtp, int flag, debug("Final value for argc=%d\n", argc); if (all && (argc == 0)) { /* Reset the whole environment */ - set_default_env("## Resetting to default environment\n", + env_set_default("## Resetting to default environment\n", env_flag); return 0; } diff --git a/common/board_r.c b/common/board_r.c index 99b128571e..f4193cdbec 100644 --- a/common/board_r.c +++ b/common/board_r.c @@ -448,7 +448,7 @@ static int initr_env(void) if (should_load_env()) env_relocate(); else - set_default_env(NULL, 0); + env_set_default(NULL, 0); #ifdef CONFIG_OF_CONTROL env_set_hex("fdtcontroladdr", (unsigned long)map_to_sysmem(gd->fdt_blob)); diff --git a/common/spl/spl_dfu.c b/common/spl/spl_dfu.c index a05b867567..3f54ae0260 100644 --- a/common/spl/spl_dfu.c +++ b/common/spl/spl_dfu.c @@ -39,7 +39,7 @@ int spl_dfu_cmd(int usbctrl, char *dfu_alt_info, char *interface, char *devstr) int ret; /* set default environment */ - set_default_env(NULL, 0); + env_set_default(NULL, 0); str_env = env_get(dfu_alt_info); if (!str_env) { pr_err("\"%s\" env variable not defined!\n", dfu_alt_info); diff --git a/env/common.c b/env/common.c index db2a033f68..1d9d0f934d 100644 --- a/env/common.c +++ b/env/common.c @@ -62,7 +62,7 @@ char *env_get_default(const char *name) return ret_val; } -void set_default_env(const char *s, int flags) +void env_set_default(const char *s, int flags) { if (sizeof(default_environment) > ENV_SIZE) { puts("*** Error - default environment is too large\n\n"); @@ -118,7 +118,7 @@ int env_import(const char *buf, int check) memcpy(&crc, &ep->crc, sizeof(crc)); if (crc32(0, ep->data, ENV_SIZE) != crc) { - set_default_env("bad CRC", 0); + env_set_default("bad CRC", 0); return -ENOMSG; /* needed for env_load() */ } } @@ -131,7 +131,7 @@ int env_import(const char *buf, int check) pr_err("Cannot import environment: errno = %d\n", errno); - set_default_env("import failed", 0); + env_set_default("import failed", 0); return -EIO; } @@ -156,7 +156,7 @@ int env_import_redund(const char *buf1, int buf1_read_fail, } if (buf1_read_fail && buf2_read_fail) { - set_default_env("bad env area", 0); + env_set_default("bad env area", 0); return -EIO; } else if (!buf1_read_fail && buf2_read_fail) { gd->env_valid = ENV_VALID; @@ -172,7 +172,7 @@ int env_import_redund(const char *buf1, int buf1_read_fail, tmp_env2->crc; if (!crc1_ok && !crc2_ok) { - set_default_env("bad CRC", 0); + env_set_default("bad CRC", 0); return -ENOMSG; /* needed for env_load() */ } else if (crc1_ok && !crc2_ok) { gd->env_valid = ENV_VALID; @@ -236,10 +236,10 @@ void env_relocate(void) if (gd->env_valid == ENV_INVALID) { #if defined(CONFIG_ENV_IS_NOWHERE) || defined(CONFIG_SPL_BUILD) /* Environment not changable */ - set_default_env(NULL, 0); + env_set_default(NULL, 0); #else bootstage_error(BOOTSTAGE_ID_NET_CHECKSUM); - set_default_env("bad CRC", 0); + env_set_default("bad CRC", 0); #endif } else { env_load(); diff --git a/env/ext4.c b/env/ext4.c index 9947381bfd..6aa36867b6 100644 --- a/env/ext4.c +++ b/env/ext4.c @@ -21,6 +21,7 @@ #include #include +#include #include #include #include @@ -127,7 +128,7 @@ static int env_ext4_load(void) return env_import(buf, 1); err_env_relocate: - set_default_env(NULL, 0); + env_set_default(NULL, 0); return -EIO; } diff --git a/env/fat.c b/env/fat.c index 7f74c64dfe..d23753c6ff 100644 --- a/env/fat.c +++ b/env/fat.c @@ -9,6 +9,7 @@ #include #include +#include #include #include #include @@ -122,7 +123,7 @@ static int env_fat_load(void) return env_import(buf, 1); err_env_relocate: - set_default_env(NULL, 0); + env_set_default(NULL, 0); return -EIO; } diff --git a/env/mmc.c b/env/mmc.c index b7b833f423..4ca7c2b9ff 100644 --- a/env/mmc.c +++ b/env/mmc.c @@ -8,6 +8,7 @@ #include #include +#include #include #include #include @@ -346,7 +347,7 @@ fini: fini_mmc_for_env(mmc); err: if (ret) - set_default_env(errmsg, 0); + env_set_default(errmsg, 0); #endif return ret; @@ -387,7 +388,7 @@ fini: fini_mmc_for_env(mmc); err: if (ret) - set_default_env(errmsg, 0); + env_set_default(errmsg, 0); #endif return ret; } diff --git a/env/nand.c b/env/nand.c index d0b95f483d..3e2235f5f3 100644 --- a/env/nand.c +++ b/env/nand.c @@ -15,6 +15,7 @@ #include #include +#include #include #include #include @@ -325,7 +326,7 @@ static int env_nand_load(void) tmp_env2 = (env_t *)malloc(CONFIG_ENV_SIZE); if (tmp_env1 == NULL || tmp_env2 == NULL) { puts("Can't allocate buffers for environment\n"); - set_default_env("malloc() failed", 0); + env_set_default("malloc() failed", 0); ret = -EIO; goto done; } @@ -364,14 +365,14 @@ static int env_nand_load(void) if (mtd && !get_nand_env_oob(mtd, &nand_env_oob_offset)) { printf("Found Environment offset in OOB..\n"); } else { - set_default_env("no env offset in OOB", 0); + env_set_default("no env offset in OOB", 0); return; } #endif ret = readenv(CONFIG_ENV_OFFSET, (u_char *)buf); if (ret) { - set_default_env("readenv() failed", 0); + env_set_default("readenv() failed", 0); return -EIO; } diff --git a/env/sata.c b/env/sata.c index a2ff5c66f7..a5364dda5d 100644 --- a/env/sata.c +++ b/env/sata.c @@ -8,6 +8,7 @@ #include #include +#include #include #include #include @@ -106,7 +107,7 @@ static void env_sata_load(void) } if (read_env(sata, CONFIG_ENV_SIZE, CONFIG_ENV_OFFSET, buf)) { - set_default_env(NULL, 0); + env_set_default(NULL, 0); return -EIO; } diff --git a/env/sf.c b/env/sf.c index 4f92ae0568..5531293e05 100644 --- a/env/sf.c +++ b/env/sf.c @@ -10,6 +10,7 @@ */ #include #include +#include #include #include #include @@ -48,7 +49,7 @@ static int setup_flash_device(void) CONFIG_ENV_SPI_MAX_HZ, CONFIG_ENV_SPI_MODE, &new); if (ret) { - set_default_env("spi_flash_probe_bus_cs() failed", 0); + env_set_default("spi_flash_probe_bus_cs() failed", 0); return ret; } @@ -60,7 +61,7 @@ static int setup_flash_device(void) CONFIG_ENV_SPI_CS, CONFIG_ENV_SPI_MAX_HZ, CONFIG_ENV_SPI_MODE); if (!env_flash) { - set_default_env("spi_flash_probe() failed", 0); + env_set_default("spi_flash_probe() failed", 0); return -EIO; } } @@ -161,7 +162,7 @@ static int env_sf_load(void) tmp_env2 = (env_t *)memalign(ARCH_DMA_MINALIGN, CONFIG_ENV_SIZE); if (!tmp_env1 || !tmp_env2) { - set_default_env("malloc() failed", 0); + env_set_default("malloc() failed", 0); ret = -EIO; goto out; } @@ -256,7 +257,7 @@ static int env_sf_load(void) buf = (char *)memalign(ARCH_DMA_MINALIGN, CONFIG_ENV_SIZE); if (!buf) { - set_default_env("malloc() failed", 0); + env_set_default("malloc() failed", 0); return -EIO; } @@ -267,7 +268,7 @@ static int env_sf_load(void) ret = spi_flash_read(env_flash, CONFIG_ENV_OFFSET, CONFIG_ENV_SIZE, buf); if (ret) { - set_default_env("spi_flash_read() failed", 0); + env_set_default("spi_flash_read() failed", 0); goto err_read; } diff --git a/env/ubi.c b/env/ubi.c index e4b85167ec..a69db14afd 100644 --- a/env/ubi.c +++ b/env/ubi.c @@ -7,6 +7,7 @@ #include #include +#include #include #include #include @@ -123,7 +124,7 @@ static int env_ubi_load(void) if (ubi_part(CONFIG_ENV_UBI_PART, UBI_VID_OFFSET)) { printf("\n** Cannot find mtd partition \"%s\"\n", CONFIG_ENV_UBI_PART); - set_default_env(NULL, 0); + env_set_default(NULL, 0); return -EIO; } @@ -160,14 +161,14 @@ static int env_ubi_load(void) if (ubi_part(CONFIG_ENV_UBI_PART, UBI_VID_OFFSET)) { printf("\n** Cannot find mtd partition \"%s\"\n", CONFIG_ENV_UBI_PART); - set_default_env(NULL, 0); + env_set_default(NULL, 0); return -EIO; } if (ubi_volume_read(CONFIG_ENV_UBI_VOLUME, buf, CONFIG_ENV_SIZE)) { printf("\n** Unable to read env from %s:%s **\n", CONFIG_ENV_UBI_PART, CONFIG_ENV_UBI_VOLUME); - set_default_env(NULL, 0); + env_set_default(NULL, 0); return -EIO; } diff --git a/include/env.h b/include/env.h index 0b03f8aa42..7204a4bc55 100644 --- a/include/env.h +++ b/include/env.h @@ -257,4 +257,15 @@ int env_export(struct environment_s *env_out); int env_import_redund(const char *buf1, int buf1_read_fail, const char *buf2, int buf2_read_fail); +/** + * env_get_default() - Look up a variable from the default environment + * + * @name: Variable to look up + * @return value if found, NULL if not found in default environment + */ +char *env_get_default(const char *name); + +/* [re]set to the default environment */ +void env_set_default(const char *s, int flags); + #endif diff --git a/include/environment.h b/include/environment.h index 27c0fee65f..ef391cc21a 100644 --- a/include/environment.h +++ b/include/environment.h @@ -265,12 +265,6 @@ struct env_driver { extern struct hsearch_data env_htab; -/* Look up the variable from the default environment */ -char *env_get_default(const char *name); - -/* [re]set to the default environment */ -void set_default_env(const char *s, int flags); - /** * env_get_char() - Get a character from the early environment * From b5f449e8e947cf94055d0300a8625cd6bc9c37f5 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:47:01 -0600 Subject: [PATCH 37/51] env: Move env_get_char() to env.h Move env_get_char() over to the new header file. Acked-by: Joe Hershberger Signed-off-by: Simon Glass --- include/env.h | 10 ++++++++++ include/environment.h | 10 ---------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/include/env.h b/include/env.h index 7204a4bc55..42d8bcfa50 100644 --- a/include/env.h +++ b/include/env.h @@ -268,4 +268,14 @@ char *env_get_default(const char *name); /* [re]set to the default environment */ void env_set_default(const char *s, int flags); +/** + * env_get_char() - Get a character from the early environment + * + * This reads from the pre-relocation environment + * + * @index: Index of character to read (0 = first) + * @return character read, or -ve on error + */ +int env_get_char(int index); + #endif diff --git a/include/environment.h b/include/environment.h index ef391cc21a..ea45b57628 100644 --- a/include/environment.h +++ b/include/environment.h @@ -265,16 +265,6 @@ struct env_driver { extern struct hsearch_data env_htab; -/** - * env_get_char() - Get a character from the early environment - * - * This reads from the pre-relocation environment - * - * @index: Index of character to read (0 = first) - * @return character read, or -ve on error - */ -int env_get_char(int index); - #endif /* DO_DEPS_ONLY */ #endif /* _ENVIRONMENT_H_ */ From c62f62b0fccca951bdc91f3ab85f495fdcc0efb2 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:47:02 -0600 Subject: [PATCH 38/51] env: Move env_reloc() to env.h Move env_reloc() over to the new header file. Acked-by: Joe Hershberger Signed-off-by: Simon Glass --- include/env.h | 7 +++++++ include/environment.h | 4 ---- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/include/env.h b/include/env.h index 42d8bcfa50..727f58528f 100644 --- a/include/env.h +++ b/include/env.h @@ -278,4 +278,11 @@ void env_set_default(const char *s, int flags); */ int env_get_char(int index); +/** + * env_reloc() - Relocate the 'env' sub-commands + * + * This is used for those unfortunate archs with crappy toolchains + */ +void env_reloc(void); + #endif diff --git a/include/environment.h b/include/environment.h index ea45b57628..d23b92833e 100644 --- a/include/environment.h +++ b/include/environment.h @@ -158,10 +158,6 @@ extern env_t environment; extern const unsigned char default_environment[]; -#if defined(CONFIG_NEEDS_MANUAL_RELOC) -extern void env_reloc(void); -#endif - #ifndef DO_DEPS_ONLY #include From be54ec1624fb9a31b3fa30d55662d2c7b0832162 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:47:03 -0600 Subject: [PATCH 39/51] env: Rename environment to embedded_environment The name 'environment' is widely used in U-Boot so is not a very useful name of a variable. Rename it to better indicate its purpose. Signed-off-by: Simon Glass Acked-by: Joe Hershberger Reviewed-by: Simon Goldschmidt --- env/flash.c | 2 +- include/env_default.h | 2 +- include/environment.h | 2 +- tools/envcrc.c | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/env/flash.c b/env/flash.c index dca6567a09..a26d94309d 100644 --- a/env/flash.c +++ b/env/flash.c @@ -47,7 +47,7 @@ DECLARE_GLOBAL_DATA_PTR; #if defined(CONFIG_ENV_ADDR_REDUND) && defined(CMD_SAVEENV) || \ !defined(CONFIG_ENV_ADDR_REDUND) && defined(INITENV) #ifdef ENV_IS_EMBEDDED -static env_t *env_ptr = &environment; +static env_t *env_ptr = &embedded_environment; #else /* ! ENV_IS_EMBEDDED */ static env_t *env_ptr = (env_t *)CONFIG_ENV_ADDR; diff --git a/include/env_default.h b/include/env_default.h index 86b639d3e2..56a8bae39a 100644 --- a/include/env_default.h +++ b/include/env_default.h @@ -10,7 +10,7 @@ #include #ifdef DEFAULT_ENV_INSTANCE_EMBEDDED -env_t environment __UBOOT_ENV_SECTION__(environment) = { +env_t embedded_environment __UBOOT_ENV_SECTION__(environment) = { ENV_CRC, /* CRC Sum */ #ifdef CONFIG_SYS_REDUNDAND_ENVIRONMENT 1, /* Flags: valid */ diff --git a/include/environment.h b/include/environment.h index d23b92833e..44a527e1fa 100644 --- a/include/environment.h +++ b/include/environment.h @@ -153,7 +153,7 @@ typedef struct environment_s { } env_t; #ifdef ENV_IS_EMBEDDED -extern env_t environment; +extern env_t embedded_environment; #endif /* ENV_IS_EMBEDDED */ extern const unsigned char default_environment[]; diff --git a/tools/envcrc.c b/tools/envcrc.c index 505949289f..7eb7246d45 100644 --- a/tools/envcrc.c +++ b/tools/envcrc.c @@ -61,7 +61,7 @@ #ifdef CONFIG_BUILD_ENVCRC # include extern unsigned int env_size; -extern env_t environment; +extern env_t embedded_environment; #endif /* CONFIG_BUILD_ENVCRC */ extern uint32_t crc32 (uint32_t, const unsigned char *, unsigned int); @@ -71,7 +71,7 @@ int main (int argc, char **argv) #ifdef CONFIG_BUILD_ENVCRC unsigned char pad = 0x00; uint32_t crc; - unsigned char *envptr = (unsigned char *)&environment, + unsigned char *envptr = (unsigned char *)&embedded_environment, *dataptr = envptr + ENV_HEADER_SIZE; unsigned int datasize = ENV_SIZE; unsigned int eoe; From db19701039bc78b5870d74e0d7ecaf4f9e4d8d87 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:47:04 -0600 Subject: [PATCH 40/51] env: Move env_valid to env.h This enum is somewhat widely used to determine if the environment is valid or not. Move it to the common environment header file. Signed-off-by: Simon Glass Acked-by: Joe Hershberger --- env/flash.c | 1 + env/nowhere.c | 1 + include/env.h | 9 ++++++++- include/environment.h | 7 ------- 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/env/flash.c b/env/flash.c index a26d94309d..7a73466cf2 100644 --- a/env/flash.c +++ b/env/flash.c @@ -11,6 +11,7 @@ #include #include +#include #include #include #include diff --git a/env/nowhere.c b/env/nowhere.c index ea6c32eb3b..7db4eec845 100644 --- a/env/nowhere.c +++ b/env/nowhere.c @@ -9,6 +9,7 @@ #include #include +#include #include #include diff --git a/include/env.h b/include/env.h index 727f58528f..b59c3c36f2 100644 --- a/include/env.h +++ b/include/env.h @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: GPL-2.0+ */ /* - * Common environment functions + * Common environment functions and definitions * * (C) Copyright 2000-2009 * Wolfgang Denk, DENX Software Engineering, wd@denx.de. @@ -14,6 +14,13 @@ struct environment_s; +/* Value for environment validity */ +enum env_valid { + ENV_INVALID, /* No valid environment */ + ENV_VALID, /* First or only environment is valid */ + ENV_REDUND, /* Redundant environment is valid */ +}; + /** * env_get_id() - Gets a sequence number for the environment * diff --git a/include/environment.h b/include/environment.h index 44a527e1fa..c3e8d7840a 100644 --- a/include/environment.h +++ b/include/environment.h @@ -165,13 +165,6 @@ extern const unsigned char default_environment[]; #include #include -/* Value for environment validity */ -enum env_valid { - ENV_INVALID, /* No valid environment */ - ENV_VALID, /* First or only environment is valid */ - ENV_REDUND, /* Redundant environment is valid */ -}; - enum env_location { ENVL_UNKNOWN, ENVL_EEPROM, From 02cf9334280046e6b07ba304e7da2a273e445d5b Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:47:05 -0600 Subject: [PATCH 41/51] env: Move callback definitions to env.h These definitions are effectively part of the 'public' API of the environment implementation since they do not require access to any internal variables. Move them to the env.h header. Signed-off-by: Simon Glass Acked-by: Joe Hershberger --- include/env.h | 34 ++++++++++++++++++++++++++++++++++ include/env_callback.h | 23 ----------------------- include/search.h | 6 ------ 3 files changed, 34 insertions(+), 29 deletions(-) diff --git a/include/env.h b/include/env.h index b59c3c36f2..271cb3e888 100644 --- a/include/env.h +++ b/include/env.h @@ -21,6 +21,40 @@ enum env_valid { ENV_REDUND, /* Redundant environment is valid */ }; +/** enum env_op - environment callback operation */ +enum env_op { + env_op_create, + env_op_delete, + env_op_overwrite, +}; + +/** struct env_clbk_tbl - declares a new callback */ +struct env_clbk_tbl { + const char *name; /* Callback name */ + int (*callback)(const char *name, const char *value, enum env_op op, + int flags); +}; + +/* + * Define a callback that can be associated with variables. + * when associated through the ".callbacks" environment variable, the callback + * will be executed any time the variable is inserted, overwritten, or deleted. + * + * For SPL these are silently dropped to reduce code size, since environment + * callbacks are not supported with SPL. + */ +#ifdef CONFIG_SPL_BUILD +#define U_BOOT_ENV_CALLBACK(name, callback) \ + static inline __maybe_unused void _u_boot_env_noop_##name(void) \ + { \ + (void)callback; \ + } +#else +#define U_BOOT_ENV_CALLBACK(name, callback) \ + ll_entry_declare(struct env_clbk_tbl, name, env_clbk) = \ + {#name, callback} +#endif + /** * env_get_id() - Gets a sequence number for the environment * diff --git a/include/env_callback.h b/include/env_callback.h index 507a52e13c..3d30a33f5b 100644 --- a/include/env_callback.h +++ b/include/env_callback.h @@ -72,29 +72,6 @@ "serial#:serialno," \ CONFIG_ENV_CALLBACK_LIST_STATIC -struct env_clbk_tbl { - const char *name; /* Callback name */ - int (*callback)(const char *name, const char *value, enum env_op op, - int flags); -}; - void env_callback_init(ENTRY *var_entry); -/* - * Define a callback that can be associated with variables. - * when associated through the ".callbacks" environment variable, the callback - * will be executed any time the variable is inserted, overwritten, or deleted. - */ -#ifdef CONFIG_SPL_BUILD -#define U_BOOT_ENV_CALLBACK(name, callback) \ - static inline __maybe_unused void _u_boot_env_noop_##name(void) \ - { \ - (void)callback; \ - } -#else -#define U_BOOT_ENV_CALLBACK(name, callback) \ - ll_entry_declare(struct env_clbk_tbl, name, env_clbk) = \ - {#name, callback} -#endif - #endif /* __ENV_CALLBACK_H__ */ diff --git a/include/search.h b/include/search.h index 9750336b5e..f9fb29fdf9 100644 --- a/include/search.h +++ b/include/search.h @@ -19,12 +19,6 @@ #define __set_errno(val) do { errno = val; } while (0) -enum env_op { - env_op_create, - env_op_delete, - env_op_overwrite, -}; - /* Action which shall be performed in the call to hsearch. */ typedef enum { FIND, From dd2408cac1ea0f5e9ab4b07539c6edaee57918cb Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Fri, 2 Aug 2019 09:44:18 -0600 Subject: [PATCH 42/51] env: Drop the ENTRY typedef U-Boot is not supposed to use typedef for structs anymore. Also this name is the same as the ENTRY() macro used in assembler files, and 'entry' itself is widely used in U-Boot (>8k matches). Drop the typedef and rename the struct to env_entry to reduce confusion. Signed-off-by: Simon Glass Acked-by: Joe Hershberger --- api/api.c | 2 +- cmd/nvedit.c | 12 +++++------ drivers/tee/sandbox.c | 2 +- env/callback.c | 6 +++--- env/common.c | 2 +- env/flags.c | 10 +++++----- include/env_callback.h | 2 +- include/env_flags.h | 6 +++--- include/search.h | 21 +++++++++++--------- lib/hashtable.c | 45 +++++++++++++++++++++--------------------- test/env/hashtable.c | 12 +++++------ 11 files changed, 62 insertions(+), 58 deletions(-) diff --git a/api/api.c b/api/api.c index 8a41b7cce7..a0fc62ca9e 100644 --- a/api/api.c +++ b/api/api.c @@ -497,7 +497,7 @@ static int API_env_enum(va_list ap) { int i, buflen; char *last, **next, *s; - ENTRY *match, search; + struct env_entry *match, search; static char *var; last = (char *)va_arg(ap, unsigned long); diff --git a/cmd/nvedit.c b/cmd/nvedit.c index acbe85b8e4..39140c0733 100644 --- a/cmd/nvedit.c +++ b/cmd/nvedit.c @@ -94,7 +94,7 @@ static int env_print(char *name, int flag) ssize_t len; if (name) { /* print a single name */ - ENTRY e, *ep; + struct env_entry e, *ep; e.key = name; e.data = NULL; @@ -225,7 +225,7 @@ static int _do_env_set(int flag, int argc, char * const argv[], int env_flag) { int i, len; char *name, *value, *s; - ENTRY e, *ep; + struct env_entry e, *ep; debug("Initial value for argc=%d\n", argc); @@ -473,7 +473,7 @@ static int print_static_binding(const char *var_name, const char *callback_name, return 0; } -static int print_active_callback(ENTRY *entry) +static int print_active_callback(struct env_entry *entry) { struct env_clbk_tbl *clbkp; int i; @@ -554,7 +554,7 @@ static int print_static_flags(const char *var_name, const char *flags, return 0; } -static int print_active_flags(ENTRY *entry) +static int print_active_flags(struct env_entry *entry) { enum env_flags_vartype type; enum env_flags_varaccess access; @@ -662,7 +662,7 @@ static int do_env_edit(cmd_tbl_t *cmdtp, int flag, int argc, char *env_get(const char *name) { if (gd->flags & GD_FLG_ENV_READY) { /* after import into hashtable */ - ENTRY e, *ep; + struct env_entry e, *ep; WATCHDOG_RESET(); @@ -1262,7 +1262,7 @@ static int do_env_info(cmd_tbl_t *cmdtp, int flag, static int do_env_exists(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) { - ENTRY e, *ep; + struct env_entry e, *ep; if (argc < 2) return CMD_RET_USAGE; diff --git a/drivers/tee/sandbox.c b/drivers/tee/sandbox.c index 2f3355c7b7..4bbcf74967 100644 --- a/drivers/tee/sandbox.c +++ b/drivers/tee/sandbox.c @@ -79,7 +79,7 @@ static u32 ta_avb_invoke_func(struct udevice *dev, u32 func, uint num_params, struct tee_param *params) { struct sandbox_tee_state *state = dev_get_priv(dev); - ENTRY e, *ep; + struct env_entry e, *ep; char *name; u32 res; uint slot; diff --git a/env/callback.c b/env/callback.c index 95be80d454..d539da93aa 100644 --- a/env/callback.c +++ b/env/callback.c @@ -43,7 +43,7 @@ static const char *callback_list; * This is called specifically when the variable did not exist in the hash * previously, so the blanket update did not find this variable. */ -void env_callback_init(ENTRY *var_entry) +void env_callback_init(struct env_entry *var_entry) { const char *var_name = var_entry->key; char callback_name[256] = ""; @@ -80,7 +80,7 @@ void env_callback_init(ENTRY *var_entry) * Called on each existing env var prior to the blanket update since removing * a callback association should remove its callback. */ -static int clear_callback(ENTRY *entry) +static int clear_callback(struct env_entry *entry) { entry->callback = NULL; @@ -92,7 +92,7 @@ static int clear_callback(ENTRY *entry) */ static int set_callback(const char *name, const char *value, void *priv) { - ENTRY e, *ep; + struct env_entry e, *ep; struct env_clbk_tbl *clbkp; e.key = name; diff --git a/env/common.c b/env/common.c index 1d9d0f934d..474ea2280b 100644 --- a/env/common.c +++ b/env/common.c @@ -250,7 +250,7 @@ void env_relocate(void) int env_complete(char *var, int maxv, char *cmdv[], int bufsz, char *buf, bool dollar_comp) { - ENTRY *match; + struct env_entry *match; int found, idx; if (dollar_comp) { diff --git a/env/flags.c b/env/flags.c index 7277711594..fdbad7bf33 100644 --- a/env/flags.c +++ b/env/flags.c @@ -419,7 +419,7 @@ static const char *flags_list; * This is called specifically when the variable did not exist in the hash * previously, so the blanket update did not find this variable. */ -void env_flags_init(ENTRY *var_entry) +void env_flags_init(struct env_entry *var_entry) { const char *var_name = var_entry->key; char flags[ENV_FLAGS_ATTR_MAX_LEN + 1] = ""; @@ -441,7 +441,7 @@ void env_flags_init(ENTRY *var_entry) * Called on each existing env var prior to the blanket update since removing * a flag in the flag list should remove its flags. */ -static int clear_flags(ENTRY *entry) +static int clear_flags(struct env_entry *entry) { entry->flags = 0; @@ -453,7 +453,7 @@ static int clear_flags(ENTRY *entry) */ static int set_flags(const char *name, const char *value, void *priv) { - ENTRY e, *ep; + struct env_entry e, *ep; e.key = name; e.data = NULL; @@ -496,8 +496,8 @@ U_BOOT_ENV_CALLBACK(flags, on_flags); * overwriting of write-once variables. */ -int env_flags_validate(const ENTRY *item, const char *newval, enum env_op op, - int flag) +int env_flags_validate(const struct env_entry *item, const char *newval, + enum env_op op, int flag) { const char *name; const char *oldval = NULL; diff --git a/include/env_callback.h b/include/env_callback.h index 3d30a33f5b..982c07854d 100644 --- a/include/env_callback.h +++ b/include/env_callback.h @@ -72,6 +72,6 @@ "serial#:serialno," \ CONFIG_ENV_CALLBACK_LIST_STATIC -void env_callback_init(ENTRY *var_entry); +void env_callback_init(struct env_entry *var_entry); #endif /* __ENV_CALLBACK_H__ */ diff --git a/include/env_flags.h b/include/env_flags.h index f2306436b4..e5380f2948 100644 --- a/include/env_flags.h +++ b/include/env_flags.h @@ -153,13 +153,13 @@ int env_flags_validate_env_set_params(char *name, char *const val[], int count); * When adding a variable to the environment, initialize the flags for that * variable. */ -void env_flags_init(ENTRY *var_entry); +void env_flags_init(struct env_entry *var_entry); /* * Validate the newval for to conform with the requirements defined by its flags */ -int env_flags_validate(const ENTRY *item, const char *newval, enum env_op op, - int flag); +int env_flags_validate(const struct env_entry *item, const char *newval, + enum env_op op, int flag); #endif /* USE_HOSTCC */ diff --git a/include/search.h b/include/search.h index f9fb29fdf9..81745a917d 100644 --- a/include/search.h +++ b/include/search.h @@ -25,13 +25,14 @@ typedef enum { ENTER } ACTION; -typedef struct entry { +/** struct env_entry - An entry in the environment hashtable */ +struct env_entry { const char *key; char *data; int (*callback)(const char *name, const char *value, enum env_op op, int flags); int flags; -} ENTRY; +}; /* Opaque type for internal use. */ struct _ENTRY; @@ -54,8 +55,8 @@ struct hsearch_data { * shall force overwriting of write-once variables. * Must return 0 for approval, 1 for denial. */ - int (*change_ok)(const ENTRY *__item, const char *newval, enum env_op, - int flag); + int (*change_ok)(const struct env_entry *__item, const char *newval, + enum env_op, int flag); }; /* Create a new hash table which will contain at most "__nel" elements. */ @@ -70,15 +71,16 @@ extern void hdestroy_r(struct hsearch_data *__htab); * NULL. If ACTION is `ENTER' replace existing data (if any) with * __item.data. * */ -extern int hsearch_r(ENTRY __item, ACTION __action, ENTRY ** __retval, - struct hsearch_data *__htab, int __flag); +extern int hsearch_r(struct env_entry __item, ACTION __action, + struct env_entry **__retval, struct hsearch_data *__htab, + int __flag); /* * Search for an entry matching "__match". Otherwise, Same semantics * as hsearch_r(). */ -extern int hmatch_r(const char *__match, int __last_idx, ENTRY ** __retval, - struct hsearch_data *__htab); +extern int hmatch_r(const char *__match, int __last_idx, + struct env_entry **__retval, struct hsearch_data *__htab); /* Search and delete entry matching "__key" in internal hash table. */ extern int hdelete_r(const char *__key, struct hsearch_data *__htab, @@ -98,7 +100,8 @@ extern int himport_r(struct hsearch_data *__htab, char * const vars[]); /* Walk the whole table calling the callback on each element */ -extern int hwalk_r(struct hsearch_data *__htab, int (*callback)(ENTRY *)); +extern int hwalk_r(struct hsearch_data *__htab, + int (*callback)(struct env_entry *entry)); /* Flags for himport_r(), hexport_r(), hdelete_r(), and hsearch_r() */ #define H_NOCLEAR (1 << 0) /* do not clear hash table before importing */ diff --git a/lib/hashtable.c b/lib/hashtable.c index 0d288d12d9..c77b68f4e6 100644 --- a/lib/hashtable.c +++ b/lib/hashtable.c @@ -61,12 +61,12 @@ typedef struct _ENTRY { int used; - ENTRY entry; + struct env_entry entry; } _ENTRY; -static void _hdelete(const char *key, struct hsearch_data *htab, ENTRY *ep, - int idx); +static void _hdelete(const char *key, struct hsearch_data *htab, + struct env_entry *ep, int idx); /* * hcreate() @@ -151,7 +151,7 @@ void hdestroy_r(struct hsearch_data *htab) /* free used memory */ for (i = 1; i <= htab->size; ++i) { if (htab->table[i].used > 0) { - ENTRY *ep = &htab->table[i].entry; + struct env_entry *ep = &htab->table[i].entry; free((void *)ep->key); free(ep->data); @@ -200,7 +200,7 @@ void hdestroy_r(struct hsearch_data *htab) * example for functions like hdelete(). */ -int hmatch_r(const char *match, int last_idx, ENTRY ** retval, +int hmatch_r(const char *match, int last_idx, struct env_entry **retval, struct hsearch_data *htab) { unsigned int idx; @@ -224,9 +224,10 @@ int hmatch_r(const char *match, int last_idx, ENTRY ** retval, * Compare an existing entry with the desired key, and overwrite if the action * is ENTER. This is simply a helper function for hsearch_r(). */ -static inline int _compare_and_overwrite_entry(ENTRY item, ACTION action, - ENTRY **retval, struct hsearch_data *htab, int flag, - unsigned int hval, unsigned int idx) +static inline int _compare_and_overwrite_entry(struct env_entry item, + ACTION action, struct env_entry **retval, + struct hsearch_data *htab, int flag, unsigned int hval, + unsigned int idx) { if (htab->table[idx].used == hval && strcmp(item.key, htab->table[idx].entry.key) == 0) { @@ -270,7 +271,7 @@ static inline int _compare_and_overwrite_entry(ENTRY item, ACTION action, return -1; } -int hsearch_r(ENTRY item, ACTION action, ENTRY ** retval, +int hsearch_r(struct env_entry item, ACTION action, struct env_entry **retval, struct hsearch_data *htab, int flag) { unsigned int hval; @@ -431,10 +432,10 @@ int hsearch_r(ENTRY item, ACTION action, ENTRY ** retval, * do that. */ -static void _hdelete(const char *key, struct hsearch_data *htab, ENTRY *ep, - int idx) +static void _hdelete(const char *key, struct hsearch_data *htab, + struct env_entry *ep, int idx) { - /* free used ENTRY */ + /* free used entry */ debug("hdelete: DELETING key \"%s\"\n", key); free((void *)ep->key); free(ep->data); @@ -447,7 +448,7 @@ static void _hdelete(const char *key, struct hsearch_data *htab, ENTRY *ep, int hdelete_r(const char *key, struct hsearch_data *htab, int flag) { - ENTRY e, *ep; + struct env_entry e, *ep; int idx; debug("hdelete: DELETE key \"%s\"\n", key); @@ -528,8 +529,8 @@ int hdelete_r(const char *key, struct hsearch_data *htab, int flag) static int cmpkey(const void *p1, const void *p2) { - ENTRY *e1 = *(ENTRY **) p1; - ENTRY *e2 = *(ENTRY **) p2; + struct env_entry *e1 = *(struct env_entry **)p1; + struct env_entry *e2 = *(struct env_entry **)p2; return (strcmp(e1->key, e2->key)); } @@ -563,8 +564,8 @@ static int match_string(int flag, const char *str, const char *pat, void *priv) return 0; } -static int match_entry(ENTRY *ep, int flag, - int argc, char * const argv[]) +static int match_entry(struct env_entry *ep, int flag, int argc, + char *const argv[]) { int arg; void *priv = NULL; @@ -596,7 +597,7 @@ ssize_t hexport_r(struct hsearch_data *htab, const char sep, int flag, char **resp, size_t size, int argc, char * const argv[]) { - ENTRY *list[htab->size]; + struct env_entry *list[htab->size]; char *res, *p; size_t totlen; int i, n; @@ -617,7 +618,7 @@ ssize_t hexport_r(struct hsearch_data *htab, const char sep, int flag, for (i = 1, n = 0, totlen = 0; i <= htab->size; ++i) { if (htab->table[i].used > 0) { - ENTRY *ep = &htab->table[i].entry; + struct env_entry *ep = &htab->table[i].entry; int found = match_entry(ep, flag, argc, argv); if ((argc > 0) && (found == 0)) @@ -657,7 +658,7 @@ ssize_t hexport_r(struct hsearch_data *htab, const char sep, int flag, #endif /* Sort list by keys */ - qsort(list, n, sizeof(ENTRY *), cmpkey); + qsort(list, n, sizeof(struct env_entry *), cmpkey); /* Check if the user supplied buffer size is sufficient */ if (size) { @@ -869,7 +870,7 @@ int himport_r(struct hsearch_data *htab, } /* Parse environment; allow for '\0' and 'sep' as separators */ do { - ENTRY e, *rv; + struct env_entry e, *rv; /* skip leading white space */ while (isblank(*dp)) @@ -976,7 +977,7 @@ end: * Walk all of the entries in the hash, calling the callback for each one. * this allows some generic operation to be performed on each element. */ -int hwalk_r(struct hsearch_data *htab, int (*callback)(ENTRY *)) +int hwalk_r(struct hsearch_data *htab, int (*callback)(struct env_entry *entry)) { int i; int retval; diff --git a/test/env/hashtable.c b/test/env/hashtable.c index 8c87e65457..bad276bd10 100644 --- a/test/env/hashtable.c +++ b/test/env/hashtable.c @@ -18,8 +18,8 @@ static int htab_fill(struct unit_test_state *uts, struct hsearch_data *htab, size_t size) { size_t i; - ENTRY item; - ENTRY *ritem; + struct env_entry item; + struct env_entry *ritem; char key[20]; for (i = 0; i < size; i++) { @@ -38,8 +38,8 @@ static int htab_check_fill(struct unit_test_state *uts, struct hsearch_data *htab, size_t size) { size_t i; - ENTRY item; - ENTRY *ritem; + struct env_entry item; + struct env_entry *ritem; char key[20]; for (i = 0; i < size; i++) { @@ -61,8 +61,8 @@ static int htab_create_delete(struct unit_test_state *uts, struct hsearch_data *htab, size_t iterations) { size_t i; - ENTRY item; - ENTRY *ritem; + struct env_entry item; + struct env_entry *ritem; char key[20]; for (i = 0; i < iterations; i++) { From 25e51e90feec10b7d534b123cd9c4ed7a3a2dc1a Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Fri, 2 Aug 2019 09:44:19 -0600 Subject: [PATCH 43/51] env: Drop _ENTRY This typedef does not need to be defined in the search.h header since it is only used in one file (hashtable.c). Remove it from the header and change it to a struct. Signed-off-by: Simon Glass --- include/search.h | 5 +---- lib/hashtable.c | 7 ++++--- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/include/search.h b/include/search.h index 81745a917d..c99648f80b 100644 --- a/include/search.h +++ b/include/search.h @@ -34,9 +34,6 @@ struct env_entry { int flags; }; -/* Opaque type for internal use. */ -struct _ENTRY; - /* * Family of hash table handling functions. The functions also * have reentrant counterparts ending with _r. The non-reentrant @@ -45,7 +42,7 @@ struct _ENTRY; /* Data type for reentrant functions. */ struct hsearch_data { - struct _ENTRY *table; + struct env_entry_node *table; unsigned int size; unsigned int filled; /* diff --git a/lib/hashtable.c b/lib/hashtable.c index c77b68f4e6..1093d8adaa 100644 --- a/lib/hashtable.c +++ b/lib/hashtable.c @@ -59,10 +59,10 @@ * which describes the current status. */ -typedef struct _ENTRY { +struct env_entry_node { int used; struct env_entry entry; -} _ENTRY; +}; static void _hdelete(const char *key, struct hsearch_data *htab, @@ -120,7 +120,8 @@ int hcreate_r(size_t nel, struct hsearch_data *htab) htab->filled = 0; /* allocate memory and zero out */ - htab->table = (_ENTRY *) calloc(htab->size + 1, sizeof(_ENTRY)); + htab->table = (struct env_entry_node *)calloc(htab->size + 1, + sizeof(struct env_entry_node)); if (htab->table == NULL) return 0; From d3716dd64bb8bb4c4ba2d19bac164d24ada72a68 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:47:08 -0600 Subject: [PATCH 44/51] env: Rename the redundancy flags Add an ENV prefix to these two flags so that it is clear what they relate to. Also move them to env.h since they are part of the public API. Use an enum rather than a #define to tie them together. Signed-off-by: Simon Glass --- cmd/nvedit.c | 2 +- env/eeprom.c | 10 ++++++---- env/flash.c | 18 ++++++++++-------- env/sf.c | 6 ++---- include/env.h | 6 ++++++ include/environment.h | 5 +---- tools/env/fw_env.c | 23 +++++++++++++---------- 7 files changed, 39 insertions(+), 31 deletions(-) diff --git a/cmd/nvedit.c b/cmd/nvedit.c index 39140c0733..995b6b37af 100644 --- a/cmd/nvedit.c +++ b/cmd/nvedit.c @@ -1002,7 +1002,7 @@ NXTARG: ; envp->crc = crc32(0, envp->data, size ? size - offsetof(env_t, data) : ENV_SIZE); #ifdef CONFIG_ENV_ADDR_REDUND - envp->flags = ACTIVE_FLAG; + envp->flags = ENV_REDUND_ACTIVE; #endif } env_set_hex("filesize", len + offsetof(env_t, data)); diff --git a/env/eeprom.c b/env/eeprom.c index 8d82cf892c..91ee3f35eb 100644 --- a/env/eeprom.c +++ b/env/eeprom.c @@ -132,9 +132,11 @@ static int env_eeprom_load(void) gd->env_valid = ENV_REDUND; } else { /* both ok - check serial */ - if (flags[0] == ACTIVE_FLAG && flags[1] == OBSOLETE_FLAG) + if (flags[0] == ENV_REDUND_ACTIVE && + flags[1] == ENV_REDUND_OBSOLETE) gd->env_valid = ENV_VALID; - else if (flags[0] == OBSOLETE_FLAG && flags[1] == ACTIVE_FLAG) + else if (flags[0] == ENV_REDUND_OBSOLETE && + flags[1] == ENV_REDUND_ACTIVE) gd->env_valid = ENV_REDUND; else if (flags[0] == 0xFF && flags[1] == 0) gd->env_valid = ENV_REDUND; @@ -194,7 +196,7 @@ static int env_eeprom_save(void) unsigned int off = CONFIG_ENV_OFFSET; #ifdef CONFIG_ENV_OFFSET_REDUND unsigned int off_red = CONFIG_ENV_OFFSET_REDUND; - char flag_obsolete = OBSOLETE_FLAG; + char flag_obsolete = ENV_REDUND_OBSOLETE; #endif rc = env_export(&env_new); @@ -207,7 +209,7 @@ static int env_eeprom_save(void) off_red = CONFIG_ENV_OFFSET; } - env_new.flags = ACTIVE_FLAG; + env_new.flags = ENV_REDUND_ACTIVE; #endif rc = eeprom_bus_write(CONFIG_SYS_DEF_EEPROM_ADDR, diff --git a/env/flash.c b/env/flash.c index 7a73466cf2..bdba09e306 100644 --- a/env/flash.c +++ b/env/flash.c @@ -95,10 +95,12 @@ static int env_flash_init(void) } else if (!crc1_ok && !crc2_ok) { gd->env_addr = addr_default; gd->env_valid = ENV_INVALID; - } else if (flag1 == ACTIVE_FLAG && flag2 == OBSOLETE_FLAG) { + } else if (flag1 == ENV_REDUND_ACTIVE && + flag2 == ENV_REDUND_OBSOLETE) { gd->env_addr = addr1; gd->env_valid = ENV_VALID; - } else if (flag1 == OBSOLETE_FLAG && flag2 == ACTIVE_FLAG) { + } else if (flag1 == ENV_REDUND_OBSOLETE && + flag2 == ENV_REDUND_ACTIVE) { gd->env_addr = addr2; gd->env_valid = ENV_VALID; } else if (flag1 == flag2) { @@ -121,7 +123,7 @@ static int env_flash_save(void) { env_t env_new; char *saved_data = NULL; - char flag = OBSOLETE_FLAG, new_flag = ACTIVE_FLAG; + char flag = ENV_REDUND_OBSOLETE, new_flag = ENV_REDUND_ACTIVE; int rc = 1; #if CONFIG_ENV_SECT_SIZE > CONFIG_ENV_SIZE ulong up_data = 0; @@ -322,9 +324,9 @@ static int env_flash_load(void) end_addr_new = ltmp; } - if (flash_addr_new->flags != OBSOLETE_FLAG && + if (flash_addr_new->flags != ENV_REDUND_OBSOLETE && crc32(0, flash_addr_new->data, ENV_SIZE) == flash_addr_new->crc) { - char flag = OBSOLETE_FLAG; + char flag = ENV_REDUND_OBSOLETE; gd->env_valid = ENV_REDUND; flash_sect_protect(0, (ulong)flash_addr_new, end_addr_new); @@ -334,9 +336,9 @@ static int env_flash_load(void) flash_sect_protect(1, (ulong)flash_addr_new, end_addr_new); } - if (flash_addr->flags != ACTIVE_FLAG && - (flash_addr->flags & ACTIVE_FLAG) == ACTIVE_FLAG) { - char flag = ACTIVE_FLAG; + if (flash_addr->flags != ENV_REDUND_ACTIVE && + (flash_addr->flags & ENV_REDUND_ACTIVE) == ENV_REDUND_ACTIVE) { + char flag = ENV_REDUND_ACTIVE; gd->env_valid = ENV_REDUND; flash_sect_protect(0, (ulong)flash_addr, end_addr); diff --git a/env/sf.c b/env/sf.c index 5531293e05..09646e1eed 100644 --- a/env/sf.c +++ b/env/sf.c @@ -30,8 +30,6 @@ static ulong env_offset = CONFIG_ENV_OFFSET; static ulong env_new_offset = CONFIG_ENV_OFFSET_REDUND; #endif -#define ACTIVE_FLAG 1 -#define OBSOLETE_FLAG 0 #endif /* CONFIG_ENV_OFFSET_REDUND */ DECLARE_GLOBAL_DATA_PTR; @@ -74,7 +72,7 @@ static int setup_flash_device(void) static int env_sf_save(void) { env_t env_new; - char *saved_buffer = NULL, flag = OBSOLETE_FLAG; + char *saved_buffer = NULL, flag = ENV_REDUND_OBSOLETE; u32 saved_size, saved_offset, sector; int ret; @@ -85,7 +83,7 @@ static int env_sf_save(void) ret = env_export(&env_new); if (ret) return -EIO; - env_new.flags = ACTIVE_FLAG; + env_new.flags = ENV_REDUND_ACTIVE; if (gd->env_valid == ENV_VALID) { env_new_offset = CONFIG_ENV_OFFSET_REDUND; diff --git a/include/env.h b/include/env.h index 271cb3e888..a74a261337 100644 --- a/include/env.h +++ b/include/env.h @@ -55,6 +55,12 @@ struct env_clbk_tbl { {#name, callback} #endif +/** enum env_redund_flags - Flags for the redundand_environment */ +enum env_redund_flags { + ENV_REDUND_OBSOLETE = 0, + ENV_REDUND_ACTIVE = 1, +}; + /** * env_get_id() - Gets a sequence number for the environment * diff --git a/include/environment.h b/include/environment.h index c3e8d7840a..70ee0fdb19 100644 --- a/include/environment.h +++ b/include/environment.h @@ -135,9 +135,6 @@ extern unsigned long nand_env_oob_offset; #ifdef CONFIG_SYS_REDUNDAND_ENVIRONMENT # define ENV_HEADER_SIZE (sizeof(uint32_t) + 1) - -# define ACTIVE_FLAG 1 -# define OBSOLETE_FLAG 0 #else # define ENV_HEADER_SIZE (sizeof(uint32_t)) #endif @@ -147,7 +144,7 @@ extern unsigned long nand_env_oob_offset; typedef struct environment_s { uint32_t crc; /* CRC32 over data bytes */ #ifdef CONFIG_SYS_REDUNDAND_ENVIRONMENT - unsigned char flags; /* active/obsolete flags */ + unsigned char flags; /* active/obsolete flags ENVF_REDUND_ */ #endif unsigned char data[ENV_SIZE]; /* Environment data */ } env_t; diff --git a/tools/env/fw_env.c b/tools/env/fw_env.c index f06252d916..95c99847a3 100644 --- a/tools/env/fw_env.c +++ b/tools/env/fw_env.c @@ -119,9 +119,12 @@ static struct environment environment = { static int have_redund_env; -static unsigned char active_flag = 1; -/* obsolete_flag must be 0 to efficiently set it on NOR flash without erasing */ -static unsigned char obsolete_flag = 0; +static unsigned char ENV_REDUND_ACTIVE = 1; +/* + * ENV_REDUND_OBSOLETE must be 0 to efficiently set it on NOR flash without + * erasing + */ +static unsigned char ENV_REDUND_OBSOLETE; #define DEFAULT_ENV_INSTANCE_STATIC #include @@ -1142,7 +1145,7 @@ static int flash_flag_obsolete(int dev, int fd, off_t offset) erase.start = DEVOFFSET(dev); erase.length = DEVESIZE(dev); - /* This relies on the fact, that obsolete_flag == 0 */ + /* This relies on the fact, that ENV_REDUND_OBSOLETE == 0 */ rc = lseek(fd, offset, SEEK_SET); if (rc < 0) { fprintf(stderr, "Cannot seek to set the flag on %s\n", @@ -1150,7 +1153,7 @@ static int flash_flag_obsolete(int dev, int fd, off_t offset) return rc; } ioctl(fd, MEMUNLOCK, &erase); - rc = write(fd, &obsolete_flag, sizeof(obsolete_flag)); + rc = write(fd, &ENV_REDUND_OBSOLETE, sizeof(ENV_REDUND_OBSOLETE)); ioctl(fd, MEMLOCK, &erase); if (rc < 0) perror("Could not set obsolete flag"); @@ -1169,7 +1172,7 @@ static int flash_write(int fd_current, int fd_target, int dev_target) (*environment.flags)++; break; case FLAG_BOOLEAN: - *environment.flags = active_flag; + *environment.flags = ENV_REDUND_ACTIVE; break; default: fprintf(stderr, "Unimplemented flash scheme %u\n", @@ -1508,11 +1511,11 @@ int fw_env_open(struct env_opts *opts) } else { switch (environment.flag_scheme) { case FLAG_BOOLEAN: - if (flag0 == active_flag && - flag1 == obsolete_flag) { + if (flag0 == ENV_REDUND_ACTIVE && + flag1 == ENV_REDUND_OBSOLETE) { dev_current = 0; - } else if (flag0 == obsolete_flag && - flag1 == active_flag) { + } else if (flag0 == ENV_REDUND_OBSOLETE && + flag1 == ENV_REDUND_ACTIVE) { dev_current = 1; } else if (flag0 == flag1) { dev_current = 0; From 3f0d6807459bb22431e5bc19e597c1786b3d1ce6 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:47:09 -0600 Subject: [PATCH 45/51] env: Drop the ACTION typedef Avoid using a typedef here which is unnecessary. Add an 'env_' prefix to both the enum and its members to make it clear that these are related to the environment. Add an ENV prefix to these two flags so that it is clear what they relate to. Also move them to env.h since they are part of the public API. Use an enum rather than a #define to tie them together. Signed-off-by: Simon Glass --- api/api.c | 2 +- cmd/nvedit.c | 8 ++++---- drivers/tee/sandbox.c | 6 +++--- env/callback.c | 2 +- env/flags.c | 2 +- include/search.h | 16 ++++++++-------- lib/hashtable.c | 18 +++++++++--------- test/env/hashtable.c | 8 ++++---- 8 files changed, 31 insertions(+), 31 deletions(-) diff --git a/api/api.c b/api/api.c index a0fc62ca9e..cd7487fde2 100644 --- a/api/api.c +++ b/api/api.c @@ -514,7 +514,7 @@ static int API_env_enum(va_list ap) if (s != NULL) *s = 0; search.key = var; - i = hsearch_r(search, FIND, &match, &env_htab, 0); + i = hsearch_r(search, ENV_FIND, &match, &env_htab, 0); if (i == 0) { i = API_EINVAL; goto done; diff --git a/cmd/nvedit.c b/cmd/nvedit.c index 995b6b37af..8e8572235c 100644 --- a/cmd/nvedit.c +++ b/cmd/nvedit.c @@ -98,7 +98,7 @@ static int env_print(char *name, int flag) e.key = name; e.data = NULL; - hsearch_r(e, FIND, &ep, &env_htab, flag); + hsearch_r(e, ENV_FIND, &ep, &env_htab, flag); if (ep == NULL) return 0; len = printf("%s=%s\n", ep->key, ep->data); @@ -288,7 +288,7 @@ static int _do_env_set(int flag, int argc, char * const argv[], int env_flag) e.key = name; e.data = value; - hsearch_r(e, ENTER, &ep, &env_htab, env_flag); + hsearch_r(e, ENV_ENTER, &ep, &env_htab, env_flag); free(value); if (!ep) { printf("## Error inserting \"%s\" variable, errno=%d\n", @@ -668,7 +668,7 @@ char *env_get(const char *name) e.key = name; e.data = NULL; - hsearch_r(e, FIND, &ep, &env_htab, 0); + hsearch_r(e, ENV_FIND, &ep, &env_htab, 0); return ep ? ep->data : NULL; } @@ -1269,7 +1269,7 @@ static int do_env_exists(cmd_tbl_t *cmdtp, int flag, int argc, e.key = argv[1]; e.data = NULL; - hsearch_r(e, FIND, &ep, &env_htab, 0); + hsearch_r(e, ENV_FIND, &ep, &env_htab, 0); return (ep == NULL) ? 1 : 0; } diff --git a/drivers/tee/sandbox.c b/drivers/tee/sandbox.c index 4bbcf74967..4b91e7db1b 100644 --- a/drivers/tee/sandbox.c +++ b/drivers/tee/sandbox.c @@ -174,7 +174,7 @@ static u32 ta_avb_invoke_func(struct udevice *dev, u32 func, uint num_params, e.key = name; e.data = NULL; - hsearch_r(e, FIND, &ep, &state->pstorage_htab, 0); + hsearch_r(e, ENV_FIND, &ep, &state->pstorage_htab, 0); if (!ep) return TEE_ERROR_ITEM_NOT_FOUND; @@ -198,13 +198,13 @@ static u32 ta_avb_invoke_func(struct udevice *dev, u32 func, uint num_params, e.key = name; e.data = NULL; - hsearch_r(e, FIND, &ep, &state->pstorage_htab, 0); + hsearch_r(e, ENV_FIND, &ep, &state->pstorage_htab, 0); if (ep) hdelete_r(e.key, &state->pstorage_htab, 0); e.key = name; e.data = value; - hsearch_r(e, ENTER, &ep, &state->pstorage_htab, 0); + hsearch_r(e, ENV_ENTER, &ep, &state->pstorage_htab, 0); if (!ep) return TEE_ERROR_OUT_OF_MEMORY; diff --git a/env/callback.c b/env/callback.c index d539da93aa..d5469ce3c2 100644 --- a/env/callback.c +++ b/env/callback.c @@ -98,7 +98,7 @@ static int set_callback(const char *name, const char *value, void *priv) e.key = name; e.data = NULL; e.callback = NULL; - hsearch_r(e, FIND, &ep, &env_htab, 0); + hsearch_r(e, ENV_FIND, &ep, &env_htab, 0); /* does the env variable actually exist? */ if (ep != NULL) { diff --git a/env/flags.c b/env/flags.c index fdbad7bf33..93d337a1aa 100644 --- a/env/flags.c +++ b/env/flags.c @@ -458,7 +458,7 @@ static int set_flags(const char *name, const char *value, void *priv) e.key = name; e.data = NULL; e.callback = NULL; - hsearch_r(e, FIND, &ep, &env_htab, 0); + hsearch_r(e, ENV_FIND, &ep, &env_htab, 0); /* does the env variable actually exist? */ if (ep != NULL) { diff --git a/include/search.h b/include/search.h index c99648f80b..84fc5fd3fd 100644 --- a/include/search.h +++ b/include/search.h @@ -19,11 +19,11 @@ #define __set_errno(val) do { errno = val; } while (0) -/* Action which shall be performed in the call to hsearch. */ -typedef enum { - FIND, - ENTER -} ACTION; +/* enum env_action: action which shall be performed in the call to hsearch */ +enum env_action { + ENV_FIND, + ENV_ENTER, +}; /** struct env_entry - An entry in the environment hashtable */ struct env_entry { @@ -64,11 +64,11 @@ extern void hdestroy_r(struct hsearch_data *__htab); /* * Search for entry matching __item.key in internal hash table. If - * ACTION is `FIND' return found entry or signal error by returning - * NULL. If ACTION is `ENTER' replace existing data (if any) with + * __action is `ENV_FIND' return found entry or signal error by returning + * NULL. If __action is `ENV_ENTER' replace existing data (if any) with * __item.data. * */ -extern int hsearch_r(struct env_entry __item, ACTION __action, +extern int hsearch_r(struct env_entry __item, enum env_action __action, struct env_entry **__retval, struct hsearch_data *__htab, int __flag); diff --git a/lib/hashtable.c b/lib/hashtable.c index 1093d8adaa..2caab0a4c6 100644 --- a/lib/hashtable.c +++ b/lib/hashtable.c @@ -194,7 +194,7 @@ void hdestroy_r(struct hsearch_data *htab) * data any more. * - The standard implementation does not provide a way to update an * existing entry. This version will create a new entry or update an - * existing one when both "action == ENTER" and "item.data != NULL". + * existing one when both "action == ENV_ENTER" and "item.data != NULL". * - Instead of returning 1 on success, we return the index into the * internal hash table, which is also guaranteed to be positive. * This allows us direct access to the found hash table slot for @@ -223,17 +223,17 @@ int hmatch_r(const char *match, int last_idx, struct env_entry **retval, /* * Compare an existing entry with the desired key, and overwrite if the action - * is ENTER. This is simply a helper function for hsearch_r(). + * is ENV_ENTER. This is simply a helper function for hsearch_r(). */ static inline int _compare_and_overwrite_entry(struct env_entry item, - ACTION action, struct env_entry **retval, + enum env_action action, struct env_entry **retval, struct hsearch_data *htab, int flag, unsigned int hval, unsigned int idx) { if (htab->table[idx].used == hval && strcmp(item.key, htab->table[idx].entry.key) == 0) { /* Overwrite existing value? */ - if ((action == ENTER) && (item.data != NULL)) { + if (action == ENV_ENTER && item.data) { /* check for permission */ if (htab->change_ok != NULL && htab->change_ok( &htab->table[idx].entry, item.data, @@ -272,8 +272,8 @@ static inline int _compare_and_overwrite_entry(struct env_entry item, return -1; } -int hsearch_r(struct env_entry item, ACTION action, struct env_entry **retval, - struct hsearch_data *htab, int flag) +int hsearch_r(struct env_entry item, enum env_action action, + struct env_entry **retval, struct hsearch_data *htab, int flag) { unsigned int hval; unsigned int count; @@ -354,7 +354,7 @@ int hsearch_r(struct env_entry item, ACTION action, struct env_entry **retval, } /* An empty bucket has been found. */ - if (action == ENTER) { + if (action == ENV_ENTER) { /* * If table is full and another entry should be * entered return with error. @@ -456,7 +456,7 @@ int hdelete_r(const char *key, struct hsearch_data *htab, int flag) e.key = (char *)key; - idx = hsearch_r(e, FIND, &ep, htab, 0); + idx = hsearch_r(e, ENV_FIND, &ep, htab, 0); if (idx == 0) { __set_errno(ESRCH); return 0; /* not found */ @@ -931,7 +931,7 @@ int himport_r(struct hsearch_data *htab, e.key = name; e.data = value; - hsearch_r(e, ENTER, &rv, htab, flag); + hsearch_r(e, ENV_ENTER, &rv, htab, flag); if (rv == NULL) printf("himport_r: can't insert \"%s=%s\" into hash table\n", name, value); diff --git a/test/env/hashtable.c b/test/env/hashtable.c index bad276bd10..5242c4cc3e 100644 --- a/test/env/hashtable.c +++ b/test/env/hashtable.c @@ -28,7 +28,7 @@ static int htab_fill(struct unit_test_state *uts, item.data = key; item.flags = 0; item.key = key; - ut_asserteq(1, hsearch_r(item, ENTER, &ritem, htab, 0)); + ut_asserteq(1, hsearch_r(item, ENV_ENTER, &ritem, htab, 0)); } return 0; @@ -48,7 +48,7 @@ static int htab_check_fill(struct unit_test_state *uts, item.flags = 0; item.data = key; item.key = key; - hsearch_r(item, FIND, &ritem, htab, 0); + hsearch_r(item, ENV_FIND, &ritem, htab, 0); ut_assert(ritem); ut_asserteq_str(key, ritem->key); ut_asserteq_str(key, ritem->data); @@ -71,10 +71,10 @@ static int htab_create_delete(struct unit_test_state *uts, item.flags = 0; item.data = key; item.key = key; - hsearch_r(item, ENTER, &ritem, htab, 0); + hsearch_r(item, ENV_ENTER, &ritem, htab, 0); ritem = NULL; - hsearch_r(item, FIND, &ritem, htab, 0); + hsearch_r(item, ENV_FIND, &ritem, htab, 0); ut_assert(ritem); ut_asserteq_str(key, ritem->key); ut_asserteq_str(key, ritem->data); From cb2ba9db5f2ab575d40d95e76a0ab94c7ccb9bac Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:47:10 -0600 Subject: [PATCH 46/51] env: Drop the double underscores in search.h There doesn't seem to be any good reason for using __ in the arguments in this header file. A double underscore is usually reserved for compiler features. Drop these and remove the unnecessary 'extern' as well. Signed-off-by: Simon Glass Acked-by: Joe Hershberger --- include/search.h | 52 ++++++++++++++++++++++-------------------------- 1 file changed, 24 insertions(+), 28 deletions(-) diff --git a/include/search.h b/include/search.h index 84fc5fd3fd..0469a852e0 100644 --- a/include/search.h +++ b/include/search.h @@ -17,7 +17,7 @@ #include #include -#define __set_errno(val) do { errno = val; } while (0) +#define set_errno(val) do { errno = val; } while (0) /* enum env_action: action which shall be performed in the call to hsearch */ enum env_action { @@ -47,58 +47,54 @@ struct hsearch_data { unsigned int filled; /* * Callback function which will check whether the given change for variable - * "__item" to "newval" may be applied or not, and possibly apply such change. + * "item" to "newval" may be applied or not, and possibly apply such change. * When (flag & H_FORCE) is set, it shall not print out any error message and * shall force overwriting of write-once variables. * Must return 0 for approval, 1 for denial. */ - int (*change_ok)(const struct env_entry *__item, const char *newval, + int (*change_ok)(const struct env_entry *item, const char *newval, enum env_op, int flag); }; -/* Create a new hash table which will contain at most "__nel" elements. */ -extern int hcreate_r(size_t __nel, struct hsearch_data *__htab); +/* Create a new hash table which will contain at most "nel" elements. */ +int hcreate_r(size_t nel, struct hsearch_data *htab); /* Destroy current internal hash table. */ -extern void hdestroy_r(struct hsearch_data *__htab); +void hdestroy_r(struct hsearch_data *htab); /* - * Search for entry matching __item.key in internal hash table. If - * __action is `ENV_FIND' return found entry or signal error by returning - * NULL. If __action is `ENV_ENTER' replace existing data (if any) with - * __item.data. + * Search for entry matching item.key in internal hash table. If + * action is `ENV_FIND' return found entry or signal error by returning + * NULL. If action is `ENV_ENTER' replace existing data (if any) with + * item.data. * */ -extern int hsearch_r(struct env_entry __item, enum env_action __action, - struct env_entry **__retval, struct hsearch_data *__htab, - int __flag); +int hsearch_r(struct env_entry item, enum env_action action, + struct env_entry **retval, struct hsearch_data *htab, int flag); /* - * Search for an entry matching "__match". Otherwise, Same semantics + * Search for an entry matching "match". Otherwise, Same semantics * as hsearch_r(). */ -extern int hmatch_r(const char *__match, int __last_idx, - struct env_entry **__retval, struct hsearch_data *__htab); +int hmatch_r(const char *match, int last_idx, struct env_entry **retval, + struct hsearch_data *htab); -/* Search and delete entry matching "__key" in internal hash table. */ -extern int hdelete_r(const char *__key, struct hsearch_data *__htab, - int __flag); +/* Search and delete entry matching "key" in internal hash table. */ +int hdelete_r(const char *key, struct hsearch_data *htab, int flag); -extern ssize_t hexport_r(struct hsearch_data *__htab, - const char __sep, int __flag, char **__resp, size_t __size, - int argc, char * const argv[]); +ssize_t hexport_r(struct hsearch_data *htab, const char sep, int flag, + char **resp, size_t size, int argc, char * const argv[]); /* * nvars: length of vars array * vars: array of strings (variable names) to import (nvars == 0 means all) */ -extern int himport_r(struct hsearch_data *__htab, - const char *__env, size_t __size, const char __sep, - int __flag, int __crlf_is_lf, int nvars, - char * const vars[]); +int himport_r(struct hsearch_data *htab, const char *env, size_t size, + const char sep, int flag, int crlf_is_lf, int nvars, + char * const vars[]); /* Walk the whole table calling the callback on each element */ -extern int hwalk_r(struct hsearch_data *__htab, - int (*callback)(struct env_entry *entry)); +int hwalk_r(struct hsearch_data *htab, + int (*callback)(struct env_entry *entry)); /* Flags for himport_r(), hexport_r(), hdelete_r(), and hsearch_r() */ #define H_NOCLEAR (1 << 0) /* do not clear hash table before importing */ From f030b7b2607013a1b05a696e7f010d5f8dbe4fcd Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:47:11 -0600 Subject: [PATCH 47/51] env: Move TOTAL_MALLOC_LEN to environment.h This declaration is only used in three files. Although it relates to malloc() it is actually only used during malloc() init. It uses CONFIG options including CONFIG_ENV_ADDR which are defined only in environment.h so this header must be included anyway, for TOTAL_MALLOC_LEN to be correct. Nove it to environment.h to simplify the common file. Signed-off-by: Simon Glass Acked-by: Joe Hershberger Reviewed-by: Simon Goldschmidt --- arch/x86/cpu/qemu/e820.c | 1 + include/common.h | 10 ---------- include/environment.h | 14 ++++++++++++++ 3 files changed, 15 insertions(+), 10 deletions(-) diff --git a/arch/x86/cpu/qemu/e820.c b/arch/x86/cpu/qemu/e820.c index 0a690fde68..7b3bc7db5e 100644 --- a/arch/x86/cpu/qemu/e820.c +++ b/arch/x86/cpu/qemu/e820.c @@ -4,6 +4,7 @@ */ #include +#include #include DECLARE_GLOBAL_DATA_PTR; diff --git a/include/common.h b/include/common.h index 70f40daa9e..34ae514805 100644 --- a/include/common.h +++ b/include/common.h @@ -45,16 +45,6 @@ typedef void (interrupt_handler_t)(void *); #include /* boot information for Linux kernel */ #include /* global data used for startup functions */ -#if defined(CONFIG_ENV_IS_EMBEDDED) -#define TOTAL_MALLOC_LEN CONFIG_SYS_MALLOC_LEN -#elif ( ((CONFIG_ENV_ADDR+CONFIG_ENV_SIZE) < CONFIG_SYS_MONITOR_BASE) || \ - (CONFIG_ENV_ADDR >= (CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)) ) || \ - defined(CONFIG_ENV_IS_IN_NVRAM) -#define TOTAL_MALLOC_LEN (CONFIG_SYS_MALLOC_LEN + CONFIG_ENV_SIZE) -#else -#define TOTAL_MALLOC_LEN CONFIG_SYS_MALLOC_LEN -#endif - /* startup functions, used in: * common/board_f.c * common/init/board_init.c diff --git a/include/environment.h b/include/environment.h index 70ee0fdb19..cc8c0546c2 100644 --- a/include/environment.h +++ b/include/environment.h @@ -141,6 +141,20 @@ extern unsigned long nand_env_oob_offset; #define ENV_SIZE (CONFIG_ENV_SIZE - ENV_HEADER_SIZE) +/* + * If the environment is in RAM, allocate extra space for it in the malloc + * region. + */ +#if defined(CONFIG_ENV_IS_EMBEDDED) +#define TOTAL_MALLOC_LEN CONFIG_SYS_MALLOC_LEN +#elif (CONFIG_ENV_ADDR + CONFIG_ENV_SIZE < CONFIG_SYS_MONITOR_BASE) || \ + (CONFIG_ENV_ADDR >= CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN) || \ + defined(CONFIG_ENV_IS_IN_NVRAM) +#define TOTAL_MALLOC_LEN (CONFIG_SYS_MALLOC_LEN + CONFIG_ENV_SIZE) +#else +#define TOTAL_MALLOC_LEN CONFIG_SYS_MALLOC_LEN +#endif + typedef struct environment_s { uint32_t crc; /* CRC32 over data bytes */ #ifdef CONFIG_SYS_REDUNDAND_ENVIRONMENT From e7dcf5645f09504573f534b0fc9abbbc6ff8a5ad Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:47:12 -0600 Subject: [PATCH 48/51] env: Drop environment.h header file where not needed This header file is now only used by files that access internal environment features. Drop it from various places where it is not needed. Acked-by: Joe Hershberger Signed-off-by: Simon Glass --- arch/arm/cpu/arm926ejs/spear/spr_misc.c | 1 - arch/arm/mach-davinci/misc.c | 1 - arch/arm/mach-imx/cmd_dek.c | 1 - arch/arm/mach-imx/mx6/opos6ul.c | 1 - arch/arm/mach-meson/board-common.c | 1 - arch/arm/mach-omap2/boot-common.c | 1 - arch/arm/mach-omap2/omap3/clock.c | 1 - arch/arm/mach-omap2/utils.c | 1 - arch/arm/mach-stm32mp/cpu.c | 1 - arch/arm/mach-tegra/cboot.c | 1 - arch/m68k/lib/bootm.c | 1 - arch/nds32/include/asm/u-boot.h | 1 - arch/powerpc/cpu/mpc85xx/fdt.c | 1 - arch/powerpc/lib/bootm.c | 1 - arch/riscv/include/asm/u-boot.h | 1 - board/Arcturus/ucp1020/cmd_arc.c | 1 - board/CZ.NIC/turris_mox/turris_mox.c | 1 - board/CZ.NIC/turris_omnia/turris_omnia.c | 1 - board/LaCie/net2big_v2/net2big_v2.c | 1 - board/LaCie/netspace_v2/netspace_v2.c | 1 - board/amlogic/p200/p200.c | 1 - board/amlogic/p201/p201.c | 1 - board/amlogic/p212/p212.c | 1 - board/amlogic/q200/q200.c | 1 - board/amlogic/s400/s400.c | 1 - board/amlogic/u200/u200.c | 1 - board/armadeus/apf27/apf27.c | 1 - board/atmel/common/mac_eeprom.c | 1 - board/birdland/bav335x/board.c | 1 - board/bosch/guardian/board.c | 1 - board/bosch/shc/board.c | 1 - board/compulab/cl-som-imx7/cl-som-imx7.c | 1 - board/compulab/cm_fx6/cm_fx6.c | 1 - board/compulab/cm_t335/cm_t335.c | 1 - board/compulab/cm_t35/cm_t35.c | 1 - board/compulab/cm_t54/cm_t54.c | 1 - board/davinci/da8xxevm/da850evm.c | 1 - board/dhelectronics/dh_imx6/dh_imx6.c | 1 - board/eets/pdu001/board.c | 1 - board/freescale/imx8qm_mek/imx8qm_mek.c | 1 - board/freescale/imx8qxp_mek/imx8qxp_mek.c | 1 - board/gateworks/gw_ventana/gw_ventana.c | 1 - board/gateworks/gw_ventana/gw_ventana_spl.c | 1 - board/ge/mx53ppd/mx53ppd.c | 1 - board/grinn/chiliboard/board.c | 1 - board/gumstix/pepper/board.c | 1 - board/imgtec/ci20/ci20.c | 1 - board/intel/edison/edison.c | 1 - board/isee/igep003x/board.c | 1 - board/k+p/kp_imx53/kp_id_rev.c | 1 - board/kosagi/novena/novena.c | 1 - board/liebherr/display5/display5.c | 1 - board/liebherr/display5/spl.c | 1 - board/logicpd/zoom1/zoom1.c | 1 - board/mscc/ocelot/ocelot.c | 1 - board/nvidia/p2371-2180/p2371-2180.c | 1 - board/nvidia/p2771-0000/p2771-0000.c | 1 - board/phytec/pcm051/board.c | 1 - board/phytec/pcm052/pcm052.c | 1 - board/phytec/phycore_rk3288/phycore-rk3288.c | 1 - board/qualcomm/dragonboard410c/dragonboard410c.c | 1 - board/raspberrypi/rpi/rpi.c | 1 - board/renesas/blanche/blanche.c | 1 - board/renesas/sh7752evb/sh7752evb.c | 1 - board/renesas/sh7753evb/sh7753evb.c | 1 - board/renesas/sh7757lcr/sh7757lcr.c | 1 - board/rockchip/tinker_rk3288/tinker-rk3288.c | 1 - board/samtec/vining_fpga/socfpga.c | 1 - board/siemens/common/factoryset.c | 1 - board/siemens/pxm2/board.c | 1 - board/siemens/taurus/taurus.c | 1 - board/silica/pengwyn/board.c | 1 - board/softing/vining_2000/vining_2000.c | 1 - board/tcl/sl50/board.c | 1 - board/technologic/ts4800/ts4800.c | 1 - board/theobroma-systems/puma_rk3399/puma-rk3399.c | 1 - board/ti/am335x/board.c | 1 - board/ti/am43xx/board.c | 1 - board/ti/am57xx/board.c | 1 - board/ti/dra7xx/evm.c | 1 - board/ti/ti814x/evm.c | 1 - board/ti/ti816x/evm.c | 1 - board/timll/devkit8000/devkit8000.c | 1 - board/toradex/apalis-imx8/apalis-imx8.c | 1 - board/toradex/apalis_imx6/apalis_imx6.c | 1 - board/toradex/colibri-imx8x/colibri-imx8x.c | 1 - board/toradex/colibri_imx6/colibri_imx6.c | 1 - board/toradex/common/tdx-common.c | 1 - board/vscom/baltos/board.c | 1 - cmd/aes.c | 1 - cmd/blob.c | 1 - cmd/bootm.c | 1 - cmd/efidebug.c | 1 - cmd/elf.c | 1 - cmd/ethsw.c | 2 +- cmd/i2c.c | 1 - cmd/ini.c | 1 - cmd/tpm_test.c | 1 - common/image.c | 1 - common/spl/spl_dfu.c | 1 - drivers/bootcount/bootcount_env.c | 1 - drivers/mtd/jedec_flash.c | 1 - drivers/net/fec_mxc.c | 1 - drivers/net/fm/fm.c | 1 - drivers/net/fsl_mcdmafec.c | 1 - drivers/net/mcffec.c | 1 - drivers/net/ne2000_base.c | 1 - drivers/net/sh_eth.c | 1 - drivers/net/ti/cpsw-common.c | 1 - drivers/qe/qe.c | 1 - drivers/usb/gadget/ether.c | 1 - lib/efi_loader/efi_boottime.c | 1 - net/eth-uclass.c | 1 - net/eth_common.c | 1 - net/eth_legacy.c | 1 - net/wol.c | 1 - 116 files changed, 1 insertion(+), 116 deletions(-) diff --git a/arch/arm/cpu/arm926ejs/spear/spr_misc.c b/arch/arm/cpu/arm926ejs/spear/spr_misc.c index 533268513e..d36484c9d6 100644 --- a/arch/arm/cpu/arm926ejs/spear/spr_misc.c +++ b/arch/arm/cpu/arm926ejs/spear/spr_misc.c @@ -7,7 +7,6 @@ #include #include #include -#include #include #include #include diff --git a/arch/arm/mach-davinci/misc.c b/arch/arm/mach-davinci/misc.c index b310bc7293..80e964274e 100644 --- a/arch/arm/mach-davinci/misc.c +++ b/arch/arm/mach-davinci/misc.c @@ -10,7 +10,6 @@ #include #include -#include #include #include #include diff --git a/arch/arm/mach-imx/cmd_dek.c b/arch/arm/mach-imx/cmd_dek.c index 463b869420..1b111ba26b 100644 --- a/arch/arm/mach-imx/cmd_dek.c +++ b/arch/arm/mach-imx/cmd_dek.c @@ -7,7 +7,6 @@ #include #include -#include #include #include #include diff --git a/arch/arm/mach-imx/mx6/opos6ul.c b/arch/arm/mach-imx/mx6/opos6ul.c index 183a0c961c..3ab9a3f022 100644 --- a/arch/arm/mach-imx/mx6/opos6ul.c +++ b/arch/arm/mach-imx/mx6/opos6ul.c @@ -14,7 +14,6 @@ #include #include #include -#include DECLARE_GLOBAL_DATA_PTR; diff --git a/arch/arm/mach-meson/board-common.c b/arch/arm/mach-meson/board-common.c index 08a7aae2b9..0843dca156 100644 --- a/arch/arm/mach-meson/board-common.c +++ b/arch/arm/mach-meson/board-common.c @@ -8,7 +8,6 @@ #include #include #include -#include #include #include #include diff --git a/arch/arm/mach-omap2/boot-common.c b/arch/arm/mach-omap2/boot-common.c index c8b8ac657f..eb8c5843fa 100644 --- a/arch/arm/mach-omap2/boot-common.c +++ b/arch/arm/mach-omap2/boot-common.c @@ -9,7 +9,6 @@ #include #include -#include #include #include #include diff --git a/arch/arm/mach-omap2/omap3/clock.c b/arch/arm/mach-omap2/omap3/clock.c index cb9e91ebc3..71f73492c6 100644 --- a/arch/arm/mach-omap2/omap3/clock.c +++ b/arch/arm/mach-omap2/omap3/clock.c @@ -17,7 +17,6 @@ #include #include #include -#include #include /****************************************************************************** diff --git a/arch/arm/mach-omap2/utils.c b/arch/arm/mach-omap2/utils.c index 5478416e9c..0d5ca20e8e 100644 --- a/arch/arm/mach-omap2/utils.c +++ b/arch/arm/mach-omap2/utils.c @@ -5,7 +5,6 @@ */ #include #include -#include #include #include #include diff --git a/arch/arm/mach-stm32mp/cpu.c b/arch/arm/mach-stm32mp/cpu.c index b06b84c315..a46e8438f7 100644 --- a/arch/arm/mach-stm32mp/cpu.c +++ b/arch/arm/mach-stm32mp/cpu.c @@ -6,7 +6,6 @@ #include #include #include -#include #include #include #include diff --git a/arch/arm/mach-tegra/cboot.c b/arch/arm/mach-tegra/cboot.c index bd4f33686d..0433081c6c 100644 --- a/arch/arm/mach-tegra/cboot.c +++ b/arch/arm/mach-tegra/cboot.c @@ -5,7 +5,6 @@ #include #include -#include #include #include #include diff --git a/arch/m68k/lib/bootm.c b/arch/m68k/lib/bootm.c index 5b7a68b250..19445b3fc7 100644 --- a/arch/m68k/lib/bootm.c +++ b/arch/m68k/lib/bootm.c @@ -11,7 +11,6 @@ #include #include #include -#include #include #ifdef CONFIG_SHOW_BOOT_PROGRESS # include diff --git a/arch/nds32/include/asm/u-boot.h b/arch/nds32/include/asm/u-boot.h index 68701d6da9..8c949e7fb7 100644 --- a/arch/nds32/include/asm/u-boot.h +++ b/arch/nds32/include/asm/u-boot.h @@ -21,7 +21,6 @@ #include -#include typedef struct bd_info { unsigned long bi_arch_number; /* unique id for this board */ diff --git a/arch/powerpc/cpu/mpc85xx/fdt.c b/arch/powerpc/cpu/mpc85xx/fdt.c index d17c382cc9..db12aefb29 100644 --- a/arch/powerpc/cpu/mpc85xx/fdt.c +++ b/arch/powerpc/cpu/mpc85xx/fdt.c @@ -8,7 +8,6 @@ #include #include -#include #include #include #include diff --git a/arch/powerpc/lib/bootm.c b/arch/powerpc/lib/bootm.c index 52bcd4e6f1..84691b7554 100644 --- a/arch/powerpc/lib/bootm.c +++ b/arch/powerpc/lib/bootm.c @@ -15,7 +15,6 @@ #include #include #include -#include #include #include #include diff --git a/arch/riscv/include/asm/u-boot.h b/arch/riscv/include/asm/u-boot.h index 3186835e0a..5ba8e77812 100644 --- a/arch/riscv/include/asm/u-boot.h +++ b/arch/riscv/include/asm/u-boot.h @@ -20,7 +20,6 @@ #include -#include typedef struct bd_info { unsigned long bi_boot_params; /* where this board expects params */ diff --git a/board/Arcturus/ucp1020/cmd_arc.c b/board/Arcturus/ucp1020/cmd_arc.c index 755f569d13..2e8477ed3b 100644 --- a/board/Arcturus/ucp1020/cmd_arc.c +++ b/board/Arcturus/ucp1020/cmd_arc.c @@ -15,7 +15,6 @@ #include #include #include -#include #include static ulong fwenv_addr[MAX_FWENV_ADDR]; diff --git a/board/CZ.NIC/turris_mox/turris_mox.c b/board/CZ.NIC/turris_mox/turris_mox.c index f3c89d63d5..946e20ab49 100644 --- a/board/CZ.NIC/turris_mox/turris_mox.c +++ b/board/CZ.NIC/turris_mox/turris_mox.c @@ -15,7 +15,6 @@ #include #include #include -#include #include "mox_sp.h" diff --git a/board/CZ.NIC/turris_omnia/turris_omnia.c b/board/CZ.NIC/turris_omnia/turris_omnia.c index 418657c2d5..1d8d08a847 100644 --- a/board/CZ.NIC/turris_omnia/turris_omnia.c +++ b/board/CZ.NIC/turris_omnia/turris_omnia.c @@ -9,7 +9,6 @@ #include #include -#include #include #include #include diff --git a/board/LaCie/net2big_v2/net2big_v2.c b/board/LaCie/net2big_v2/net2big_v2.c index 1609089502..686608d25a 100644 --- a/board/LaCie/net2big_v2/net2big_v2.c +++ b/board/LaCie/net2big_v2/net2big_v2.c @@ -11,7 +11,6 @@ #include #include #include -#include #include #include #include diff --git a/board/LaCie/netspace_v2/netspace_v2.c b/board/LaCie/netspace_v2/netspace_v2.c index ba667934e4..bd7ab22948 100644 --- a/board/LaCie/netspace_v2/netspace_v2.c +++ b/board/LaCie/netspace_v2/netspace_v2.c @@ -11,7 +11,6 @@ #include #include #include -#include #include #include #include diff --git a/board/amlogic/p200/p200.c b/board/amlogic/p200/p200.c index 7f33ce0f0b..41d331dda2 100644 --- a/board/amlogic/p200/p200.c +++ b/board/amlogic/p200/p200.c @@ -6,7 +6,6 @@ #include #include #include -#include #include #include #include diff --git a/board/amlogic/p201/p201.c b/board/amlogic/p201/p201.c index 0a17fbedf1..e46fcaea6d 100644 --- a/board/amlogic/p201/p201.c +++ b/board/amlogic/p201/p201.c @@ -6,7 +6,6 @@ #include #include #include -#include #include #include #include diff --git a/board/amlogic/p212/p212.c b/board/amlogic/p212/p212.c index 4d6ac7264c..094ab5478d 100644 --- a/board/amlogic/p212/p212.c +++ b/board/amlogic/p212/p212.c @@ -7,7 +7,6 @@ #include #include #include -#include #include #include #include diff --git a/board/amlogic/q200/q200.c b/board/amlogic/q200/q200.c index 880945f143..f1faa7418e 100644 --- a/board/amlogic/q200/q200.c +++ b/board/amlogic/q200/q200.c @@ -7,7 +7,6 @@ #include #include #include -#include #include #include #include diff --git a/board/amlogic/s400/s400.c b/board/amlogic/s400/s400.c index 02a0e9286c..bdb4eca883 100644 --- a/board/amlogic/s400/s400.c +++ b/board/amlogic/s400/s400.c @@ -6,7 +6,6 @@ #include #include -#include #include #include #include diff --git a/board/amlogic/u200/u200.c b/board/amlogic/u200/u200.c index 94ee3ce6e4..69fd29d4fe 100644 --- a/board/amlogic/u200/u200.c +++ b/board/amlogic/u200/u200.c @@ -6,7 +6,6 @@ #include #include -#include #include #include #include diff --git a/board/armadeus/apf27/apf27.c b/board/armadeus/apf27/apf27.c index bf2586d326..20be0c3bd4 100644 --- a/board/armadeus/apf27/apf27.c +++ b/board/armadeus/apf27/apf27.c @@ -7,7 +7,6 @@ */ #include -#include #include #include #include diff --git a/board/atmel/common/mac_eeprom.c b/board/atmel/common/mac_eeprom.c index f016ef7a6a..83a7778e99 100644 --- a/board/atmel/common/mac_eeprom.c +++ b/board/atmel/common/mac_eeprom.c @@ -7,7 +7,6 @@ #include #include #include -#include #include #include diff --git a/board/birdland/bav335x/board.c b/board/birdland/bav335x/board.c index b0339ad8f0..9e64cbbc82 100644 --- a/board/birdland/bav335x/board.c +++ b/board/birdland/bav335x/board.c @@ -30,7 +30,6 @@ #include #include #include -#include #include "board.h" DECLARE_GLOBAL_DATA_PTR; diff --git a/board/bosch/guardian/board.c b/board/bosch/guardian/board.c index 86ab180f5c..bc3c6d229c 100644 --- a/board/bosch/guardian/board.c +++ b/board/bosch/guardian/board.c @@ -12,7 +12,6 @@ #include #include #include -#include #include #include #include diff --git a/board/bosch/shc/board.c b/board/bosch/shc/board.c index 29be3739f9..358118f757 100644 --- a/board/bosch/shc/board.c +++ b/board/bosch/shc/board.c @@ -33,7 +33,6 @@ #include #include #include -#include #include "mmc.h" #include "board.h" diff --git a/board/compulab/cl-som-imx7/cl-som-imx7.c b/board/compulab/cl-som-imx7/cl-som-imx7.c index 6cc7554c1a..395d5dce17 100644 --- a/board/compulab/cl-som-imx7/cl-som-imx7.c +++ b/board/compulab/cl-som-imx7/cl-som-imx7.c @@ -9,7 +9,6 @@ #include #include -#include #include #include #include diff --git a/board/compulab/cm_fx6/cm_fx6.c b/board/compulab/cm_fx6/cm_fx6.c index 57bbe41b8c..feb7a71f00 100644 --- a/board/compulab/cm_fx6/cm_fx6.c +++ b/board/compulab/cm_fx6/cm_fx6.c @@ -12,7 +12,6 @@ #include #include #include -#include #include #include #include diff --git a/board/compulab/cm_t335/cm_t335.c b/board/compulab/cm_t335/cm_t335.c index fca7685ca7..6e38745191 100644 --- a/board/compulab/cm_t335/cm_t335.c +++ b/board/compulab/cm_t335/cm_t335.c @@ -9,7 +9,6 @@ #include #include -#include #include #include #include diff --git a/board/compulab/cm_t35/cm_t35.c b/board/compulab/cm_t35/cm_t35.c index ead4700646..b52358baac 100644 --- a/board/compulab/cm_t35/cm_t35.c +++ b/board/compulab/cm_t35/cm_t35.c @@ -13,7 +13,6 @@ #include #include -#include #include #include #include diff --git a/board/compulab/cm_t54/cm_t54.c b/board/compulab/cm_t54/cm_t54.c index d7c59d5a32..811bbb528a 100644 --- a/board/compulab/cm_t54/cm_t54.c +++ b/board/compulab/cm_t54/cm_t54.c @@ -9,7 +9,6 @@ #include #include -#include #include #include #include diff --git a/board/davinci/da8xxevm/da850evm.c b/board/davinci/da8xxevm/da850evm.c index d3f3819f11..d9019de6e0 100644 --- a/board/davinci/da8xxevm/da850evm.c +++ b/board/davinci/da8xxevm/da850evm.c @@ -11,7 +11,6 @@ #include #include #include -#include #include #include #include diff --git a/board/dhelectronics/dh_imx6/dh_imx6.c b/board/dhelectronics/dh_imx6/dh_imx6.c index 1994dec8f9..2d0f78da11 100644 --- a/board/dhelectronics/dh_imx6/dh_imx6.c +++ b/board/dhelectronics/dh_imx6/dh_imx6.c @@ -22,7 +22,6 @@ #include #include #include -#include #include #include #include diff --git a/board/eets/pdu001/board.c b/board/eets/pdu001/board.c index 74a6684274..8a3d0ada27 100644 --- a/board/eets/pdu001/board.c +++ b/board/eets/pdu001/board.c @@ -14,7 +14,6 @@ #include #include #include -#include #include #include #include diff --git a/board/freescale/imx8qm_mek/imx8qm_mek.c b/board/freescale/imx8qm_mek/imx8qm_mek.c index f4b0ffc59d..76634a3a28 100644 --- a/board/freescale/imx8qm_mek/imx8qm_mek.c +++ b/board/freescale/imx8qm_mek/imx8qm_mek.c @@ -7,7 +7,6 @@ #include #include #include -#include #include #include #include diff --git a/board/freescale/imx8qxp_mek/imx8qxp_mek.c b/board/freescale/imx8qxp_mek/imx8qxp_mek.c index 26bbbca8fc..4ba8314284 100644 --- a/board/freescale/imx8qxp_mek/imx8qxp_mek.c +++ b/board/freescale/imx8qxp_mek/imx8qxp_mek.c @@ -7,7 +7,6 @@ #include #include #include -#include #include #include #include diff --git a/board/gateworks/gw_ventana/gw_ventana.c b/board/gateworks/gw_ventana/gw_ventana.c index 3c40a4a892..8a694a71c9 100644 --- a/board/gateworks/gw_ventana/gw_ventana.c +++ b/board/gateworks/gw_ventana/gw_ventana.c @@ -22,7 +22,6 @@ #include #include #include -#include #include #include #include diff --git a/board/gateworks/gw_ventana/gw_ventana_spl.c b/board/gateworks/gw_ventana/gw_ventana_spl.c index 6886ff9b33..b0891379a1 100644 --- a/board/gateworks/gw_ventana/gw_ventana_spl.c +++ b/board/gateworks/gw_ventana/gw_ventana_spl.c @@ -15,7 +15,6 @@ #include #include #include -#include #include #include diff --git a/board/ge/mx53ppd/mx53ppd.c b/board/ge/mx53ppd/mx53ppd.c index aadf4668d9..5448567298 100644 --- a/board/ge/mx53ppd/mx53ppd.c +++ b/board/ge/mx53ppd/mx53ppd.c @@ -21,7 +21,6 @@ #include #include #include -#include #include #include #include diff --git a/board/grinn/chiliboard/board.c b/board/grinn/chiliboard/board.c index 6b9e6e9a09..c6d53600fa 100644 --- a/board/grinn/chiliboard/board.c +++ b/board/grinn/chiliboard/board.c @@ -17,7 +17,6 @@ #include #include #include -#include #include #include #include diff --git a/board/gumstix/pepper/board.c b/board/gumstix/pepper/board.c index 7ae4c5cd77..f5beb8c940 100644 --- a/board/gumstix/pepper/board.c +++ b/board/gumstix/pepper/board.c @@ -26,7 +26,6 @@ #include #include #include -#include #include #include "board.h" diff --git a/board/imgtec/ci20/ci20.c b/board/imgtec/ci20/ci20.c index f72a660581..5368b67b38 100644 --- a/board/imgtec/ci20/ci20.c +++ b/board/imgtec/ci20/ci20.c @@ -8,7 +8,6 @@ #include #include -#include #include #include #include diff --git a/board/intel/edison/edison.c b/board/intel/edison/edison.c index f8f498d088..f56b5b1aff 100644 --- a/board/intel/edison/edison.c +++ b/board/intel/edison/edison.c @@ -5,7 +5,6 @@ #include #include #include -#include #include #include #include diff --git a/board/isee/igep003x/board.c b/board/isee/igep003x/board.c index 398c945990..a8c2b121a4 100644 --- a/board/isee/igep003x/board.c +++ b/board/isee/igep003x/board.c @@ -26,7 +26,6 @@ #include #include #include -#include #include "board.h" DECLARE_GLOBAL_DATA_PTR; diff --git a/board/k+p/kp_imx53/kp_id_rev.c b/board/k+p/kp_imx53/kp_id_rev.c index 642adf78d8..9dae54dda5 100644 --- a/board/k+p/kp_imx53/kp_id_rev.c +++ b/board/k+p/kp_imx53/kp_id_rev.c @@ -11,7 +11,6 @@ #include #include -#include #include #include "kp_id_rev.h" diff --git a/board/kosagi/novena/novena.c b/board/kosagi/novena/novena.c index e0f0d7c60c..b7b747d196 100644 --- a/board/kosagi/novena/novena.c +++ b/board/kosagi/novena/novena.c @@ -25,7 +25,6 @@ #include #include #include -#include #include #include #include diff --git a/board/liebherr/display5/display5.c b/board/liebherr/display5/display5.c index 5c70e1b6f2..037c4e69e5 100644 --- a/board/liebherr/display5/display5.c +++ b/board/liebherr/display5/display5.c @@ -26,7 +26,6 @@ #include #include #include -#include #include #include diff --git a/board/liebherr/display5/spl.c b/board/liebherr/display5/spl.c index d92760b487..354b63e431 100644 --- a/board/liebherr/display5/spl.c +++ b/board/liebherr/display5/spl.c @@ -18,7 +18,6 @@ #include "asm/arch/iomux.h" #include #include -#include #include #include #include diff --git a/board/logicpd/zoom1/zoom1.c b/board/logicpd/zoom1/zoom1.c index 54716125f3..6bfa41737f 100644 --- a/board/logicpd/zoom1/zoom1.c +++ b/board/logicpd/zoom1/zoom1.c @@ -16,7 +16,6 @@ #include #include #include -#include #include #include #include diff --git a/board/mscc/ocelot/ocelot.c b/board/mscc/ocelot/ocelot.c index bcae8fa50c..91d03951db 100644 --- a/board/mscc/ocelot/ocelot.c +++ b/board/mscc/ocelot/ocelot.c @@ -7,7 +7,6 @@ #include #include #include -#include #include #include #include diff --git a/board/nvidia/p2371-2180/p2371-2180.c b/board/nvidia/p2371-2180/p2371-2180.c index b1da5c9982..fa5288bf18 100644 --- a/board/nvidia/p2371-2180/p2371-2180.c +++ b/board/nvidia/p2371-2180/p2371-2180.c @@ -6,7 +6,6 @@ #include #include -#include #include #include #include diff --git a/board/nvidia/p2771-0000/p2771-0000.c b/board/nvidia/p2771-0000/p2771-0000.c index 8c91b75f96..63cdb3a604 100644 --- a/board/nvidia/p2771-0000/p2771-0000.c +++ b/board/nvidia/p2771-0000/p2771-0000.c @@ -5,7 +5,6 @@ #include #include -#include #include #include #include diff --git a/board/phytec/pcm051/board.c b/board/phytec/pcm051/board.c index 0cb85e940c..43f6c5afcb 100644 --- a/board/phytec/pcm051/board.c +++ b/board/phytec/pcm051/board.c @@ -10,7 +10,6 @@ #include #include -#include #include #include #include diff --git a/board/phytec/pcm052/pcm052.c b/board/phytec/pcm052/pcm052.c index 2417111765..e1ebe8e75d 100644 --- a/board/phytec/pcm052/pcm052.c +++ b/board/phytec/pcm052/pcm052.c @@ -15,7 +15,6 @@ #include #include #include -#include #include DECLARE_GLOBAL_DATA_PTR; diff --git a/board/phytec/phycore_rk3288/phycore-rk3288.c b/board/phytec/phycore_rk3288/phycore-rk3288.c index 9f945e829d..7b9178e3a6 100644 --- a/board/phytec/phycore_rk3288/phycore-rk3288.c +++ b/board/phytec/phycore_rk3288/phycore-rk3288.c @@ -9,7 +9,6 @@ #include #include #include -#include #include #include #include diff --git a/board/qualcomm/dragonboard410c/dragonboard410c.c b/board/qualcomm/dragonboard410c/dragonboard410c.c index 06d3d7e0f8..d7f0f93fb1 100644 --- a/board/qualcomm/dragonboard410c/dragonboard410c.c +++ b/board/qualcomm/dragonboard410c/dragonboard410c.c @@ -11,7 +11,6 @@ #include #include #include -#include #include #include diff --git a/board/raspberrypi/rpi/rpi.c b/board/raspberrypi/rpi/rpi.c index 104589bff1..7a6ca8f759 100644 --- a/board/raspberrypi/rpi/rpi.c +++ b/board/raspberrypi/rpi/rpi.c @@ -7,7 +7,6 @@ #include #include #include -#include #include #include #include diff --git a/board/renesas/blanche/blanche.c b/board/renesas/blanche/blanche.c index 898abfbd85..08c5448609 100644 --- a/board/renesas/blanche/blanche.c +++ b/board/renesas/blanche/blanche.c @@ -19,7 +19,6 @@ #include #include #include -#include #include #include #include diff --git a/board/renesas/sh7752evb/sh7752evb.c b/board/renesas/sh7752evb/sh7752evb.c index b14ce263f7..d0b850f35d 100644 --- a/board/renesas/sh7752evb/sh7752evb.c +++ b/board/renesas/sh7752evb/sh7752evb.c @@ -5,7 +5,6 @@ #include #include -#include #include #include #include diff --git a/board/renesas/sh7753evb/sh7753evb.c b/board/renesas/sh7753evb/sh7753evb.c index f643867806..e1bed7dcc3 100644 --- a/board/renesas/sh7753evb/sh7753evb.c +++ b/board/renesas/sh7753evb/sh7753evb.c @@ -5,7 +5,6 @@ #include #include -#include #include #include #include diff --git a/board/renesas/sh7757lcr/sh7757lcr.c b/board/renesas/sh7757lcr/sh7757lcr.c index 2d32440aeb..d2671202e9 100644 --- a/board/renesas/sh7757lcr/sh7757lcr.c +++ b/board/renesas/sh7757lcr/sh7757lcr.c @@ -5,7 +5,6 @@ #include #include -#include #include #include #include diff --git a/board/rockchip/tinker_rk3288/tinker-rk3288.c b/board/rockchip/tinker_rk3288/tinker-rk3288.c index e379950095..6c76c3c25c 100644 --- a/board/rockchip/tinker_rk3288/tinker-rk3288.c +++ b/board/rockchip/tinker_rk3288/tinker-rk3288.c @@ -6,7 +6,6 @@ #include #include #include -#include #include #include diff --git a/board/samtec/vining_fpga/socfpga.c b/board/samtec/vining_fpga/socfpga.c index 63ce4a20b5..1e095a4e7d 100644 --- a/board/samtec/vining_fpga/socfpga.c +++ b/board/samtec/vining_fpga/socfpga.c @@ -5,7 +5,6 @@ #include #include -#include #include #include #include diff --git a/board/siemens/common/factoryset.c b/board/siemens/common/factoryset.c index cd224a8e1c..049a65ff77 100644 --- a/board/siemens/common/factoryset.c +++ b/board/siemens/common/factoryset.c @@ -9,7 +9,6 @@ #include #include -#include #include #include #include diff --git a/board/siemens/pxm2/board.c b/board/siemens/pxm2/board.c index 0a82a5ef5c..30f0902701 100644 --- a/board/siemens/pxm2/board.c +++ b/board/siemens/pxm2/board.c @@ -14,7 +14,6 @@ #include #include -#include #include #include #include diff --git a/board/siemens/taurus/taurus.c b/board/siemens/taurus/taurus.c index d0efb67bbc..1cf1f9e1f7 100644 --- a/board/siemens/taurus/taurus.c +++ b/board/siemens/taurus/taurus.c @@ -15,7 +15,6 @@ #include #include #include -#include #include #include #include diff --git a/board/silica/pengwyn/board.c b/board/silica/pengwyn/board.c index dc10b76160..345701fd52 100644 --- a/board/silica/pengwyn/board.c +++ b/board/silica/pengwyn/board.c @@ -7,7 +7,6 @@ #include #include -#include #include #include #include diff --git a/board/softing/vining_2000/vining_2000.c b/board/softing/vining_2000/vining_2000.c index d1df8fc0cc..51985b91c2 100644 --- a/board/softing/vining_2000/vining_2000.c +++ b/board/softing/vining_2000/vining_2000.c @@ -19,7 +19,6 @@ #include #include #include -#include #include #include #include diff --git a/board/tcl/sl50/board.c b/board/tcl/sl50/board.c index 8ddbee5436..a9c9d377b4 100644 --- a/board/tcl/sl50/board.c +++ b/board/tcl/sl50/board.c @@ -30,7 +30,6 @@ #include #include #include -#include #include "board.h" DECLARE_GLOBAL_DATA_PTR; diff --git a/board/technologic/ts4800/ts4800.c b/board/technologic/ts4800/ts4800.c index 38d3a3de26..82eb0c285c 100644 --- a/board/technologic/ts4800/ts4800.c +++ b/board/technologic/ts4800/ts4800.c @@ -17,7 +17,6 @@ #include #include #include -#include #include #include #include diff --git a/board/theobroma-systems/puma_rk3399/puma-rk3399.c b/board/theobroma-systems/puma_rk3399/puma-rk3399.c index a00587c3fa..4113a1c6ee 100644 --- a/board/theobroma-systems/puma_rk3399/puma-rk3399.c +++ b/board/theobroma-systems/puma_rk3399/puma-rk3399.c @@ -6,7 +6,6 @@ #include #include #include -#include #include #include #include diff --git a/board/ti/am335x/board.c b/board/ti/am335x/board.c index 58d09f7c20..54adcd510d 100644 --- a/board/ti/am335x/board.c +++ b/board/ti/am335x/board.c @@ -36,7 +36,6 @@ #include #include #include -#include #include "../common/board_detect.h" #include "board.h" diff --git a/board/ti/am43xx/board.c b/board/ti/am43xx/board.c index 756b516aa6..2e09cc20e8 100644 --- a/board/ti/am43xx/board.c +++ b/board/ti/am43xx/board.c @@ -9,7 +9,6 @@ #include #include -#include #include #include #include diff --git a/board/ti/am57xx/board.c b/board/ti/am57xx/board.c index 0dacfd4327..f78e6c2e1f 100644 --- a/board/ti/am57xx/board.c +++ b/board/ti/am57xx/board.c @@ -24,7 +24,6 @@ #include #include #include -#include #include #include #include diff --git a/board/ti/dra7xx/evm.c b/board/ti/dra7xx/evm.c index 97eef65d51..74d04bb1e3 100644 --- a/board/ti/dra7xx/evm.c +++ b/board/ti/dra7xx/evm.c @@ -25,7 +25,6 @@ #include #include #include -#include #include #include #include diff --git a/board/ti/ti814x/evm.c b/board/ti/ti814x/evm.c index a4c094b6dc..2b9385d14b 100644 --- a/board/ti/ti814x/evm.c +++ b/board/ti/ti814x/evm.c @@ -10,7 +10,6 @@ #include #include #include -#include #include #include #include diff --git a/board/ti/ti816x/evm.c b/board/ti/ti816x/evm.c index de9e91a685..8f7b591b5c 100644 --- a/board/ti/ti816x/evm.c +++ b/board/ti/ti816x/evm.c @@ -8,7 +8,6 @@ #include #include -#include #include #include #include diff --git a/board/timll/devkit8000/devkit8000.c b/board/timll/devkit8000/devkit8000.c index f8970b0b6d..490d8cbcd0 100644 --- a/board/timll/devkit8000/devkit8000.c +++ b/board/timll/devkit8000/devkit8000.c @@ -18,7 +18,6 @@ #include #include #include -#include #include #include #include diff --git a/board/toradex/apalis-imx8/apalis-imx8.c b/board/toradex/apalis-imx8/apalis-imx8.c index a770472e17..af48b56095 100644 --- a/board/toradex/apalis-imx8/apalis-imx8.c +++ b/board/toradex/apalis-imx8/apalis-imx8.c @@ -13,7 +13,6 @@ #include #include #include -#include #include #include diff --git a/board/toradex/apalis_imx6/apalis_imx6.c b/board/toradex/apalis_imx6/apalis_imx6.c index 89f1b728fd..6421a22c25 100644 --- a/board/toradex/apalis_imx6/apalis_imx6.c +++ b/board/toradex/apalis_imx6/apalis_imx6.c @@ -27,7 +27,6 @@ #include #include #include -#include #include #include #include diff --git a/board/toradex/colibri-imx8x/colibri-imx8x.c b/board/toradex/colibri-imx8x/colibri-imx8x.c index 69628b906c..eae3c591a1 100644 --- a/board/toradex/colibri-imx8x/colibri-imx8x.c +++ b/board/toradex/colibri-imx8x/colibri-imx8x.c @@ -13,7 +13,6 @@ #include #include #include -#include #include #include diff --git a/board/toradex/colibri_imx6/colibri_imx6.c b/board/toradex/colibri_imx6/colibri_imx6.c index f657db87d8..ad40b589c1 100644 --- a/board/toradex/colibri_imx6/colibri_imx6.c +++ b/board/toradex/colibri_imx6/colibri_imx6.c @@ -25,7 +25,6 @@ #include #include #include -#include #include #include #include diff --git a/board/toradex/common/tdx-common.c b/board/toradex/common/tdx-common.c index 71642a13ea..e9441a7979 100644 --- a/board/toradex/common/tdx-common.c +++ b/board/toradex/common/tdx-common.c @@ -5,7 +5,6 @@ #include #include -#include #include #include diff --git a/board/vscom/baltos/board.c b/board/vscom/baltos/board.c index 5f5a51bfbf..f5540841c9 100644 --- a/board/vscom/baltos/board.c +++ b/board/vscom/baltos/board.c @@ -29,7 +29,6 @@ #include #include #include -#include #include #include "board.h" diff --git a/cmd/aes.c b/cmd/aes.c index 25efb9642a..7ff4a71709 100644 --- a/cmd/aes.c +++ b/cmd/aes.c @@ -7,7 +7,6 @@ #include #include -#include #include #include #include diff --git a/cmd/blob.c b/cmd/blob.c index d3b6e454bf..80478b8802 100644 --- a/cmd/blob.c +++ b/cmd/blob.c @@ -6,7 +6,6 @@ #include #include -#include #include #include #include diff --git a/cmd/bootm.c b/cmd/bootm.c index b326ac9b43..8279f2b7cc 100644 --- a/cmd/bootm.c +++ b/cmd/bootm.c @@ -11,7 +11,6 @@ #include #include #include -#include #include #include #include diff --git a/cmd/efidebug.c b/cmd/efidebug.c index 961e8fad22..ef97e19d07 100644 --- a/cmd/efidebug.c +++ b/cmd/efidebug.c @@ -9,7 +9,6 @@ #include #include #include -#include #include #include #include diff --git a/cmd/elf.c b/cmd/elf.c index 5e5cf47cf8..538562fda5 100644 --- a/cmd/elf.c +++ b/cmd/elf.c @@ -17,7 +17,6 @@ #include #include #include -#include #include #include #ifdef CONFIG_X86 diff --git a/cmd/ethsw.c b/cmd/ethsw.c index 473324f878..8846805799 100644 --- a/cmd/ethsw.c +++ b/cmd/ethsw.c @@ -7,7 +7,7 @@ #include #include -#include +#include #include #include #include diff --git a/cmd/i2c.c b/cmd/i2c.c index 09c4ba9a1c..e0f8ece597 100644 --- a/cmd/i2c.c +++ b/cmd/i2c.c @@ -71,7 +71,6 @@ #include #include #include -#include #include #include #include diff --git a/cmd/ini.c b/cmd/ini.c index f4faa7cae1..0c425262d0 100644 --- a/cmd/ini.c +++ b/cmd/ini.c @@ -14,7 +14,6 @@ #include #include #include -#include #include #include diff --git a/cmd/tpm_test.c b/cmd/tpm_test.c index 56a5aa4aa5..c14dd75a26 100644 --- a/cmd/tpm_test.c +++ b/cmd/tpm_test.c @@ -5,7 +5,6 @@ #include #include -#include #include #include "tpm-user-utils.h" diff --git a/common/image.c b/common/image.c index 4a578f3ef0..84e859a30f 100644 --- a/common/image.c +++ b/common/image.c @@ -17,7 +17,6 @@ #include -#include #include #include #include diff --git a/common/spl/spl_dfu.c b/common/spl/spl_dfu.c index 3f54ae0260..5728d43ad3 100644 --- a/common/spl/spl_dfu.c +++ b/common/spl/spl_dfu.c @@ -15,7 +15,6 @@ #include #include #include -#include static int run_dfu(int usb_index, char *interface, char *devstring) { diff --git a/drivers/bootcount/bootcount_env.c b/drivers/bootcount/bootcount_env.c index 50e0857b3b..b75c9002b2 100644 --- a/drivers/bootcount/bootcount_env.c +++ b/drivers/bootcount/bootcount_env.c @@ -6,7 +6,6 @@ #include #include -#include void bootcount_store(ulong a) { diff --git a/drivers/mtd/jedec_flash.c b/drivers/mtd/jedec_flash.c index a3540c1115..f59b2bc62f 100644 --- a/drivers/mtd/jedec_flash.c +++ b/drivers/mtd/jedec_flash.c @@ -15,7 +15,6 @@ #include #include #include -#include #define P_ID_AMD_STD CFI_CMDSET_AMD_LEGACY diff --git a/drivers/net/fec_mxc.c b/drivers/net/fec_mxc.c index a8b141aba2..080dbcf7db 100644 --- a/drivers/net/fec_mxc.c +++ b/drivers/net/fec_mxc.c @@ -10,7 +10,6 @@ #include #include #include -#include #include #include #include diff --git a/drivers/net/fm/fm.c b/drivers/net/fm/fm.c index ce0f1678fd..4c9dce8dc5 100644 --- a/drivers/net/fm/fm.c +++ b/drivers/net/fm/fm.c @@ -15,7 +15,6 @@ #include #include #include -#include #ifdef CONFIG_ARM64 #include diff --git a/drivers/net/fsl_mcdmafec.c b/drivers/net/fsl_mcdmafec.c index 41752c0b6a..e66fb16de8 100644 --- a/drivers/net/fsl_mcdmafec.c +++ b/drivers/net/fsl_mcdmafec.c @@ -9,7 +9,6 @@ #include #include -#include #include #include #include diff --git a/drivers/net/mcffec.c b/drivers/net/mcffec.c index a8553cbbc2..fb93041256 100644 --- a/drivers/net/mcffec.c +++ b/drivers/net/mcffec.c @@ -9,7 +9,6 @@ #include #include -#include #include #include diff --git a/drivers/net/ne2000_base.c b/drivers/net/ne2000_base.c index 3bc7a35086..819a246070 100644 --- a/drivers/net/ne2000_base.c +++ b/drivers/net/ne2000_base.c @@ -75,7 +75,6 @@ Add SNMP #include #include #include -#include #include #include #include diff --git a/drivers/net/sh_eth.c b/drivers/net/sh_eth.c index e2ca4749f7..749f651920 100644 --- a/drivers/net/sh_eth.c +++ b/drivers/net/sh_eth.c @@ -11,7 +11,6 @@ #include #include #include -#include #include #include #include diff --git a/drivers/net/ti/cpsw-common.c b/drivers/net/ti/cpsw-common.c index ac12cfe9b8..21b8bbda3d 100644 --- a/drivers/net/ti/cpsw-common.c +++ b/drivers/net/ti/cpsw-common.c @@ -7,7 +7,6 @@ #include #include -#include #include #include #include diff --git a/drivers/qe/qe.c b/drivers/qe/qe.c index 505ae9b45f..6e4d732a07 100644 --- a/drivers/qe/qe.c +++ b/drivers/qe/qe.c @@ -14,7 +14,6 @@ #include #include #include -#include #ifdef CONFIG_ARCH_LS1021A #include diff --git a/drivers/usb/gadget/ether.c b/drivers/usb/gadget/ether.c index fa49d3126f..a118283984 100644 --- a/drivers/usb/gadget/ether.c +++ b/drivers/usb/gadget/ether.c @@ -10,7 +10,6 @@ #include #include #include -#include #include #include #include diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c index f75ca1a67c..b9bff894cb 100644 --- a/lib/efi_loader/efi_boottime.c +++ b/lib/efi_loader/efi_boottime.c @@ -8,7 +8,6 @@ #include #include #include -#include #include #include #include diff --git a/net/eth-uclass.c b/net/eth-uclass.c index 4e4f472431..1d5d2f03b7 100644 --- a/net/eth-uclass.c +++ b/net/eth-uclass.c @@ -8,7 +8,6 @@ #include #include #include -#include #include #include #include diff --git a/net/eth_common.c b/net/eth_common.c index dcc59186d8..ed26b1b693 100644 --- a/net/eth_common.c +++ b/net/eth_common.c @@ -8,7 +8,6 @@ #include #include #include -#include #include #include #include "eth_internal.h" diff --git a/net/eth_legacy.c b/net/eth_legacy.c index 0f558b23ce..850f362d87 100644 --- a/net/eth_legacy.c +++ b/net/eth_legacy.c @@ -8,7 +8,6 @@ #include #include #include -#include #include #include #include diff --git a/net/wol.c b/net/wol.c index 51543343e4..0a625668a9 100644 --- a/net/wol.c +++ b/net/wol.c @@ -7,7 +7,6 @@ #include #include #include -#include #include "wol.h" static ulong wol_timeout = WOL_DEFAULT_TIMEOUT; From f3998fdc4d0871727d7be6838bac750c6323c0a8 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Fri, 2 Aug 2019 09:44:25 -0600 Subject: [PATCH 49/51] env: Rename environment.h to env_internal.h This file contains lots of internal details about the environment. Most code can include env.h instead, calling the functions there as needed. Rename this file and add a comment at the top to indicate its internal nature. Signed-off-by: Simon Glass Acked-by: Joe Hershberger Reviewed-by: Simon Goldschmidt [trini: Fixup apalis-tk1.c] Signed-off-by: Tom Rini --- api/api.c | 2 +- arch/arm/cpu/armv8/fsl-layerscape/cpu.c | 2 +- arch/arm/cpu/armv8/fsl-layerscape/soc.c | 2 +- arch/x86/cpu/qemu/e820.c | 2 +- board/Arcturus/ucp1020/spl.c | 2 +- board/amlogic/w400/w400.c | 2 +- board/birdland/bav335x/board.c | 2 +- board/bosch/guardian/board.c | 2 +- board/bosch/shc/board.c | 2 +- board/buffalo/lsxl/lsxl.c | 2 +- board/freescale/b4860qds/spl.c | 2 +- board/freescale/c29xpcie/spl.c | 2 +- board/freescale/ls1012afrdm/ls1012afrdm.c | 2 +- board/freescale/ls1012aqds/ls1012aqds.c | 2 +- board/freescale/ls1012ardb/ls1012ardb.c | 2 +- board/freescale/ls1028a/ls1028a.c | 2 +- board/freescale/ls1088a/ls1088a.c | 2 +- board/freescale/ls2080a/ls2080a.c | 2 +- board/freescale/ls2080aqds/ls2080aqds.c | 2 +- board/freescale/ls2080ardb/ls2080ardb.c | 2 +- board/freescale/lx2160a/lx2160a.c | 2 +- board/freescale/p1010rdb/spl.c | 2 +- board/freescale/p1022ds/spl.c | 2 +- board/freescale/p1_p2_rdb_pc/spl.c | 2 +- board/freescale/t102xqds/spl.c | 2 +- board/freescale/t102xrdb/spl.c | 2 +- board/freescale/t104xrdb/spl.c | 2 +- board/freescale/t208xqds/spl.c | 2 +- board/freescale/t208xrdb/spl.c | 2 +- board/freescale/t4qds/spl.c | 2 +- board/freescale/t4rdb/spl.c | 2 +- board/gardena/smart-gateway-mt7688/board.c | 2 +- board/phytec/phycore_rk3288/phycore-rk3288.c | 2 +- board/renesas/alt/alt.c | 2 +- board/renesas/gose/gose.c | 2 +- board/renesas/koelsch/koelsch.c | 2 +- board/renesas/lager/lager.c | 2 +- board/renesas/porter/porter.c | 2 +- board/renesas/silk/silk.c | 2 +- board/renesas/stout/stout.c | 2 +- board/st/stm32mp1/stm32mp1.c | 2 +- board/sunxi/board.c | 2 +- board/tcl/sl50/board.c | 2 +- board/ti/am335x/board.c | 2 +- board/toradex/apalis-tk1/apalis-tk1.c | 2 +- cmd/nvedit.c | 2 +- common/board_f.c | 2 +- common/board_r.c | 2 +- common/console.c | 2 +- drivers/mtd/cfi_flash.c | 2 +- drivers/serial/serial-uclass.c | 2 +- drivers/serial/serial.c | 2 +- env/callback.c | 2 +- env/common.c | 2 +- env/eeprom.c | 2 +- env/embedded.c | 2 +- env/env.c | 2 +- env/ext4.c | 2 +- env/fat.c | 2 +- env/flags.c | 2 +- env/flash.c | 2 +- env/mmc.c | 2 +- env/nand.c | 2 +- env/nowhere.c | 2 +- env/nvram.c | 2 +- env/onenand.c | 2 +- env/remote.c | 2 +- env/sata.c | 2 +- env/sf.c | 2 +- env/ubi.c | 2 +- include/common.h | 2 +- include/{environment.h => env_internal.h} | 14 +++++++++++--- lib/efi_loader/efi_variable.c | 2 +- net/net.c | 2 +- tools/envcrc.c | 2 +- 75 files changed, 85 insertions(+), 77 deletions(-) rename include/{environment.h => env_internal.h} (93%) diff --git a/api/api.c b/api/api.c index cd7487fde2..bc9454eb4b 100644 --- a/api/api.c +++ b/api/api.c @@ -10,7 +10,7 @@ #include #include #include -#include +#include #include #include diff --git a/arch/arm/cpu/armv8/fsl-layerscape/cpu.c b/arch/arm/cpu/armv8/fsl-layerscape/cpu.c index 9577ada113..26f4fdacdb 100644 --- a/arch/arm/cpu/armv8/fsl-layerscape/cpu.c +++ b/arch/arm/cpu/armv8/fsl-layerscape/cpu.c @@ -33,7 +33,7 @@ #include #ifdef CONFIG_TFABOOT -#include +#include #ifdef CONFIG_CHAIN_OF_TRUST #include #endif diff --git a/arch/arm/cpu/armv8/fsl-layerscape/soc.c b/arch/arm/cpu/armv8/fsl-layerscape/soc.c index 00c705f74e..ca8005992a 100644 --- a/arch/arm/cpu/armv8/fsl-layerscape/soc.c +++ b/arch/arm/cpu/armv8/fsl-layerscape/soc.c @@ -27,7 +27,7 @@ #endif #include #ifdef CONFIG_TFABOOT -#include +#include DECLARE_GLOBAL_DATA_PTR; #endif diff --git a/arch/x86/cpu/qemu/e820.c b/arch/x86/cpu/qemu/e820.c index 7b3bc7db5e..e682486547 100644 --- a/arch/x86/cpu/qemu/e820.c +++ b/arch/x86/cpu/qemu/e820.c @@ -4,7 +4,7 @@ */ #include -#include +#include #include DECLARE_GLOBAL_DATA_PTR; diff --git a/board/Arcturus/ucp1020/spl.c b/board/Arcturus/ucp1020/spl.c index f3b7d99878..9314fabdf2 100644 --- a/board/Arcturus/ucp1020/spl.c +++ b/board/Arcturus/ucp1020/spl.c @@ -10,7 +10,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/amlogic/w400/w400.c b/board/amlogic/w400/w400.c index 4737865367..e60dc3a622 100644 --- a/board/amlogic/w400/w400.c +++ b/board/amlogic/w400/w400.c @@ -6,7 +6,7 @@ #include #include -#include +#include #include #include diff --git a/board/birdland/bav335x/board.c b/board/birdland/bav335x/board.c index 9e64cbbc82..8811583ac6 100644 --- a/board/birdland/bav335x/board.c +++ b/board/birdland/bav335x/board.c @@ -28,7 +28,7 @@ #include #include #include -#include +#include #include #include "board.h" diff --git a/board/bosch/guardian/board.c b/board/bosch/guardian/board.c index bc3c6d229c..ec0c4a17f6 100644 --- a/board/bosch/guardian/board.c +++ b/board/bosch/guardian/board.c @@ -11,7 +11,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/bosch/shc/board.c b/board/bosch/shc/board.c index 358118f757..a96fdef992 100644 --- a/board/bosch/shc/board.c +++ b/board/bosch/shc/board.c @@ -31,7 +31,7 @@ #include #include #include -#include +#include #include #include "mmc.h" #include "board.h" diff --git a/board/buffalo/lsxl/lsxl.c b/board/buffalo/lsxl/lsxl.c index b2ccb83c8a..95d3a5e1f5 100644 --- a/board/buffalo/lsxl/lsxl.c +++ b/board/buffalo/lsxl/lsxl.c @@ -9,7 +9,7 @@ #include #include -#include +#include #include #include #include diff --git a/board/freescale/b4860qds/spl.c b/board/freescale/b4860qds/spl.c index d9aa57f41c..6dfc0c73ec 100644 --- a/board/freescale/b4860qds/spl.c +++ b/board/freescale/b4860qds/spl.c @@ -5,7 +5,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/freescale/c29xpcie/spl.c b/board/freescale/c29xpcie/spl.c index 5db60d8ed9..29040962cf 100644 --- a/board/freescale/c29xpcie/spl.c +++ b/board/freescale/c29xpcie/spl.c @@ -4,7 +4,7 @@ #include #include -#include +#include #include #include #include diff --git a/board/freescale/ls1012afrdm/ls1012afrdm.c b/board/freescale/ls1012afrdm/ls1012afrdm.c index b4c611e19f..31e41ce169 100644 --- a/board/freescale/ls1012afrdm/ls1012afrdm.c +++ b/board/freescale/ls1012afrdm/ls1012afrdm.c @@ -15,7 +15,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/freescale/ls1012aqds/ls1012aqds.c b/board/freescale/ls1012aqds/ls1012aqds.c index a862fe6a93..86c72ee357 100644 --- a/board/freescale/ls1012aqds/ls1012aqds.c +++ b/board/freescale/ls1012aqds/ls1012aqds.c @@ -18,7 +18,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/freescale/ls1012ardb/ls1012ardb.c b/board/freescale/ls1012ardb/ls1012ardb.c index f648a9040b..e4527c19b8 100644 --- a/board/freescale/ls1012ardb/ls1012ardb.c +++ b/board/freescale/ls1012ardb/ls1012ardb.c @@ -18,7 +18,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/freescale/ls1028a/ls1028a.c b/board/freescale/ls1028a/ls1028a.c index e5de4eb70c..4aa7cec9ce 100644 --- a/board/freescale/ls1028a/ls1028a.c +++ b/board/freescale/ls1028a/ls1028a.c @@ -11,7 +11,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/freescale/ls1088a/ls1088a.c b/board/freescale/ls1088a/ls1088a.c index a1c9eb3f46..f0bea7327d 100644 --- a/board/freescale/ls1088a/ls1088a.c +++ b/board/freescale/ls1088a/ls1088a.c @@ -15,7 +15,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/freescale/ls2080a/ls2080a.c b/board/freescale/ls2080a/ls2080a.c index cc1822d0f5..413a698511 100644 --- a/board/freescale/ls2080a/ls2080a.c +++ b/board/freescale/ls2080a/ls2080a.c @@ -12,7 +12,7 @@ #include #include #include -#include +#include #include DECLARE_GLOBAL_DATA_PTR; diff --git a/board/freescale/ls2080aqds/ls2080aqds.c b/board/freescale/ls2080aqds/ls2080aqds.c index e9e0999a18..e9c055745f 100644 --- a/board/freescale/ls2080aqds/ls2080aqds.c +++ b/board/freescale/ls2080aqds/ls2080aqds.c @@ -13,7 +13,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/freescale/ls2080ardb/ls2080ardb.c b/board/freescale/ls2080ardb/ls2080ardb.c index a278e2fc11..2b2dbbb0ce 100644 --- a/board/freescale/ls2080ardb/ls2080ardb.c +++ b/board/freescale/ls2080ardb/ls2080ardb.c @@ -15,7 +15,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/freescale/lx2160a/lx2160a.c b/board/freescale/lx2160a/lx2160a.c index 3b4cb86692..f3885fa8b7 100644 --- a/board/freescale/lx2160a/lx2160a.c +++ b/board/freescale/lx2160a/lx2160a.c @@ -16,7 +16,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/freescale/p1010rdb/spl.c b/board/freescale/p1010rdb/spl.c index 95f8b5837d..8f050b3947 100644 --- a/board/freescale/p1010rdb/spl.c +++ b/board/freescale/p1010rdb/spl.c @@ -5,7 +5,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/freescale/p1022ds/spl.c b/board/freescale/p1022ds/spl.c index 92fd199876..06273f1d20 100644 --- a/board/freescale/p1022ds/spl.c +++ b/board/freescale/p1022ds/spl.c @@ -6,7 +6,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/freescale/p1_p2_rdb_pc/spl.c b/board/freescale/p1_p2_rdb_pc/spl.c index 9d7b5eff6f..dbf9f739b2 100644 --- a/board/freescale/p1_p2_rdb_pc/spl.c +++ b/board/freescale/p1_p2_rdb_pc/spl.c @@ -6,7 +6,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/freescale/t102xqds/spl.c b/board/freescale/t102xqds/spl.c index 1b58174ed1..3008f0919f 100644 --- a/board/freescale/t102xqds/spl.c +++ b/board/freescale/t102xqds/spl.c @@ -4,7 +4,7 @@ #include #include -#include +#include #include #include #include diff --git a/board/freescale/t102xrdb/spl.c b/board/freescale/t102xrdb/spl.c index a226d4b5b5..029e3d212c 100644 --- a/board/freescale/t102xrdb/spl.c +++ b/board/freescale/t102xrdb/spl.c @@ -4,7 +4,7 @@ #include #include -#include +#include #include #include #include diff --git a/board/freescale/t104xrdb/spl.c b/board/freescale/t104xrdb/spl.c index 58a7376e7f..7b0eb8edf5 100644 --- a/board/freescale/t104xrdb/spl.c +++ b/board/freescale/t104xrdb/spl.c @@ -4,7 +4,7 @@ #include #include -#include +#include #include #include #include diff --git a/board/freescale/t208xqds/spl.c b/board/freescale/t208xqds/spl.c index 27f3c4c84f..9695dfc2e2 100644 --- a/board/freescale/t208xqds/spl.c +++ b/board/freescale/t208xqds/spl.c @@ -4,7 +4,7 @@ #include #include -#include +#include #include #include #include diff --git a/board/freescale/t208xrdb/spl.c b/board/freescale/t208xrdb/spl.c index ecb1e0d73c..ca7d6a28e0 100644 --- a/board/freescale/t208xrdb/spl.c +++ b/board/freescale/t208xrdb/spl.c @@ -4,7 +4,7 @@ #include #include -#include +#include #include #include #include diff --git a/board/freescale/t4qds/spl.c b/board/freescale/t4qds/spl.c index 16cc29eaa6..7666fe7556 100644 --- a/board/freescale/t4qds/spl.c +++ b/board/freescale/t4qds/spl.c @@ -4,7 +4,7 @@ #include #include -#include +#include #include #include #include diff --git a/board/freescale/t4rdb/spl.c b/board/freescale/t4rdb/spl.c index cc2b2f9ffb..a19558bd6b 100644 --- a/board/freescale/t4rdb/spl.c +++ b/board/freescale/t4rdb/spl.c @@ -7,7 +7,7 @@ #include #include -#include +#include #include #include #include diff --git a/board/gardena/smart-gateway-mt7688/board.c b/board/gardena/smart-gateway-mt7688/board.c index baa3e5726c..bd494c84fc 100644 --- a/board/gardena/smart-gateway-mt7688/board.c +++ b/board/gardena/smart-gateway-mt7688/board.c @@ -5,7 +5,7 @@ #include #include -#include +#include #include #include #include diff --git a/board/phytec/phycore_rk3288/phycore-rk3288.c b/board/phytec/phycore_rk3288/phycore-rk3288.c index 7b9178e3a6..5fcbf65b7c 100644 --- a/board/phytec/phycore_rk3288/phycore-rk3288.c +++ b/board/phytec/phycore_rk3288/phycore-rk3288.c @@ -8,7 +8,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/renesas/alt/alt.c b/board/renesas/alt/alt.c index 77979704be..10ef7f931b 100644 --- a/board/renesas/alt/alt.c +++ b/board/renesas/alt/alt.c @@ -10,7 +10,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/renesas/gose/gose.c b/board/renesas/gose/gose.c index bffa85c232..f86c9f1a63 100644 --- a/board/renesas/gose/gose.c +++ b/board/renesas/gose/gose.c @@ -10,7 +10,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/renesas/koelsch/koelsch.c b/board/renesas/koelsch/koelsch.c index 1bb3b492e2..841d337f4d 100644 --- a/board/renesas/koelsch/koelsch.c +++ b/board/renesas/koelsch/koelsch.c @@ -11,7 +11,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/renesas/lager/lager.c b/board/renesas/lager/lager.c index bda3295bad..3cb1a56142 100644 --- a/board/renesas/lager/lager.c +++ b/board/renesas/lager/lager.c @@ -9,7 +9,7 @@ #include #include -#include +#include #include #include #include diff --git a/board/renesas/porter/porter.c b/board/renesas/porter/porter.c index d3afc2a400..86f79da7fd 100644 --- a/board/renesas/porter/porter.c +++ b/board/renesas/porter/porter.c @@ -11,7 +11,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/renesas/silk/silk.c b/board/renesas/silk/silk.c index bda6a414e6..25221e3c55 100644 --- a/board/renesas/silk/silk.c +++ b/board/renesas/silk/silk.c @@ -11,7 +11,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/renesas/stout/stout.c b/board/renesas/stout/stout.c index 95b5711fdb..0a0ff5ff76 100644 --- a/board/renesas/stout/stout.c +++ b/board/renesas/stout/stout.c @@ -14,7 +14,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/st/stm32mp1/stm32mp1.c b/board/st/stm32mp1/stm32mp1.c index 1f9251d7a0..279c7b7797 100644 --- a/board/st/stm32mp1/stm32mp1.c +++ b/board/st/stm32mp1/stm32mp1.c @@ -9,7 +9,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/sunxi/board.c b/board/sunxi/board.c index bb425cbf66..e3b2d13892 100644 --- a/board/sunxi/board.c +++ b/board/sunxi/board.c @@ -30,7 +30,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/board/tcl/sl50/board.c b/board/tcl/sl50/board.c index a9c9d377b4..c7eed31946 100644 --- a/board/tcl/sl50/board.c +++ b/board/tcl/sl50/board.c @@ -28,7 +28,7 @@ #include #include #include -#include +#include #include #include "board.h" diff --git a/board/ti/am335x/board.c b/board/ti/am335x/board.c index 54adcd510d..7eaa6cd96d 100644 --- a/board/ti/am335x/board.c +++ b/board/ti/am335x/board.c @@ -34,7 +34,7 @@ #include #include #include -#include +#include #include #include "../common/board_detect.h" #include "board.h" diff --git a/board/toradex/apalis-tk1/apalis-tk1.c b/board/toradex/apalis-tk1/apalis-tk1.c index beb7e10dfe..bc98858ae0 100644 --- a/board/toradex/apalis-tk1/apalis-tk1.c +++ b/board/toradex/apalis-tk1/apalis-tk1.c @@ -10,7 +10,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/cmd/nvedit.c b/cmd/nvedit.c index 8e8572235c..1cb0bc1460 100644 --- a/cmd/nvedit.c +++ b/cmd/nvedit.c @@ -28,7 +28,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/common/board_f.c b/common/board_f.c index 18937bf6f5..31181a9dc4 100644 --- a/common/board_f.c +++ b/common/board_f.c @@ -15,7 +15,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/common/board_r.c b/common/board_r.c index f4193cdbec..1dabf5a11c 100644 --- a/common/board_r.c +++ b/common/board_r.c @@ -19,7 +19,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/common/console.c b/common/console.c index 0f7e0916cd..89b1e9590c 100644 --- a/common/console.c +++ b/common/console.c @@ -17,7 +17,7 @@ #include #include #include -#include +#include #include DECLARE_GLOBAL_DATA_PTR; diff --git a/drivers/mtd/cfi_flash.c b/drivers/mtd/cfi_flash.c index 6c22f074b0..c59254c76e 100644 --- a/drivers/mtd/cfi_flash.c +++ b/drivers/mtd/cfi_flash.c @@ -26,7 +26,7 @@ #include #include #include -#include +#include #include #include diff --git a/drivers/serial/serial-uclass.c b/drivers/serial/serial-uclass.c index d4488a2cc2..dcdaedefe7 100644 --- a/drivers/serial/serial-uclass.c +++ b/drivers/serial/serial-uclass.c @@ -5,7 +5,7 @@ #include #include -#include +#include #include #include #include diff --git a/drivers/serial/serial.c b/drivers/serial/serial.c index 09365ba6a1..b907508dbe 100644 --- a/drivers/serial/serial.c +++ b/drivers/serial/serial.c @@ -5,7 +5,7 @@ */ #include -#include +#include #include #include #include diff --git a/env/callback.c b/env/callback.c index d5469ce3c2..f0904cfdc5 100644 --- a/env/callback.c +++ b/env/callback.c @@ -6,7 +6,7 @@ #include #include -#include +#include #if defined(CONFIG_NEEDS_MANUAL_RELOC) DECLARE_GLOBAL_DATA_PTR; diff --git a/env/common.c b/env/common.c index 474ea2280b..3fb60509dd 100644 --- a/env/common.c +++ b/env/common.c @@ -10,7 +10,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/env/eeprom.c b/env/eeprom.c index 91ee3f35eb..cb04d2ac88 100644 --- a/env/eeprom.c +++ b/env/eeprom.c @@ -10,7 +10,7 @@ #include #include #include -#include +#include #include #if defined(CONFIG_I2C_ENV_EEPROM_BUS) #include diff --git a/env/embedded.c b/env/embedded.c index b1090e90e5..a38e169fe0 100644 --- a/env/embedded.c +++ b/env/embedded.c @@ -12,7 +12,7 @@ #define __ASM_STUB_PROCESSOR_H__ /* don't include asm/processor. */ #include #undef __ASSEMBLY__ -#include +#include #include /* Handle HOSTS that have prepended crap on symbol names, not TARGETS. */ diff --git a/env/env.c b/env/env.c index 9d421e8125..9237bb9c74 100644 --- a/env/env.c +++ b/env/env.c @@ -6,7 +6,7 @@ #include #include -#include +#include DECLARE_GLOBAL_DATA_PTR; diff --git a/env/ext4.c b/env/ext4.c index 6aa36867b6..1f6b1b5bd8 100644 --- a/env/ext4.c +++ b/env/ext4.c @@ -22,7 +22,7 @@ #include #include -#include +#include #include #include #include diff --git a/env/fat.c b/env/fat.c index d23753c6ff..1836556f36 100644 --- a/env/fat.c +++ b/env/fat.c @@ -10,7 +10,7 @@ #include #include -#include +#include #include #include #include diff --git a/env/flags.c b/env/flags.c index 93d337a1aa..418d6cc742 100644 --- a/env/flags.c +++ b/env/flags.c @@ -19,7 +19,7 @@ #define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) #else #include -#include +#include #endif #ifdef CONFIG_CMD_NET diff --git a/env/flash.c b/env/flash.c index bdba09e306..231a5fdf24 100644 --- a/env/flash.c +++ b/env/flash.c @@ -12,7 +12,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/env/mmc.c b/env/mmc.c index 4ca7c2b9ff..9f1878def1 100644 --- a/env/mmc.c +++ b/env/mmc.c @@ -9,7 +9,7 @@ #include #include -#include +#include #include #include #include diff --git a/env/nand.c b/env/nand.c index 3e2235f5f3..9f3dc635cf 100644 --- a/env/nand.c +++ b/env/nand.c @@ -16,7 +16,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/env/nowhere.c b/env/nowhere.c index 7db4eec845..f5b0a17652 100644 --- a/env/nowhere.c +++ b/env/nowhere.c @@ -10,7 +10,7 @@ #include #include #include -#include +#include #include DECLARE_GLOBAL_DATA_PTR; diff --git a/env/nvram.c b/env/nvram.c index a5b1873aaf..79201bd788 100644 --- a/env/nvram.c +++ b/env/nvram.c @@ -26,7 +26,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/env/onenand.c b/env/onenand.c index d371bd757c..dfd4e939f8 100644 --- a/env/onenand.c +++ b/env/onenand.c @@ -9,7 +9,7 @@ #include #include -#include +#include #include #include #include diff --git a/env/remote.c b/env/remote.c index b1a7d1a4c1..02531f427b 100644 --- a/env/remote.c +++ b/env/remote.c @@ -7,7 +7,7 @@ #include #include -#include +#include #include #ifdef ENV_IS_EMBEDDED diff --git a/env/sata.c b/env/sata.c index a5364dda5d..9369710081 100644 --- a/env/sata.c +++ b/env/sata.c @@ -9,7 +9,7 @@ #include #include -#include +#include #include #include #include diff --git a/env/sf.c b/env/sf.c index 09646e1eed..590d0cedd8 100644 --- a/env/sf.c +++ b/env/sf.c @@ -11,7 +11,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/env/ubi.c b/env/ubi.c index a69db14afd..08aac47df2 100644 --- a/env/ubi.c +++ b/env/ubi.c @@ -8,7 +8,7 @@ #include #include -#include +#include #include #include #include diff --git a/include/common.h b/include/common.h index 34ae514805..f8afbc0d70 100644 --- a/include/common.h +++ b/include/common.h @@ -394,7 +394,7 @@ int cpu_release(u32 nr, int argc, char * const argv[]); /* Pull in stuff for the build system */ #ifdef DO_DEPS_ONLY -# include +# include #endif #endif /* __COMMON_H_ */ diff --git a/include/environment.h b/include/env_internal.h similarity index 93% rename from include/environment.h rename to include/env_internal.h index cc8c0546c2..b1ddcb5adf 100644 --- a/include/environment.h +++ b/include/env_internal.h @@ -1,11 +1,19 @@ /* SPDX-License-Identifier: GPL-2.0+ */ /* + * Internal environment header file. This includes direct access to environment + * information such as its size and offset, direct access to the default + * environment and embedded environment (if used). It also provides environment + * drivers with various declarations. + * + * It should not be included by board files, drivers and code other than that + * related to the environment implementation. + * * (C) Copyright 2002 * Wolfgang Denk, DENX Software Engineering, wd@denx.de. */ -#ifndef _ENVIRONMENT_H_ -#define _ENVIRONMENT_H_ +#ifndef _ENV_INTERNAL_H_ +#define _ENV_INTERNAL_H_ #include @@ -267,4 +275,4 @@ extern struct hsearch_data env_htab; #endif /* DO_DEPS_ONLY */ -#endif /* _ENVIRONMENT_H_ */ +#endif /* _ENV_INTERNAL_H_ */ diff --git a/lib/efi_loader/efi_variable.c b/lib/efi_loader/efi_variable.c index 8a0e0db13e..6687b69a40 100644 --- a/lib/efi_loader/efi_variable.c +++ b/lib/efi_loader/efi_variable.c @@ -10,7 +10,7 @@ #include #include #include -#include +#include #include #include diff --git a/net/net.c b/net/net.c index f0a3996cd6..40511db645 100644 --- a/net/net.c +++ b/net/net.c @@ -91,7 +91,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/tools/envcrc.c b/tools/envcrc.c index 7eb7246d45..672ef4d675 100644 --- a/tools/envcrc.c +++ b/tools/envcrc.c @@ -59,7 +59,7 @@ #ifdef CONFIG_BUILD_ENVCRC -# include +# include extern unsigned int env_size; extern env_t embedded_environment; #endif /* CONFIG_BUILD_ENVCRC */ From 9e5616dea9db5e13ab3da1d5b414ce0bc7dc0afe Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 1 Aug 2019 09:47:14 -0600 Subject: [PATCH 50/51] Drop PCMCIA This is no-longer used in U-Boot and has not been converted to driver model. Drop it. Signed-off-by: Simon Glass --- README | 2 +- cmd/Kconfig | 8 - cmd/Makefile | 1 - cmd/ide.c | 4 - cmd/pcmcia.c | 341 -------------------------------- common/board_r.c | 12 -- doc/README.marubun-pcmcia | 65 ------ doc/README.ne2000 | 11 -- drivers/Kconfig | 2 - drivers/Makefile | 1 - drivers/net/ne2000_base.c | 10 - drivers/pcmcia/Kconfig | 0 drivers/pcmcia/Makefile | 6 - drivers/pcmcia/marubun_pcmcia.c | 99 ---------- include/common.h | 2 - include/pcmcia.h | 137 ------------- include/pcmcia/yenta.h | 156 --------------- scripts/config_whitelist.txt | 6 - 18 files changed, 1 insertion(+), 862 deletions(-) delete mode 100644 cmd/pcmcia.c delete mode 100644 doc/README.marubun-pcmcia delete mode 100644 drivers/pcmcia/Kconfig delete mode 100644 drivers/pcmcia/Makefile delete mode 100644 drivers/pcmcia/marubun_pcmcia.c delete mode 100644 include/pcmcia.h delete mode 100644 include/pcmcia/yenta.h diff --git a/README b/README index b493ffeb2d..2d91619a94 100644 --- a/README +++ b/README @@ -83,7 +83,7 @@ Where we come from: * Provide extended interface to Linux boot loader * S-Record download * network boot - * PCMCIA / CompactFlash / ATA disk / SCSI ... boot + * ATA disk / SCSI ... boot - create ARMBoot project (http://sourceforge.net/projects/armboot) - add other CPU families (starting with ARM) - create U-Boot project (http://sourceforge.net/projects/u-boot) diff --git a/cmd/Kconfig b/cmd/Kconfig index 22a3737b4e..041de1d831 100644 --- a/cmd/Kconfig +++ b/cmd/Kconfig @@ -1042,14 +1042,6 @@ config CMD_PCI peripherals. Sub-commands allow bus enumeration, displaying and changing configuration space and a few other features. -config CMD_PCMCIA - bool "pinit - Set up PCMCIA device" - help - Provides a means to initialise a PCMCIA (Personal Computer Memory - Card International Association) device. This is an old standard from - about 1990. These devices are typically removable memory or network - cards using a standard 68-pin connector. - config CMD_PINMUX bool "pinmux - show pins muxing" default y if PINCTRL diff --git a/cmd/Makefile b/cmd/Makefile index 43a6b0ee21..58827b5679 100644 --- a/cmd/Makefile +++ b/cmd/Makefile @@ -106,7 +106,6 @@ obj-$(CONFIG_CMD_PART) += part.o ifdef CONFIG_PCI obj-$(CONFIG_CMD_PCI) += pci.o endif -obj-$(CONFIG_CMD_PCMCIA) += pcmcia.o obj-$(CONFIG_CMD_PINMUX) += pinmux.o obj-$(CONFIG_CMD_PXE) += pxe.o obj-$(CONFIG_CMD_WOL) += wol.o diff --git a/cmd/ide.c b/cmd/ide.c index 1c58efc55a..2f93ba7904 100644 --- a/cmd/ide.c +++ b/cmd/ide.c @@ -17,10 +17,6 @@ #include #include -#if defined(CONFIG_IDE_PCMCIA) -# include -#endif - #include #include diff --git a/cmd/pcmcia.c b/cmd/pcmcia.c deleted file mode 100644 index 3b7537b105..0000000000 --- a/cmd/pcmcia.c +++ /dev/null @@ -1,341 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0+ -/* - * (C) Copyright 2000-2006 - * Wolfgang Denk, DENX Software Engineering, wd@denx.de. - * - ******************************************************************** - * - * Lots of code copied from: - * - * m8xx_pcmcia.c - Linux PCMCIA socket driver for the mpc8xx series. - * (C) 1999-2000 Magnus Damm - * - * "The ExCA standard specifies that socket controllers should provide - * two IO and five memory windows per socket, which can be independently - * configured and positioned in the host address space and mapped to - * arbitrary segments of card address space. " - David A Hinds. 1999 - * - * This controller does _not_ meet the ExCA standard. - * - * m8xx pcmcia controller brief info: - * + 8 windows (attrib, mem, i/o) - * + up to two slots (SLOT_A and SLOT_B) - * + inputpins, outputpins, event and mask registers. - * - no offset register. sigh. - * - * Because of the lacking offset register we must map the whole card. - * We assign each memory window PCMCIA_MEM_WIN_SIZE address space. - * Make sure there is (PCMCIA_MEM_WIN_SIZE * PCMCIA_MEM_WIN_NO - * * PCMCIA_SOCKETS_NO) bytes at PCMCIA_MEM_WIN_BASE. - * The i/o windows are dynamically allocated at PCMCIA_IO_WIN_BASE. - * They are maximum 64KByte each... - */ - -/* #define DEBUG 1 */ - -/* - * PCMCIA support - */ -#include -#include -#include -#include -#include - -/* -------------------------------------------------------------------- */ - -#if defined(CONFIG_CMD_PCMCIA) - -extern int pcmcia_on (void); -extern int pcmcia_off (void); - -int do_pinit (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) -{ - int rcode = 0; - - if (argc != 2) { - printf ("Usage: pinit {on | off}\n"); - return 1; - } - if (strcmp(argv[1],"on") == 0) { - rcode = pcmcia_on (); - } else if (strcmp(argv[1],"off") == 0) { - rcode = pcmcia_off (); - } else { - printf ("Usage: pinit {on | off}\n"); - return 1; - } - - return rcode; -} - -U_BOOT_CMD( - pinit, 2, 0, do_pinit, - "PCMCIA sub-system", - "on - power on PCMCIA socket\n" - "pinit off - power off PCMCIA socket" -); - -#endif - -/* -------------------------------------------------------------------- */ - -#undef CHECK_IDE_DEVICE - -#if defined(CONFIG_PXA_PCMCIA) -#define CHECK_IDE_DEVICE -#endif - -#ifdef CHECK_IDE_DEVICE - -int ide_devices_found; -static uchar *known_cards[] = { - (uchar *)"ARGOSY PnPIDE D5", - NULL -}; - -#define MAX_TUPEL_SZ 512 -#define MAX_FEATURES 4 - -#define MAX_IDENT_CHARS 64 -#define MAX_IDENT_FIELDS 4 - -#define indent "\t " - -static void print_funcid (int func) -{ - puts (indent); - switch (func) { - case CISTPL_FUNCID_MULTI: - puts (" Multi-Function"); - break; - case CISTPL_FUNCID_MEMORY: - puts (" Memory"); - break; - case CISTPL_FUNCID_SERIAL: - puts (" Serial Port"); - break; - case CISTPL_FUNCID_PARALLEL: - puts (" Parallel Port"); - break; - case CISTPL_FUNCID_FIXED: - puts (" Fixed Disk"); - break; - case CISTPL_FUNCID_VIDEO: - puts (" Video Adapter"); - break; - case CISTPL_FUNCID_NETWORK: - puts (" Network Adapter"); - break; - case CISTPL_FUNCID_AIMS: - puts (" AIMS Card"); - break; - case CISTPL_FUNCID_SCSI: - puts (" SCSI Adapter"); - break; - default: - puts (" Unknown"); - break; - } - puts (" Card\n"); -} - -static void print_fixed (volatile uchar *p) -{ - if (p == NULL) - return; - - puts(indent); - - switch (*p) { - case CISTPL_FUNCE_IDE_IFACE: - { uchar iface = *(p+2); - - puts ((iface == CISTPL_IDE_INTERFACE) ? " IDE" : " unknown"); - puts (" interface "); - break; - } - case CISTPL_FUNCE_IDE_MASTER: - case CISTPL_FUNCE_IDE_SLAVE: - { uchar f1 = *(p+2); - uchar f2 = *(p+4); - - puts ((f1 & CISTPL_IDE_SILICON) ? " [silicon]" : " [rotating]"); - - if (f1 & CISTPL_IDE_UNIQUE) - puts (" [unique]"); - - puts ((f1 & CISTPL_IDE_DUAL) ? " [dual]" : " [single]"); - - if (f2 & CISTPL_IDE_HAS_SLEEP) - puts (" [sleep]"); - - if (f2 & CISTPL_IDE_HAS_STANDBY) - puts (" [standby]"); - - if (f2 & CISTPL_IDE_HAS_IDLE) - puts (" [idle]"); - - if (f2 & CISTPL_IDE_LOW_POWER) - puts (" [low power]"); - - if (f2 & CISTPL_IDE_REG_INHIBIT) - puts (" [reg inhibit]"); - - if (f2 & CISTPL_IDE_HAS_INDEX) - puts (" [index]"); - - if (f2 & CISTPL_IDE_IOIS16) - puts (" [IOis16]"); - - break; - } - } - putc ('\n'); -} - -static int identify (volatile uchar *p) -{ - uchar id_str[MAX_IDENT_CHARS]; - uchar data; - uchar *t; - uchar **card; - int i, done; - - if (p == NULL) - return (0); /* Don't know */ - - t = id_str; - done =0; - - for (i=0; i<=4 && !done; ++i, p+=2) { - while ((data = *p) != '\0') { - if (data == 0xFF) { - done = 1; - break; - } - *t++ = data; - if (t == &id_str[MAX_IDENT_CHARS-1]) { - done = 1; - break; - } - p += 2; - } - if (!done) - *t++ = ' '; - } - *t = '\0'; - while (--t > id_str) { - if (*t == ' ') - *t = '\0'; - else - break; - } - puts ((char *)id_str); - putc ('\n'); - - for (card=known_cards; *card; ++card) { - debug ("## Compare against \"%s\"\n", *card); - if (strcmp((char *)*card, (char *)id_str) == 0) { /* found! */ - debug ("## CARD FOUND ##\n"); - return (1); - } - } - - return (0); /* don't know */ -} - -int check_ide_device (int slot) -{ - volatile uchar *ident = NULL; - volatile uchar *feature_p[MAX_FEATURES]; - volatile uchar *p, *start, *addr; - int n_features = 0; - uchar func_id = ~0; - uchar code, len; - ushort config_base = 0; - int found = 0; - int i; - - addr = (volatile uchar *)(CONFIG_SYS_PCMCIA_MEM_ADDR + - CONFIG_SYS_PCMCIA_MEM_SIZE * (slot * 4)); - debug ("PCMCIA MEM: %08lX\n", (ulong)addr); - - start = p = (volatile uchar *) addr; - - while ((p - start) < MAX_TUPEL_SZ) { - - code = *p; p += 2; - - if (code == 0xFF) { /* End of chain */ - break; - } - - len = *p; p += 2; -#if defined(DEBUG) && (DEBUG > 1) - { volatile uchar *q = p; - printf ("\nTuple code %02x length %d\n\tData:", - code, len); - - for (i = 0; i < len; ++i) { - printf (" %02x", *q); - q+= 2; - } - } -#endif /* DEBUG */ - switch (code) { - case CISTPL_VERS_1: - ident = p + 4; - break; - case CISTPL_FUNCID: - /* Fix for broken SanDisk which may have 0x80 bit set */ - func_id = *p & 0x7F; - break; - case CISTPL_FUNCE: - if (n_features < MAX_FEATURES) - feature_p[n_features++] = p; - break; - case CISTPL_CONFIG: - config_base = (*(p+6) << 8) + (*(p+4)); - debug ("\n## Config_base = %04x ###\n", config_base); - default: - break; - } - p += 2 * len; - } - - found = identify (ident); - - if (func_id != ((uchar)~0)) { - print_funcid (func_id); - - if (func_id == CISTPL_FUNCID_FIXED) - found = 1; - else - return (1); /* no disk drive */ - } - - for (i=0; i only valid for ARGOSY D5!!! */ - *((uchar *)(addr + config_base)) = 1; -#if 0 - printf("\n## Config_base = %04x ###\n", config_base); - printf("Configuration Option Register: %02x @ %x\n", readb(addr + config_base), addr + config_base); - printf("Card Configuration and Status Register: %02x\n", readb(addr + config_base + 2)); - printf("Pin Replacement Register Register: %02x\n", readb(addr + config_base + 4)); - printf("Socket and Copy Register: %02x\n", readb(addr + config_base + 6)); -#endif - return (0); -} - -#endif /* CHECK_IDE_DEVICE */ diff --git a/common/board_r.c b/common/board_r.c index 1dabf5a11c..b7f68bba4a 100644 --- a/common/board_r.c +++ b/common/board_r.c @@ -583,15 +583,6 @@ static int initr_post(void) } #endif -#if defined(CONFIG_CMD_PCMCIA) && !defined(CONFIG_IDE) -static int initr_pcmcia(void) -{ - puts("PCMCIA:"); - pcmcia_init(); - return 0; -} -#endif - #if defined(CONFIG_IDE) && !defined(CONFIG_BLK) static int initr_ide(void) { @@ -820,9 +811,6 @@ static init_fnc_t init_sequence_r[] = { #ifdef CONFIG_POST initr_post, #endif -#if defined(CONFIG_CMD_PCMCIA) && !defined(CONFIG_IDE) - initr_pcmcia, -#endif #if defined(CONFIG_IDE) && !defined(CONFIG_BLK) initr_ide, #endif diff --git a/doc/README.marubun-pcmcia b/doc/README.marubun-pcmcia deleted file mode 100644 index 0a363b2ada..0000000000 --- a/doc/README.marubun-pcmcia +++ /dev/null @@ -1,65 +0,0 @@ - -U-Boot MARUBUN MR-SHPC-01 PCMCIA controller driver - Last update 21/11/2007 by Nobuhiro Iwamatsu - -======================================================================================== - -0. What's this? - This driver supports MARUBUN MR-SHPC-01. - url: http://www.marubun.co.jp/product/semicon/devices/qgc18e0000002n2z.html - (Sorry Japanese only.) - - This chip is used with SuperH well, and adopted by the - reference board. - ex. * MS7750SE01 - * MS7722SE01 - * other - - This chip doesn't support CardBus. - -1. base source code - The code is based on sources from the Linux kernel - ( arch/sh/kernel/cf-enabler.c ). - -2. How to use - The options you have to specify in the config file are (with the - value for my board as an example): - - * CONFIG_MARUBUN_PCCARD - If you want to use this device driver, should define CONFIG_MARUBUN_PCCARD. - ex. #define CONFIG_MARUBUN_PCCARD - - * CONFIG_PCMCIA_SLOT_A - Most devices have only one slot. You should define CONFIG_PCMCIA_SLOT_A . - ex. #define CONFIG_PCMCIA_SLOT_A 1 - - * CONFIG_SYS_MARUBUN_MRSHPC - This is MR-SHPC-01 PCMCIA controller base address. - You should do the setting matched to your environment. - ex. #define CONFIG_SYS_MARUBUN_MRSHPC 0xb03fffe0 - ( for MS7722SE01 environment ) - - * CONFIG_SYS_MARUBUN_MW1 - This is MR-SHPC-01 memory window base address. - You should do the setting matched to your environment. - ex. #define CONFIG_SYS_MARUBUN_MW1 0xb0400000 - ( for MS7722SE01 environment ) - - * CONFIG_SYS_MARUBUN_MW1 - This is MR-SHPC-01 attribute window base address. - You should do the setting matched to your environment. - ex. #define CONFIG_SYS_MARUBUN_MW2 0xb0500000 - ( for MS7722SE01 environment ) - - * CONFIG_SYS_MARUBUN_MW1 - This is MR-SHPC-01 I/O window base address. - You should do the setting matched to your environment. - ex. #define CONFIG_SYS_MARUBUN_IO 0xb0600000 - ( for MS7722SE01 environment ) - -3. Other - * Check Compact Flash only. - * Maybe, NE2000 compatible NIC is sure to move. - -Copyright (c) 2007 - Nobuhiro Iwamatsu diff --git a/doc/README.ne2000 b/doc/README.ne2000 index d5ae9a9eb1..0f6a2e04ff 100644 --- a/doc/README.ne2000 +++ b/doc/README.ne2000 @@ -21,17 +21,6 @@ value for my board as an example): - Address where the board is mapped -#define CONFIG_DRIVER_NE2000_CCR (0x28000000+0x3f8) - -- Address of the CCR (card configuration register). It could be found -by enabling DEBUG in cmd_pcmcia.c. If this is not defined nothing is -done as far as PCMCIA support is concerned. - -#define CONFIG_DRIVER_NE2000_VAL (0x20) - -- The value to be written in the CCR. It selects among different I/O -spaces that could be used by the card. - Enjoy! diff --git a/drivers/Kconfig b/drivers/Kconfig index 5a9d01b508..350acf81f3 100644 --- a/drivers/Kconfig +++ b/drivers/Kconfig @@ -70,8 +70,6 @@ source "drivers/pci_endpoint/Kconfig" source "drivers/pch/Kconfig" -source "drivers/pcmcia/Kconfig" - source "drivers/phy/Kconfig" source "drivers/phy/allwinner/Kconfig" diff --git a/drivers/Makefile b/drivers/Makefile index 41933605ce..a4bb5e4975 100644 --- a/drivers/Makefile +++ b/drivers/Makefile @@ -88,7 +88,6 @@ obj-y += misc/ obj-$(CONFIG_MMC) += mmc/ obj-$(CONFIG_NVME) += nvme/ obj-$(CONFIG_PCI_ENDPOINT) += pci_endpoint/ -obj-y += pcmcia/ obj-y += dfu/ obj-$(CONFIG_PCH) += pch/ obj-y += phy/allwinner/ diff --git a/drivers/net/ne2000_base.c b/drivers/net/ne2000_base.c index 819a246070..a240d06ad4 100644 --- a/drivers/net/ne2000_base.c +++ b/drivers/net/ne2000_base.c @@ -693,16 +693,6 @@ static int ne2k_setup_driver(struct eth_device *dev) } } -#ifdef CONFIG_DRIVER_NE2000_CCR - { - vu_char *p = (vu_char *) CONFIG_DRIVER_NE2000_CCR; - - PRINTK("CCR before is %x\n", *p); - *p = CONFIG_DRIVER_NE2000_VAL; - PRINTK("CCR after is %x\n", *p); - } -#endif - nic.base = (u8 *) CONFIG_DRIVER_NE2000_BASE; nic.data = nic.base + DP_DATA; diff --git a/drivers/pcmcia/Kconfig b/drivers/pcmcia/Kconfig deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/drivers/pcmcia/Makefile b/drivers/pcmcia/Makefile deleted file mode 100644 index 8374a56c34..0000000000 --- a/drivers/pcmcia/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -# SPDX-License-Identifier: GPL-2.0+ -# -# (C) Copyright 2000-2007 -# Wolfgang Denk, DENX Software Engineering, wd@denx.de. - -obj-$(CONFIG_MARUBUN_PCCARD) += marubun_pcmcia.o diff --git a/drivers/pcmcia/marubun_pcmcia.c b/drivers/pcmcia/marubun_pcmcia.c deleted file mode 100644 index b2eea6c601..0000000000 --- a/drivers/pcmcia/marubun_pcmcia.c +++ /dev/null @@ -1,99 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0+ -/* - * Marubun MR-SHPC-01 PCMCIA controller device driver - * - * (c) 2007 Nobuhiro Iwamatsu - */ - -#include -#include -#include -#include - -#undef CONFIG_PCMCIA - -#if defined(CONFIG_CMD_PCMCIA) -#define CONFIG_PCMCIA -#endif - -#if defined(CONFIG_IDE) -#define CONFIG_PCMCIA -#endif - -#if defined(CONFIG_PCMCIA) - -/* MR-SHPC-01 register */ -#define MRSHPC_MODE (CONFIG_SYS_MARUBUN_MRSHPC + 4) -#define MRSHPC_OPTION (CONFIG_SYS_MARUBUN_MRSHPC + 6) -#define MRSHPC_CSR (CONFIG_SYS_MARUBUN_MRSHPC + 8) -#define MRSHPC_ISR (CONFIG_SYS_MARUBUN_MRSHPC + 10) -#define MRSHPC_ICR (CONFIG_SYS_MARUBUN_MRSHPC + 12) -#define MRSHPC_CPWCR (CONFIG_SYS_MARUBUN_MRSHPC + 14) -#define MRSHPC_MW0CR1 (CONFIG_SYS_MARUBUN_MRSHPC + 16) -#define MRSHPC_MW1CR1 (CONFIG_SYS_MARUBUN_MRSHPC + 18) -#define MRSHPC_IOWCR1 (CONFIG_SYS_MARUBUN_MRSHPC + 20) -#define MRSHPC_MW0CR2 (CONFIG_SYS_MARUBUN_MRSHPC + 22) -#define MRSHPC_MW1CR2 (CONFIG_SYS_MARUBUN_MRSHPC + 24) -#define MRSHPC_IOWCR2 (CONFIG_SYS_MARUBUN_MRSHPC + 26) -#define MRSHPC_CDCR (CONFIG_SYS_MARUBUN_MRSHPC + 28) -#define MRSHPC_PCIC_INFO (CONFIG_SYS_MARUBUN_MRSHPC + 30) - -int pcmcia_on (void) -{ - printf("Enable PCMCIA " PCMCIA_SLOT_MSG "\n"); - - /* Init */ - outw( 0x0000 , MRSHPC_MODE ); - - if ((inw(MRSHPC_CSR) & 0x000c) == 0){ /* if card detect is true */ - if ((inw(MRSHPC_CSR) & 0x0080) == 0){ - outw(0x0674 ,MRSHPC_CPWCR); /* Card Vcc is 3.3v? */ - }else{ - outw(0x0678 ,MRSHPC_CPWCR); /* Card Vcc is 5V */ - } - udelay( 100000 ); /* wait for power on */ - }else{ - return 1; - } - /* - * PC-Card window open - * flag == COMMON/ATTRIBUTE/IO - */ - /* common window open */ - outw(0x8a84,MRSHPC_MW0CR1); /* window 0xb8400000 */ - if ((inw(MRSHPC_CSR) & 0x4000) != 0) - outw(0x0b00,MRSHPC_MW0CR2); /* common mode & bus width 16bit SWAP = 1 */ - else - outw(0x0300,MRSHPC_MW0CR2); /* common mode & bus width 16bit SWAP = 0 */ - - /* attribute window open */ - outw(0x8a85,MRSHPC_MW1CR1); /* window 0xb8500000 */ - if ((inw(MRSHPC_CSR) & 0x4000) != 0) - outw(0x0a00,MRSHPC_MW1CR2); /* attribute mode & bus width 16bit SWAP = 1 */ - else - outw(0x0200,MRSHPC_MW1CR2); /* attribute mode & bus width 16bit SWAP = 0 */ - - /* I/O window open */ - outw(0x8a86,MRSHPC_IOWCR1); /* I/O window 0xb8600000 */ - outw(0x0008,MRSHPC_CDCR); /* I/O card mode */ - if ((inw(MRSHPC_CSR) & 0x4000) != 0) - outw(0x0a00,MRSHPC_IOWCR2); /* bus width 16bit SWAP = 1 */ - else - outw(0x0200,MRSHPC_IOWCR2); /* bus width 16bit SWAP = 0 */ - - outw(0x0000,MRSHPC_ISR); - outw(0x2000,MRSHPC_ICR); - outb(0x00,(CONFIG_SYS_MARUBUN_MW2 + 0x206)); - outb(0x42,(CONFIG_SYS_MARUBUN_MW2 + 0x200)); - - return 0; -} - -int pcmcia_off (void) -{ - printf ("Disable PCMCIA " PCMCIA_SLOT_MSG "\n"); - - return 0; -} - -#endif /* CONFIG_PCMCIA */ diff --git a/include/common.h b/include/common.h index f8afbc0d70..2645ac9615 100644 --- a/include/common.h +++ b/include/common.h @@ -339,8 +339,6 @@ static inline struct in_addr env_get_ip(char *var) return string_to_ip(env_get(var)); } -int pcmcia_init (void); - #ifdef CONFIG_LED_STATUS # include #endif diff --git a/include/pcmcia.h b/include/pcmcia.h deleted file mode 100644 index 89e528efb9..0000000000 --- a/include/pcmcia.h +++ /dev/null @@ -1,137 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0+ */ -/* - * (C) Copyright 2000-2004 - * Wolfgang Denk, DENX Software Engineering, wd@denx.de. - */ - -#ifndef _PCMCIA_H -#define _PCMCIA_H - -#include -#include - -/* - * Allow configuration to select PCMCIA slot, - * or try to generate a useful default - */ -#if defined(CONFIG_CMD_PCMCIA) - -#if !defined(CONFIG_PCMCIA_SLOT_A) && !defined(CONFIG_PCMCIA_SLOT_B) -# error "PCMCIA Slot not configured" -#endif /* !defined(CONFIG_PCMCIA_SLOT_A) && !defined(CONFIG_PCMCIA_SLOT_B) */ - -/* Make sure exactly one slot is defined - we support only one for now */ -#if !defined(CONFIG_PCMCIA_SLOT_A) && !defined(CONFIG_PCMCIA_SLOT_B) -#error Neither CONFIG_PCMCIA_SLOT_A nor CONFIG_PCMCIA_SLOT_B configured -#endif -#if defined(CONFIG_PCMCIA_SLOT_A) && defined(CONFIG_PCMCIA_SLOT_B) -#error Both CONFIG_PCMCIA_SLOT_A and CONFIG_PCMCIA_SLOT_B configured -#endif - -#ifndef PCMCIA_SOCKETS_NO -#define PCMCIA_SOCKETS_NO 1 -#endif -#ifndef PCMCIA_MEM_WIN_NO -#define PCMCIA_MEM_WIN_NO 4 -#endif -#define PCMCIA_IO_WIN_NO 2 - -/* define _slot_ to be able to optimize macros */ -#ifdef CONFIG_PCMCIA_SLOT_A -# define _slot_ 0 -# define PCMCIA_SLOT_MSG "slot A" -# define PCMCIA_SLOT_x PCMCIA_PSLOT_A -#else -# define _slot_ 1 -# define PCMCIA_SLOT_MSG "slot B" -# define PCMCIA_SLOT_x PCMCIA_PSLOT_B -#endif - -/* - * This structure is used to address each window in the PCMCIA controller. - * - * Keep in mind that we assume that pcmcia_win_t[n+1] is mapped directly - * after pcmcia_win_t[n]... - */ - -typedef struct { - ulong br; - ulong or; -} pcmcia_win_t; - -/**********************************************************************/ - -/* - * CIS Tupel codes - */ -#define CISTPL_NULL 0x00 -#define CISTPL_DEVICE 0x01 -#define CISTPL_LONGLINK_CB 0x02 -#define CISTPL_INDIRECT 0x03 -#define CISTPL_CONFIG_CB 0x04 -#define CISTPL_CFTABLE_ENTRY_CB 0x05 -#define CISTPL_LONGLINK_MFC 0x06 -#define CISTPL_BAR 0x07 -#define CISTPL_PWR_MGMNT 0x08 -#define CISTPL_EXTDEVICE 0x09 -#define CISTPL_CHECKSUM 0x10 -#define CISTPL_LONGLINK_A 0x11 -#define CISTPL_LONGLINK_C 0x12 -#define CISTPL_LINKTARGET 0x13 -#define CISTPL_NO_LINK 0x14 -#define CISTPL_VERS_1 0x15 -#define CISTPL_ALTSTR 0x16 -#define CISTPL_DEVICE_A 0x17 -#define CISTPL_JEDEC_C 0x18 -#define CISTPL_JEDEC_A 0x19 -#define CISTPL_CONFIG 0x1a -#define CISTPL_CFTABLE_ENTRY 0x1b -#define CISTPL_DEVICE_OC 0x1c -#define CISTPL_DEVICE_OA 0x1d -#define CISTPL_DEVICE_GEO 0x1e -#define CISTPL_DEVICE_GEO_A 0x1f -#define CISTPL_MANFID 0x20 -#define CISTPL_FUNCID 0x21 -#define CISTPL_FUNCE 0x22 -#define CISTPL_SWIL 0x23 -#define CISTPL_END 0xff - -/* - * CIS Function ID codes - */ -#define CISTPL_FUNCID_MULTI 0x00 -#define CISTPL_FUNCID_MEMORY 0x01 -#define CISTPL_FUNCID_SERIAL 0x02 -#define CISTPL_FUNCID_PARALLEL 0x03 -#define CISTPL_FUNCID_FIXED 0x04 -#define CISTPL_FUNCID_VIDEO 0x05 -#define CISTPL_FUNCID_NETWORK 0x06 -#define CISTPL_FUNCID_AIMS 0x07 -#define CISTPL_FUNCID_SCSI 0x08 - -/* - * Fixed Disk FUNCE codes - */ -#define CISTPL_IDE_INTERFACE 0x01 - -#define CISTPL_FUNCE_IDE_IFACE 0x01 -#define CISTPL_FUNCE_IDE_MASTER 0x02 -#define CISTPL_FUNCE_IDE_SLAVE 0x03 - -/* First feature byte */ -#define CISTPL_IDE_SILICON 0x04 -#define CISTPL_IDE_UNIQUE 0x08 -#define CISTPL_IDE_DUAL 0x10 - -/* Second feature byte */ -#define CISTPL_IDE_HAS_SLEEP 0x01 -#define CISTPL_IDE_HAS_STANDBY 0x02 -#define CISTPL_IDE_HAS_IDLE 0x04 -#define CISTPL_IDE_LOW_POWER 0x08 -#define CISTPL_IDE_REG_INHIBIT 0x10 -#define CISTPL_IDE_HAS_INDEX 0x20 -#define CISTPL_IDE_IOIS16 0x40 - -#endif - -#endif /* _PCMCIA_H */ diff --git a/include/pcmcia/yenta.h b/include/pcmcia/yenta.h deleted file mode 100644 index 5cd58a7da3..0000000000 --- a/include/pcmcia/yenta.h +++ /dev/null @@ -1,156 +0,0 @@ -/* - * yenta.h 1.20 2001/08/24 12:15:34 - * - * The contents of this file are subject to the Mozilla Public License - * Version 1.1 (the "License"); you may not use this file except in - * compliance with the License. You may obtain a copy of the License - * at http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" - * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See - * the License for the specific language governing rights and - * limitations under the License. - * - * The initial developer of the original code is David A. Hinds - * . Portions created by David A. Hinds - * are Copyright (C) 1999 David A. Hinds. All Rights Reserved. - * - * Alternatively, the contents of this file may be used under the - * terms of the GNU General Public License version 2 (the "GPL"), in - * which case the provisions of the GPL are applicable instead of the - * above. If you wish to allow the use of your version of this file - * only under the terms of the GPL and not to allow others to use - * your version of this file under the MPL, indicate your decision by - * deleting the provisions above and replace them with the notice and - * other provisions required by the GPL. If you do not delete the - * provisions above, a recipient may use your version of this file - * under either the MPL or the GPL. - */ - -#ifndef _LINUX_YENTA_H -#define _LINUX_YENTA_H - -/* PCI Configuration Registers */ - -#define PCI_STATUS_CAPLIST 0x10 -#define PCI_CB_CAPABILITY_POINTER 0x14 /* 8 bit */ -#define PCI_CAPABILITY_ID 0x00 /* 8 bit */ -#define PCI_CAPABILITY_PM 0x01 -#define PCI_NEXT_CAPABILITY 0x01 /* 8 bit */ -#define PCI_PM_CAPABILITIES 0x02 /* 16 bit */ -#define PCI_PMCAP_PME_D3COLD 0x8000 -#define PCI_PMCAP_PME_D3HOT 0x4000 -#define PCI_PMCAP_PME_D2 0x2000 -#define PCI_PMCAP_PME_D1 0x1000 -#define PCI_PMCAP_PME_D0 0x0800 -#define PCI_PMCAP_D2_CAP 0x0400 -#define PCI_PMCAP_D1_CAP 0x0200 -#define PCI_PMCAP_DYN_DATA 0x0100 -#define PCI_PMCAP_DSI 0x0020 -#define PCI_PMCAP_AUX_PWR 0x0010 -#define PCI_PMCAP_PMECLK 0x0008 -#define PCI_PMCAP_VERSION_MASK 0x0007 -#define PCI_PM_CONTROL_STATUS 0x04 /* 16 bit */ -#define PCI_PMCS_PME_STATUS 0x8000 -#define PCI_PMCS_DATASCALE_MASK 0x6000 -#define PCI_PMCS_DATASCALE_SHIFT 13 -#define PCI_PMCS_DATASEL_MASK 0x1e00 -#define PCI_PMCS_DATASEL_SHIFT 9 -#define PCI_PMCS_PME_ENABLE 0x0100 -#define PCI_PMCS_PWR_STATE_MASK 0x0003 -#define PCI_PMCS_PWR_STATE_D0 0x0000 -#define PCI_PMCS_PWR_STATE_D1 0x0001 -#define PCI_PMCS_PWR_STATE_D2 0x0002 -#define PCI_PMCS_PWR_STATE_D3 0x0003 -#define PCI_PM_BRIDGE_EXT 0x06 /* 8 bit */ -#define PCI_PM_DATA 0x07 /* 8 bit */ - -#define CB_PRIMARY_BUS 0x18 /* 8 bit */ -#define CB_CARDBUS_BUS 0x19 /* 8 bit */ -#define CB_SUBORD_BUS 0x1a /* 8 bit */ -#define CB_LATENCY_TIMER 0x1b /* 8 bit */ - -#define CB_MEM_BASE(m) (0x1c + 8*(m)) -#define CB_MEM_LIMIT(m) (0x20 + 8*(m)) -#define CB_IO_BASE(m) (0x2c + 8*(m)) -#define CB_IO_LIMIT(m) (0x30 + 8*(m)) - -#define CB_BRIDGE_CONTROL 0x3e /* 16 bit */ -#define CB_BCR_PARITY_ENA 0x0001 -#define CB_BCR_SERR_ENA 0x0002 -#define CB_BCR_ISA_ENA 0x0004 -#define CB_BCR_VGA_ENA 0x0008 -#define CB_BCR_MABORT 0x0020 -#define CB_BCR_CB_RESET 0x0040 -#define CB_BCR_ISA_IRQ 0x0080 -#define CB_BCR_PREFETCH(m) (0x0100 << (m)) -#define CB_BCR_WRITE_POST 0x0400 - -#define CB_LEGACY_MODE_BASE 0x44 - -/* Memory mapped registers */ - -#define CB_SOCKET_EVENT 0x0000 -#define CB_SE_CSTSCHG 0x00000001 -#define CB_SE_CCD 0x00000006 -#define CB_SE_CCD1 0x00000002 -#define CB_SE_CCD2 0x00000004 -#define CB_SE_PWRCYCLE 0x00000008 - -#define CB_SOCKET_MASK 0x0004 -#define CB_SM_CSTSCHG 0x00000001 -#define CB_SM_CCD 0x00000006 -#define CB_SM_PWRCYCLE 0x00000008 - -#define CB_SOCKET_STATE 0x0008 -#define CB_SS_CSTSCHG 0x00000001 -#define CB_SS_CCD 0x00000006 -#define CB_SS_CCD1 0x00000002 -#define CB_SS_CCD2 0x00000004 -#define CB_SS_PWRCYCLE 0x00000008 -#define CB_SS_16BIT 0x00000010 -#define CB_SS_32BIT 0x00000020 -#define CB_SS_CINT 0x00000040 -#define CB_SS_BADCARD 0x00000080 -#define CB_SS_DATALOST 0x00000100 -#define CB_SS_BADVCC 0x00000200 -#define CB_SS_5VCARD 0x00000400 -#define CB_SS_3VCARD 0x00000800 -#define CB_SS_XVCARD 0x00001000 -#define CB_SS_YVCARD 0x00002000 -#define CB_SS_VSENSE 0x00003c86 -#define CB_SS_5VSOCKET 0x10000000 -#define CB_SS_3VSOCKET 0x20000000 -#define CB_SS_XVSOCKET 0x40000000 -#define CB_SS_YVSOCKET 0x80000000 - -#define CB_SOCKET_FORCE 0x000c -#define CB_SF_CVSTEST 0x00004000 - -#define CB_SOCKET_CONTROL 0x0010 -#define CB_SC_VPP_MASK 0x00000007 -#define CB_SC_VPP_OFF 0x00000000 -#define CB_SC_VPP_12V 0x00000001 -#define CB_SC_VPP_5V 0x00000002 -#define CB_SC_VPP_3V 0x00000003 -#define CB_SC_VPP_XV 0x00000004 -#define CB_SC_VPP_YV 0x00000005 -#define CB_SC_VCC_MASK 0x00000070 -#define CB_SC_VCC_OFF 0x00000000 -#define CB_SC_VCC_5V 0x00000020 -#define CB_SC_VCC_3V 0x00000030 -#define CB_SC_VCC_XV 0x00000040 -#define CB_SC_VCC_YV 0x00000050 -#define CB_SC_CCLK_STOP 0x00000080 - -#define CB_SOCKET_POWER 0x0020 -#define CB_SP_CLK_CTRL 0x00000001 -#define CB_SP_CLK_CTRL_ENA 0x00010000 -#define CB_SP_CLK_MODE 0x01000000 -#define CB_SP_ACCESS 0x02000000 - -/* Address bits 31..24 for memory windows for 16-bit cards, - accessable only by memory mapping the 16-bit register set */ -#define CB_MEM_PAGE(map) (0x40 + (map)) - -#endif /* _LINUX_YENTA_H */ diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt index 53db749a65..d484a4bc2f 100644 --- a/scripts/config_whitelist.txt +++ b/scripts/config_whitelist.txt @@ -362,8 +362,6 @@ CONFIG_DRIVER_DM9000 CONFIG_DRIVER_EP93XX_MAC CONFIG_DRIVER_NE2000 CONFIG_DRIVER_NE2000_BASE -CONFIG_DRIVER_NE2000_CCR -CONFIG_DRIVER_NE2000_VAL CONFIG_DRIVER_SMC911X_BASE CONFIG_DRIVER_TI_EMAC_USE_RMII CONFIG_DSP_CLUSTER_START @@ -1357,9 +1355,6 @@ CONFIG_PCI_SKIP_HOST_BRIDGE CONFIG_PCI_SYS_BUS CONFIG_PCI_SYS_PHYS CONFIG_PCI_SYS_SIZE -CONFIG_PCMCIA -CONFIG_PCMCIA_SLOT_A -CONFIG_PCMCIA_SLOT_B CONFIG_PCNET CONFIG_PCNET_79C973 CONFIG_PCNET_79C975 @@ -3704,7 +3699,6 @@ CONFIG_SYS_PCI_TBATR3 CONFIG_SYS_PCI_TBATR4 CONFIG_SYS_PCI_TBATR5 CONFIG_SYS_PCI_VIRT -CONFIG_SYS_PCMCIA_MEM_SIZE CONFIG_SYS_PDCNT CONFIG_SYS_PEHLPAR CONFIG_SYS_PEPAR From ec1fa18561f818bee252da2c331d371ad26037d2 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Fri, 2 Aug 2019 09:44:27 -0600 Subject: [PATCH 51/51] common: Add a note about the effort to reduce common.h This file has quite a lot of general definitions and include files. Add a note about our intent to remove more of this. The file should ultimately include the configuration and perhaps a very other very common things used by most U-Boot files. Signed-off-by: Simon Glass --- include/common.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/include/common.h b/include/common.h index 2645ac9615..d8f302ea92 100644 --- a/include/common.h +++ b/include/common.h @@ -1,5 +1,11 @@ /* SPDX-License-Identifier: GPL-2.0+ */ /* + * Common header file for U-Boot + * + * This file still includes quite a bit of stuff that should be in separate + * headers like command.h, cpu.h and timer.h. Please think before adding more + * things. Patches to remove things are welcome. + * * (C) Copyright 2000-2009 * Wolfgang Denk, DENX Software Engineering, wd@denx.de. */