From 93beff2c1455497f35c21c561d475be1101dbdc2 Mon Sep 17 00:00:00 2001 From: Duc Dang Date: Tue, 29 Dec 2015 15:20:10 -0800 Subject: arm64: dts: Fix to use standard DT node names for X-Gene 1 and X-Gene 2 platforms Use devicetree standard node name for I2C (i2c@...), GFC GPIO (gpio@...), DW GPIO (gpio@...), Standby GPIO (gpio@...). The DT node name of USB (dwusb@...) still needs to be kept to maintain backward compatibility with old firmware. Signed-off-by: Duc Dang diff --git a/arch/arm64/boot/dts/apm/apm-shadowcat.dtsi b/arch/arm64/boot/dts/apm/apm-shadowcat.dtsi index c617aa4..4b3837b 100644 --- a/arch/arm64/boot/dts/apm/apm-shadowcat.dtsi +++ b/arch/arm64/boot/dts/apm/apm-shadowcat.dtsi @@ -476,6 +476,7 @@ interrupts = <0x0 0x4c 0x4>; }; + /* Do not change dwusb name, coded for backward compatibility */ usb0: dwusb@19000000 { status = "disabled"; compatible = "snps,dwc3"; @@ -575,14 +576,14 @@ clocks = <&sdioclk 0>, <&ahbclk 0>; }; - gfcgpio: gfcgpio@1f63c000 { + gfcgpio: gpio@1f63c000 { compatible = "apm,xgene-gpio"; reg = <0x0 0x1f63c000 0x0 0x40>; gpio-controller; #gpio-cells = <2>; }; - dwgpio: dwgpio@1c024000 { + dwgpio: gpio@1c024000 { compatible = "snps,dw-apb-gpio"; reg = <0x0 0x1c024000 0x0 0x1000>; reg-io-width = <4>; @@ -597,7 +598,7 @@ }; }; - sbgpio: sbgpio@17001000{ + sbgpio: gpio@17001000{ compatible = "apm,xgene-gpio-sb"; reg = <0x0 0x17001000 0x0 0x400>; #gpio-cells = <2>; @@ -648,7 +649,7 @@ clocks = <&rngpkaclk 0>; }; - i2c1: i2c1@10511000 { + i2c1: i2c@10511000 { #address-cells = <1>; #size-cells = <0>; compatible = "snps,designware-i2c"; @@ -659,7 +660,7 @@ bus_num = <1>; }; - i2c4: i2c4@10640000 { + i2c4: i2c@10640000 { #address-cells = <1>; #size-cells = <0>; compatible = "snps,designware-i2c"; diff --git a/arch/arm64/boot/dts/apm/apm-storm.dtsi b/arch/arm64/boot/dts/apm/apm-storm.dtsi index a21e08a..17f5dc2 100644 --- a/arch/arm64/boot/dts/apm/apm-storm.dtsi +++ b/arch/arm64/boot/dts/apm/apm-storm.dtsi @@ -759,14 +759,14 @@ clocks = <&sdioclk 0>, <&ahbclk 0>; }; - gfcgpio: gfcgpio0@1701c000 { + gfcgpio: gpio0@1701c000 { compatible = "apm,xgene-gpio"; reg = <0x0 0x1701c000 0x0 0x40>; gpio-controller; #gpio-cells = <2>; }; - dwgpio: dwgpio@1c024000 { + dwgpio: gpio@1c024000 { compatible = "snps,dw-apb-gpio"; reg = <0x0 0x1c024000 0x0 0x1000>; reg-io-width = <4>; @@ -781,7 +781,7 @@ }; }; - i2c0: i2c0@10512000 { + i2c0: i2c@10512000 { status = "disabled"; #address-cells = <1>; #size-cells = <0>; @@ -886,7 +886,7 @@ dr_mode = "host"; }; - sbgpio: sbgpio@17001000{ + sbgpio: gpio@17001000{ compatible = "apm,xgene-gpio-sb"; reg = <0x0 0x17001000 0x0 0x400>; #gpio-cells = <2>; -- cgit v0.10.2 From 0fe8588fcaac6fff08937a338feb8e3082fe9e57 Mon Sep 17 00:00:00 2001 From: Duc Dang Date: Tue, 29 Dec 2015 17:02:05 -0800 Subject: arm64: dts: X-Gene v1: I2C0 clock is always on X-Gene v1 I2C0 and I2C1 controllers share the same clock enable register field. This patch remove clock node for I2C0 and leave I2C0 clock always on as having it toggled on/off will affect I2C1 operation. Signed-off-by: Duc Dang diff --git a/arch/arm64/boot/dts/apm/apm-storm.dtsi b/arch/arm64/boot/dts/apm/apm-storm.dtsi index 17f5dc2..fe30f76 100644 --- a/arch/arm64/boot/dts/apm/apm-storm.dtsi +++ b/arch/arm64/boot/dts/apm/apm-storm.dtsi @@ -437,20 +437,6 @@ reg-names = "csr-reg"; clock-output-names = "dmaclk"; }; - - i2cclk: i2cclk@17000000 { - status = "disabled"; - compatible = "apm,xgene-device-clock"; - #clock-cells = <1>; - clocks = <&ahbclk 0>; - reg = <0x0 0x17000000 0x0 0x2000>; - reg-names = "csr-reg"; - csr-offset = <0xc>; - csr-mask = <0x4>; - enable-offset = <0x10>; - enable-mask = <0x4>; - clock-output-names = "i2cclk"; - }; }; msi: msi@79000000 { @@ -789,7 +775,7 @@ reg = <0x0 0x10512000 0x0 0x1000>; interrupts = <0 0x44 0x4>; #clock-cells = <1>; - clocks = <&i2cclk 0>; + clocks = <&ahbclk 0>; bus_num = <0>; }; -- cgit v0.10.2 From 9ebf47bb748c17ebb2f9dde9169ed7a7612c3137 Mon Sep 17 00:00:00 2001 From: Duc Dang Date: Tue, 29 Dec 2015 17:05:31 -0800 Subject: arm64: dts: X-Gene v2: I2C1 clock is always on X-Gene v2 I2C0 and I2C1 controllers share the same clock enable register field. This patch remove clock node for I2C1 and leave I2C1 clock always on as having it toggled on/off will affect I2C0 operation. Signed-off-by: Duc Dang diff --git a/arch/arm64/boot/dts/apm/apm-shadowcat.dtsi b/arch/arm64/boot/dts/apm/apm-shadowcat.dtsi index 4b3837b..5d87a3d 100644 --- a/arch/arm64/boot/dts/apm/apm-shadowcat.dtsi +++ b/arch/arm64/boot/dts/apm/apm-shadowcat.dtsi @@ -334,19 +334,6 @@ clock-output-names = "rngpkaclk"; }; - i2c1clk: i2c1clk@17000000 { - compatible = "apm,xgene-device-clock"; - #clock-cells = <1>; - clocks = <&sbapbclk 0>; - reg = <0x0 0x17000000 0x0 0x2000>; - reg-names = "csr-reg"; - csr-offset = <0xc>; - csr-mask = <0x4>; - enable-offset = <0x10>; - enable-mask = <0x4>; - clock-output-names = "i2c1clk"; - }; - i2c4clk: i2c4clk@1704c000 { compatible = "apm,xgene-device-clock"; #clock-cells = <1>; @@ -656,7 +643,7 @@ reg = <0x0 0x10511000 0x0 0x1000>; interrupts = <0 0x45 0x4>; #clock-cells = <1>; - clocks = <&i2c1clk 0>; + clocks = <&sbapbclk 0>; bus_num = <1>; }; -- cgit v0.10.2