[PATCH 12/13] MIPS: boston: Migrate to OF_UPSTREAM
Sumit Garg
sumit.garg at linaro.org
Tue May 14 07:45:55 CEST 2024
Hi Jiaxun,
On Mon, 13 May 2024 at 23:43, Jiaxun Yang <jiaxun.yang at flygoat.com> wrote:
>
> We can now boot with upstream devicetree.
>
> Signed-off-by: Jiaxun Yang <jiaxun.yang at flygoat.com>
> ---
> arch/mips/Kconfig | 1 +
> arch/mips/dts/Makefile | 1 -
> arch/mips/dts/boston-u-boot.dtsi | 10 ++
> arch/mips/dts/img,boston.dts | 222 ---------------------------------------
> board/imgtec/boston/MAINTAINERS | 1 +
> configs/boston32r2_defconfig | 2 +-
> configs/boston32r2el_defconfig | 2 +-
> configs/boston32r6_defconfig | 2 +-
> configs/boston32r6el_defconfig | 2 +-
> configs/boston64r2_defconfig | 2 +-
> configs/boston64r2el_defconfig | 2 +-
> configs/boston64r6_defconfig | 2 +-
> configs/boston64r6el_defconfig | 2 +-
> 13 files changed, 20 insertions(+), 231 deletions(-)
>
Thanks for your efforts although I have a further suggestion below but FWIW:
Reviewed-by: Sumit Garg <sumit.garg at linaro.org>
> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
> index 748b5175b2eb..733a8de4fb83 100644
> --- a/arch/mips/Kconfig
> +++ b/arch/mips/Kconfig
> @@ -146,6 +146,7 @@ config TARGET_BOSTON
> select SUPPORTS_CPU_MIPS64_R2
> select SUPPORTS_CPU_MIPS64_R6
> select SUPPORTS_LITTLE_ENDIAN
> + imply OF_UPSTREAM
> imply BOOTSTD_FULL
> imply CLK
> imply CLK_BOSTON
> diff --git a/arch/mips/dts/Makefile b/arch/mips/dts/Makefile
> index 14fbce597b9e..5478dcd8d025 100644
> --- a/arch/mips/dts/Makefile
> +++ b/arch/mips/dts/Makefile
> @@ -3,7 +3,6 @@
> dtb-$(CONFIG_TARGET_AP121) += ap121.dtb
> dtb-$(CONFIG_TARGET_AP143) += ap143.dtb
> dtb-$(CONFIG_TARGET_AP152) += ap152.dtb
> -dtb-$(CONFIG_TARGET_BOSTON) += img,boston.dtb
> dtb-$(CONFIG_TARGET_MALTA) += mti,malta.dtb
> dtb-$(CONFIG_TARGET_PIC32MZDASK) += pic32mzda_sk.dtb
> dtb-$(CONFIG_TARGET_XILFPGA) += nexys4ddr.dtb
> diff --git a/arch/mips/dts/boston-u-boot.dtsi b/arch/mips/dts/boston-u-boot.dtsi
> new file mode 100644
> index 000000000000..1b0c0a289613
> --- /dev/null
> +++ b/arch/mips/dts/boston-u-boot.dtsi
> @@ -0,0 +1,10 @@
> +// SPDX-License-Identifier: GPL-2.0+
> +
> +&plat_regs {
> + compatible = "img,boston-platform-regs", "syscon", "simple-mfd";
> + bootph-all;
> +};
> +
> +&clk_boston {
> + bootph-all;
> +};
You can try to push these overrides to upstream DTS as well, so you
won't have to maintain them in U-Boot.
-Sumit
> diff --git a/arch/mips/dts/img,boston.dts b/arch/mips/dts/img,boston.dts
> deleted file mode 100644
> index c1a73963037d..000000000000
> --- a/arch/mips/dts/img,boston.dts
> +++ /dev/null
> @@ -1,222 +0,0 @@
> -/dts-v1/;
> -
> -#include <dt-bindings/clock/boston-clock.h>
> -#include <dt-bindings/gpio/gpio.h>
> -#include <dt-bindings/interrupt-controller/irq.h>
> -#include <dt-bindings/interrupt-controller/mips-gic.h>
> -
> -/ {
> - #address-cells = <1>;
> - #size-cells = <1>;
> - compatible = "img,boston";
> -
> - chosen {
> - stdout-path = &uart0;
> - };
> -
> - cpus {
> - #address-cells = <1>;
> - #size-cells = <0>;
> -
> - cpu at 0 {
> - device_type = "cpu";
> - compatible = "img,mips";
> - reg = <0>;
> - clocks = <&clk_boston BOSTON_CLK_CPU>;
> - };
> - };
> -
> - memory at 0 {
> - device_type = "memory";
> - reg = <0x00000000 0x10000000>;
> - };
> -
> - gic: interrupt-controller {
> - compatible = "mti,gic";
> -
> - interrupt-controller;
> - #interrupt-cells = <3>;
> -
> - timer {
> - compatible = "mti,gic-timer";
> - interrupts = <GIC_LOCAL 1 IRQ_TYPE_NONE>;
> - clocks = <&clk_boston BOSTON_CLK_CPU>;
> - };
> - };
> -
> - pci0: pci at 10000000 {
> - status = "disabled";
> - compatible = "xlnx,axi-pcie-host-1.00.a";
> - device_type = "pci";
> - reg = <0x10000000 0x2000000>;
> -
> - #address-cells = <3>;
> - #size-cells = <2>;
> - #interrupt-cells = <1>;
> -
> - interrupt-parent = <&gic>;
> - interrupts = <GIC_SHARED 2 IRQ_TYPE_LEVEL_HIGH>;
> -
> - ranges = <0x02000000 0 0x40000000
> - 0x40000000 0 0x40000000>;
> -
> - interrupt-map-mask = <0 0 0 7>;
> - interrupt-map = <0 0 0 1 &pci0_intc 0>,
> - <0 0 0 2 &pci0_intc 1>,
> - <0 0 0 3 &pci0_intc 2>,
> - <0 0 0 4 &pci0_intc 3>;
> -
> - pci0_intc: interrupt-controller {
> - interrupt-controller;
> - #address-cells = <0>;
> - #interrupt-cells = <1>;
> - };
> - };
> -
> - pci1: pci at 12000000 {
> - status = "disabled";
> - compatible = "xlnx,axi-pcie-host-1.00.a";
> - device_type = "pci";
> - reg = <0x12000000 0x2000000>;
> -
> - #address-cells = <3>;
> - #size-cells = <2>;
> - #interrupt-cells = <1>;
> -
> - interrupt-parent = <&gic>;
> - interrupts = <GIC_SHARED 1 IRQ_TYPE_LEVEL_HIGH>;
> -
> - ranges = <0x02000000 0 0x20000000
> - 0x20000000 0 0x20000000>;
> -
> - interrupt-map-mask = <0 0 0 7>;
> - interrupt-map = <0 0 0 1 &pci1_intc 0>,
> - <0 0 0 2 &pci1_intc 1>,
> - <0 0 0 3 &pci1_intc 2>,
> - <0 0 0 4 &pci1_intc 3>;
> -
> - pci1_intc: interrupt-controller {
> - interrupt-controller;
> - #address-cells = <0>;
> - #interrupt-cells = <1>;
> - };
> - };
> -
> - pci2: pci at 14000000 {
> - compatible = "xlnx,axi-pcie-host-1.00.a";
> - device_type = "pci";
> - reg = <0x14000000 0x2000000>;
> -
> - #address-cells = <3>;
> - #size-cells = <2>;
> - #interrupt-cells = <1>;
> -
> - interrupt-parent = <&gic>;
> - interrupts = <GIC_SHARED 0 IRQ_TYPE_LEVEL_HIGH>;
> -
> - ranges = <0x02000000 0 0x16000000
> - 0x16000000 0 0x100000>;
> -
> - interrupt-map-mask = <0 0 0 7>;
> - interrupt-map = <0 0 0 1 &pci2_intc 0>,
> - <0 0 0 2 &pci2_intc 1>,
> - <0 0 0 3 &pci2_intc 2>,
> - <0 0 0 4 &pci2_intc 3>;
> -
> - pci2_intc: interrupt-controller {
> - interrupt-controller;
> - #address-cells = <0>;
> - #interrupt-cells = <1>;
> - };
> -
> - pci2_root at 0,0,0 {
> - compatible = "pci10ee,7021";
> - reg = <0x00000000 0 0 0 0>;
> -
> - #address-cells = <3>;
> - #size-cells = <2>;
> - #interrupt-cells = <1>;
> -
> - eg20t_bridge at 1,0,0 {
> - compatible = "pci8086,8800";
> - reg = <0x00010000 0 0 0 0>;
> -
> - #address-cells = <3>;
> - #size-cells = <2>;
> - #interrupt-cells = <1>;
> -
> - eg20t_mac at 2,0,1 {
> - compatible = "pci8086,8802";
> - reg = <0x00020100 0 0 0 0>;
> - phy-reset-gpios = <&eg20t_gpio 6 GPIO_ACTIVE_LOW>;
> - };
> -
> - eg20t_gpio: eg20t_gpio at 2,0,2 {
> - compatible = "pci8086,8803";
> - reg = <0x00020200 0 0 0 0>;
> -
> - gpio-controller;
> - #gpio-cells = <2>;
> - };
> -
> - eg20t_i2c at 2,12,2 {
> - compatible = "pci8086,8817";
> - reg = <0x00026200 0 0 0 0>;
> -
> - #address-cells = <1>;
> - #size-cells = <0>;
> -
> - rtc at 0x68 {
> - compatible = "st,m41t81s";
> - reg = <0x68>;
> - };
> - };
> - };
> - };
> - };
> -
> - plat_regs: system-controller at 17ffd000 {
> - compatible = "img,boston-platform-regs", "syscon";
> - reg = <0x17ffd000 0x1000>;
> - bootph-all;
> - };
> -
> - clk_boston: clock {
> - compatible = "img,boston-clock";
> - #clock-cells = <1>;
> - regmap = <&plat_regs>;
> - bootph-all;
> - };
> -
> - reboot: syscon-reboot {
> - compatible = "syscon-reboot";
> - regmap = <&plat_regs>;
> - offset = <0x10>;
> - mask = <0x10>;
> - };
> -
> - uart0: uart at 17ffe000 {
> - compatible = "ns16550a";
> - reg = <0x17ffe000 0x1000>;
> - reg-shift = <2>;
> - reg-io-width = <4>;
> -
> - interrupt-parent = <&gic>;
> - interrupts = <GIC_SHARED 3 IRQ_TYPE_LEVEL_HIGH>;
> -
> - clocks = <&clk_boston BOSTON_CLK_SYS>;
> -
> - bootph-all;
> - };
> -
> - lcd: lcd at 17fff000 {
> - compatible = "img,boston-lcd";
> - reg = <0x17fff000 0x8>;
> - };
> -
> - flash at 18000000 {
> - compatible = "cfi-flash";
> - reg = <0x18000000 0x8000000>;
> - bank-width = <2>;
> - };
> -};
> diff --git a/board/imgtec/boston/MAINTAINERS b/board/imgtec/boston/MAINTAINERS
> index 07f6156ffcbe..12e1652858bb 100644
> --- a/board/imgtec/boston/MAINTAINERS
> +++ b/board/imgtec/boston/MAINTAINERS
> @@ -1,6 +1,7 @@
> BOSTON BOARD
> M: Paul Burton <paul.burton at mips.com>
> S: Maintained
> +F: arch/mips/dts/boston-u-boot.dtsi
> F: board/imgtec/boston/
> F: include/configs/boston.h
> F: configs/boston32r2_defconfig
> diff --git a/configs/boston32r2_defconfig b/configs/boston32r2_defconfig
> index 6f0024a6663d..cb5898c3cafa 100644
> --- a/configs/boston32r2_defconfig
> +++ b/configs/boston32r2_defconfig
> @@ -4,7 +4,7 @@ CONFIG_SYS_MALLOC_LEN=0x40000
> CONFIG_SYS_MALLOC_F_LEN=0x400
> CONFIG_ENV_SIZE=0x20000
> CONFIG_ENV_SECT_SIZE=0x20000
> -CONFIG_DEFAULT_DEVICE_TREE="img,boston"
> +CONFIG_DEFAULT_DEVICE_TREE="img/boston"
> CONFIG_SYS_LOAD_ADDR=0x88000000
> CONFIG_ENV_ADDR=0xBFFE0000
> CONFIG_TARGET_BOSTON=y
> diff --git a/configs/boston32r2el_defconfig b/configs/boston32r2el_defconfig
> index 71926429b051..4c603b69df7b 100644
> --- a/configs/boston32r2el_defconfig
> +++ b/configs/boston32r2el_defconfig
> @@ -4,7 +4,7 @@ CONFIG_SYS_MALLOC_LEN=0x40000
> CONFIG_SYS_MALLOC_F_LEN=0x400
> CONFIG_ENV_SIZE=0x20000
> CONFIG_ENV_SECT_SIZE=0x20000
> -CONFIG_DEFAULT_DEVICE_TREE="img,boston"
> +CONFIG_DEFAULT_DEVICE_TREE="img/boston"
> CONFIG_SYS_LOAD_ADDR=0x88000000
> CONFIG_ENV_ADDR=0xBFFE0000
> CONFIG_TARGET_BOSTON=y
> diff --git a/configs/boston32r6_defconfig b/configs/boston32r6_defconfig
> index 4335d04b39eb..17f7c4364a03 100644
> --- a/configs/boston32r6_defconfig
> +++ b/configs/boston32r6_defconfig
> @@ -4,7 +4,7 @@ CONFIG_SYS_MALLOC_LEN=0x40000
> CONFIG_SYS_MALLOC_F_LEN=0x400
> CONFIG_ENV_SIZE=0x20000
> CONFIG_ENV_SECT_SIZE=0x20000
> -CONFIG_DEFAULT_DEVICE_TREE="img,boston"
> +CONFIG_DEFAULT_DEVICE_TREE="img/boston"
> CONFIG_SYS_LOAD_ADDR=0x88000000
> CONFIG_ENV_ADDR=0xBFFE0000
> CONFIG_TARGET_BOSTON=y
> diff --git a/configs/boston32r6el_defconfig b/configs/boston32r6el_defconfig
> index b859a4f198ba..e662d167fe3d 100644
> --- a/configs/boston32r6el_defconfig
> +++ b/configs/boston32r6el_defconfig
> @@ -4,7 +4,7 @@ CONFIG_SYS_MALLOC_LEN=0x40000
> CONFIG_SYS_MALLOC_F_LEN=0x400
> CONFIG_ENV_SIZE=0x20000
> CONFIG_ENV_SECT_SIZE=0x20000
> -CONFIG_DEFAULT_DEVICE_TREE="img,boston"
> +CONFIG_DEFAULT_DEVICE_TREE="img/boston"
> CONFIG_SYS_LOAD_ADDR=0x88000000
> CONFIG_ENV_ADDR=0xBFFE0000
> CONFIG_TARGET_BOSTON=y
> diff --git a/configs/boston64r2_defconfig b/configs/boston64r2_defconfig
> index 70354f117169..bf5a3ead3646 100644
> --- a/configs/boston64r2_defconfig
> +++ b/configs/boston64r2_defconfig
> @@ -4,7 +4,7 @@ CONFIG_SYS_MALLOC_LEN=0x40000
> CONFIG_SYS_MALLOC_F_LEN=0x400
> CONFIG_ENV_SIZE=0x20000
> CONFIG_ENV_SECT_SIZE=0x20000
> -CONFIG_DEFAULT_DEVICE_TREE="img,boston"
> +CONFIG_DEFAULT_DEVICE_TREE="img/boston"
> CONFIG_SYS_LOAD_ADDR=0xffffffff88000000
> CONFIG_ENV_ADDR=0xFFFFFFFFBFFE0000
> CONFIG_TARGET_BOSTON=y
> diff --git a/configs/boston64r2el_defconfig b/configs/boston64r2el_defconfig
> index eafb8c67ba7a..de22344b5bb6 100644
> --- a/configs/boston64r2el_defconfig
> +++ b/configs/boston64r2el_defconfig
> @@ -4,7 +4,7 @@ CONFIG_SYS_MALLOC_LEN=0x40000
> CONFIG_SYS_MALLOC_F_LEN=0x400
> CONFIG_ENV_SIZE=0x20000
> CONFIG_ENV_SECT_SIZE=0x20000
> -CONFIG_DEFAULT_DEVICE_TREE="img,boston"
> +CONFIG_DEFAULT_DEVICE_TREE="img/boston"
> CONFIG_SYS_LOAD_ADDR=0xffffffff88000000
> CONFIG_ENV_ADDR=0xFFFFFFFFBFFE0000
> CONFIG_TARGET_BOSTON=y
> diff --git a/configs/boston64r6_defconfig b/configs/boston64r6_defconfig
> index a6c89278512a..bb339cfd5dbe 100644
> --- a/configs/boston64r6_defconfig
> +++ b/configs/boston64r6_defconfig
> @@ -4,7 +4,7 @@ CONFIG_SYS_MALLOC_LEN=0x40000
> CONFIG_SYS_MALLOC_F_LEN=0x400
> CONFIG_ENV_SIZE=0x20000
> CONFIG_ENV_SECT_SIZE=0x20000
> -CONFIG_DEFAULT_DEVICE_TREE="img,boston"
> +CONFIG_DEFAULT_DEVICE_TREE="img/boston"
> CONFIG_SYS_LOAD_ADDR=0xffffffff88000000
> CONFIG_ENV_ADDR=0xFFFFFFFFBFFE0000
> CONFIG_TARGET_BOSTON=y
> diff --git a/configs/boston64r6el_defconfig b/configs/boston64r6el_defconfig
> index 6cc227600df1..260f6dfb3583 100644
> --- a/configs/boston64r6el_defconfig
> +++ b/configs/boston64r6el_defconfig
> @@ -4,7 +4,7 @@ CONFIG_SYS_MALLOC_LEN=0x40000
> CONFIG_SYS_MALLOC_F_LEN=0x400
> CONFIG_ENV_SIZE=0x20000
> CONFIG_ENV_SECT_SIZE=0x20000
> -CONFIG_DEFAULT_DEVICE_TREE="img,boston"
> +CONFIG_DEFAULT_DEVICE_TREE="img/boston"
> CONFIG_SYS_LOAD_ADDR=0xffffffff88000000
> CONFIG_ENV_ADDR=0xFFFFFFFFBFFE0000
> CONFIG_TARGET_BOSTON=y
>
> --
> 2.34.1
>
More information about the U-Boot
mailing list