[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87sjfhmjit.fsf@ti.com>
Date: Thu, 03 May 2012 07:22:34 -0700
From: Kevin Hilman <khilman@...com>
To: "Bedia\, Vaibhav" <vaibhav.bedia@...com>
Cc: "Mark A. Greer" <mgreer@...malcreek.com>,
"netdev\@vger.kernel.org" <netdev@...r.kernel.org>,
"linux-omap\@vger.kernel.org" <linux-omap@...r.kernel.org>,
"linux-arm-kernel\@lists.infradead.org"
<linux-arm-kernel@...ts.infradead.org>
Subject: Re: [PATCH] net: davinci_emac: Add pre_open, post_stop platform callbacks
"Bedia, Vaibhav" <vaibhav.bedia@...com> writes:
> On Thu, May 03, 2012 at 05:17:18, Mark A. Greer wrote:
>> From: "Mark A. Greer" <mgreer@...malcreek.com>
>>
>> The davinci EMAC driver has been incorporated into the am35x
>> family of SoC's which is OMAP-based. The incorporation is
>> incomplete in that the EMAC cannot unblock the [ARM] core if
>> its blocked on a 'wfi' instruction. This is an issue with
>> the cpu_idle code because it has the core execute a 'wfi'
>> instruction.
>>
>> To work around this issue, add platform data callbacks which
>> are called at the beginning of the open routine and at the
>> end of the stop routine of the davinci_emac driver. The
>> callbacks allow the platform code to issue disable_hlt() and
>> enable_hlt() calls appropriately. Calling disable_hlt()
>> prevents cpu_idle from issuing the 'wfi' instruction.
>>
>> It is not sufficient to simply call disable_hlt() when
>> there is an EMAC present because it could be present but
>> not actually used in which case, we do want the 'wfi' to
>> be executed.
>>
>
> Are you trying to say that if ARM executes _just_ wfi and _absolutely
> nothing else_ is done in the OMAP PM code, EMAC stops working?
>
> However, if this is indeed the case, then probably a better solution would be
> to invoke disable_hlt() from the board file when EMAC support is compiled in.
No. As Mark stated in the changelog, doing that will prevent any
low-power states states even if the EMAC is not in use. IMO, it is best
to only prevent WFI when absolutely needed.
Kevin
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists