[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190321084420.GG3622@lahna.fi.intel.com>
Date: Thu, 21 Mar 2019 10:44:20 +0200
From: Mika Westerberg <mika.westerberg@...ux.intel.com>
To: zhuchangchun <zhuchangchun@...e.com>
Cc: andriy.shevchenko@...ux.intel.com, linus.walleij@...aro.org,
linux-gpio@...r.kernel.org, linux-kernel@...r.kernel.org,
hendychu@...yun.com
Subject: Re: [PATCH] pinctrl: intel: Implements gpio free function
On Thu, Mar 21, 2019 at 10:35:24AM +0800, zhuchangchun wrote:
> When we use the gpio to control some peripheral devices,and try to
> export the gpio first,then unexport the gpio, we test the signal with
> oscilloscope,and find the signal can't meet the requirements,because
> after we unexported the gpio,the gpio's register(tx and rx)value can't
> be recovered,and this will infruence the device work flow.
After you unexport GPIO it can go back to any previous mode it was. If
you need to use it as GPIO then why unexport it in the first place?
> We check the gpio's unexport code work flow, then find the gpio's free
> hook function has not been implemented, After we add pinmux_ops' free
> function to set exported gpio to recover its original value,the problem
> is fixed.
I don't think this is what ->free callback should do (assuming we decide
to implement it since we don't implement ->release either). It is
supposed to reverse effects of ->request which is what it currently does ;-)
Powered by blists - more mailing lists