[PATCH v3] USB: mxs-phy: add basic otg support

Marc Kleine-Budde mkl at pengutronix.de
Wed Sep 19 03:27:03 EDT 2012


On 09/19/2012 03:11 AM, Richard Zhao wrote:
> On Mon, Sep 17, 2012 at 01:06:21PM +0300, Alexander Shishkin wrote:
>> Richard Zhao <richard.zhao at freescale.com> writes:
>>
>>> Signed-off-by: Richard Zhao <richard.zhao at freescale.com>
>>> Acked-by: Felipe Balbi <balbi at ti.com>
>>
>> Felipe said, 
>>
>>> if you add a commit log you can add my:
>>>
>>> Acked-by: Felipe Balbi <balbi at ti.com>
>>
>> but the commit message is still totally missing. I would like to ask you
>> to pay attention to the commit messages in the patches that you
>> submit. They should explain the problem that your patch is solving, how
>> you are solving it and why, so that anyone immediately knows what the
>> patch is about without digging up mailing list conversations. There's
>> also a nice blog entry [1] on how to write good commit messages.
>>
>> [1] http://who-t.blogspot.com/2009/12/on-commit-messages.html
> Will you agree to give ack if commit message changed to below?
> 
>     USB: mxs-phy: add fake otg support
>     
>     It has nothing to do with phy driver, but for now chipidea driver calls
>     struct usb_otg callbacks. So we implement a fake one.
>     
>     When chipidea implement its own otg driver, this commit can be reverted.
>     
>     Signed-off-by: Richard Zhao <richard.zhao at freescale.com>
>     Acked-by: Felipe Balbi <balbi at ti.com
> 
> Thanks
> Richard
>>
>>> ---
>>> Changes from v2:
>>>  - assign host/gadget in mxs_phy_set_host/mxs_phy_set_peripheral
>>>
>>>  drivers/usb/otg/mxs-phy.c |   25 +++++++++++++++++++++++++
>>>  1 file changed, 25 insertions(+)
>>>
>>> diff --git a/drivers/usb/otg/mxs-phy.c b/drivers/usb/otg/mxs-phy.c
>>> index 88db976..3255112 100644
>>> --- a/drivers/usb/otg/mxs-phy.c
>>> +++ b/drivers/usb/otg/mxs-phy.c
>>> @@ -129,12 +129,28 @@ static int mxs_phy_on_disconnect(struct usb_phy *phy, int port)
>>>  	return 0;
>>>  }
>>>  
>>> +static int mxs_phy_set_host(struct usb_otg *otg, struct usb_bus *host)
>>> +{
>>> +	otg->host = host;
>>> +
>>> +	return 0;
>>> +}
>>> +
>>> +static int mxs_phy_set_peripheral(struct usb_otg *otg,
>>> +					struct usb_gadget *gadget)
>>> +{
>>> +	otg->gadget = gadget;
>>> +
>>> +	return 0;
>>> +}
>>> +
>>>  static int mxs_phy_probe(struct platform_device *pdev)
>>>  {
>>>  	struct resource *res;
>>>  	void __iomem *base;
>>>  	struct clk *clk;
>>>  	struct mxs_phy *mxs_phy;
>>> +	struct usb_otg *otg;
>>>  
>>>  	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
>>>  	if (!res) {
>>> @@ -171,6 +187,15 @@ static int mxs_phy_probe(struct platform_device *pdev)
>>>  
>>>  	mxs_phy->clk = clk;
>>>  
>>> +	otg = devm_kzalloc(&pdev->dev, sizeof(struct usb_otg), GFP_KERNEL);

In order to save some overhead you can embed the struct usb_otg in the
struct mxs_phy.

Marc
>>> +	if (!otg)
>>> +		return -ENOMEM;
>>> +	otg->phy = &mxs_phy->phy;
>>> +	otg->set_host = mxs_phy_set_host;
>>> +	otg->set_peripheral = mxs_phy_set_peripheral;
>>> +
>>> +	mxs_phy->phy.otg = otg;
>>> +
>>>  	platform_set_drvdata(pdev, &mxs_phy->phy);
>>>  
>>>  	return 0;
>>> -- 
>>> 1.7.9.5
>>
> 


-- 
Pengutronix e.K.                  | Marc Kleine-Budde           |
Industrial Linux Solutions        | Phone: +49-231-2826-924     |
Vertretung West/Dortmund          | Fax:   +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686  | http://www.pengutronix.de   |

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 259 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120919/170e54b2/attachment.sig>


More information about the linux-arm-kernel mailing list