Re: [PATCH v2 3/7] usb: phy: mxs: Add VF610 USB PHY support

From: Stefan Agner
Date: Sat Aug 02 2014 - 10:24:19 EST


Am 2014-08-02 02:36, schrieb Peter Chen:
> On Mon, Jul 28, 2014 at 04:57:29PM +0200, Stefan Agner wrote:
>> This adds support for the USB PHY in Vybrid VF610. We assume that
>> the disconnection without VBUS is also needed for Vybrid.
>>
>> Tests showed, without MXS_PHY_NEED_IP_FIX, enumeration of devices
>> behind a USB Hub fails with errors:
>>
>> [ 215.163507] usb usb1-port1: cannot reset (err = -32)
>> [ 215.170498] usb usb1-port1: cannot reset (err = -32)
>> [ 215.185120] usb usb1-port1: cannot reset (err = -32)
>> [ 215.191345] usb usb1-port1: cannot reset (err = -32)
>> [ 215.202487] usb usb1-port1: cannot reset (err = -32)
>> [ 215.207718] usb usb1-port1: Cannot enable. Maybe the USB cable is bad?
>> [ 215.219317] usb usb1-port1: unable to enumerate USB device
>>
>> Hence we also enable the MXS_PHY_NEED_IP_FIX flag.
>>
>> Signed-off-by: Stefan Agner <stefan@xxxxxxxx>
>> ---
>> Documentation/devicetree/bindings/usb/mxs-phy.txt | 1 +
>> drivers/usb/phy/phy-mxs-usb.c | 6 ++++++
>> 2 files changed, 7 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/usb/mxs-phy.txt b/Documentation/devicetree/bindings/usb/mxs-phy.txt
>> index cef181a..fe3eed8 100644
>> --- a/Documentation/devicetree/bindings/usb/mxs-phy.txt
>> +++ b/Documentation/devicetree/bindings/usb/mxs-phy.txt
>> @@ -5,6 +5,7 @@ Required properties:
>> * "fsl,imx23-usbphy" for imx23 and imx28
>> * "fsl,imx6q-usbphy" for imx6dq and imx6dl
>> * "fsl,imx6sl-usbphy" for imx6sl
>> + * "fsl,vf610-usbphy" for Vybrid vf610
>> "fsl,imx23-usbphy" is still a fallback for other strings
>> - reg: Should contain registers location and length
>> - interrupts: Should contain phy interrupt
>> diff --git a/drivers/usb/phy/phy-mxs-usb.c b/drivers/usb/phy/phy-mxs-usb.c
>> index c42bdf0..8c2f23b 100644
>> --- a/drivers/usb/phy/phy-mxs-usb.c
>> +++ b/drivers/usb/phy/phy-mxs-usb.c
>> @@ -125,10 +125,16 @@ static const struct mxs_phy_data imx6sl_phy_data = {
>> MXS_PHY_NEED_IP_FIX,
>> };
>>
>> +static const struct mxs_phy_data vf610_phy_data = {
>> + .flags = MXS_PHY_DISCONNECT_LINE_WITHOUT_VBUS |
>> + MXS_PHY_NEED_IP_FIX,
>> +};
>> +
>> static const struct of_device_id mxs_phy_dt_ids[] = {
>> { .compatible = "fsl,imx6sl-usbphy", .data = &imx6sl_phy_data, },
>> { .compatible = "fsl,imx6q-usbphy", .data = &imx6q_phy_data, },
>> { .compatible = "fsl,imx23-usbphy", .data = &imx23_phy_data, },
>> + { .compatible = "fsl,vf610-usbphy", .data = &vf610_phy_data, },
>> { /* sentinel */ }
>> };
>> MODULE_DEVICE_TABLE(of, mxs_phy_dt_ids);
>> --
>> 2.0.2
>>
>
> Acked-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

Thanks Peter.

Just realized that I missed USB PHY maintainer Felipe Balbi, sorry!
Felipe, I guess this goes through your tree?

--
Stefan


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/