"Das U-Boot" Source Tree

suniv: switch Allwinner F1Cx00 boards to OF_UPSTREAM

In contrast to some other Allwinner SoCs, there is no difference between
the DTs for the Allwinner F1C100/F1C200 SoCs (sunvi) between the U-Boot
and the Linux kernel repository.

Remove the old copies of the F1Cx00 related .dts and .dtsi files, and
switch the whole suniv SoC over to use OF_UPSTREAM.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>

+3 -564
-2
arch/arm/dts/Makefile
··· 530 530 stm32h743i-eval.dtb \ 531 531 stm32h750i-art-pi.dtb 532 532 533 - dtb-$(CONFIG_MACH_SUNIV) += \ 534 - suniv-f1c100s-licheepi-nano.dtb 535 533 dtb-$(CONFIG_MACH_SUN4I) += \ 536 534 sun4i-a10-a1000.dtb \ 537 535 sun4i-a10-ba10-tvbox.dtb \
-73
arch/arm/dts/suniv-f1c100s-licheepi-nano.dts
··· 1 - // SPDX-License-Identifier: (GPL-2.0+ OR X11) 2 - /* 3 - * Copyright 2018 Icenowy Zheng <icenowy@aosc.io> 4 - */ 5 - 6 - /dts-v1/; 7 - #include "suniv-f1c100s.dtsi" 8 - 9 - #include <dt-bindings/gpio/gpio.h> 10 - 11 - / { 12 - model = "Lichee Pi Nano"; 13 - compatible = "licheepi,licheepi-nano", "allwinner,suniv-f1c100s"; 14 - 15 - aliases { 16 - mmc0 = &mmc0; 17 - serial0 = &uart0; 18 - spi0 = &spi0; 19 - }; 20 - 21 - chosen { 22 - stdout-path = "serial0:115200n8"; 23 - }; 24 - 25 - reg_vcc3v3: vcc3v3 { 26 - compatible = "regulator-fixed"; 27 - regulator-name = "vcc3v3"; 28 - regulator-min-microvolt = <3300000>; 29 - regulator-max-microvolt = <3300000>; 30 - }; 31 - }; 32 - 33 - &mmc0 { 34 - broken-cd; 35 - bus-width = <4>; 36 - disable-wp; 37 - status = "okay"; 38 - vmmc-supply = <&reg_vcc3v3>; 39 - }; 40 - 41 - &spi0 { 42 - pinctrl-names = "default"; 43 - pinctrl-0 = <&spi0_pc_pins>; 44 - status = "okay"; 45 - 46 - flash@0 { 47 - #address-cells = <1>; 48 - #size-cells = <1>; 49 - compatible = "winbond,w25q128", "jedec,spi-nor"; 50 - reg = <0>; 51 - spi-max-frequency = <40000000>; 52 - }; 53 - }; 54 - 55 - &otg_sram { 56 - status = "okay"; 57 - }; 58 - 59 - &uart0 { 60 - pinctrl-names = "default"; 61 - pinctrl-0 = <&uart0_pe_pins>; 62 - status = "okay"; 63 - }; 64 - 65 - &usb_otg { 66 - dr_mode = "otg"; 67 - status = "okay"; 68 - }; 69 - 70 - &usbphy { 71 - usb0_id_det-gpios = <&pio 4 2 GPIO_ACTIVE_HIGH>; /* PE2 */ 72 - status = "okay"; 73 - };
-330
arch/arm/dts/suniv-f1c100s.dtsi
··· 1 - // SPDX-License-Identifier: (GPL-2.0+ OR X11) 2 - /* 3 - * Copyright 2018 Icenowy Zheng <icenowy@aosc.io> 4 - * Copyright 2018 Mesih Kilinc <mesihkilinc@gmail.com> 5 - */ 6 - 7 - #include <dt-bindings/clock/suniv-ccu-f1c100s.h> 8 - #include <dt-bindings/reset/suniv-ccu-f1c100s.h> 9 - 10 - / { 11 - #address-cells = <1>; 12 - #size-cells = <1>; 13 - interrupt-parent = <&intc>; 14 - 15 - clocks { 16 - osc24M: clk-24M { 17 - #clock-cells = <0>; 18 - compatible = "fixed-clock"; 19 - clock-frequency = <24000000>; 20 - clock-output-names = "osc24M"; 21 - }; 22 - 23 - osc32k: clk-32k { 24 - #clock-cells = <0>; 25 - compatible = "fixed-clock"; 26 - clock-frequency = <32768>; 27 - clock-output-names = "osc32k"; 28 - }; 29 - }; 30 - 31 - cpus { 32 - #address-cells = <1>; 33 - #size-cells = <0>; 34 - 35 - cpu@0 { 36 - compatible = "arm,arm926ej-s"; 37 - device_type = "cpu"; 38 - reg = <0x0>; 39 - }; 40 - }; 41 - 42 - soc { 43 - compatible = "simple-bus"; 44 - #address-cells = <1>; 45 - #size-cells = <1>; 46 - ranges; 47 - 48 - sram-controller@1c00000 { 49 - compatible = "allwinner,suniv-f1c100s-system-control", 50 - "allwinner,sun4i-a10-system-control"; 51 - reg = <0x01c00000 0x30>; 52 - #address-cells = <1>; 53 - #size-cells = <1>; 54 - ranges; 55 - 56 - sram_d: sram@10000 { 57 - compatible = "mmio-sram"; 58 - reg = <0x00010000 0x1000>; 59 - #address-cells = <1>; 60 - #size-cells = <1>; 61 - ranges = <0 0x00010000 0x1000>; 62 - 63 - otg_sram: sram-section@0 { 64 - compatible = "allwinner,suniv-f1c100s-sram-d", 65 - "allwinner,sun4i-a10-sram-d"; 66 - reg = <0x0000 0x1000>; 67 - status = "disabled"; 68 - }; 69 - }; 70 - }; 71 - 72 - spi0: spi@1c05000 { 73 - compatible = "allwinner,suniv-f1c100s-spi", 74 - "allwinner,sun8i-h3-spi"; 75 - reg = <0x01c05000 0x1000>; 76 - interrupts = <10>; 77 - clocks = <&ccu CLK_BUS_SPI0>, <&ccu CLK_BUS_SPI0>; 78 - clock-names = "ahb", "mod"; 79 - resets = <&ccu RST_BUS_SPI0>; 80 - status = "disabled"; 81 - num-cs = <1>; 82 - #address-cells = <1>; 83 - #size-cells = <0>; 84 - }; 85 - 86 - spi1: spi@1c06000 { 87 - compatible = "allwinner,suniv-f1c100s-spi", 88 - "allwinner,sun8i-h3-spi"; 89 - reg = <0x01c06000 0x1000>; 90 - interrupts = <11>; 91 - clocks = <&ccu CLK_BUS_SPI1>, <&ccu CLK_BUS_SPI1>; 92 - clock-names = "ahb", "mod"; 93 - resets = <&ccu RST_BUS_SPI1>; 94 - status = "disabled"; 95 - num-cs = <1>; 96 - #address-cells = <1>; 97 - #size-cells = <0>; 98 - }; 99 - 100 - mmc0: mmc@1c0f000 { 101 - compatible = "allwinner,suniv-f1c100s-mmc", 102 - "allwinner,sun7i-a20-mmc"; 103 - reg = <0x01c0f000 0x1000>; 104 - clocks = <&ccu CLK_BUS_MMC0>, 105 - <&ccu CLK_MMC0>, 106 - <&ccu CLK_MMC0_OUTPUT>, 107 - <&ccu CLK_MMC0_SAMPLE>; 108 - clock-names = "ahb", "mmc", "output", "sample"; 109 - resets = <&ccu RST_BUS_MMC0>; 110 - reset-names = "ahb"; 111 - interrupts = <23>; 112 - pinctrl-names = "default"; 113 - pinctrl-0 = <&mmc0_pins>; 114 - status = "disabled"; 115 - #address-cells = <1>; 116 - #size-cells = <0>; 117 - }; 118 - 119 - mmc1: mmc@1c10000 { 120 - compatible = "allwinner,suniv-f1c100s-mmc", 121 - "allwinner,sun7i-a20-mmc"; 122 - reg = <0x01c10000 0x1000>; 123 - clocks = <&ccu CLK_BUS_MMC1>, 124 - <&ccu CLK_MMC1>, 125 - <&ccu CLK_MMC1_OUTPUT>, 126 - <&ccu CLK_MMC1_SAMPLE>; 127 - clock-names = "ahb", "mmc", "output", "sample"; 128 - resets = <&ccu RST_BUS_MMC1>; 129 - reset-names = "ahb"; 130 - interrupts = <24>; 131 - status = "disabled"; 132 - #address-cells = <1>; 133 - #size-cells = <0>; 134 - }; 135 - 136 - usb_otg: usb@1c13000 { 137 - compatible = "allwinner,suniv-f1c100s-musb"; 138 - reg = <0x01c13000 0x0400>; 139 - clocks = <&ccu CLK_BUS_OTG>; 140 - resets = <&ccu RST_BUS_OTG>; 141 - interrupts = <26>; 142 - interrupt-names = "mc"; 143 - phys = <&usbphy 0>; 144 - phy-names = "usb"; 145 - extcon = <&usbphy 0>; 146 - allwinner,sram = <&otg_sram 1>; 147 - status = "disabled"; 148 - }; 149 - 150 - usbphy: phy@1c13400 { 151 - compatible = "allwinner,suniv-f1c100s-usb-phy"; 152 - reg = <0x01c13400 0x10>; 153 - reg-names = "phy_ctrl"; 154 - clocks = <&ccu CLK_USB_PHY0>; 155 - clock-names = "usb0_phy"; 156 - resets = <&ccu RST_USB_PHY0>; 157 - reset-names = "usb0_reset"; 158 - #phy-cells = <1>; 159 - status = "disabled"; 160 - }; 161 - 162 - ccu: clock@1c20000 { 163 - compatible = "allwinner,suniv-f1c100s-ccu"; 164 - reg = <0x01c20000 0x400>; 165 - clocks = <&osc24M>, <&osc32k>; 166 - clock-names = "hosc", "losc"; 167 - #clock-cells = <1>; 168 - #reset-cells = <1>; 169 - }; 170 - 171 - intc: interrupt-controller@1c20400 { 172 - compatible = "allwinner,suniv-f1c100s-ic"; 173 - reg = <0x01c20400 0x400>; 174 - interrupt-controller; 175 - #interrupt-cells = <1>; 176 - }; 177 - 178 - pio: pinctrl@1c20800 { 179 - compatible = "allwinner,suniv-f1c100s-pinctrl"; 180 - reg = <0x01c20800 0x400>; 181 - interrupts = <38>, <39>, <40>; 182 - clocks = <&ccu CLK_BUS_PIO>, <&osc24M>, <&osc32k>; 183 - clock-names = "apb", "hosc", "losc"; 184 - gpio-controller; 185 - interrupt-controller; 186 - #interrupt-cells = <3>; 187 - #gpio-cells = <3>; 188 - 189 - mmc0_pins: mmc0-pins { 190 - pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5"; 191 - function = "mmc0"; 192 - drive-strength = <30>; 193 - }; 194 - 195 - /omit-if-no-ref/ 196 - i2c0_pd_pins: i2c0-pd-pins { 197 - pins = "PD0", "PD12"; 198 - function = "i2c0"; 199 - }; 200 - 201 - spi0_pc_pins: spi0-pc-pins { 202 - pins = "PC0", "PC1", "PC2", "PC3"; 203 - function = "spi0"; 204 - }; 205 - 206 - uart0_pe_pins: uart0-pe-pins { 207 - pins = "PE0", "PE1"; 208 - function = "uart0"; 209 - }; 210 - 211 - /omit-if-no-ref/ 212 - uart1_pa_pins: uart1-pa-pins { 213 - pins = "PA2", "PA3"; 214 - function = "uart1"; 215 - }; 216 - }; 217 - 218 - i2c0: i2c@1c27000 { 219 - compatible = "allwinner,suniv-f1c100s-i2c", 220 - "allwinner,sun6i-a31-i2c"; 221 - reg = <0x01c27000 0x400>; 222 - interrupts = <7>; 223 - clocks = <&ccu CLK_BUS_I2C0>; 224 - resets = <&ccu RST_BUS_I2C0>; 225 - #address-cells = <1>; 226 - #size-cells = <0>; 227 - status = "disabled"; 228 - }; 229 - 230 - i2c1: i2c@1c27400 { 231 - compatible = "allwinner,suniv-f1c100s-i2c", 232 - "allwinner,sun6i-a31-i2c"; 233 - reg = <0x01c27400 0x400>; 234 - interrupts = <8>; 235 - clocks = <&ccu CLK_BUS_I2C1>; 236 - resets = <&ccu RST_BUS_I2C1>; 237 - #address-cells = <1>; 238 - #size-cells = <0>; 239 - status = "disabled"; 240 - }; 241 - 242 - i2c2: i2c@1c27800 { 243 - compatible = "allwinner,suniv-f1c100s-i2c", 244 - "allwinner,sun6i-a31-i2c"; 245 - reg = <0x01c27800 0x400>; 246 - interrupts = <9>; 247 - clocks = <&ccu CLK_BUS_I2C2>; 248 - resets = <&ccu RST_BUS_I2C2>; 249 - #address-cells = <1>; 250 - #size-cells = <0>; 251 - status = "disabled"; 252 - }; 253 - 254 - timer@1c20c00 { 255 - compatible = "allwinner,suniv-f1c100s-timer"; 256 - reg = <0x01c20c00 0x90>; 257 - interrupts = <13>, <14>, <15>; 258 - clocks = <&osc24M>; 259 - }; 260 - 261 - wdt: watchdog@1c20ca0 { 262 - compatible = "allwinner,suniv-f1c100s-wdt", 263 - "allwinner,sun6i-a31-wdt"; 264 - reg = <0x01c20ca0 0x20>; 265 - interrupts = <16>; 266 - clocks = <&osc32k>; 267 - }; 268 - 269 - pwm: pwm@1c21000 { 270 - compatible = "allwinner,suniv-f1c100s-pwm", 271 - "allwinner,sun7i-a20-pwm"; 272 - reg = <0x01c21000 0x400>; 273 - clocks = <&osc24M>; 274 - #pwm-cells = <3>; 275 - status = "disabled"; 276 - }; 277 - 278 - ir: ir@1c22c00 { 279 - compatible = "allwinner,suniv-f1c100s-ir", 280 - "allwinner,sun6i-a31-ir"; 281 - reg = <0x01c22c00 0x400>; 282 - clocks = <&ccu CLK_BUS_IR>, <&ccu CLK_IR>; 283 - clock-names = "apb", "ir"; 284 - resets = <&ccu RST_BUS_IR>; 285 - interrupts = <6>; 286 - status = "disabled"; 287 - }; 288 - 289 - lradc: lradc@1c23400 { 290 - compatible = "allwinner,suniv-f1c100s-lradc", 291 - "allwinner,sun8i-a83t-r-lradc"; 292 - reg = <0x01c23400 0x400>; 293 - interrupts = <22>; 294 - status = "disabled"; 295 - }; 296 - 297 - uart0: serial@1c25000 { 298 - compatible = "snps,dw-apb-uart"; 299 - reg = <0x01c25000 0x400>; 300 - interrupts = <1>; 301 - reg-shift = <2>; 302 - reg-io-width = <4>; 303 - clocks = <&ccu CLK_BUS_UART0>; 304 - resets = <&ccu RST_BUS_UART0>; 305 - status = "disabled"; 306 - }; 307 - 308 - uart1: serial@1c25400 { 309 - compatible = "snps,dw-apb-uart"; 310 - reg = <0x01c25400 0x400>; 311 - interrupts = <2>; 312 - reg-shift = <2>; 313 - reg-io-width = <4>; 314 - clocks = <&ccu CLK_BUS_UART1>; 315 - resets = <&ccu RST_BUS_UART1>; 316 - status = "disabled"; 317 - }; 318 - 319 - uart2: serial@1c25800 { 320 - compatible = "snps,dw-apb-uart"; 321 - reg = <0x01c25800 0x400>; 322 - interrupts = <3>; 323 - reg-shift = <2>; 324 - reg-io-width = <4>; 325 - clocks = <&ccu CLK_BUS_UART2>; 326 - resets = <&ccu RST_BUS_UART2>; 327 - status = "disabled"; 328 - }; 329 - }; 330 - };
-76
arch/arm/dts/suniv-f1c200s-lctech-pi.dts
··· 1 - // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 - /* 3 - * Copyright 2022 Arm Ltd, 4 - * based on work: 5 - * Copyright 2022 Icenowy Zheng <uwu@icenowy.me> 6 - */ 7 - 8 - /dts-v1/; 9 - #include "suniv-f1c100s.dtsi" 10 - 11 - #include <dt-bindings/gpio/gpio.h> 12 - 13 - / { 14 - model = "Lctech Pi F1C200s"; 15 - compatible = "lctech,pi-f1c200s", "allwinner,suniv-f1c200s", 16 - "allwinner,suniv-f1c100s"; 17 - 18 - aliases { 19 - serial0 = &uart1; 20 - }; 21 - 22 - chosen { 23 - stdout-path = "serial0:115200n8"; 24 - }; 25 - 26 - reg_vcc3v3: regulator-3v3 { 27 - compatible = "regulator-fixed"; 28 - regulator-name = "vcc3v3"; 29 - regulator-min-microvolt = <3300000>; 30 - regulator-max-microvolt = <3300000>; 31 - }; 32 - }; 33 - 34 - &mmc0 { 35 - broken-cd; 36 - bus-width = <4>; 37 - disable-wp; 38 - vmmc-supply = <&reg_vcc3v3>; 39 - status = "okay"; 40 - }; 41 - 42 - &otg_sram { 43 - status = "okay"; 44 - }; 45 - 46 - &spi0 { 47 - pinctrl-names = "default"; 48 - pinctrl-0 = <&spi0_pc_pins>; 49 - status = "okay"; 50 - 51 - flash@0 { 52 - compatible = "spi-nand"; 53 - reg = <0>; 54 - spi-max-frequency = <40000000>; 55 - }; 56 - }; 57 - 58 - &uart1 { 59 - pinctrl-names = "default"; 60 - pinctrl-0 = <&uart1_pa_pins>; 61 - status = "okay"; 62 - }; 63 - 64 - /* 65 - * This is a Type-C socket, but CC1/2 are not connected, and VBUS is connected 66 - * to Vin, which supplies the board. Host mode works (if the board is powered 67 - * otherwise), but peripheral is probably the intention. 68 - */ 69 - &usb_otg { 70 - dr_mode = "peripheral"; 71 - status = "okay"; 72 - }; 73 - 74 - &usbphy { 75 - status = "okay"; 76 - };
-81
arch/arm/dts/suniv-f1c200s-popstick-v1.1.dts
··· 1 - // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 - /* 3 - * Copyright 2022 Icenowy Zheng <uwu@icenowy.me> 4 - */ 5 - 6 - /dts-v1/; 7 - #include "suniv-f1c100s.dtsi" 8 - 9 - #include <dt-bindings/gpio/gpio.h> 10 - #include <dt-bindings/leds/common.h> 11 - 12 - / { 13 - model = "Popcorn Computer PopStick v1.1"; 14 - compatible = "sourceparts,popstick-v1.1", "sourceparts,popstick", 15 - "allwinner,suniv-f1c200s", "allwinner,suniv-f1c100s"; 16 - 17 - aliases { 18 - serial0 = &uart0; 19 - }; 20 - 21 - chosen { 22 - stdout-path = "serial0:115200n8"; 23 - }; 24 - 25 - leds { 26 - compatible = "gpio-leds"; 27 - 28 - led { 29 - function = LED_FUNCTION_STATUS; 30 - color = <LED_COLOR_ID_GREEN>; 31 - gpios = <&pio 4 6 GPIO_ACTIVE_HIGH>; /* PE6 */ 32 - linux,default-trigger = "heartbeat"; 33 - }; 34 - }; 35 - 36 - reg_vcc3v3: regulator-3v3 { 37 - compatible = "regulator-fixed"; 38 - regulator-name = "vcc3v3"; 39 - regulator-min-microvolt = <3300000>; 40 - regulator-max-microvolt = <3300000>; 41 - }; 42 - }; 43 - 44 - &mmc0 { 45 - cd-gpios = <&pio 4 3 GPIO_ACTIVE_LOW>; /* PE3 */ 46 - bus-width = <4>; 47 - disable-wp; 48 - vmmc-supply = <&reg_vcc3v3>; 49 - status = "okay"; 50 - }; 51 - 52 - &otg_sram { 53 - status = "okay"; 54 - }; 55 - 56 - &spi0 { 57 - pinctrl-names = "default"; 58 - pinctrl-0 = <&spi0_pc_pins>; 59 - status = "okay"; 60 - 61 - flash@0 { 62 - compatible = "spi-nand"; 63 - reg = <0>; 64 - spi-max-frequency = <40000000>; 65 - }; 66 - }; 67 - 68 - &uart0 { 69 - pinctrl-names = "default"; 70 - pinctrl-0 = <&uart0_pe_pins>; 71 - status = "okay"; 72 - }; 73 - 74 - &usb_otg { 75 - dr_mode = "peripheral"; 76 - status = "okay"; 77 - }; 78 - 79 - &usbphy { 80 - status = "okay"; 81 - };
+1
arch/arm/mach-sunxi/Kconfig
··· 277 277 select SUPPORT_SPL 278 278 select SKIP_LOWLEVEL_INIT_ONLY 279 279 select SPL_SKIP_LOWLEVEL_INIT_ONLY 280 + imply OF_UPSTREAM 280 281 281 282 config MACH_SUN4I 282 283 bool "sun4i (Allwinner A10)"
+1 -1
configs/lctech_pi_f1c200s_defconfig
··· 1 1 CONFIG_ARM=y 2 2 CONFIG_ARCH_SUNXI=y 3 - CONFIG_DEFAULT_DEVICE_TREE="suniv-f1c200s-lctech-pi" 3 + CONFIG_DEFAULT_DEVICE_TREE="allwinner/suniv-f1c200s-lctech-pi" 4 4 CONFIG_SPL=y 5 5 CONFIG_MACH_SUNIV=y 6 6 CONFIG_DRAM_CLK=156
+1 -1
configs/licheepi_nano_defconfig
··· 1 1 CONFIG_ARM=y 2 2 CONFIG_ARCH_SUNXI=y 3 - CONFIG_DEFAULT_DEVICE_TREE="suniv-f1c100s-licheepi-nano" 3 + CONFIG_DEFAULT_DEVICE_TREE="allwinner/suniv-f1c100s-licheepi-nano" 4 4 CONFIG_SPL=y 5 5 CONFIG_MACH_SUNIV=y 6 6 CONFIG_DRAM_CLK=156