From: David Lechner <david@lechnology.com>
To: Bin Liu <b-liu@ti.com>,
petr@barix.com, sergei.shtylyov@cogentembedded.com,
khilman@kernel.org, nsekhar@ti.com,
Rob Herring <robh+dt@kernel.org>, Pawel Moll <pawel.moll@arm.com>,
Mark Rutland <mark.rutland@arm.com>,
Ian Campbell <ijc+devicetree@hellion.org.uk>,
Kumar Gala <galak@codeaurora.org>,
Kishon Vijay Abraham I <kishon@ti.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Alan Stern <stern@rowland.harvard.edu>,
Lee Jones <lee.jones@linaro.org>,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-usb@vger.kernel.org
Subject: Re: [PATCH v4 3/7] phy: Add set_mode callback
Date: Wed, 4 May 2016 13:20:36 -0500 [thread overview]
Message-ID: <572A3D74.3080907@lechnology.com> (raw)
In-Reply-To: <20160504181030.GA4327@uda0271908>
On 05/04/2016 01:10 PM, Bin Liu wrote:
> Hi,
>
> On Thu, Apr 14, 2016 at 01:35:14PM -0500, David Lechner wrote:
>> The initial use for this is for PHYs that have a mode related to USB OTG.
>> There are several SoCs (e.g. TI OMAP and DA8xx) that have a mode setting
>> in the USB PHY to override OTG VBUS and ID signals.
>>
>> Of course, the enum can be expaned in the future to include modes for
>> other types of PHYs as well.
>>
>> Suggested-by: Kishon Vijay Abraham I <kishon@ti.com>
>> Signed-off-by: David Lechner <david@lechnology.com>
>> ---
>>
>> v4 changes:
>>
>> * This is a new patch to avoid exporting a symbol from the phy-da8xx-usb driver.
>>
>>
>> drivers/phy/phy-core.c | 15 +++++++++++++++
>> include/linux/phy/phy.h | 15 +++++++++++++++
>> 2 files changed, 30 insertions(+)
>>
>> diff --git a/drivers/phy/phy-core.c b/drivers/phy/phy-core.c
>> index e7e574d..fe0344c 100644
>> --- a/drivers/phy/phy-core.c
>> +++ b/drivers/phy/phy-core.c
>> @@ -342,6 +342,21 @@ int phy_power_off(struct phy *phy)
>> }
>> EXPORT_SYMBOL_GPL(phy_power_off);
>>
>> +int phy_set_mode(struct phy *phy, enum phy_mode mode)
>> +{
>> + int ret;
>> +
>> + if (!phy || !phy->ops->set_mode)
>> + return 0;
>> +
>> + mutex_lock(&phy->mutex);
>> + ret = phy->ops->set_mode(phy, mode);
>> + mutex_unlock(&phy->mutex);
>> +
>> + return ret;
>> +}
>> +EXPORT_SYMBOL_GPL(phy_set_mode);
>
> Sorry for my late comments, have been busy on other things.
>
> As I commented in v2, isn't it a better idea to not adding this callback
> and let the da8xx phy driver set the mode register in _probe() based on
> DT dr_mode?
>
> musb core only calls the *optional* _set_mode() during init, so I don't
> see any problem if the phy set the mode in its probe.
>
> Regards,
> -Bin.
>
As was already discussed, the mode can be changed via sysfs as well as
during probe, so this callback is needed for that case.
This is something I actually plan on using because the device I am using
(LEGO MINDSTORMS EV3) is not wired for OTG, so the callback is needed to
override the ID and VBUS signals when switching between host and
peripheral mode.
next prev parent reply other threads:[~2016-05-04 18:20 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-14 18:35 [PATCH v4 0/7] da8xx USB PHY (was da8xx USB clocks) David Lechner
2016-04-14 18:35 ` [PATCH v4 1/7] mfd: da8xx-cfgchip: New header file for CFGCHIP registers David Lechner
2016-04-25 14:08 ` Lee Jones
2016-04-14 18:35 ` [PATCH v4 2/7] dt-bindings: Add bindings for phy-da8xx-usb David Lechner
2016-04-15 10:48 ` Sergei Shtylyov
2016-04-15 16:13 ` David Lechner
2016-04-15 17:05 ` Sergei Shtylyov
2016-04-14 18:35 ` [PATCH v4 3/7] phy: Add set_mode callback David Lechner
2016-05-04 18:10 ` Bin Liu
2016-05-04 18:20 ` David Lechner [this message]
2016-05-04 18:39 ` Bin Liu
2016-05-04 19:48 ` David Lechner
2016-05-09 22:47 ` David Lechner
2016-04-14 18:35 ` [PATCH v4 4/7] phy: da8xx-usb: new driver for DA8xx SoC USB PHY David Lechner
2016-04-19 8:03 ` Kishon Vijay Abraham I
2016-04-14 18:35 ` [PATCH v4 5/7] usb: ohci-da8xx: Remove code that references mach David Lechner
2016-04-14 18:35 ` [PATCH v4 6/7] usb: musb: da8xx: Use devm in probe David Lechner
2016-04-14 18:35 ` [PATCH v4 7/7] usb: musb: da8xx: Remove mach code David Lechner
2016-05-04 16:24 ` [PATCH v4 0/7] da8xx USB PHY (was da8xx USB clocks) David Lechner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=572A3D74.3080907@lechnology.com \
--to=david@lechnology.com \
--cc=b-liu@ti.com \
--cc=devicetree@vger.kernel.org \
--cc=galak@codeaurora.org \
--cc=gregkh@linuxfoundation.org \
--cc=ijc+devicetree@hellion.org.uk \
--cc=khilman@kernel.org \
--cc=kishon@ti.com \
--cc=lee.jones@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=nsekhar@ti.com \
--cc=pawel.moll@arm.com \
--cc=petr@barix.com \
--cc=robh+dt@kernel.org \
--cc=sergei.shtylyov@cogentembedded.com \
--cc=stern@rowland.harvard.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox