]> www.infradead.org Git - linux.git/commitdiff
ARM: dts: microchip: sam9x60: Move i2c address/size to dtsi
authorAlexander Dahl <ada@thorsis.com>
Tue, 28 May 2024 15:31:09 +0000 (17:31 +0200)
committerClaudiu Beznea <claudiu.beznea@tuxon.dev>
Thu, 8 Aug 2024 06:58:43 +0000 (09:58 +0300)
These properties are common for all i2c subnodes.  Allows to add i2c device
nodes (like an rtc for example) in other .dts files including
sam9x60.dtsi without requiring to repeat these properties for each i2c
device again and again.

Found on a custom board after adding this in .dts:

    &flx5 {
            atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>;
            status = "okay";

            i2c5: i2c@600 {
                    pinctrl-0 = <&pinctrl_flx5_default>;
                    status = "okay";

                    pcf8523: rtc@68 {
                            compatible = "nxp,pcf8523";
                            reg = <0x68>;
                    };
            };
    };

… which created a warning like this:

    […]:236.4-17: Warning (reg_format): /ahb/apb/flexcom@f0004000/i2c@600/rtc@68:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
    […]: Warning (pci_device_reg): Failed prerequisite 'reg_format'
    […]: Warning (pci_device_bus_num): Failed prerequisite 'reg_format'
    […]: Warning (simple_bus_reg): Failed prerequisite 'reg_format'
    […]/linux-6.6.25/arch/arm/boot/dts/microchip/sam9x60.dtsi:283.19-299.7: Warning (i2c_bus_bridge): /ahb/apb/flexcom@f0004000/i2c@600: incorrect #address-cells for I2C bus also defined at […]:228.16-238.4
    […]/linux-6.6.25/arch/arm/boot/dts/microchip/sam9x60.dtsi:283.19-299.7: Warning (i2c_bus_bridge): /ahb/apb/flexcom@f0004000/i2c@600: incorrect #size-cells for I2C bus also defined at […]:228.16-238.4
    […]: Warning (i2c_bus_reg): Failed prerequisite 'reg_format'
    […]: Warning (i2c_bus_reg): Failed prerequisite 'i2c_bus_bridge'
    […]: Warning (spi_bus_reg): Failed prerequisite 'reg_format'
    […]:234.19-237.5: Warning (avoid_default_addr_size): /ahb/apb/flexcom@f0004000/i2c@600/rtc@68: Relying on default #address-cells value
    […]:234.19-237.5: Warning (avoid_default_addr_size): /ahb/apb/flexcom@f0004000/i2c@600/rtc@68: Relying on default #size-cells value
    […]: Warning (avoid_unnecessary_addr_size): Failed prerequisite 'avoid_default_addr_size'
    […]: Warning (unique_unit_address): Failed prerequisite 'avoid_default_addr_size'

This probably should have been done with commit 84f23f3284d5 ("ARM: dts:
at91: sam9x60: move flexcom definitions") already, where those
address-cells and size-cells properties were left in the board .dts
files instead of moving them to the dtsi.

Signed-off-by: Alexander Dahl <ada@thorsis.com>
Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com>
Link: https://lore.kernel.org/r/20240528153109.439407-1-ada@thorsis.com
[claudiu.beznea: adjusted commit message as the properties are not
 required anymore]
Signed-off-by: Claudiu Beznea <claudiu.beznea@tuxon.dev>
arch/arm/boot/dts/microchip/at91-sam9x60_curiosity.dts
arch/arm/boot/dts/microchip/at91-sam9x60ek.dts
arch/arm/boot/dts/microchip/sam9x60.dtsi

index c6fbdd29019f39867c91ff4908bfed407c0b6a68..b9ffd9e5faacc33939bfd121dd50ca992fd4b1c7 100644 (file)
                dmas = <0>, <0>;
                pinctrl-names = "default";
                pinctrl-0 = <&pinctrl_flx0_default>;
-               #address-cells = <1>;
-               #size-cells = <0>;
                i2c-analog-filter;
                i2c-digital-filter;
                i2c-digital-filter-width-ns = <35>;
index f3cbb675cea4aee74b3e004dd5f2c80d4ddea707..3b38707d736eed38aa24455634a1f182f51aa8df 100644 (file)
        status = "okay";
 
        i2c0: i2c@600 {
-               #address-cells = <1>;
-               #size-cells = <0>;
                dmas = <0>, <0>;
                pinctrl-names = "default";
                pinctrl-0 = <&pinctrl_flx0_default>;
        status = "okay";
 
        i2c6: i2c@600 {
-               #address-cells = <1>;
-               #size-cells = <0>;
                dmas = <0>, <0>;
                pinctrl-names = "default";
                pinctrl-0 = <&pinctrl_flx6_default>;
index 291540e5d81e769a6c23af493b50e9aad089bc0e..551b46894f4775811af8244a1afad7f533da2315 100644 (file)
                                        compatible = "microchip,sam9x60-i2c";
                                        reg = <0x600 0x200>;
                                        interrupts = <13 IRQ_TYPE_LEVEL_HIGH 7>;
+                                       #address-cells = <1>;
+                                       #size-cells = <0>;
                                        clocks = <&pmc PMC_TYPE_PERIPHERAL 13>;
                                        dmas = <&dma0
                                                (AT91_XDMAC_DT_MEM_IF(0) |
                                        compatible = "microchip,sam9x60-i2c";
                                        reg = <0x600 0x200>;
                                        interrupts = <14 IRQ_TYPE_LEVEL_HIGH 7>;
+                                       #address-cells = <1>;
+                                       #size-cells = <0>;
                                        clocks = <&pmc PMC_TYPE_PERIPHERAL 14>;
                                        dmas = <&dma0
                                                (AT91_XDMAC_DT_MEM_IF(0) |
                                        compatible = "microchip,sam9x60-i2c";
                                        reg = <0x600 0x200>;
                                        interrupts = <32 IRQ_TYPE_LEVEL_HIGH 7>;
+                                       #address-cells = <1>;
+                                       #size-cells = <0>;
                                        clocks = <&pmc PMC_TYPE_PERIPHERAL 32>;
                                        dmas = <&dma0
                                                (AT91_XDMAC_DT_MEM_IF(0) |
                                        compatible = "microchip,sam9x60-i2c";
                                        reg = <0x600 0x200>;
                                        interrupts = <33 IRQ_TYPE_LEVEL_HIGH 7>;
+                                       #address-cells = <1>;
+                                       #size-cells = <0>;
                                        clocks = <&pmc PMC_TYPE_PERIPHERAL 33>;
                                        dmas = <&dma0
                                                (AT91_XDMAC_DT_MEM_IF(0) |
                                        compatible = "microchip,sam9x60-i2c";
                                        reg = <0x600 0x200>;
                                        interrupts = <9 IRQ_TYPE_LEVEL_HIGH 7>;
+                                       #address-cells = <1>;
+                                       #size-cells = <0>;
                                        clocks = <&pmc PMC_TYPE_PERIPHERAL 9>;
                                        dmas = <&dma0
                                                (AT91_XDMAC_DT_MEM_IF(0) |
                                        compatible = "microchip,sam9x60-i2c";
                                        reg = <0x600 0x200>;
                                        interrupts = <10 IRQ_TYPE_LEVEL_HIGH 7>;
+                                       #address-cells = <1>;
+                                       #size-cells = <0>;
                                        clocks = <&pmc PMC_TYPE_PERIPHERAL 10>;
                                        dmas = <&dma0
                                                (AT91_XDMAC_DT_MEM_IF(0) |
                                        compatible = "microchip,sam9x60-i2c";
                                        reg = <0x600 0x200>;
                                        interrupts = <11 IRQ_TYPE_LEVEL_HIGH 7>;
+                                       #address-cells = <1>;
+                                       #size-cells = <0>;
                                        clocks = <&pmc PMC_TYPE_PERIPHERAL 11>;
                                        dmas = <&dma0
                                                (AT91_XDMAC_DT_MEM_IF(0) |
                                        compatible = "microchip,sam9x60-i2c";
                                        reg = <0x600 0x200>;
                                        interrupts = <5 IRQ_TYPE_LEVEL_HIGH 7>;
+                                       #address-cells = <1>;
+                                       #size-cells = <0>;
                                        clocks = <&pmc PMC_TYPE_PERIPHERAL 5>;
                                        dmas = <&dma0
                                                (AT91_XDMAC_DT_MEM_IF(0) |
                                        compatible = "microchip,sam9x60-i2c";
                                        reg = <0x600 0x200>;
                                        interrupts = <6 IRQ_TYPE_LEVEL_HIGH 7>;
+                                       #address-cells = <1>;
+                                       #size-cells = <0>;
                                        clocks = <&pmc PMC_TYPE_PERIPHERAL 6>;
                                        dmas = <&dma0
                                                (AT91_XDMAC_DT_MEM_IF(0) |
                                        compatible = "microchip,sam9x60-i2c";
                                        reg = <0x600 0x200>;
                                        interrupts = <7 IRQ_TYPE_LEVEL_HIGH 7>;
+                                       #address-cells = <1>;
+                                       #size-cells = <0>;
                                        clocks = <&pmc PMC_TYPE_PERIPHERAL 7>;
                                        dmas = <&dma0
                                                (AT91_XDMAC_DT_MEM_IF(0) |
                                        compatible = "microchip,sam9x60-i2c";
                                        reg = <0x600 0x200>;
                                        interrupts = <8 IRQ_TYPE_LEVEL_HIGH 7>;
+                                       #address-cells = <1>;
+                                       #size-cells = <0>;
                                        clocks = <&pmc PMC_TYPE_PERIPHERAL 8>;
                                        dmas = <&dma0
                                                (AT91_XDMAC_DT_MEM_IF(0) |
                                        compatible = "microchip,sam9x60-i2c";
                                        reg = <0x600 0x200>;
                                        interrupts = <15 IRQ_TYPE_LEVEL_HIGH 7>;
+                                       #address-cells = <1>;
+                                       #size-cells = <0>;
                                        clocks = <&pmc PMC_TYPE_PERIPHERAL 15>;
                                        dmas = <&dma0
                                                (AT91_XDMAC_DT_MEM_IF(0) |
                                        compatible = "microchip,sam9x60-i2c";
                                        reg = <0x600 0x200>;
                                        interrupts = <16 IRQ_TYPE_LEVEL_HIGH 7>;
+                                       #address-cells = <1>;
+                                       #size-cells = <0>;
                                        clocks = <&pmc PMC_TYPE_PERIPHERAL 16>;
                                        dmas = <&dma0
                                                (AT91_XDMAC_DT_MEM_IF(0) |