Commit 7858dded authored by William Zhang's avatar William Zhang Committed by Florian Fainelli

ARM: dts: broadcom: bcmbca: Add spi controller node

Add support for HSSPI controller in ARMv7 chip dts files.
Signed-off-by: default avatarWilliam Zhang <william.zhang@broadcom.com>
Link: https://lore.kernel.org/r/20230207065826.285013-4-william.zhang@broadcom.comSigned-off-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
parent fe15c26e
...@@ -88,6 +88,12 @@ uart_clk: uart-clk { ...@@ -88,6 +88,12 @@ uart_clk: uart-clk {
clock-div = <4>; clock-div = <4>;
clock-mult = <1>; clock-mult = <1>;
}; };
hsspi_pll: hsspi-pll {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <200000000>;
};
}; };
psci { psci {
...@@ -119,6 +125,18 @@ bus@ff800000 { ...@@ -119,6 +125,18 @@ bus@ff800000 {
#size-cells = <1>; #size-cells = <1>;
ranges = <0 0xff800000 0x800000>; ranges = <0 0xff800000 0x800000>;
hsspi: spi@1000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "brcm,bcm47622-hsspi", "brcm,bcmbca-hsspi-v1.0";
reg = <0x1000 0x600>;
interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&hsspi_pll &hsspi_pll>;
clock-names = "hsspi", "pll";
num-cs = <8>;
status = "disabled";
};
uart0: serial@12000 { uart0: serial@12000 {
compatible = "arm,pl011", "arm,primecell"; compatible = "arm,pl011", "arm,primecell";
reg = <0x12000 0x1000>; reg = <0x12000 0x1000>;
......
...@@ -66,6 +66,12 @@ apb_clk: apb_clk { ...@@ -66,6 +66,12 @@ apb_clk: apb_clk {
clock-div = <4>; clock-div = <4>;
clock-mult = <1>; clock-mult = <1>;
}; };
hsspi_pll: hsspi-pll {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <400000000>;
};
}; };
/* ARM bus */ /* ARM bus */
...@@ -203,6 +209,18 @@ serial1: serial@620 { ...@@ -203,6 +209,18 @@ serial1: serial@620 {
status = "disabled"; status = "disabled";
}; };
hsspi: spi@1000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "brcm,bcm63138-hsspi", "brcm,bcmbca-hsspi-v1.0";
reg = <0x1000 0x600>;
interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&hsspi_pll &hsspi_pll>;
clock-names = "hsspi", "pll";
num-cs = <8>;
status = "disabled";
};
nand_controller: nand-controller@2000 { nand_controller: nand-controller@2000 {
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
......
...@@ -60,6 +60,12 @@ periph_clk: periph-clk { ...@@ -60,6 +60,12 @@ periph_clk: periph-clk {
#clock-cells = <0>; #clock-cells = <0>;
clock-frequency = <50000000>; clock-frequency = <50000000>;
}; };
hsspi_pll: hsspi-pll {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <400000000>;
};
}; };
psci { psci {
...@@ -100,5 +106,17 @@ uart0: serial@600 { ...@@ -100,5 +106,17 @@ uart0: serial@600 {
clock-names = "refclk"; clock-names = "refclk";
status = "disabled"; status = "disabled";
}; };
hsspi: spi@1000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "brcm,bcm63148-hsspi", "brcm,bcmbca-hsspi-v1.0";
reg = <0x1000 0x600>;
interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&hsspi_pll &hsspi_pll>;
clock-names = "hsspi", "pll";
num-cs = <8>;
status = "disabled";
};
}; };
}; };
...@@ -71,6 +71,7 @@ periph_clk: periph-clk { ...@@ -71,6 +71,7 @@ periph_clk: periph-clk {
#clock-cells = <0>; #clock-cells = <0>;
clock-frequency = <200000000>; clock-frequency = <200000000>;
}; };
uart_clk: uart-clk { uart_clk: uart-clk {
compatible = "fixed-factor-clock"; compatible = "fixed-factor-clock";
#clock-cells = <0>; #clock-cells = <0>;
...@@ -78,6 +79,12 @@ uart_clk: uart-clk { ...@@ -78,6 +79,12 @@ uart_clk: uart-clk {
clock-div = <4>; clock-div = <4>;
clock-mult = <1>; clock-mult = <1>;
}; };
hsspi_pll: hsspi-pll {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <200000000>;
};
}; };
psci { psci {
...@@ -109,6 +116,18 @@ bus@ff800000 { ...@@ -109,6 +116,18 @@ bus@ff800000 {
#size-cells = <1>; #size-cells = <1>;
ranges = <0 0xff800000 0x800000>; ranges = <0 0xff800000 0x800000>;
hsspi: spi@1000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "brcm,bcm63178-hsspi", "brcm,bcmbca-hsspi-v1.0";
reg = <0x1000 0x600>;
interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&hsspi_pll &hsspi_pll>;
clock-names = "hsspi", "pll";
num-cs = <8>;
status = "disabled";
};
uart0: serial@12000 { uart0: serial@12000 {
compatible = "arm,pl011", "arm,primecell"; compatible = "arm,pl011", "arm,primecell";
reg = <0x12000 0x1000>; reg = <0x12000 0x1000>;
......
...@@ -88,6 +88,12 @@ uart_clk: uart-clk { ...@@ -88,6 +88,12 @@ uart_clk: uart-clk {
clock-div = <4>; clock-div = <4>;
clock-mult = <1>; clock-mult = <1>;
}; };
hsspi_pll: hsspi-pll {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <200000000>;
};
}; };
psci { psci {
...@@ -119,6 +125,19 @@ bus@ff800000 { ...@@ -119,6 +125,19 @@ bus@ff800000 {
#size-cells = <1>; #size-cells = <1>;
ranges = <0 0xff800000 0x800000>; ranges = <0 0xff800000 0x800000>;
hsspi: spi@1000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "brcm,bcm6756-hsspi", "brcm,bcmbca-hsspi-v1.1";
reg = <0x1000 0x600>, <0x2610 0x4>;
reg-names = "hsspi", "spim-ctrl";
interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&hsspi_pll &hsspi_pll>;
clock-names = "hsspi", "pll";
num-cs = <8>;
status = "disabled";
};
uart0: serial@12000 { uart0: serial@12000 {
compatible = "arm,pl011", "arm,primecell"; compatible = "arm,pl011", "arm,primecell";
reg = <0x12000 0x1000>; reg = <0x12000 0x1000>;
......
...@@ -61,6 +61,12 @@ periph_clk: periph-clk { ...@@ -61,6 +61,12 @@ periph_clk: periph-clk {
#clock-cells = <0>; #clock-cells = <0>;
clock-frequency = <200000000>; clock-frequency = <200000000>;
}; };
hsspi_pll: hsspi-pll {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <400000000>;
};
}; };
psci { psci {
...@@ -100,5 +106,17 @@ uart0: serial@640 { ...@@ -100,5 +106,17 @@ uart0: serial@640 {
clock-names = "refclk"; clock-names = "refclk";
status = "disabled"; status = "disabled";
}; };
hsspi: spi@1000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "brcm,bcm6846-hsspi", "brcm,bcmbca-hsspi-v1.0";
reg = <0x1000 0x600>;
interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&hsspi_pll &hsspi_pll>;
clock-names = "hsspi", "pll";
num-cs = <8>;
status = "disabled";
};
}; };
}; };
...@@ -78,6 +78,12 @@ uart_clk: uart-clk { ...@@ -78,6 +78,12 @@ uart_clk: uart-clk {
clock-div = <4>; clock-div = <4>;
clock-mult = <1>; clock-mult = <1>;
}; };
hsspi_pll: hsspi-pll {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <200000000>;
};
}; };
psci { psci {
...@@ -109,6 +115,19 @@ bus@ff800000 { ...@@ -109,6 +115,19 @@ bus@ff800000 {
#size-cells = <1>; #size-cells = <1>;
ranges = <0 0xff800000 0x800000>; ranges = <0 0xff800000 0x800000>;
hsspi: spi@1000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "brcm,bcm6855-hsspi", "brcm,bcmbca-hsspi-v1.1";
reg = <0x1000 0x600>, <0x2610 0x4>;
reg-names = "hsspi", "spim-ctrl";
interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&hsspi_pll &hsspi_pll>;
clock-names = "hsspi", "pll";
num-cs = <8>;
status = "disabled";
};
uart0: serial@12000 { uart0: serial@12000 {
compatible = "arm,pl011", "arm,primecell"; compatible = "arm,pl011", "arm,primecell";
reg = <0x12000 0x1000>; reg = <0x12000 0x1000>;
......
...@@ -61,6 +61,7 @@ periph_clk: periph-clk { ...@@ -61,6 +61,7 @@ periph_clk: periph-clk {
#clock-cells = <0>; #clock-cells = <0>;
clock-frequency = <200000000>; clock-frequency = <200000000>;
}; };
uart_clk: uart-clk { uart_clk: uart-clk {
compatible = "fixed-factor-clock"; compatible = "fixed-factor-clock";
#clock-cells = <0>; #clock-cells = <0>;
...@@ -68,6 +69,12 @@ uart_clk: uart-clk { ...@@ -68,6 +69,12 @@ uart_clk: uart-clk {
clock-div = <4>; clock-div = <4>;
clock-mult = <1>; clock-mult = <1>;
}; };
hsspi_pll: hsspi-pll {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <200000000>;
};
}; };
psci { psci {
...@@ -100,6 +107,18 @@ bus@ff800000 { ...@@ -100,6 +107,18 @@ bus@ff800000 {
#size-cells = <1>; #size-cells = <1>;
ranges = <0 0xff800000 0x800000>; ranges = <0 0xff800000 0x800000>;
hsspi: spi@1000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "brcm,bcm6878-hsspi", "brcm,bcmbca-hsspi-v1.0";
reg = <0x1000 0x600>;
interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&hsspi_pll &hsspi_pll>;
clock-names = "hsspi", "pll";
num-cs = <8>;
status = "disabled";
};
uart0: serial@12000 { uart0: serial@12000 {
compatible = "arm,pl011", "arm,primecell"; compatible = "arm,pl011", "arm,primecell";
reg = <0x12000 0x1000>; reg = <0x12000 0x1000>;
......
...@@ -28,3 +28,7 @@ memory@0 { ...@@ -28,3 +28,7 @@ memory@0 {
&uart0 { &uart0 {
status = "okay"; status = "okay";
}; };
&hsspi {
status = "okay";
};
...@@ -25,3 +25,7 @@ memory@0 { ...@@ -25,3 +25,7 @@ memory@0 {
&serial0 { &serial0 {
status = "okay"; status = "okay";
}; };
&hsspi {
status = "okay";
};
...@@ -50,3 +50,7 @@ &ahci { ...@@ -50,3 +50,7 @@ &ahci {
&sata_phy { &sata_phy {
status = "okay"; status = "okay";
}; };
&hsspi {
status = "okay";
};
...@@ -28,3 +28,7 @@ memory@0 { ...@@ -28,3 +28,7 @@ memory@0 {
&uart0 { &uart0 {
status = "okay"; status = "okay";
}; };
&hsspi {
status = "okay";
};
...@@ -28,3 +28,7 @@ memory@0 { ...@@ -28,3 +28,7 @@ memory@0 {
&uart0 { &uart0 {
status = "okay"; status = "okay";
}; };
&hsspi {
status = "okay";
};
...@@ -28,3 +28,7 @@ memory@0 { ...@@ -28,3 +28,7 @@ memory@0 {
&uart0 { &uart0 {
status = "okay"; status = "okay";
}; };
&hsspi {
status = "okay";
};
...@@ -28,3 +28,7 @@ memory@0 { ...@@ -28,3 +28,7 @@ memory@0 {
&uart0 { &uart0 {
status = "okay"; status = "okay";
}; };
&hsspi {
status = "okay";
};
...@@ -28,3 +28,7 @@ memory@0 { ...@@ -28,3 +28,7 @@ memory@0 {
&uart0 { &uart0 {
status = "okay"; status = "okay";
}; };
&hsspi {
status = "okay";
};
...@@ -28,3 +28,7 @@ memory@0 { ...@@ -28,3 +28,7 @@ memory@0 {
&uart0 { &uart0 {
status = "okay"; status = "okay";
}; };
&hsspi {
status = "okay";
};
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment