ahci: add DT binding for Calxeda AHCI controller
authorRob Herring <rob.herring@calxeda.com>
Thu, 4 Nov 2010 02:04:59 +0000 (21:04 -0500)
committerRob Herring <rob.herring@calxeda.com>
Thu, 3 Nov 2011 20:52:38 +0000 (15:52 -0500)
Add devicetree match table to ahci platform driver for Calxeda Highbank
AHCI controller.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Cc: Jeff Garzik <jgarzik@pobox.com>
Cc: linux-ide@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: devicetree-discuss@lists.ozlabs.org
Documentation/devicetree/bindings/ata/calxeda-sata.txt [new file with mode: 0644]
drivers/ata/ahci_platform.c

diff --git a/Documentation/devicetree/bindings/ata/calxeda-sata.txt b/Documentation/devicetree/bindings/ata/calxeda-sata.txt
new file mode 100644 (file)
index 0000000..79caa56
--- /dev/null
@@ -0,0 +1,17 @@
+* Calxeda SATA Controller
+
+SATA nodes are defined to describe on-chip Serial ATA controllers.
+Each SATA controller should have its own node.
+
+Required properties:
+- compatible        : compatible list, contains "calxeda,hb-ahci"
+- interrupts        : <interrupt mapping for SATA IRQ>
+- reg               : <registers mapping>
+
+Example:
+        sata@ffe08000 {
+               compatible = "calxeda,hb-ahci";
+                reg = <0xffe08000 0x1000>;
+                interrupts = <115>;
+        };
+
index c03277d..004f2ce 100644 (file)
@@ -202,11 +202,18 @@ static int __devexit ahci_remove(struct platform_device *pdev)
        return 0;
 }
 
+static const struct of_device_id ahci_of_match[] = {
+       { .compatible = "calxeda,hb-ahci", },
+       {},
+};
+MODULE_DEVICE_TABLE(of, ahci_of_match);
+
 static struct platform_driver ahci_driver = {
        .remove = __devexit_p(ahci_remove),
        .driver = {
                .name = "ahci",
                .owner = THIS_MODULE,
+               .of_match_table = ahci_of_match,
        },
        .id_table       = ahci_devtype,
 };