Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drivers/rtc/rtc-lpc32xx.c: add device tree support

Adds device tree support for rtc-lpc32xx.c

Signed-off-by: Roland Stigge <stigge@antcom.de>
Acked-by: Rob Herring <rob.herring@calxeda.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by

Roland Stigge and committed by
Linus Torvalds
e862e7c4 bcffb10f

+26 -1
+15
Documentation/devicetree/bindings/rtc/lpc32xx-rtc.txt
··· 1 + * NXP LPC32xx SoC Real Time Clock controller 2 + 3 + Required properties: 4 + - compatible: must be "nxp,lpc3220-rtc" 5 + - reg: physical base address of the controller and length of memory mapped 6 + region. 7 + - interrupts: The RTC interrupt 8 + 9 + Example: 10 + 11 + rtc@40024000 { 12 + compatible = "nxp,lpc3220-rtc"; 13 + reg = <0x40024000 0x1000>; 14 + interrupts = <52 0>; 15 + };
+11 -1
drivers/rtc/rtc-lpc32xx.c
··· 19 19 #include <linux/rtc.h> 20 20 #include <linux/slab.h> 21 21 #include <linux/io.h> 22 + #include <linux/of.h> 22 23 23 24 /* 24 25 * Clock and Power control register offsets ··· 387 386 #define LPC32XX_RTC_PM_OPS NULL 388 387 #endif 389 388 389 + #ifdef CONFIG_OF 390 + static const struct of_device_id lpc32xx_rtc_match[] = { 391 + { .compatible = "nxp,lpc3220-rtc" }, 392 + { } 393 + }; 394 + MODULE_DEVICE_TABLE(of, lpc32xx_rtc_match); 395 + #endif 396 + 390 397 static struct platform_driver lpc32xx_rtc_driver = { 391 398 .probe = lpc32xx_rtc_probe, 392 399 .remove = __devexit_p(lpc32xx_rtc_remove), 393 400 .driver = { 394 401 .name = RTC_NAME, 395 402 .owner = THIS_MODULE, 396 - .pm = LPC32XX_RTC_PM_OPS 403 + .pm = LPC32XX_RTC_PM_OPS, 404 + .of_match_table = of_match_ptr(lpc32xx_rtc_match), 397 405 }, 398 406 }; 399 407