spi: dw: Add SoC-specific compatible strings
authorSean Anderson <seanga2@gmail.com>
Fri, 16 Oct 2020 22:57:50 +0000 (18:57 -0400)
committerJagan Teki <jagan@amarulasolutions.com>
Fri, 18 Dec 2020 10:46:37 +0000 (16:16 +0530)
This adds SoC-specific compatible strings to all users of the designware
spi device. This will allow for the correct driver to be selected for each
device. Where it is publicly documented, a compatible string for the
specific device version has also been added. Devices without
publicly-documented device versions include MSCC SoCs, and Arc Socs. All
compatible strings except those for SoCFPGAs and some of the versioned
strings have been taken from Linux.

Since SSI_MAX_XFER_SIZE is determined at runtime, this is not strictly
necessary. However, it is a good cleanup and brings things closer to Linux.

Signed-off-by: Sean Anderson <seanga2@gmail.com>
Tested-by Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
arch/arc/dts/axs10x_mb.dtsi
arch/arc/dts/hsdk-common.dtsi
arch/arm/dts/socfpga.dtsi
arch/arm/dts/socfpga_agilex.dtsi
arch/arm/dts/socfpga_arria10.dtsi
arch/arm/dts/socfpga_stratix10.dtsi
arch/mips/dts/mscc,jr2.dtsi
arch/mips/dts/mscc,ocelot.dtsi
arch/riscv/dts/k210.dtsi

index daf7ca6..d4ff4f7 100644 (file)
@@ -90,7 +90,7 @@
                };
 
                spi0: spi@0 {
-                       compatible = "snps,dw-apb-ssi";
+                       compatible = "snps,axs10x-spi", "snps,dw-apb-ssi";
                        reg = <0x0 0x100>;
                        #address-cells = <1>;
                        #size-cells = <0>;
index a4b348b..3fc82e5 100644 (file)
        };
 
        spi0: spi@f0020000 {
-               compatible = "snps,dw-apb-ssi";
+               compatible = "snps,hsdk-spi", "snps,dw-apb-ssi";
                reg = <0xf0020000 0x1000>;
                #address-cells = <1>;
                #size-cells = <0>;
index eda558f..ff79d33 100644 (file)
                };
 
                spi0: spi@fff00000 {
-                       compatible = "snps,dw-apb-ssi";
+                       compatible = "altr,socfpga-spi", "snps,dw-apb-ssi-3.20",
+                                    "snps,dw-apb-ssi";
                        #address-cells = <1>;
                        #size-cells = <0>;
                        reg = <0xfff00000 0x1000>;
                };
 
                spi1: spi@fff01000 {
-                       compatible = "snps,dw-apb-ssi";
+                       compatible = "altr,socfpga-spi", "snps,dw-apb-ssi-3.20",
+                                    "snps,dw-apb-ssi";
                        #address-cells = <1>;
                        #size-cells = <0>;
                        reg = <0xfff01000 0x1000>;
index 179b4d5..c3ead2d 100644 (file)
                };
 
                spi0: spi@ffda4000 {
-                       compatible = "snps,dw-apb-ssi";
+                       compatible = "intel,agilex-spi",
+                                    "snps,dw-apb-ssi-4.00a", "snps,dw-apb-ssi";
                        #address-cells = <1>;
                        #size-cells = <0>;
                        reg = <0xffda4000 0x1000>;
                };
 
                spi1: spi@ffda5000 {
-                       compatible = "snps,dw-apb-ssi";
+                       compatible = "intel,agilex-spi",
+                                    "snps,dw-apb-ssi-4.00a", "snps,dw-apb-ssi";
                        #address-cells = <1>;
                        #size-cells = <0>;
                        reg = <0xffda5000 0x1000>;
index a598c75..bab34ab 100644 (file)
                };
 
                spi0: spi@ffda4000 {
-                       compatible = "snps,dw-apb-ssi";
+                       compatible = "altr,socfpga-arria10-spi",
+                                    "snps,dw-apb-ssi-3.22a", "snps,dw-apb-ssi";
                        #address-cells = <1>;
                        #size-cells = <0>;
                        reg = <0xffda4000 0x100>;
                };
 
                spi1: spi@ffda5000 {
-                       compatible = "snps,dw-apb-ssi";
+                       compatible = "altr,socfpga-arria10-spi",
+                                    "snps,dw-apb-ssi-3.22a", "snps,dw-apb-ssi";
                        #address-cells = <1>;
                        #size-cells = <0>;
                        reg = <0xffda5000 0x100>;
index cb799bc..7a77772 100755 (executable)
                 };
 
                spi0: spi@ffda4000 {
-                       compatible = "snps,dw-apb-ssi";
+                       compatible = "intel,stratix10-spi",
+                                    "snps,dw-apb-ssi-4.00a", "snps,dw-apb-ssi";
                        #address-cells = <1>;
                        #size-cells = <0>;
                        reg = <0xffda4000 0x1000>;
                };
 
                spi1: spi@ffda5000 {
-                       compatible = "snps,dw-apb-ssi";
+                       compatible = "intel,stratix10-spi",
+                                    "snps,dw-apb-ssi-4.00a", "snps,dw-apb-ssi";
                        #address-cells = <1>;
                        #size-cells = <0>;
                        reg = <0xffda5000 0x1000>;
index 7f5a96f..c44e9a2 100644 (file)
@@ -94,7 +94,7 @@
                spi0: spi-master@101000 {
                        #address-cells = <1>;
                        #size-cells = <0>;
-                       compatible = "snps,dw-apb-ssi";
+                       compatible = "mscc,jaguar2-spi", "snps,dw-apb-ssi";
                        reg = <0x101000 0x40>;
                        num-chipselect = <4>;
                        bus-num = <0>;
index 9a187b6..aeb4bf8 100644 (file)
                spi0: spi-master@101000 {
                        #address-cells = <1>;
                        #size-cells = <0>;
-                       compatible = "snps,dw-apb-ssi";
+                       compatible = "mscc,ocelot-spi", "snps,dw-apb-ssi";
                        reg = <0x101000 0x40>;
                        num-chipselect = <4>;
                        bus-num = <0>;
index 81ef8ca..fce98b0 100644 (file)
                        };
 
                        spi2: spi@50240000 {
-                               compatible = "kendryte,k120-spislave",
+                               compatible = "canaan,kendryte-k210-spi",
+                                            "snps,dw-apb-ssi-4.01",
                                             "snps,dw-apb-ssi";
                                spi-slave;
                                reg = <0x50240000 0x100>;
                        spi0: spi@52000000 {
                                #address-cells = <1>;
                                #size-cells = <0>;
-                               compatible = "kendryte,k210-spi",
+                               compatible = "canaan,kendryte-k210-spi",
+                                            "snps,dw-apb-ssi-4.01",
                                             "snps,dw-apb-ssi";
                                reg = <0x52000000 0x100>;
                                interrupts = <1>;
                        spi1: spi@53000000 {
                                #address-cells = <1>;
                                #size-cells = <0>;
-                               compatible = "kendryte,k210-spi",
+                               compatible = "canaan,kendryte-k210-spi",
+                                            "snps,dw-apb-ssi-4.01",
                                             "snps,dw-apb-ssi";
                                reg = <0x53000000 0x100>;
                                interrupts = <2>;
                        spi3: spi@54000000 {
                                #address-cells = <1>;
                                #size-cells = <0>;
-                               compatible = "kendryte,k210-spi",
-                                            "snps,dw-apb-ssi";
+                               compatible = "canaan,kendryte-k210-ssi",
+                                            "snps,dwc-ssi-1.01a";
                                reg = <0x54000000 0x200>;
                                interrupts = <4>;
                                clocks = <&sysclk K210_CLK_SPI3>;