[PATCH V2] MXS: Add DT binding support into stmp3xxx-rtc
From: Marek Vasut <marex@denx.de>
Date: 2012-06-08 18:56:44
Also in:
linux-arm-kernel
Subsystem:
open firmware and flattened device tree bindings, real time clock (rtc) subsystem, the rest · Maintainers:
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Alexandre Belloni, Linus Torvalds
Add simple binding for the stmp3xxx-rtc. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Alessandro Zummo <redacted> Cc: devicetree-discuss@lists.ozlabs.org Cc: Grant Likely <redacted> Cc: Rob Herring <redacted> Cc: rtc-linux@googlegroups.com Cc: Shawn Guo <redacted> --- .../devicetree/bindings/rtc/stmp3xxx-rtc.txt | 19 +++++++++++++++++++ arch/arm/boot/dts/imx28.dtsi | 1 + drivers/rtc/rtc-stmp3xxx.c | 7 +++++++ 3 files changed, 27 insertions(+) create mode 100644 Documentation/devicetree/bindings/rtc/stmp3xxx-rtc.txt V2: Fix typos, remove fsl,imx28-rtc
diff --git a/Documentation/devicetree/bindings/rtc/stmp3xxx-rtc.txt b/Documentation/devicetree/bindings/rtc/stmp3xxx-rtc.txt
new file mode 100644
index 0000000..a7a7de5
--- /dev/null
+++ b/Documentation/devicetree/bindings/rtc/stmp3xxx-rtc.txt@@ -0,0 +1,19 @@ +* STMP3xxx/i.MX28 Time Clock controller + +Required properties: +- compatible: should be one of the following. + * "fsl,stmp3xxx-rtc" +- reg: physical base address of the controller and length of memory mapped + region. +- interrupts: Two interrupt numbers to the cpu should be specified. First + interrupt number is the rtc tick interrupt and second interrupt number + is the rtc alarm interrupt. The number of cells representing a interrupt + depends on the parent interrupt controller. + +Example: + + rtc@80056000 { + compatible = "fsl,stmp3xxx-rtc"; + reg = <0x80056000 2000>; + interrupts = <28 29>; + };
diff --git a/arch/arm/boot/dts/imx28.dtsi b/arch/arm/boot/dts/imx28.dtsi
index cabcce8..5053019 100644
--- a/arch/arm/boot/dts/imx28.dtsi
+++ b/arch/arm/boot/dts/imx28.dtsi@@ -387,6 +387,7 @@ }; rtc@80056000 { + compatible = "fsl,imx28-rtc", "fsl,stmp3xxx-rtc"; reg = <0x80056000 2000>; interrupts = <28 29>; status = "disabled";
diff --git a/drivers/rtc/rtc-stmp3xxx.c b/drivers/rtc/rtc-stmp3xxx.c
index 1028786..3aadb58 100644
--- a/drivers/rtc/rtc-stmp3xxx.c
+++ b/drivers/rtc/rtc-stmp3xxx.c@@ -25,6 +25,7 @@ #include <linux/interrupt.h> #include <linux/rtc.h> #include <linux/slab.h> +#include <linux/of_device.h> #include <mach/common.h>
@@ -265,6 +266,11 @@ static int stmp3xxx_rtc_resume(struct platform_device *dev) #define stmp3xxx_rtc_resume NULL #endif +static const struct of_device_id rtc_dt_ids[] = { + { .compatible = "fsl,stmp3xxx-rtc", }, + { /* sentinel */ } +}; + static struct platform_driver stmp3xxx_rtcdrv = { .probe = stmp3xxx_rtc_probe, .remove = stmp3xxx_rtc_remove,
@@ -273,6 +279,7 @@ static struct platform_driver stmp3xxx_rtcdrv = { .driver = { .name = "stmp3xxx-rtc", .owner = THIS_MODULE, + .of_match_table = rtc_dt_ids, }, };
--
1.7.10