Message ID | 1369982005-8572-2-git-send-email-gururaja.hebbar@ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi Gururaja, Thanks for the patch. On Fri, May 31, 2013 at 12:03 PM, Hebbar Gururaja <gururaja.hebbar@ti.com> wrote: > Even though RTC-IP is wakeup capable, Not all Boards support it. > > For example > The rtc alarm wakeup is available in rtc-ip since omap1 days but alarm > was not wired properly in previous ompa1 boards. > [snip] > > +Optional properties: > +- ti,wakeup_capable: Inform the rtc driver that this module is wake-up For devicetree properties '-' is preferred over '_'. Regards, --Prabhakar Lad
On Fri, May 31, 2013 at 12:14:44, Prabhakar Lad wrote: > Hi Gururaja, > > Thanks for the patch. > > On Fri, May 31, 2013 at 12:03 PM, Hebbar Gururaja > <gururaja.hebbar@ti.com> wrote: > > Even though RTC-IP is wakeup capable, Not all Boards support it. > > > > For example > > The rtc alarm wakeup is available in rtc-ip since omap1 days but alarm > > was not wired properly in previous ompa1 boards. > > > [snip] > > > > +Optional properties: > > +- ti,wakeup_capable: Inform the rtc driver that this module is wake-up > For devicetree properties '-' is preferred over '_'. Thanks for the review. I will make the correction. But will wait for some more time (so others can review) and then send V2 > > Regards, > --Prabhakar Lad > Regards, Gururaja
Hebbar Gururaja <gururaja.hebbar@ti.com> writes: > Even though RTC-IP is wakeup capable, Not all Boards support it. > > For example > The rtc alarm wakeup is available in rtc-ip since omap1 days but alarm > was not wired properly in previous ompa1 boards. > > commit fa5b07820fe3a0fc06ac368516e71f10a59b9539 > Author: Sekhar Nori <nsekhar@ti.com> > Date: Wed Oct 27 15:33:05 2010 -0700 > > rtc: omap: let device wakeup capability be configured from chip > init logic > > The rtc-omap driver currently hardcodes the RTC wakeup > capability to be "not capable". While this seems to be true for > existing OMAP1 boards which are not wired for this, the > DA850/OMAP-L138 SoC, the RTC can always be wake up source from > its "deep sleep" mode. > > Current rtc-omap driver expects the rtc module wake-up capabilities to > be set up by board specific code. However, in case of DT, this is not > possible. > > So, add a DT property "ti,wakeup_capable" to indicate that the module is > wake-up capable. Why is this a TI-specific property? Also, I think we can do this without a new DT property.Did you see this patch from Tony which is already queued for v3.11: http://marc.info/?l=linux-omap&m=136917244530612&w=2 I think this is the right way to go. Platforms that don't want/need wakeup support can disable it from userspace via: echo disabled > /sys/devices/.../power/wakeup Kevin
On Fri, May 31, 2013 at 23:18:03, Kevin Hilman wrote: > Hebbar Gururaja <gururaja.hebbar@ti.com> writes: > > > Even though RTC-IP is wakeup capable, Not all Boards support it. > > > > For example > > The rtc alarm wakeup is available in rtc-ip since omap1 days but alarm > > was not wired properly in previous ompa1 boards. > > > > commit fa5b07820fe3a0fc06ac368516e71f10a59b9539 > > Author: Sekhar Nori <nsekhar@ti.com> > > Date: Wed Oct 27 15:33:05 2010 -0700 > > > > rtc: omap: let device wakeup capability be configured from chip > > init logic > > > > The rtc-omap driver currently hardcodes the RTC wakeup > > capability to be "not capable". While this seems to be true for > > existing OMAP1 boards which are not wired for this, the > > DA850/OMAP-L138 SoC, the RTC can always be wake up source from > > its "deep sleep" mode. > > > > Current rtc-omap driver expects the rtc module wake-up capabilities to > > be set up by board specific code. However, in case of DT, this is not > > possible. > > > > So, add a DT property "ti,wakeup_capable" to indicate that the module is > > wake-up capable. > > Why is this a TI-specific property? May be I am wrong but isn't this driver used only be TI SoC (Davinci, OMAP ...) > > Also, I think we can do this without a new DT property.Did you see this > patch from Tony which is already queued for v3.11: > > http://marc.info/?l=linux-omap&m=136917244530612&w=2 AFAIK, all boards that use twl rtc IP by default support rtc wakeup. However, as mentioned in the commit message not all boards that uses OMAP rtc IP supports rtc wake up (due to somoe wiring issue). Hence I am adding a new DT property for this. > > I think this is the right way to go. Platforms that don't want/need > wakeup support can disable it from userspace via: > > echo disabled > /sys/devices/.../power/wakeup Hmmm. Debatable. Let me get some more info about this and come back > > Kevin > > Regards, Gururaja
diff --git a/Documentation/devicetree/bindings/rtc/rtc-omap.txt b/Documentation/devicetree/bindings/rtc/rtc-omap.txt index b47aa41..108a629 100644 --- a/Documentation/devicetree/bindings/rtc/rtc-omap.txt +++ b/Documentation/devicetree/bindings/rtc/rtc-omap.txt @@ -6,6 +6,10 @@ Required properties: - interrupts: rtc timer, alarm interrupts in order - interrupt-parent: phandle for the interrupt controller +Optional properties: +- ti,wakeup_capable: Inform the rtc driver that this module is wake-up + capable so that rtcwake and suspend tests can work. + Example: rtc@1c23000 { diff --git a/drivers/rtc/rtc-omap.c b/drivers/rtc/rtc-omap.c index b0ba3fc..000a02f 100644 --- a/drivers/rtc/rtc-omap.c +++ b/drivers/rtc/rtc-omap.c @@ -423,6 +423,11 @@ static int __init omap_rtc_probe(struct platform_device *pdev) * is write-only, and always reads as zero...) */ + /* Fixup wakeup-enable feature based on the device tree */ + if (of_id && of_find_property(pdev->dev.of_node, + "ti,wakeup_capable", NULL)) + device_init_wakeup(&pdev->dev, 1); + if (new_ctrl & (u8) OMAP_RTC_CTRL_SPLIT) pr_info("%s: split power mode\n", pdev->name);
Even though RTC-IP is wakeup capable, Not all Boards support it. For example The rtc alarm wakeup is available in rtc-ip since omap1 days but alarm was not wired properly in previous ompa1 boards. commit fa5b07820fe3a0fc06ac368516e71f10a59b9539 Author: Sekhar Nori <nsekhar@ti.com> Date: Wed Oct 27 15:33:05 2010 -0700 rtc: omap: let device wakeup capability be configured from chip init logic The rtc-omap driver currently hardcodes the RTC wakeup capability to be "not capable". While this seems to be true for existing OMAP1 boards which are not wired for this, the DA850/OMAP-L138 SoC, the RTC can always be wake up source from its "deep sleep" mode. Current rtc-omap driver expects the rtc module wake-up capabilities to be set up by board specific code. However, in case of DT, this is not possible. So, add a DT property "ti,wakeup_capable" to indicate that the module is wake-up capable. Signed-off-by: Hebbar Gururaja <gururaja.hebbar@ti.com> --- :100644 100644 b47aa41... 108a629... M Documentation/devicetree/bindings/rtc/rtc-omap.txt :100644 100644 b0ba3fc... 000a02f... M drivers/rtc/rtc-omap.c Documentation/devicetree/bindings/rtc/rtc-omap.txt | 4 ++++ drivers/rtc/rtc-omap.c | 5 +++++ 2 files changed, 9 insertions(+)