Re: [linux-sunxi] [PATCH v5 13/14] ARM: sun4i: dts: Add ahci / sata support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On 01/23/2014 09:34 AM, Chen-Yu Tsai wrote:
Hi,

On Thu, Jan 23, 2014 at 3:04 AM, Hans de Goede <hdegoede@xxxxxxxxxx> wrote:
From: Oliver Schinagl <oliver@xxxxxxxxxxx>

This patch adds sunxi sata support to A10 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>
Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>
---
  arch/arm/boot/dts/sun4i-a10-a1000.dts      |  4 ++++
  arch/arm/boot/dts/sun4i-a10-cubieboard.dts |  6 +++++
  arch/arm/boot/dts/sun4i-a10.dtsi           |  8 +++++++
  arch/arm/boot/dts/sunxi-ahci-reg.dtsi      | 38 ++++++++++++++++++++++++++++++
  4 files changed, 56 insertions(+)
  create mode 100644 arch/arm/boot/dts/sunxi-ahci-reg.dtsi

diff --git a/arch/arm/boot/dts/sun4i-a10-a1000.dts b/arch/arm/boot/dts/sun4i-a10-a1000.dts
index aef8207..3fb7305 100644
--- a/arch/arm/boot/dts/sun4i-a10-a1000.dts
+++ b/arch/arm/boot/dts/sun4i-a10-a1000.dts
@@ -48,6 +48,10 @@
                         status = "okay";
                 };

+               ahci: sata@01c18000 {
+                       status = "okay";
+               };
+
                 pinctrl@01c20800 {
                         mmc0_cd_pin_a1000: mmc0_cd_pin@0 {
                                 allwinner,pins = "PH1";
diff --git a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
index f50fb2b..6ae1110 100644
--- a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
+++ b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
@@ -12,6 +12,7 @@

  /dts-v1/;
  /include/ "sun4i-a10.dtsi"
+/include/ "sunxi-ahci-reg.dtsi"

  / {
         model = "Cubietech Cubieboard";
@@ -51,6 +52,11 @@
                         status = "okay";
                 };

+               ahci: sata@01c18000 {
+                       target-supply = <&reg_ahci_5v>;
+                       status = "okay";
+               };
+
                 pinctrl@01c20800 {
                         mmc0_cd_pin_cubieboard: mmc0_cd_pin@0 {
                                 allwinner,pins = "PH1";
diff --git a/arch/arm/boot/dts/sun4i-a10.dtsi b/arch/arm/boot/dts/sun4i-a10.dtsi
index 4736dd2..198dcda 100644
--- a/arch/arm/boot/dts/sun4i-a10.dtsi
+++ b/arch/arm/boot/dts/sun4i-a10.dtsi
@@ -331,6 +331,14 @@
                         status = "disabled";
                 };

+               ahci: sata@01c18000 {
+                       compatible = "allwinner,sun4i-a10-ahci";
+                       reg = <0x01c18000 0x1000>;
+                       interrupts = <56>;
+                       clocks = <&pll6 0>, <&ahb_gates 25>;
+                       status = "disabled";
+               };
+

Consider adding

     pinctrl-names = "default";

in the ahci node to suppress "default pin state not found" warnings.
Same goes for sun7i-a20.dtsi.

ahci does not use pinctrl, the ahci (and usb) phys have dedicated pins,
since they don't use pinctrl at all no such warnings are issued.


                 intc: interrupt-controller@01c20400 {
                         compatible = "allwinner,sun4i-ic";
                         reg = <0x01c20400 0x400>;
diff --git a/arch/arm/boot/dts/sunxi-ahci-reg.dtsi b/arch/arm/boot/dts/sunxi-ahci-reg.dtsi
new file mode 100644
index 0000000..955b197
--- /dev/null
+++ b/arch/arm/boot/dts/sunxi-ahci-reg.dtsi
@@ -0,0 +1,38 @@
+/*
+ * sunxi boards sata target power supply common code
+ *
+ * Copyright 2014 - Hans de Goede <hdegoede@xxxxxxxxxx>
+ *
+ * The code contained herein is licensed under the GNU General Public
+ * License. You may obtain a copy of the GNU General Public License
+ * Version 2 or later at the following locations:
+ *
+ * http://www.opensource.org/licenses/gpl-license.html
+ * http://www.gnu.org/copyleft/gpl.html
+ */
+
+/ {
+       soc@01c00000 {

This block needs to be under

     pinctrl@01c20800 {

+               ahci_pwr_pin_a: ahci_pwr_pin@0 {
+                       allwinner,pins = "PB8";
+                       allwinner,function = "gpio_out";
+                       allwinner,drive = <0>;
+                       allwinner,pull = <0>;
+               };

     };

You're completely right, fixed in my local tree.

Regards,

Hans
--
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux