diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi index e3c3d7d..522447c 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi @@ -52,6 +52,11 @@ #address-cells = <1>; #size-cells = <1>; + aliases { + spi0 = &spi0; + spi1 = &spi1; + }; + cpus { #address-cells = <1>; #size-cells = <0>; @@ -225,6 +230,35 @@ allwinner,drive = ; allwinner,pull = ; }; + + spi0_pins_a: spi0@0 { + allwinner,pins = "PC0", "PC1", "PC2"; + allwinner,function = "spi0"; + allwinner,drive = ; + allwinner,pull = ; + }; + + spi0_cs0_pins_a: spi0_cs0@0 { + allwinner,pins = "PC3"; + allwinner,function = "spi0"; + allwinner,drive = ; + allwinner,pull = ; + }; + + spi1_pins_a: spi1@0 { + allwinner,pins = "PD1", "PD2", "PD3"; + allwinner,function = "spi1"; + allwinner,drive = ; + allwinner,pull = ; + }; + + spi1_cs0_pins_a: spi1_cs0@0 { + allwinner,pins = "PD0"; + allwinner,function = "spi1"; + allwinner,drive = ; + allwinner,pull = ; + }; + }; uart0: serial@1c28000 { @@ -387,6 +421,36 @@ }; }; + spi0: spi@01c68000 { + compatible = "allwinner,sun6i-a31-spi"; + reg = <0x01c68000 0x1000>; + interrupts = ; + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&spi0_pins_a>, <&spi0_cs0_pins_a>; + clocks = <&ccu CLK_BUS_SPI0>, <&ccu CLK_SPI0>; + clock-names = "ahb", "mod"; + clock-frequency = <0x5f5e100>; + resets = <&ccu RST_BUS_SPI0>; + status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; + }; + + spi1: spi@01c69000 { + compatible = "allwinner,sun6i-a31-spi"; + reg = <0x01c69000 0x1000>; + interrupts = ; + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&spi1_pins_a>, <&spi1_cs0_pins_a>; + clocks = <&ccu CLK_BUS_SPI1>, <&ccu CLK_SPI1>; + clock-names = "ahb", "mod"; + clock-frequency = <0x5f5e100>; + resets = <&ccu RST_BUS_SPI1>; + status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; + }; + usbphy: phy@01c19400 { compatible = "allwinner,sun50i-a64-usb-phy"; reg = <0x01c19400 0x14>,