diff options
-rw-r--r-- | Documentation/devicetree/bindings/ata/pata-arasan.txt | 17 | ||||
-rw-r--r-- | drivers/ata/pata_arasan_cf.c | 10 |
2 files changed, 27 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/ata/pata-arasan.txt b/Documentation/devicetree/bindings/ata/pata-arasan.txt new file mode 100644 index 000000000000..95ec7f825ede --- /dev/null +++ b/Documentation/devicetree/bindings/ata/pata-arasan.txt | |||
@@ -0,0 +1,17 @@ | |||
1 | * ARASAN PATA COMPACT FLASH CONTROLLER | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "arasan,cf-spear1340" | ||
5 | - reg: Address range of the CF registers | ||
6 | - interrupt-parent: Should be the phandle for the interrupt controller | ||
7 | that services interrupts for this device | ||
8 | - interrupt: Should contain the CF interrupt number | ||
9 | |||
10 | Example: | ||
11 | |||
12 | cf@fc000000 { | ||
13 | compatible = "arasan,cf-spear1340"; | ||
14 | reg = <0xfc000000 0x1000>; | ||
15 | interrupt-parent = <&vic1>; | ||
16 | interrupts = <12>; | ||
17 | }; | ||
diff --git a/drivers/ata/pata_arasan_cf.c b/drivers/ata/pata_arasan_cf.c index d82c6dc0c20c..26201ebef3ca 100644 --- a/drivers/ata/pata_arasan_cf.c +++ b/drivers/ata/pata_arasan_cf.c | |||
@@ -31,6 +31,7 @@ | |||
31 | #include <linux/kernel.h> | 31 | #include <linux/kernel.h> |
32 | #include <linux/libata.h> | 32 | #include <linux/libata.h> |
33 | #include <linux/module.h> | 33 | #include <linux/module.h> |
34 | #include <linux/of.h> | ||
34 | #include <linux/pata_arasan_cf_data.h> | 35 | #include <linux/pata_arasan_cf_data.h> |
35 | #include <linux/platform_device.h> | 36 | #include <linux/platform_device.h> |
36 | #include <linux/pm.h> | 37 | #include <linux/pm.h> |
@@ -935,6 +936,14 @@ static int arasan_cf_resume(struct device *dev) | |||
935 | 936 | ||
936 | static SIMPLE_DEV_PM_OPS(arasan_cf_pm_ops, arasan_cf_suspend, arasan_cf_resume); | 937 | static SIMPLE_DEV_PM_OPS(arasan_cf_pm_ops, arasan_cf_suspend, arasan_cf_resume); |
937 | 938 | ||
939 | #ifdef CONFIG_OF | ||
940 | static const struct of_device_id arasan_cf_id_table[] = { | ||
941 | { .compatible = "arasan,cf-spear1340" }, | ||
942 | {} | ||
943 | }; | ||
944 | MODULE_DEVICE_TABLE(of, arasan_cf_id_table); | ||
945 | #endif | ||
946 | |||
938 | static struct platform_driver arasan_cf_driver = { | 947 | static struct platform_driver arasan_cf_driver = { |
939 | .probe = arasan_cf_probe, | 948 | .probe = arasan_cf_probe, |
940 | .remove = __devexit_p(arasan_cf_remove), | 949 | .remove = __devexit_p(arasan_cf_remove), |
@@ -942,6 +951,7 @@ static struct platform_driver arasan_cf_driver = { | |||
942 | .name = DRIVER_NAME, | 951 | .name = DRIVER_NAME, |
943 | .owner = THIS_MODULE, | 952 | .owner = THIS_MODULE, |
944 | .pm = &arasan_cf_pm_ops, | 953 | .pm = &arasan_cf_pm_ops, |
954 | .of_match_table = of_match_ptr(arasan_cf_id_table), | ||
945 | }, | 955 | }, |
946 | }; | 956 | }; |
947 | 957 | ||