From mboxrd@z Thu Jan 1 00:00:00 1970 From: khilman@ti.com (Kevin Hilman) Date: Tue, 27 Sep 2011 09:22:54 -0700 Subject: [PATCH v7 00/26] gpio/omap: driver cleanup and fixes In-Reply-To: (Tarun Kanti DebBarma's message of "Tue, 27 Sep 2011 20:01:23 +0530") References: <1315918979-26173-1-git-send-email-tarun.kanti@ti.com> <87mxdwm8pk.fsf@ti.com> <4E7D99CB.7090004@ti.com> <8739fi99yq.fsf@ti.com> Message-ID: <87wrcu2bvl.fsf@ti.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org "DebBarma, Tarun Kanti" writes: > On Tue, Sep 27, 2011 at 4:40 AM, Kevin Hilman wrote: >> "DebBarma, Tarun Kanti" writes: >> >> [...] >> >>> As pointed out by Kevin, debounce clock was not getting disabled. >>> In my testing I was somehow grepping CORE power domain instead >>> of PER power domain and hence missed it. The fix for the debounce >>> clock issue is at the end of the email. >>> >>> - Have re-based the for_3.2/gpio-cleanup branch against 3.1-rc6. >>> - Dropped [PATCH 26/26] gpio/omap: add dbclk aliases for all gpio modules >>> as suggested by Kevin since it's already taken care by hwmod. >>> - Added the debounce clock fix in the end. >> >> That debounce fix definitely makes things look better, but it's not >> solving the problem... >> >>> With above, PER is hitting low power state in Suspend and Idle path. >>> >>> Have pushed a branch at below URL with mentioned changes. >>> git://gitorious.org/omap-sw-develoment/linux-omap-dev.git >>> for_3.2/kevin/gpio-cleanup >> >> I tested your branch on my 3430/n900 and PER is still not hitting >> retention. ?Setting all debounce values in the board file to zero using >> the patch below[1] makes PER hit retention again. >> >> Assuming you don't have an n900 to test with, I suggest you just copy >> the GPIO keys init from board-rx51-peripherals.c (or some of it) into >> the board file you are testing with. >> >> The problem is most likely be related to having more than one GPIO in a >> bank with debounce enabled, or more than one bank with GPIOs enabled and >> your current test is not be catching it. >> > As per commit c8c9fda506945 {OMAP: PM: disable idle on suspend for > GPIO and UART}, the gpio code needs to be fixed once GPIO driver is > run-time adapted. Great, good catch. > So I did below change as per the commit and now suspend is working > fine even with board files change for debounce functionality. So the > last series + below one line change is whats needed for suspend to > work. Can you please see if this does help on your board ? Yeah, with your patch, PER is hitting retention in suspend on my 3430/n900. > I am not finished my idle testing yet but just reporting the suspend > results. For me, PER is not hitting retention on idle. Also, your repost of v7 doesn't included any of the comments I made on it yesterday. Kevin