diff options
| author | Olof Johansson <olof@lixom.net> | 2012-11-21 02:11:45 -0500 |
|---|---|---|
| committer | Olof Johansson <olof@lixom.net> | 2012-11-21 02:11:45 -0500 |
| commit | 6fe05f33da536ac60a4c4e6807f454937047de54 (patch) | |
| tree | e19b71fdaea03e4b3599d425b6f2c29bdcd97a20 | |
| parent | 3fcdc0555f5043eded6312efce14cd8dd66f30f8 (diff) | |
| parent | 824b43968fed4b5a200cfef06129c0470eef306a (diff) | |
Merge tag 'at91-for-next-dt' of git://github.com/at91linux/linux-at91 into next/dt
From Nicolas Ferre:
More DT material for AT91:
- conversion of watchdog to DT
- usart definition for evk-pro3 board
* tag 'at91-for-next-dt' of git://github.com/at91linux/linux-at91:
ARM: at91/dts: evk-pro3: enable watchdog
ARM: at91/dts: add at91sam9_wdt driver to at91sam926x, at91sam9g45
watchdog: at91sam9_wdt: add device tree support
ARM: at91: dt: evk-pro3: enable uart0 and uart2
| -rw-r--r-- | Documentation/devicetree/bindings/watchdog/atmel-wdt.txt | 15 | ||||
| -rw-r--r-- | arch/arm/boot/dts/at91sam9260.dtsi | 6 | ||||
| -rw-r--r-- | arch/arm/boot/dts/at91sam9263.dtsi | 6 | ||||
| -rw-r--r-- | arch/arm/boot/dts/at91sam9g45.dtsi | 6 | ||||
| -rw-r--r-- | arch/arm/boot/dts/evk-pro3.dts | 12 | ||||
| -rw-r--r-- | drivers/watchdog/at91sam9_wdt.c | 11 |
6 files changed, 56 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/watchdog/atmel-wdt.txt b/Documentation/devicetree/bindings/watchdog/atmel-wdt.txt new file mode 100644 index 000000000000..2957ebb5aa71 --- /dev/null +++ b/Documentation/devicetree/bindings/watchdog/atmel-wdt.txt | |||
| @@ -0,0 +1,15 @@ | |||
| 1 | * Atmel Watchdog Timers | ||
| 2 | |||
| 3 | ** at91sam9-wdt | ||
| 4 | |||
| 5 | Required properties: | ||
| 6 | - compatible: must be "atmel,at91sam9260-wdt". | ||
| 7 | - reg: physical base address of the controller and length of memory mapped | ||
| 8 | region. | ||
| 9 | |||
| 10 | Example: | ||
| 11 | |||
| 12 | watchdog@fffffd40 { | ||
| 13 | compatible = "atmel,at91sam9260-wdt"; | ||
| 14 | reg = <0xfffffd40 0x10>; | ||
| 15 | }; | ||
diff --git a/arch/arm/boot/dts/at91sam9260.dtsi b/arch/arm/boot/dts/at91sam9260.dtsi index d410581a5a85..bfb5bb6528b5 100644 --- a/arch/arm/boot/dts/at91sam9260.dtsi +++ b/arch/arm/boot/dts/at91sam9260.dtsi | |||
| @@ -246,6 +246,12 @@ | |||
| 246 | trigger-external; | 246 | trigger-external; |
| 247 | }; | 247 | }; |
| 248 | }; | 248 | }; |
| 249 | |||
| 250 | watchdog@fffffd40 { | ||
| 251 | compatible = "atmel,at91sam9260-wdt"; | ||
| 252 | reg = <0xfffffd40 0x10>; | ||
| 253 | status = "disabled"; | ||
| 254 | }; | ||
| 249 | }; | 255 | }; |
| 250 | 256 | ||
| 251 | nand0: nand@40000000 { | 257 | nand0: nand@40000000 { |
diff --git a/arch/arm/boot/dts/at91sam9263.dtsi b/arch/arm/boot/dts/at91sam9263.dtsi index 3e6e5c1abbf3..ff5461278c03 100644 --- a/arch/arm/boot/dts/at91sam9263.dtsi +++ b/arch/arm/boot/dts/at91sam9263.dtsi | |||
| @@ -195,6 +195,12 @@ | |||
| 195 | #size-cells = <0>; | 195 | #size-cells = <0>; |
| 196 | status = "disabled"; | 196 | status = "disabled"; |
| 197 | }; | 197 | }; |
| 198 | |||
| 199 | watchdog@fffffd40 { | ||
| 200 | compatible = "atmel,at91sam9260-wdt"; | ||
| 201 | reg = <0xfffffd40 0x10>; | ||
| 202 | status = "disabled"; | ||
| 203 | }; | ||
| 198 | }; | 204 | }; |
| 199 | 205 | ||
| 200 | nand0: nand@40000000 { | 206 | nand0: nand@40000000 { |
diff --git a/arch/arm/boot/dts/at91sam9g45.dtsi b/arch/arm/boot/dts/at91sam9g45.dtsi index 3add030d61f8..a98c00a234eb 100644 --- a/arch/arm/boot/dts/at91sam9g45.dtsi +++ b/arch/arm/boot/dts/at91sam9g45.dtsi | |||
| @@ -262,6 +262,12 @@ | |||
| 262 | trigger-value = <0x6>; | 262 | trigger-value = <0x6>; |
| 263 | }; | 263 | }; |
| 264 | }; | 264 | }; |
| 265 | |||
| 266 | watchdog@fffffd40 { | ||
| 267 | compatible = "atmel,at91sam9260-wdt"; | ||
| 268 | reg = <0xfffffd40 0x10>; | ||
| 269 | status = "disabled"; | ||
| 270 | }; | ||
| 265 | }; | 271 | }; |
| 266 | 272 | ||
| 267 | nand0: nand@40000000 { | 273 | nand0: nand@40000000 { |
diff --git a/arch/arm/boot/dts/evk-pro3.dts b/arch/arm/boot/dts/evk-pro3.dts index b7354e6506de..96e50f569433 100644 --- a/arch/arm/boot/dts/evk-pro3.dts +++ b/arch/arm/boot/dts/evk-pro3.dts | |||
| @@ -22,10 +22,22 @@ | |||
| 22 | status = "okay"; | 22 | status = "okay"; |
| 23 | }; | 23 | }; |
| 24 | 24 | ||
| 25 | usart0: serial@fffb0000 { | ||
| 26 | status = "okay"; | ||
| 27 | }; | ||
| 28 | |||
| 29 | usart2: serial@fffb8000 { | ||
| 30 | status = "okay"; | ||
| 31 | }; | ||
| 32 | |||
| 25 | usb1: gadget@fffa4000 { | 33 | usb1: gadget@fffa4000 { |
| 26 | atmel,vbus-gpio = <&pioC 5 0>; | 34 | atmel,vbus-gpio = <&pioC 5 0>; |
| 27 | status = "okay"; | 35 | status = "okay"; |
| 28 | }; | 36 | }; |
| 37 | |||
| 38 | watchdog@fffffd40 { | ||
| 39 | status = "okay"; | ||
| 40 | }; | ||
| 29 | }; | 41 | }; |
| 30 | 42 | ||
| 31 | usb0: ohci@00500000 { | 43 | usb0: ohci@00500000 { |
diff --git a/drivers/watchdog/at91sam9_wdt.c b/drivers/watchdog/at91sam9_wdt.c index 05e1be85fdee..dc42e44b6bc1 100644 --- a/drivers/watchdog/at91sam9_wdt.c +++ b/drivers/watchdog/at91sam9_wdt.c | |||
| @@ -32,6 +32,7 @@ | |||
| 32 | #include <linux/timer.h> | 32 | #include <linux/timer.h> |
| 33 | #include <linux/bitops.h> | 33 | #include <linux/bitops.h> |
| 34 | #include <linux/uaccess.h> | 34 | #include <linux/uaccess.h> |
| 35 | #include <linux/of.h> | ||
| 35 | 36 | ||
| 36 | #include "at91sam9_wdt.h" | 37 | #include "at91sam9_wdt.h" |
| 37 | 38 | ||
| @@ -302,11 +303,21 @@ static int __exit at91wdt_remove(struct platform_device *pdev) | |||
| 302 | return res; | 303 | return res; |
| 303 | } | 304 | } |
| 304 | 305 | ||
| 306 | #if defined(CONFIG_OF) | ||
| 307 | static const struct of_device_id at91_wdt_dt_ids[] __initconst = { | ||
| 308 | { .compatible = "atmel,at91sam9260-wdt" }, | ||
| 309 | { /* sentinel */ } | ||
| 310 | }; | ||
| 311 | |||
| 312 | MODULE_DEVICE_TABLE(of, at91_wdt_dt_ids); | ||
| 313 | #endif | ||
| 314 | |||
| 305 | static struct platform_driver at91wdt_driver = { | 315 | static struct platform_driver at91wdt_driver = { |
| 306 | .remove = __exit_p(at91wdt_remove), | 316 | .remove = __exit_p(at91wdt_remove), |
| 307 | .driver = { | 317 | .driver = { |
| 308 | .name = "at91_wdt", | 318 | .name = "at91_wdt", |
| 309 | .owner = THIS_MODULE, | 319 | .owner = THIS_MODULE, |
| 320 | .of_match_table = of_match_ptr(at91_wdt_dt_ids), | ||
| 310 | }, | 321 | }, |
| 311 | }; | 322 | }; |
| 312 | 323 | ||
