@@ -1248,11 +1248,40 @@
rtc: rtc@48838000 {
compatible = "ti,am3352-rtc";
- reg = <0x48838000 0x100>;
+ reg = <0x48838000 0x98>;
interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>;
ti,hwmods = "rtcss";
clocks = <&sys_32k_ck>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges;
+
+ rtc_pmx: pinmux@48838098 {
+ compatible = "pinctrl-single";
+ reg = <0x48838098 0x8>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ pinctrl-single,register-width = <32>;
+ pinctrl-single,function-mask = <0x007fffff>;
+
+ pinctrl-names = "default"/*, "sleep"*/;
+ pinctrl-0 = <&rtc_default>;
+/* pinctrl-1 = <&rtc_sleep>;*/
+
+ rtc_default: rtc_default {
+ pinctrl-single,pins = <
+ 0x0 0x000B0111
+ 0x4 0x00000004
+ >;
+ };
+/* rtc_sleep: rtc_sleep {
+ pinctrl-single,pins = <
+ 0x0 0x00000000
+ 0x4 0x00000000
+ >;
+ };*/
+ };
};
/* OCP2SCP1 */
@@ -428,8 +428,10 @@ static void omap_rtc_power_off(void)
rtc->type->unlock(rtc);
/* enable pmic_power_en control */
+/*
val = rtc_readl(rtc, OMAP_RTC_PMIC_REG);
rtc_writel(rtc, OMAP_RTC_PMIC_REG, val | OMAP_RTC_PMIC_POWER_EN_EN);
+*/
/* set alarm two seconds from now */
omap_rtc_read_time_raw(rtc, &tm);
@@ -650,6 +652,8 @@ static int omap_rtc_probe(struct platform_device *pdev)
reg | OMAP_RTC_OSC_SEL_32KCLK_SRC);
}
+ of_platform_populate(pdev->dev.of_node, NULL, NULL, &pdev->dev);
+
rtc->type->lock(rtc);
device_init_wakeup(&pdev->dev, true);