On 7 December 2013 12:47, Olliver Schinagl <oliver+list@xxxxxxxxxxx> wrote: > Hey maxime, > > On 06-12-13 19:33, Maxime Ripard wrote: >> >> Hi Oliver, >> >> On Wed, Dec 04, 2013 at 01:10:55PM +0100, oliver@xxxxxxxxxxx wrote: >>> >>> From: Oliver Schinagl <oliver@xxxxxxxxxxx> >>> >>> This patch adds sunxi sata support to A10 and A20 boards that have such >>> a connector. Some boards also feature a regulator via a GPIO and support >>> for this is also added. >>> >>> Signed-off-by: Olliver Schinagl <oliver@xxxxxxxxxxx> >> >> >> Your git setup seems to be pretty uncertain about how your first name is >> spelled :) > > I should have formally mention it to confuse less people, > > This is how officially my name is spelled (I left out any 'middle' letters. > I never really used it as such, as it confuses people and they always write > it wrong anyway. After years I decided that at least on these patches, I > should write it down properly (googleability etc in the future). So formally > it's Olliver 'oliver' M. Schinagl. > > And no, I won't share my middle name :p > > There! :) > >> >>> --- >>> arch/arm/boot/dts/sun4i-a10-cubieboard.dts | 26 >>> +++++++++++++++++++++++++ >>> arch/arm/boot/dts/sun4i-a10.dtsi | 9 +++++++++ >>> arch/arm/boot/dts/sun7i-a20-cubieboard2.dts | 26 >>> +++++++++++++++++++++++++ >>> arch/arm/boot/dts/sun7i-a20-cubietruck.dts | 26 >>> +++++++++++++++++++++++++ >>> arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts | 26 >>> +++++++++++++++++++++++++ >>> arch/arm/boot/dts/sun7i-a20.dtsi | 9 +++++++++ >>> 6 files changed, 122 insertions(+) >> >> >> Could you split this into several patches please? > > Yes, appologies, will take care of this! Sorry, > > Oliver > >> >> At least one per SoC. >> >>> diff --git a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts >>> b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts >>> index 425a7db..b620084 100644 >>> --- a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts >>> +++ b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts >>> @@ -42,7 +42,18 @@ >>> }; >>> }; >>> >>> + sata: ahci@01c18000 { >>> + pwr-supply = <®_ahci_5v>; >>> + status = "okay"; >>> + }; >>> + >>> pinctrl@01c20800 { >>> + ahci_pwr_pin: ahci_pwr_pin@0 { >> >> >> Please prefix it with name of the board. >> >>> + allwinner,pins = "PB8"; >>> + allwinner,function = "gpio_out"; >>> + allwinner,driver = <0>; >>> + allwinner,pull = <0>; >>> + }; >> >> >> Please add a newline here. >> >>> led_pins_cubieboard: led_pins@0 { >>> allwinner,pins = "PH20", "PH21"; >>> allwinner,function = "gpio_out"; >>> @@ -86,4 +97,19 @@ >>> linux,default-trigger = "heartbeat"; >>> }; >>> }; >>> + >>> + regulators { >>> + compatible = "simple-bus"; >>> + pinctrl-names = "default"; >>> + >>> + reg_ahci_5v: ahci-5v { >>> + compatible = "regulator-fixed"; >>> + regulator-name = "ahci-5v"; >>> + regulator-min-microvolt = <5000000>; >>> + regulator-max-microvolt = <5000000>; >>> + pinctrl-0 = <&ahci_pwr_pin>; >>> + gpio = <&pio 1 8 0>; >>> + enable-active-high; >>> + }; >>> + }; >>> }; >>> diff --git a/arch/arm/boot/dts/sun4i-a10.dtsi >>> b/arch/arm/boot/dts/sun4i-a10.dtsi >>> index 4dccdb0..53c6cdb 100644 >>> --- a/arch/arm/boot/dts/sun4i-a10.dtsi >>> +++ b/arch/arm/boot/dts/sun4i-a10.dtsi >>> @@ -306,6 +306,15 @@ >>> #size-cells = <0>; >>> }; >>> >>> + sata: ahci@01c18000 { >>> + compatible = "allwinner,sun4i-a10-ahci"; >> >> >> Please use sun4i-ahci for consistency. >> >>> + reg = <0x01c18000 0x1000>; >>> + interrupts = <0 56 1>; >> >> >> The interrupt here doesn't seem right. Is it actually working at all? >> >>> + clocks = <&ahb_gates 25>, <&pll6 0>; >>> + clock-names = "ahb_sata", "pll6_sata"; >>> + status = "disabled"; >>> + }; >>> + >>> intc: interrupt-controller@01c20400 { >>> compatible = "allwinner,sun4i-ic"; >>> reg = <0x01c20400 0x400>; >>> diff --git a/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts >>> b/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts >>> index 5c51cb8..99c5e78 100644 >>> --- a/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts >>> +++ b/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts >>> @@ -34,7 +34,18 @@ >>> }; >>> }; >>> >>> + sata: ahci@01c18000 { >>> + pwr-supply = <®_ahci_5v>; >>> + status = "okay"; >>> + }; >>> + >>> pinctrl@01c20800 { >>> + ahci_pwr_pin: ahci_pwr_pin@0 { >>> + allwinner,pins = "PB8"; >>> + allwinner,function = "gpio_out"; >>> + allwinner,drive = <0>; >>> + allwinner,pull = <0>; >>> + }; >> >> >> Please add a newline here. >> >>> led_pins_cubieboard2: led_pins@0 { >>> allwinner,pins = "PH20", "PH21"; >>> allwinner,function = "gpio_out"; >>> @@ -77,4 +88,19 @@ >>> gpios = <&pio 7 20 0>; >>> }; >>> }; >>> + >>> + regulators { >>> + compatible = "simple-bus"; >>> + pinctrl-names = "default"; >>> + >>> + reg_ahci_5v: ahci-5v { >>> + compatible = "regulator-fixed"; >>> + regulator-name = "ahci-5v"; >>> + regulator-min-microvolt = <5000000>; >>> + regulator-max-microvolt = <5000000>; >>> + pinctrl-0 = <&ahci_pwr_pin>; >>> + gpio = <&pio 1 8 0>; >>> + enable-active-high; >>> + }; >>> + }; >>> }; >>> diff --git a/arch/arm/boot/dts/sun7i-a20-cubietruck.dts >>> b/arch/arm/boot/dts/sun7i-a20-cubietruck.dts >>> index 8a1009d..19af23e 100644 >>> --- a/arch/arm/boot/dts/sun7i-a20-cubietruck.dts >>> +++ b/arch/arm/boot/dts/sun7i-a20-cubietruck.dts >>> @@ -19,7 +19,18 @@ >>> compatible = "cubietech,cubietruck", "allwinner,sun7i-a20"; >>> >>> soc@01c00000 { >>> + sata: ahci@01c18000 { >>> + pwr-supply = <®_ahci_5v>; >>> + status = "okay"; >>> + }; >>> + >>> pinctrl@01c20800 { >>> + ahci_pwr_pin: ahci_pwr_pin@0 { >>> + allwinner,pins = "PH12"; >>> + allwinner,function = "gpio_out"; >>> + allwinner,driver = <0>; >>> + allwinner,pull = <0>; >>> + }; >> >> >> Please add a newline here. >> >>> led_pins_cubietruck: led_pins@0 { >>> allwinner,pins = "PH7", "PH11", "PH20", >>> "PH21"; >>> allwinner,function = "gpio_out"; >>> @@ -60,4 +71,19 @@ >>> gpios = <&pio 7 7 0>; >>> }; >>> }; >>> + >>> + regulators { >>> + compatible = "simple-bus"; >>> + pinctrl-names = "default"; >>> + >>> + reg_ahci_5v: ahci-5v { >>> + compatible = "regulator-fixed"; >>> + regulator-name = "ahci-5v"; >>> + regulator-min-microvolt = <5000000>; >>> + regulator-max-microvolt = <5000000>; >>> + pinctrl-0 = <&ahci_pwr_pin>; >>> + gpio = <&pio 7 12 0>; >>> + enable-active-high; >>> + }; >>> + }; >>> }; >>> diff --git a/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts >>> b/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts >>> index ead3013..23ed708 100644 >>> --- a/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts >>> +++ b/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts >>> @@ -34,7 +34,19 @@ >>> }; >>> }; >>> >>> + sata: ahci@01c18000 { >>> + pwr-supply = <®_ahci_5v>; >>> + status = "okay"; >>> + }; >>> + >>> pinctrl@01c20800 { >>> + ahci_pwr_pin: ahci_pwr_pin@0 { >>> + allwinner,pins = "PB8"; >>> + allwinner,function = "gpio_out"; >>> + allwinner,drive = <0>; >>> + allwinner,pull = <0>; >>> + }; >>> + >>> led_pins_olinuxino: led_pins@0 { >>> allwinner,pins = "PH2"; >>> allwinner,function = "gpio_out"; >>> @@ -91,4 +103,18 @@ >>> default-state = "on"; >>> }; >>> }; >>> + >>> + regulators { >>> + compatible = "simple-bus"; >>> + >>> + reg_ahci_5v: ahci-5v { >>> + compatible = "regulator-fixed"; >>> + regulator-name = "ahci-5v"; >>> + regulator-min-microvolt = <5000000>; >>> + regulator-max-microvolt = <5000000>; >>> + pinctrl-0 = <&ahci_pwr_pin>; >>> + gpio = <&pio 1 8 0>; >>> + enable-active-high; >>> + }; >>> + }; >>> }; >>> diff --git a/arch/arm/boot/dts/sun7i-a20.dtsi >>> b/arch/arm/boot/dts/sun7i-a20.dtsi >>> index 0552a64..b72c69e 100644 >>> --- a/arch/arm/boot/dts/sun7i-a20.dtsi >>> +++ b/arch/arm/boot/dts/sun7i-a20.dtsi >>> @@ -368,6 +368,15 @@ >>> }; >>> }; >>> >>> + sata: ahci@01c18000 { >>> + compatible = "allwinner,sun4i-a10-ahci"; >>> + reg = <0x01c18000 0x1000>; >>> + interrupts = <0 56 1>; > > Will always fix this to <0 56 4> if i'm not mistaken. <0 56 1> appears to work on sun7i but sun4i has <56> in the working DT. The DT you sent has <0 56 1> on sun4i which somehow compiles and loads as DT but the driver fails. Thanks Michal -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html