[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <F1B223389110CE49B4CF055ABA2E5D3D78CA6D47@XAP-PVEXMBX02.xlnx.xilinx.com>
Date: Wed, 28 Oct 2015 11:55:07 +0000
From: Subbaraya Sundeep Bhatta <subbaraya.sundeep.bhatta@...inx.com>
To: Kishon Vijay Abraham I <kishon@...com>,
Punnaiah Choudary Kalluri <punnaia@...inx.com>,
"balbi@...com" <balbi@...com>
CC: Rob Herring <robh@...nel.org>,
Peter Chen <peter.chen@...escale.com>,
"devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
"gregkh@...uxfoundation.org" <gregkh@...uxfoundation.org>,
"linux-usb@...r.kernel.org" <linux-usb@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>
Subject: RE: [RFC PATCH 1/2] usb: doc: Add bindings for ULPI platform driver
Hi Kishon,
> -----Original Message-----
> From: Kishon Vijay Abraham I [mailto:kishon@...com]
> Sent: Sunday, October 11, 2015 8:11 PM
> To: Punnaiah Choudary Kalluri; balbi@...com
> Cc: Rob Herring; Subbaraya Sundeep Bhatta; Peter Chen;
> devicetree@...r.kernel.org; gregkh@...uxfoundation.org; linux-
> usb@...r.kernel.org; linux-kernel@...r.kernel.org; linux-arm-
> kernel@...ts.infradead.org
> Subject: Re: [RFC PATCH 1/2] usb: doc: Add bindings for ULPI platform driver
>
> Hi,
>
> On Sunday 11 October 2015 04:45 PM, punnaiah choudary kalluri wrote:
> > On Wed, Sep 30, 2015 at 9:48 PM, Felipe Balbi <balbi@...com> wrote:
> >> On Thu, Sep 24, 2015 at 11:18:01AM -0500, Rob Herring wrote:
> >>> On Thu, Sep 24, 2015 at 4:26 AM, Subbaraya Sundeep Bhatta
> >>> <subbaraya.sundeep.bhatta@...inx.com> wrote:
> >>>> Hi Peter,
> >>>>
> >>>>> -----Original Message-----
> >>>>> From: Peter Chen [mailto:peter.chen@...escale.com]
> >>>>> Sent: Thursday, September 24, 2015 2:41 PM
> >>>>> To: Subbaraya Sundeep Bhatta
> >>>>> Cc: balbi@...com; devicetree@...r.kernel.org; kishon@...com;
> >>>>> gregkh@...uxfoundation.org; linux-usb@...r.kernel.org; linux-
> >>>>> kernel@...r.kernel.org; Punnaiah Choudary Kalluri; Subbaraya
> >>>>> Sundeep Bhatta; linux-arm-kernel@...ts.infradead.org
> >>>>> Subject: Re: [RFC PATCH 1/2] usb: doc: Add bindings for ULPI
> >>>>> platform driver
> >>>>>
> >>>>> On Wed, Sep 23, 2015 at 06:24:01PM +0530, Subbaraya Sundeep
> Bhatta
> >>>>> wrote:
> >>>>>> This patch adds binding doc info for generic ULPI PHYs platform
> >>>>>> driver.
> >>>>>>
> >>>>>> Signed-off-by: Subbaraya Sundeep Bhatta <sbhatta@...inx.com>
> >>>>>> ---
> >>>>>> .../devicetree/bindings/usb/ulpi-platform-phy.txt | 34
> >>>>> ++++++++++++++++++++
> >>>>>> 1 files changed, 34 insertions(+), 0 deletions(-) create mode
> >>>>>> 100644
> >>>>>> Documentation/devicetree/bindings/usb/ulpi-platform-phy.txt
> >>>>>>
> >>>>>> diff --git
> >>>>>> a/Documentation/devicetree/bindings/usb/ulpi-platform-phy.txt
> >>>>>> b/Documentation/devicetree/bindings/usb/ulpi-platform-phy.txt
> >>>>>> new file mode 100644
> >>>>>> index 0000000..7b8cbb4
> >>>>>> --- /dev/null
> >>>>>> +++ b/Documentation/devicetree/bindings/usb/ulpi-platform-phy.txt
> >>>>>> @@ -0,0 +1,34 @@
> >>>>>> +Platform driver for generic ULPI PHYs
> >>>>>> +
> >>>>>> +Required properties:
> >>>>>> +- compatible : Should be "ulpi-phy"
> >>>>>> +- reg : Physical base address and size of the USB
> >>>>>> + controller registers map to which this PHY
> >>>>>> + is connected.
> >>>>>> +- view-port : Should contain viewport register offset of the
> >>>>>> + USB controller to which this PHY is
> >>>>>> +connected Optional
> >>>>>> +properties:
> >>>>>> +- drv-vbus : required if turning VBUS on/off has to be driven
> >>>>>> + by writing to PHY. This feature depends on board
> >>>>>> + design.
> >>>>>> +
> >>>>>> +Example:
> >>>>>> +Below example shows the PHY binding for Chipidea USB controller
> >>>>>> +which has ulpi viewport register at 0x0170
> >>>>>> +
> >>>>>> + usb_phy0: phy0 {
> >>>>>> + compatible = "ulpi-phy";
> >>>>>> + reg = <0xe0002000 0x1000>;
> >>>>>> + view-port = <0x0170>;
> >>>>>> + drv-vbus;
> >>>>>> + };
> >>>>>> +
> >>>>>> + usb0: usb@...02000 {
> >>>>>> + compatible = "chipidea,usb2";
> >>>>>> + interrupt-parent = <&intc>;
> >>>>>> + interrupts = <0 21 4>;
> >>>>>> + reg = <0xe0002000 0x1000>;
> >>>>>
> >>>>> Although just call devm_ioremap twice for the same register region
> >>>>> does not cause any errors, I am not sure if it will has other
> >>>>> potential problems. Cc: arm list.
> >>>>
> >>>> Yes Peter I was also in doubt to call devm_ioremap twice for same register
> region.
> >>>> devm_ioremap_resource complained hence modified to devm_ioremap.
> >>>> Thanks for adding arm-list.
> >>>
> >>> Don't put overlapping resources in the DT. Having 2 drivers
> >>> accessing the same registers is not a clean or safe design.
> >>
> >> thanks, saves me the trouble of saying the same thing.
> >>
> >> Bottom line, if devm_ioremap_resource() fails, you're wrong. Just fix
> >> your driver and move on.
> >
> > Any suggestions on how to move further?
> > Chipidea controller provides ulpi view port register for accessing the
> > usb phy registers. Now we want to add new driver for ulpi phy
> > configuration and that obviously it need of ulpi view port register
> > access. So, sharing the register space between these two drivers is necessary
> here.
>
> Why not program ULPI the same way as DWC3 does?
Sorry for delay in response, back from long vacation.
Can we call generic PHY phy->power_on and power_off functions to do similar function as usb2_phy->set_vbus?
I assume it is to power on whole PHY chip but not to enable 5V on VBUS line.
Thanks,
Sundeep
>
> Thanks
> Kishon
Powered by blists - more mailing lists