<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>i.MX ProcessorsのトピックRe: Making Battery charger gpio as Wakeup-Source</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749374#M116600</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;A _jive_internal="true" data-content-finding="Community" data-userid="206296" data-username="igorpadykov" href="https://community.nxp.com/people/igorpadykov"&gt;Hi&amp;nbsp; igorpadykov ,&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I have gone through the files mentioned by you, but I did'nt get any helpful info. is there any reference where as gpio is made as wakeup-source? except power-button it comes under gpio-keys. So what is the syntax to make gpio [like in my case battery-charger gpio ] as a wakeup-source. i have handled it properly in driver as well as dts file.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Issue is it triggers the interrupts tries to wakeup the device but goes to suspend again. following are the logs&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;Suspend log&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;-------------------------&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;PM: suspend entry 1970-01-01 01:30:08.910751001 UTC&lt;BR /&gt;PM: Syncing filesystems ... done.&lt;BR /&gt;Freezing user space processes ... PM: Wakeup pending, aborting suspend&lt;BR /&gt;last active wakeup source: PowerManagerService.Broadcasts&lt;BR /&gt;Freezing of tasks aborted after 0.009 seconds&lt;BR /&gt;Restarting tasks ... done.&lt;BR /&gt;PM: suspend exit 1970-01-01 01:30:09.012628001 UTC&lt;BR /&gt;PM: suspend entry 1970-01-01 01:30:09.117321668 UTC&lt;BR /&gt;PM: Syncing filesystems ... done.&lt;BR /&gt;Freezing user space processes ... (elapsed 0.002 seconds) done.&lt;BR /&gt;Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.&lt;BR /&gt;Suspending console(s) (use no_console_suspend to debug)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;STRONG&gt;Resume log&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;-------------------------------------------&lt;BR /&gt;PM: suspend of devices complete after 100.328 msecs&lt;BR /&gt;PM: suspend devices took 0.100 seconds&lt;BR /&gt;PM: late suspend of devices complete after 1.085 msecs&lt;BR /&gt;PM: noirq suspend of devices complete after 1.118 msecs&lt;BR /&gt;Disabling non-boot CPUs ...&lt;BR /&gt;CPU1: shutdown&lt;BR /&gt;CPU0: update max cpu_capacity 1024&lt;BR /&gt;CPU2: shutdown&lt;BR /&gt;CPU0: update max cpu_capacity 1024&lt;BR /&gt;CPU3: shutdown&lt;BR /&gt;Resume caused by IRQ 101&lt;BR /&gt;Enabling non-boot CPUs ...&lt;BR /&gt;CPU1 is up&lt;BR /&gt;CPU0: update max cpu_capacity 1024&lt;BR /&gt;CPU2 is up&lt;BR /&gt;CPU2: update max cpu_capacity 1024&lt;BR /&gt;CPU3 is up&lt;BR /&gt;PM: noirq resume of devices complete after 0.920 msecs&lt;BR /&gt;PM: early resume of devices complete after 0.654 msecs&lt;BR /&gt;CPU3: update max cpu_capacity 1024&lt;BR /&gt;Suspended for 10.259 seconds&lt;BR /&gt;PM: resume of devices complete after 78.949 msecs&lt;BR /&gt;PM: resume devices took 0.080 seconds&lt;BR /&gt;Restarting tasks ... done.&lt;BR /&gt;PM: suspend exit 1970-01-01 01:30:20.152607667 UTC&lt;BR /&gt;PM: suspend entry 1970-01-01 01:30:20.257315667 UTC&lt;BR /&gt;PM: Syncing filesystems ... done.&lt;BR /&gt;Freezing user space processes ... (elapsed 0.002 seconds) done.&lt;BR /&gt;Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.&lt;BR /&gt;Suspending console(s) (use no_console_suspend to debug)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;So device goes back to sleep mode...&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 13 Mar 2018 10:59:23 GMT</pubDate>
    <dc:creator>prasannakulkarni</dc:creator>
    <dc:date>2018-03-13T10:59:23Z</dc:date>
    <item>
      <title>Making Battery charger gpio as Wakeup-Source</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749372#M116598</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I am facing a issue in setting battery charger gpio as wakeup-source on imx6q-sabresd Android naugat. following are the code snapshots.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;In fuel-Gauge driver : we are using max17040_battery.c file and adopted the same features from sabresd_battery.c driver. &lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;related code has been added in the suspend and resume routines.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#ifdef CONFIG_PM_SLEEP&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static int max17040_suspend(struct device *dev)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; struct i2c_client *client = to_i2c_client(dev);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; struct max17040_chip *chip = i2c_get_clientdata(client);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int irq,error;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(device_may_wakeup(&amp;amp;client-&amp;gt;dev))&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printk("Inside3__suspend__ ===============&amp;gt; %s \n", __func__);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; irq = gpio_to_irq(max17040_get_gpio(chip-&amp;gt;client));&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; error = enable_irq_wake(irq);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cancel_delayed_work(&amp;amp;chip-&amp;gt;work);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static int max17040_resume(struct device *dev)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; struct i2c_client *client = to_i2c_client(dev);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; struct max17040_chip *chip = i2c_get_clientdata(client);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int irq,error;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printk("Inside1__resume__ ===============&amp;gt; %s \n", __func__);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(device_may_wakeup(&amp;amp;client-&amp;gt;dev))&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printk("Inside2 __resume__ ===============&amp;gt; %s \n", __func__);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; irq = gpio_to_irq(max17040_get_gpio(chip-&amp;gt;client));&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; error = disable_irq_wake(irq);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; queue_delayed_work(system_power_efficient_wq, &amp;amp;chip-&amp;gt;work,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MAX17040_DELAY);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static SIMPLE_DEV_PM_OPS(max17040_pm_ops, max17040_suspend, max17040_resume);&lt;/P&gt;&lt;P&gt;-------------------------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Code from DTS file&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; battery: max17040@36 {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; compatible = "maxim,max17040";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pinctrl-names = "default";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; reg = &amp;lt;0x36&amp;gt;;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; chg_input = &amp;lt;&amp;amp;gpio2 24 1&amp;gt;;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; wakeup-source;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fsl,dcm_always_high;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fsl,dc_valid;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fsl,usb_valid;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fsl,adc_disable;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; status = "okay";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; };&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The issue is interrupts are getting generated properly when I insert/remove the charger, but device is not waking up.&lt;/P&gt;&lt;P&gt;it tries to resume for a while but goes to suspend immediately. I have put prints also in the suspend and resume routines they are getting printed during resume/suspend (via Power button).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have checked the sysfs path sys/class/power_supply/max17040-ac/power/wakeup it shows "enabled".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But it is not wakingup the device. kindly help me in solving this issue.&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Mar 2018 09:50:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749372#M116598</guid>
      <dc:creator>prasannakulkarni</dc:creator>
      <dc:date>2018-03-12T09:50:54Z</dc:date>
    </item>
    <item>
      <title>Re: Making Battery charger gpio as Wakeup-Source</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749373#M116599</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Prasanna&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;gpio interrupt usage is documented in&amp;nbsp; &lt;BR /&gt;linux/Documentation/devicetree/bindings/input/gpio-keys.txt&lt;/P&gt;&lt;P&gt;and one can try to test gpio wake using dts example in&lt;/P&gt;&lt;P&gt;linux/arch/arm/boot/dts/imx6q-pop-arm2.dts&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="http://git.freescale.com/git/cgit.cgi/imx/linux-imx.git/tree/arch/arm/boot/dts/imx6q-pop-arm2.dts?h=imx_4.1.15_2.0.0_ga&amp;amp;id=rel_imx_4.1.15_2.0.0_ga" title="http://git.freescale.com/git/cgit.cgi/imx/linux-imx.git/tree/arch/arm/boot/dts/imx6q-pop-arm2.dts?h=imx_4.1.15_2.0.0_ga&amp;amp;id=rel_imx_4.1.15_2.0.0_ga"&gt;linux-imx.git - i.MX Linux Kernel&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Mar 2018 06:53:20 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749373#M116599</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2018-03-13T06:53:20Z</dc:date>
    </item>
    <item>
      <title>Re: Making Battery charger gpio as Wakeup-Source</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749374#M116600</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;A _jive_internal="true" data-content-finding="Community" data-userid="206296" data-username="igorpadykov" href="https://community.nxp.com/people/igorpadykov"&gt;Hi&amp;nbsp; igorpadykov ,&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I have gone through the files mentioned by you, but I did'nt get any helpful info. is there any reference where as gpio is made as wakeup-source? except power-button it comes under gpio-keys. So what is the syntax to make gpio [like in my case battery-charger gpio ] as a wakeup-source. i have handled it properly in driver as well as dts file.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Issue is it triggers the interrupts tries to wakeup the device but goes to suspend again. following are the logs&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;Suspend log&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;-------------------------&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;PM: suspend entry 1970-01-01 01:30:08.910751001 UTC&lt;BR /&gt;PM: Syncing filesystems ... done.&lt;BR /&gt;Freezing user space processes ... PM: Wakeup pending, aborting suspend&lt;BR /&gt;last active wakeup source: PowerManagerService.Broadcasts&lt;BR /&gt;Freezing of tasks aborted after 0.009 seconds&lt;BR /&gt;Restarting tasks ... done.&lt;BR /&gt;PM: suspend exit 1970-01-01 01:30:09.012628001 UTC&lt;BR /&gt;PM: suspend entry 1970-01-01 01:30:09.117321668 UTC&lt;BR /&gt;PM: Syncing filesystems ... done.&lt;BR /&gt;Freezing user space processes ... (elapsed 0.002 seconds) done.&lt;BR /&gt;Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.&lt;BR /&gt;Suspending console(s) (use no_console_suspend to debug)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;STRONG&gt;Resume log&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;-------------------------------------------&lt;BR /&gt;PM: suspend of devices complete after 100.328 msecs&lt;BR /&gt;PM: suspend devices took 0.100 seconds&lt;BR /&gt;PM: late suspend of devices complete after 1.085 msecs&lt;BR /&gt;PM: noirq suspend of devices complete after 1.118 msecs&lt;BR /&gt;Disabling non-boot CPUs ...&lt;BR /&gt;CPU1: shutdown&lt;BR /&gt;CPU0: update max cpu_capacity 1024&lt;BR /&gt;CPU2: shutdown&lt;BR /&gt;CPU0: update max cpu_capacity 1024&lt;BR /&gt;CPU3: shutdown&lt;BR /&gt;Resume caused by IRQ 101&lt;BR /&gt;Enabling non-boot CPUs ...&lt;BR /&gt;CPU1 is up&lt;BR /&gt;CPU0: update max cpu_capacity 1024&lt;BR /&gt;CPU2 is up&lt;BR /&gt;CPU2: update max cpu_capacity 1024&lt;BR /&gt;CPU3 is up&lt;BR /&gt;PM: noirq resume of devices complete after 0.920 msecs&lt;BR /&gt;PM: early resume of devices complete after 0.654 msecs&lt;BR /&gt;CPU3: update max cpu_capacity 1024&lt;BR /&gt;Suspended for 10.259 seconds&lt;BR /&gt;PM: resume of devices complete after 78.949 msecs&lt;BR /&gt;PM: resume devices took 0.080 seconds&lt;BR /&gt;Restarting tasks ... done.&lt;BR /&gt;PM: suspend exit 1970-01-01 01:30:20.152607667 UTC&lt;BR /&gt;PM: suspend entry 1970-01-01 01:30:20.257315667 UTC&lt;BR /&gt;PM: Syncing filesystems ... done.&lt;BR /&gt;Freezing user space processes ... (elapsed 0.002 seconds) done.&lt;BR /&gt;Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.&lt;BR /&gt;Suspending console(s) (use no_console_suspend to debug)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;So device goes back to sleep mode...&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Mar 2018 10:59:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749374#M116600</guid>
      <dc:creator>prasannakulkarni</dc:creator>
      <dc:date>2018-03-13T10:59:23Z</dc:date>
    </item>
    <item>
      <title>Re: Making Battery charger gpio as Wakeup-Source</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749375#M116601</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Prasanna&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;yes there is &lt;SPAN class=""&gt;reference where as gpio is made as wakeup-source:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;gpios = &amp;lt;&amp;amp;gpio3 30 1&amp;gt;;&lt;BR /&gt;linux,code = &amp;lt;116&amp;gt;;&lt;BR /&gt;gpio-key,wakeup;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;linux/arch/arm/boot/dts/imx6q-pop-arm2.dts&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;A class="link-titled" href="http://git.freescale.com/git/cgit.cgi/imx/linux-imx.git/tree/arch/arm/boot/dts/imx6q-pop-arm2.dts?h=imx_4.1.15_2.0.0_ga&amp;amp;id=rel_imx_4.1.15_2.0.0_ga" title="http://git.freescale.com/git/cgit.cgi/imx/linux-imx.git/tree/arch/arm/boot/dts/imx6q-pop-arm2.dts?h=imx_4.1.15_2.0.0_ga&amp;amp;id=rel_imx_4.1.15_2.0.0_ga"&gt;linux-imx.git - i.MX Linux Kernel&lt;/A&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;Best regards&lt;BR /&gt;igor&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Mar 2018 11:35:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749375#M116601</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2018-03-13T11:35:19Z</dc:date>
    </item>
    <item>
      <title>Re: Making Battery charger gpio as Wakeup-Source</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749376#M116602</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;STRONG class=""&gt;&lt;SPAN class=""&gt;Hi igorpadykov,&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class=""&gt;linux/arch/arm/boot/dts/imx6q-pop-arm2.dts reference did'nt help me. atleast with my following config, it is creating interrupts and try to resume. With arm2.dts config. there are&amp;nbsp; no symptoms of interrupts and the device will not respond for charger insertion.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;battery: max17040@36 {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; compatible = "maxim,max17040";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pinctrl-names = "default";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; reg = &amp;lt;0x36&amp;gt;;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; chg_input = &amp;lt;&amp;amp;gpio2 24 1&amp;gt;;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; wakeup-source;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fsl,dcm_always_high;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fsl,dc_valid;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fsl,usb_valid;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fsl,adc_disable;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; status = "okay";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; };&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 14 Mar 2018 04:41:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749376#M116602</guid>
      <dc:creator>prasannakulkarni</dc:creator>
      <dc:date>2018-03-14T04:41:33Z</dc:date>
    </item>
    <item>
      <title>Re: Making Battery charger gpio as Wakeup-Source</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749377#M116603</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Prasanna&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;could you try with linux:&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/thread/400033"&gt;wake up from sleep on gpio interrupt&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 14 Mar 2018 07:13:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749377#M116603</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2018-03-14T07:13:11Z</dc:date>
    </item>
    <item>
      <title>Re: Making Battery charger gpio as Wakeup-Source</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749378#M116604</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;A _jive_internal="true" class="" data-content-finding="Community" data-userid="206296" data-username="igorpadykov" href="https://community.nxp.com/people/igorpadykov"&gt;Hi igorpadykov,&lt;/A&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp;&amp;nbsp; All those links talks about gpio-keys like Power-Button, Volume-up/Down.&amp;nbsp; In my case it is different. It is a simple gpio not a gpio-key.&amp;nbsp; The moment if I insert the battery charger [AC] device should wakeup from suspend.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 14 Mar 2018 09:13:37 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749378#M116604</guid>
      <dc:creator>prasannakulkarni</dc:creator>
      <dc:date>2018-03-14T09:13:37Z</dc:date>
    </item>
    <item>
      <title>Re: Making Battery charger gpio as Wakeup-Source</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749379#M116605</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;please check linux/Documentation/devicetree/bindings/input/ for available wake&lt;/P&gt;&lt;P&gt;choices: there is no "&lt;SPAN class=""&gt;simple gpio&lt;/SPAN&gt;".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 14 Mar 2018 09:59:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749379#M116605</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2018-03-14T09:59:58Z</dc:date>
    </item>
    <item>
      <title>Re: Making Battery charger gpio as Wakeup-Source</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749380#M116606</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;from documentation seems only "&lt;SPAN class=""&gt;gpio-key&lt;/SPAN&gt;" supports wake.&lt;/P&gt;&lt;P&gt;You can also post this issue on kernel mail list:&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="http://vger.kernel.org/vger-lists.html#devicetree" title="http://vger.kernel.org/vger-lists.html#devicetree"&gt;Majordomo Lists at VGER.KERNEL.ORG&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 14 Mar 2018 11:25:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749380#M116606</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2018-03-14T11:25:59Z</dc:date>
    </item>
    <item>
      <title>Re: Making Battery charger gpio as Wakeup-Source</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749381#M116607</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi igorpadykov,&lt;/P&gt;&lt;P&gt;&amp;nbsp;If that is the case then in drivers/power/supply/sabresd_battery.c file why following code is written in suspend and resume functions&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static int max8903_suspend(struct platform_device *pdev,&lt;BR /&gt; pm_message_t state)&lt;BR /&gt;{&lt;BR /&gt; struct max8903_data *data = platform_get_drvdata(pdev);&lt;BR /&gt; int irq;&lt;BR /&gt; if (data) {&lt;BR /&gt; struct max8903_pdata *pdata = data-&amp;gt;pdata;&lt;BR /&gt; if (pdata) {&lt;BR /&gt; if (pdata-&amp;gt;dc_valid) {&lt;BR /&gt; irq = gpio_to_irq(pdata-&amp;gt;dok);&lt;BR /&gt; &lt;STRONG&gt;enable_irq_wake&lt;/STRONG&gt;(irq);&lt;BR /&gt; }&lt;BR /&gt; if (pdata-&amp;gt;usb_valid) {&lt;BR /&gt; irq = gpio_to_irq(pdata-&amp;gt;uok);&lt;BR /&gt; &lt;STRONG&gt;enable_irq_wake&lt;/STRONG&gt;(irq);&lt;BR /&gt; }&lt;BR /&gt; cancel_delayed_work(&amp;amp;data-&amp;gt;work);&lt;BR /&gt; }&lt;BR /&gt; }&lt;BR /&gt; return 0;&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;static int max8903_resume(struct platform_device *pdev)&lt;BR /&gt;{&lt;BR /&gt; struct max8903_data *data = platform_get_drvdata(pdev);&lt;BR /&gt; bool ta_in;&lt;BR /&gt; bool usb_in;&lt;BR /&gt; int irq;&lt;BR /&gt; if (data) {&lt;BR /&gt; struct max8903_pdata *pdata = data-&amp;gt;pdata;&lt;BR /&gt; if (pdata) {&lt;BR /&gt; ta_in = gpio_get_value(pdata-&amp;gt;dok) ? false : true;&lt;BR /&gt; usb_in = gpio_get_value(pdata-&amp;gt;uok) ? false : true;&lt;BR /&gt; if (ta_in != data-&amp;gt;ta_in) {&lt;BR /&gt; data-&amp;gt;ta_in = ta_in;&lt;BR /&gt; pr_info("TA(DC-IN) Charger %s.\n", ta_in ?&lt;BR /&gt; "Connected" : "Disconnected");&lt;BR /&gt; max8903_charger_update_status(data);&lt;BR /&gt; power_supply_changed(&amp;amp;data-&amp;gt;psy);&lt;BR /&gt; }&lt;BR /&gt; if (usb_in != data-&amp;gt;usb_in) {&lt;BR /&gt; data-&amp;gt;usb_in = usb_in;&lt;BR /&gt; pr_info("USB Charger %s.\n", usb_in ?&lt;BR /&gt; "Connected" : "Disconnected");&lt;BR /&gt; max8903_charger_update_status(data);&lt;BR /&gt; power_supply_changed(&amp;amp;data-&amp;gt;usb);&lt;BR /&gt; }&lt;BR /&gt; if (pdata-&amp;gt;dc_valid) {&lt;BR /&gt; irq = gpio_to_irq(pdata-&amp;gt;dok);&lt;BR /&gt; &lt;STRONG&gt;disable_irq_wake&lt;/STRONG&gt;(irq);&lt;BR /&gt; }&lt;BR /&gt; if (pdata-&amp;gt;usb_valid) {&lt;BR /&gt; irq = gpio_to_irq(pdata-&amp;gt;uok);&lt;BR /&gt; &lt;STRONG&gt;disable_irq_wake&lt;/STRONG&gt;(irq);&lt;BR /&gt; }&lt;BR /&gt; schedule_delayed_work(&amp;amp;data-&amp;gt;work, BATTERY_UPDATE_INTERVAL);&lt;BR /&gt; }&lt;BR /&gt; }&lt;BR /&gt; return 0;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 14 Mar 2018 15:57:13 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749381#M116607</guid>
      <dc:creator>prasannakulkarni</dc:creator>
      <dc:date>2018-03-14T15:57:13Z</dc:date>
    </item>
    <item>
      <title>Re: Making Battery charger gpio as Wakeup-Source</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749382#M116608</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;in that example seems &lt;CODE&gt;dok_input = &amp;lt;&amp;amp;gpio4 13 1&amp;gt;;&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;&lt;CODE&gt;used for interrupt, please check linux/arch/arm/boot/dts/imx6sl-evk.dts&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;&lt;CODE&gt;&lt;A class="link-titled" href="http://git.freescale.com/git/cgit.cgi/imx/linux-imx.git/tree/arch/arm/boot/dts/imx6sl-evk.dts?h=imx_4.1.15_2.0.0_ga&amp;amp;id=rel_imx_4.1.15_2.0.0_ga" title="http://git.freescale.com/git/cgit.cgi/imx/linux-imx.git/tree/arch/arm/boot/dts/imx6sl-evk.dts?h=imx_4.1.15_2.0.0_ga&amp;amp;id=rel_imx_4.1.15_2.0.0_ga"&gt;linux-imx.git - i.MX Linux Kernel&lt;/A&gt;&amp;nbsp;&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 15 Mar 2018 05:55:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749382#M116608</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2018-03-15T05:55:01Z</dc:date>
    </item>
    <item>
      <title>Re: Making Battery charger gpio as Wakeup-Source</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749383#M116609</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;STRONG class=""&gt;&lt;SPAN class=""&gt;Hi igorpadykov,&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG class=""&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;I have seen that dts file.&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;battery: max8903@0 { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;compatible = "fsl,max8903-charger"; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pinctrl-names = "default"; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;STRONG&gt;dok_input = &amp;lt;&amp;amp;gpio4 13 1&amp;gt;;&lt;/STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;uok_input = &amp;lt;&amp;amp;gpio4 13 1&amp;gt;;&lt;/STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chg_input = &amp;lt;&amp;amp;gpio4 15 1&amp;gt;; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;flt_input = &amp;lt;&amp;amp;gpio4 14 1&amp;gt;; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;fsl,dcm_always_high; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;fsl,dc_valid; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;fsl,adc_disable; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;status = "okay"; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp;&amp;nbsp; No where they have made it as wakeup-source in this dts file. I also implemented in the same way in max17040_battery.c file the gpio is requested as IRQ interrupt.&amp;nbsp; In the previous reply I have given snapshot of max17040_battery.c suspend and resume routines and our imx6qdl_sabresd.dts files. I don't find any difference between my implementation and sabresd_battery.c code.&lt;STRONG&gt; in fact&lt;/STRONG&gt; in my dts I have mentioned wake-source for chg_input gpio which is not there in&amp;nbsp;&lt;A href="http://git.freescale.com/git/cgit.cgi/imx/linux-imx.git/tree/arch/arm/boot/dts/imx6sl-evk.dts?h=imx_4.1.15_2.0.0_ga&amp;amp;id=rel_imx_4.1.15_2.0.0_ga" rel="nofollow noopener noreferrer" target="_blank"&gt;imx6sl-evk.dts&lt;/A&gt;. &lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 15 Mar 2018 06:51:48 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749383#M116609</guid>
      <dc:creator>prasannakulkarni</dc:creator>
      <dc:date>2018-03-15T06:51:48Z</dc:date>
    </item>
    <item>
      <title>Re: Making Battery charger gpio as Wakeup-Source</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749384#M116610</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I am facing the similar issue. whether you are able to wake the system using gpio interrupt. If so please share the procedure.&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Sharmila&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 24 Oct 2019 04:54:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749384#M116610</guid>
      <dc:creator>sharmila_devada</dc:creator>
      <dc:date>2019-10-24T04:54:19Z</dc:date>
    </item>
    <item>
      <title>Re: Making Battery charger gpio as Wakeup-Source</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749385#M116611</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;No.... it didnt work for me.&lt;/P&gt;&lt;P&gt;partially it tries to wakeup then goes for suspend. some bug may be&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Nov 2019 11:09:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749385#M116611</guid>
      <dc:creator>prasannakulkarni</dc:creator>
      <dc:date>2019-11-06T11:09:35Z</dc:date>
    </item>
    <item>
      <title>Re: Making Battery charger gpio as Wakeup-Source</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749386#M116612</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV class=""&gt;&lt;P&gt;No.... it didnt work for me.&lt;/P&gt;&lt;P&gt;partially it tries to wakeup then goes for suspend. some bug may be&lt;/P&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Nov 2019 11:23:10 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Making-Battery-charger-gpio-as-Wakeup-Source/m-p/749386#M116612</guid>
      <dc:creator>prasannakulkarni</dc:creator>
      <dc:date>2019-11-06T11:23:10Z</dc:date>
    </item>
  </channel>
</rss>

