On 02/20/2015 12:38 PM, Felipe Balbi wrote:
On Fri, Feb 20, 2015 at 11:07:21AM +0800, zhangfei wrote:
Hi, Balbi
On 02/18/2015 10:35 PM, Felipe Balbi wrote:
On Wed, Feb 18, 2015 at 01:44:21PM +0800, zhangfei wrote:
Hi, Kishon
On 02/18/2015 01:35 PM, Kishon Vijay Abraham I wrote:
Hi,
On Thursday 12 February 2015 01:07 PM, Zhangfei Gao wrote:
Add usb phy controller for hi6220 platform
Signed-off-by: Zhangfei Gao <zhangfei.gao@xxxxxxxxxx>
---
drivers/phy/Kconfig | 9 ++
drivers/phy/Makefile | 1 +
drivers/phy/phy-hi6220-usb.c | 306
+++++++++++++++++++++++++++++++++++++++++++
3 files changed, 316 insertions(+)
create mode 100644 drivers/phy/phy-hi6220-usb.c
why is this driver in drivers/phy when it doesn't use the generic PHY
framework at all?
Balbi recommended "new drivers only on drivers/phy/", including usb
phy.
but it should use the API too. It's not only about a directory, you need
to use the new API.
So Move drivers/usb/phy/phy-hi6220-usb.c to
drivers/phy/phy-hi6220-usb.c, required by Balbi.
you're reading what I stated the way you like.
Sorry for my bad understanding.
Still not clear about the otg_set_peripheral, which is required in
phy-hi6220-usb.c
1. drivers/usb/dwc2/gadget.c use
otg_set_peripheral(hsotg->uphy->otg, &hsotg->gadget);
2. include/linux/phy/phy.h
struct phy do not have member otg, while struct usb_phy has.
Could you give more hints?
your set_peripheral doesn't do anything, just holds a pointer. Might as
well not implement it. I'll review your driver more fully tomorrow.
There a few things which must be changed.
Thanks in advance.
We need this call back set_peripheral setting otg->gadget, which used in
usb_gadget_connect/disconnect(otg->gadget).
The workable method test here is not provide phy-names = "usb2-phy";
Then dwc2 will still use hsotg->uphy instead of hsotg->phy.
Though devm_phy_create is used in phy-hi6220-usb.c, phy_ops is not used
in fact.
Thanks
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html