* [PATCH v2 00/12] add imx usb driver for mx28/6x @ 2012-05-21 9:23 Richard Zhao [not found] ` <1337592237-5090-1-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-21 9:23 UTC (permalink / raw) To: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ Cc: B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, richard.zhao-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA The work is based on ci13xxx rework done by Alexander Shishkin. Status: - this version only support host - usbotg controler works at host role Changes since V1: - Merge the work of Marek - re-implement connect change notify - imx6q: move part of code to clk - imx6q: add config-on-boot gpios Richard Zhao (12): usb: otg: add notify_connect_change callback usb: chipidea: permit driver bindings pass phy pointer usb: ehci-hcd: notify phy when connect change usb: otg: add basic mxs phy driver support usb: chipidea: add imx driver binding ARM: imx6q: correct device name of usbphy and usb controller clock export ARM: imx6q: add config-on-boot gpios ARM: imx6q: add usbphy clocks ARM: imx6q: disable usb charger detector ARM: dts: imx6q-sabrelite: add usb devices ARM: mxs: clk_register_clkdev mx28 usb clocks ARM: dts: imx28-evk: add usb devices .../devicetree/bindings/usb/ci13xxx-imx.txt | 20 ++ Documentation/devicetree/bindings/usb/mxs-phy.txt | 13 ++ arch/arm/boot/dts/imx28-evk.dts | 18 ++ arch/arm/boot/dts/imx28.dtsi | 12 +- arch/arm/boot/dts/imx6q-sabrelite.dts | 25 +++- arch/arm/boot/dts/imx6q.dtsi | 44 ++++- arch/arm/mach-imx/clk-imx6q.c | 12 +- arch/arm/mach-imx/mach-imx6q.c | 60 ++++++ drivers/clk/mxs/clk-imx28.c | 4 + drivers/usb/chipidea/Makefile | 8 + drivers/usb/chipidea/ci.h | 2 + drivers/usb/chipidea/ci13xxx_imx.c | 191 +++++++++++++++++++ drivers/usb/chipidea/core.c | 4 + drivers/usb/chipidea/host.c | 1 + drivers/usb/chipidea/udc.c | 11 +- drivers/usb/host/ehci-hcd.c | 9 + drivers/usb/otg/Kconfig | 8 + drivers/usb/otg/Makefile | 1 + drivers/usb/otg/mxs-phy.c | 196 ++++++++++++++++++++ include/linux/usb/chipidea.h | 3 + include/linux/usb/otg.h | 13 ++ 21 files changed, 644 insertions(+), 11 deletions(-) create mode 100644 Documentation/devicetree/bindings/usb/ci13xxx-imx.txt create mode 100644 Documentation/devicetree/bindings/usb/mxs-phy.txt create mode 100644 drivers/usb/chipidea/ci13xxx_imx.c create mode 100644 drivers/usb/otg/mxs-phy.c -- 1.7.5.4 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <1337592237-5090-1-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org>]
* [PATCH v2 01/12] usb: otg: add notify_connect_change callback [not found] ` <1337592237-5090-1-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> @ 2012-05-21 9:23 ` Richard Zhao [not found] ` <1337592237-5090-2-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-21 9:23 ` [PATCH v2 02/12] usb: chipidea: permit driver bindings pass phy pointer Richard Zhao ` (11 subsequent siblings) 12 siblings, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-21 9:23 UTC (permalink / raw) To: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ Cc: B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, richard.zhao-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA This let usb phy driver has a chance to change hw settings when connect status change. Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> --- include/linux/usb/otg.h | 13 +++++++++++++ 1 files changed, 13 insertions(+), 0 deletions(-) diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h index 38ab3f4..385641d 100644 --- a/include/linux/usb/otg.h +++ b/include/linux/usb/otg.h @@ -117,6 +117,10 @@ struct usb_phy { int (*set_suspend)(struct usb_phy *x, int suspend); + /* notify phy connect status change */ + int (*notify_connect_change)(struct usb_phy *x, + int port, + int connected); }; @@ -252,6 +256,15 @@ usb_phy_set_suspend(struct usb_phy *x, int suspend) } static inline int +usb_phy_notify_connect_change(struct usb_phy *x, int port, int connected) +{ + if (x->notify_connect_change != NULL) + return x->notify_connect_change(x, port, connected); + else + return 0; +} + +static inline int otg_start_srp(struct usb_otg *otg) { if (otg && otg->start_srp) -- 1.7.5.4 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply related [flat|nested] 91+ messages in thread
[parent not found: <1337592237-5090-2-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org>]
* Re: [PATCH v2 01/12] usb: otg: add notify_connect_change callback [not found] ` <1337592237-5090-2-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> @ 2012-05-21 9:26 ` Felipe Balbi [not found] ` <20120521092635.GL8633-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org> 2012-05-21 13:05 ` Greg KH 1 sibling, 1 reply; 91+ messages in thread From: Felipe Balbi @ 2012-05-21 9:26 UTC (permalink / raw) To: Richard Zhao Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA [-- Attachment #1: Type: text/plain, Size: 1224 bytes --] On Mon, May 21, 2012 at 05:23:46PM +0800, Richard Zhao wrote: > This let usb phy driver has a chance to change hw settings when connect > status change. > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > --- > include/linux/usb/otg.h | 13 +++++++++++++ > 1 files changed, 13 insertions(+), 0 deletions(-) > > diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h > index 38ab3f4..385641d 100644 > --- a/include/linux/usb/otg.h > +++ b/include/linux/usb/otg.h > @@ -117,6 +117,10 @@ struct usb_phy { > int (*set_suspend)(struct usb_phy *x, > int suspend); > > + /* notify phy connect status change */ > + int (*notify_connect_change)(struct usb_phy *x, > + int port, > + int connected); > }; > > > @@ -252,6 +256,15 @@ usb_phy_set_suspend(struct usb_phy *x, int suspend) > } > > static inline int > +usb_phy_notify_connect_change(struct usb_phy *x, int port, int connected) > +{ > + if (x->notify_connect_change != NULL) you don't need this != NULL. See that no other wrapper has it. Keep consistency. Also, this is the kind of stuff that I have been queueing for Greg so I should be in Cc. -- balbi [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120521092635.GL8633-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org>]
* Re: [PATCH v2 01/12] usb: otg: add notify_connect_change callback [not found] ` <20120521092635.GL8633-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org> @ 2012-05-21 9:36 ` Richard Zhao [not found] ` <20120521093614.GL30755-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-21 9:36 UTC (permalink / raw) To: Felipe Balbi Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Mon, May 21, 2012 at 12:26:36PM +0300, Felipe Balbi wrote: > On Mon, May 21, 2012 at 05:23:46PM +0800, Richard Zhao wrote: > > This let usb phy driver has a chance to change hw settings when connect > > status change. > > > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > > --- > > include/linux/usb/otg.h | 13 +++++++++++++ > > 1 files changed, 13 insertions(+), 0 deletions(-) > > > > diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h > > index 38ab3f4..385641d 100644 > > --- a/include/linux/usb/otg.h > > +++ b/include/linux/usb/otg.h > > @@ -117,6 +117,10 @@ struct usb_phy { > > int (*set_suspend)(struct usb_phy *x, > > int suspend); > > > > + /* notify phy connect status change */ > > + int (*notify_connect_change)(struct usb_phy *x, > > + int port, > > + int connected); > > }; > > > > > > @@ -252,6 +256,15 @@ usb_phy_set_suspend(struct usb_phy *x, int suspend) > > } > > > > static inline int > > +usb_phy_notify_connect_change(struct usb_phy *x, int port, int connected) > > +{ > > + if (x->notify_connect_change != NULL) > > you don't need this != NULL. See that no other wrapper has it. Keep > consistency. notify_connect_change callback is not a must. I just let the phy driver have a chance to do whatever it needs to do. > > Also, this is the kind of stuff that I have been queueing for Greg so I > should be in Cc. Ah, I'm really sorry. I just find out I used the result of get_maintainer for v1 patchset. Thanks Richard > > -- > balbi -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120521093614.GL30755-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org>]
* Re: [PATCH v2 01/12] usb: otg: add notify_connect_change callback [not found] ` <20120521093614.GL30755-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> @ 2012-05-21 9:38 ` Felipe Balbi [not found] ` <20120521093840.GM8633-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Felipe Balbi @ 2012-05-21 9:38 UTC (permalink / raw) To: Richard Zhao Cc: Felipe Balbi, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA [-- Attachment #1: Type: text/plain, Size: 1903 bytes --] On Mon, May 21, 2012 at 05:36:16PM +0800, Richard Zhao wrote: > On Mon, May 21, 2012 at 12:26:36PM +0300, Felipe Balbi wrote: > > On Mon, May 21, 2012 at 05:23:46PM +0800, Richard Zhao wrote: > > > This let usb phy driver has a chance to change hw settings when connect > > > status change. > > > > > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > > > --- > > > include/linux/usb/otg.h | 13 +++++++++++++ > > > 1 files changed, 13 insertions(+), 0 deletions(-) > > > > > > diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h > > > index 38ab3f4..385641d 100644 > > > --- a/include/linux/usb/otg.h > > > +++ b/include/linux/usb/otg.h > > > @@ -117,6 +117,10 @@ struct usb_phy { > > > int (*set_suspend)(struct usb_phy *x, > > > int suspend); > > > > > > + /* notify phy connect status change */ > > > + int (*notify_connect_change)(struct usb_phy *x, > > > + int port, > > > + int connected); > > > }; > > > > > > > > > @@ -252,6 +256,15 @@ usb_phy_set_suspend(struct usb_phy *x, int suspend) > > > } > > > > > > static inline int > > > +usb_phy_notify_connect_change(struct usb_phy *x, int port, int connected) > > > +{ > > > + if (x->notify_connect_change != NULL) > > > > you don't need this != NULL. See that no other wrapper has it. Keep > > consistency. > notify_connect_change callback is not a must. I just let the phy driver > have a chance to do whatever it needs to do. what I meant was: - if (x->notify_connect_change != NULL) + if (x->notify_connect_change) > > Also, this is the kind of stuff that I have been queueing for Greg so I > > should be in Cc. > Ah, I'm really sorry. I just find out I used the result of get_maintainer > for v1 patchset. hmm... ok, looks like I should patch MAINTAINERS file for that :-p Greg, is it ok ? -- balbi [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120521093840.GM8633-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org>]
* Re: [PATCH v2 01/12] usb: otg: add notify_connect_change callback [not found] ` <20120521093840.GM8633-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org> @ 2012-05-21 10:19 ` Richard Zhao 2012-05-21 13:03 ` Greg KH 1 sibling, 0 replies; 91+ messages in thread From: Richard Zhao @ 2012-05-21 10:19 UTC (permalink / raw) To: Felipe Balbi Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Mon, May 21, 2012 at 12:38:41PM +0300, Felipe Balbi wrote: > On Mon, May 21, 2012 at 05:36:16PM +0800, Richard Zhao wrote: > > On Mon, May 21, 2012 at 12:26:36PM +0300, Felipe Balbi wrote: > > > On Mon, May 21, 2012 at 05:23:46PM +0800, Richard Zhao wrote: > > > > This let usb phy driver has a chance to change hw settings when connect > > > > status change. > > > > > > > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > > > > --- > > > > include/linux/usb/otg.h | 13 +++++++++++++ > > > > 1 files changed, 13 insertions(+), 0 deletions(-) > > > > > > > > diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h > > > > index 38ab3f4..385641d 100644 > > > > --- a/include/linux/usb/otg.h > > > > +++ b/include/linux/usb/otg.h > > > > @@ -117,6 +117,10 @@ struct usb_phy { > > > > int (*set_suspend)(struct usb_phy *x, > > > > int suspend); > > > > > > > > + /* notify phy connect status change */ > > > > + int (*notify_connect_change)(struct usb_phy *x, > > > > + int port, > > > > + int connected); > > > > }; > > > > > > > > > > > > @@ -252,6 +256,15 @@ usb_phy_set_suspend(struct usb_phy *x, int suspend) > > > > } > > > > > > > > static inline int > > > > +usb_phy_notify_connect_change(struct usb_phy *x, int port, int connected) > > > > +{ > > > > + if (x->notify_connect_change != NULL) > > > > > > you don't need this != NULL. See that no other wrapper has it. Keep > > > consistency. > > notify_connect_change callback is not a must. I just let the phy driver > > have a chance to do whatever it needs to do. > > what I meant was: > > - if (x->notify_connect_change != NULL) > + if (x->notify_connect_change) Ah, Sure. Thanks Richard > > > > Also, this is the kind of stuff that I have been queueing for Greg so I > > > should be in Cc. > > Ah, I'm really sorry. I just find out I used the result of get_maintainer > > for v1 patchset. > > hmm... ok, looks like I should patch MAINTAINERS file for that :-p > > Greg, is it ok ? > > -- > balbi -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* Re: [PATCH v2 01/12] usb: otg: add notify_connect_change callback [not found] ` <20120521093840.GM8633-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org> 2012-05-21 10:19 ` Richard Zhao @ 2012-05-21 13:03 ` Greg KH 1 sibling, 0 replies; 91+ messages in thread From: Greg KH @ 2012-05-21 13:03 UTC (permalink / raw) To: Felipe Balbi Cc: marex-ynQEQJNshbs, B20596-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, fabio.estevam-KZfg59tc24xl57MIdRCFDg, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, B29397-KZfg59tc24xl57MIdRCFDg, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, linux-usb-u79uwXL29TY76Z2rM5mHXA, Richard Zhao, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r On Mon, May 21, 2012 at 12:38:41PM +0300, Felipe Balbi wrote: > On Mon, May 21, 2012 at 05:36:16PM +0800, Richard Zhao wrote: > > On Mon, May 21, 2012 at 12:26:36PM +0300, Felipe Balbi wrote: > > > On Mon, May 21, 2012 at 05:23:46PM +0800, Richard Zhao wrote: > > > > This let usb phy driver has a chance to change hw settings when connect > > > > status change. > > > > > > > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > > > > --- > > > > include/linux/usb/otg.h | 13 +++++++++++++ > > > > 1 files changed, 13 insertions(+), 0 deletions(-) > > > > > > > > diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h > > > > index 38ab3f4..385641d 100644 > > > > --- a/include/linux/usb/otg.h > > > > +++ b/include/linux/usb/otg.h > > > > @@ -117,6 +117,10 @@ struct usb_phy { > > > > int (*set_suspend)(struct usb_phy *x, > > > > int suspend); > > > > > > > > + /* notify phy connect status change */ > > > > + int (*notify_connect_change)(struct usb_phy *x, > > > > + int port, > > > > + int connected); > > > > }; > > > > > > > > > > > > @@ -252,6 +256,15 @@ usb_phy_set_suspend(struct usb_phy *x, int suspend) > > > > } > > > > > > > > static inline int > > > > +usb_phy_notify_connect_change(struct usb_phy *x, int port, int connected) > > > > +{ > > > > + if (x->notify_connect_change != NULL) > > > > > > you don't need this != NULL. See that no other wrapper has it. Keep > > > consistency. > > notify_connect_change callback is not a must. I just let the phy driver > > have a chance to do whatever it needs to do. > > what I meant was: > > - if (x->notify_connect_change != NULL) > + if (x->notify_connect_change) > > > > Also, this is the kind of stuff that I have been queueing for Greg so I > > > should be in Cc. > > Ah, I'm really sorry. I just find out I used the result of get_maintainer > > for v1 patchset. > > hmm... ok, looks like I should patch MAINTAINERS file for that :-p > > Greg, is it ok ? Yes, please send me a patch for MAINTAINERS for this. greg k-h ^ permalink raw reply [flat|nested] 91+ messages in thread
* Re: [PATCH v2 01/12] usb: otg: add notify_connect_change callback [not found] ` <1337592237-5090-2-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-21 9:26 ` Felipe Balbi @ 2012-05-21 13:05 ` Greg KH [not found] ` <20120521130556.GB18926-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org> 1 sibling, 1 reply; 91+ messages in thread From: Greg KH @ 2012-05-21 13:05 UTC (permalink / raw) To: Richard Zhao Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Mon, May 21, 2012 at 05:23:46PM +0800, Richard Zhao wrote: > This let usb phy driver has a chance to change hw settings when connect > status change. > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > --- > include/linux/usb/otg.h | 13 +++++++++++++ > 1 files changed, 13 insertions(+), 0 deletions(-) > > diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h > index 38ab3f4..385641d 100644 > --- a/include/linux/usb/otg.h > +++ b/include/linux/usb/otg.h > @@ -117,6 +117,10 @@ struct usb_phy { > int (*set_suspend)(struct usb_phy *x, > int suspend); > > + /* notify phy connect status change */ > + int (*notify_connect_change)(struct usb_phy *x, > + int port, > + int connected); > }; No, please make this two different callbacks. As you see in your code when you implemented this, you really have: if (connected) { do this... } else { do that... } So you there is no consolidation in the driver, so just make it 2 callbacks, especially as someone wanted to make connected -1 just for a tristate, which would be impossible to document properly... greg k-h > > > @@ -252,6 +256,15 @@ usb_phy_set_suspend(struct usb_phy *x, int suspend) > } > > static inline int > +usb_phy_notify_connect_change(struct usb_phy *x, int port, int connected) > +{ > + if (x->notify_connect_change != NULL) > + return x->notify_connect_change(x, port, connected); > + else > + return 0; > +} > + > +static inline int > otg_start_srp(struct usb_otg *otg) > { > if (otg && otg->start_srp) > -- > 1.7.5.4 > > > -- > To unsubscribe from this list: send the line "unsubscribe linux-usb" in > the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120521130556.GB18926-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org>]
* Re: [PATCH v2 01/12] usb: otg: add notify_connect_change callback [not found] ` <20120521130556.GB18926-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org> @ 2012-05-21 17:36 ` Marek Vasut [not found] ` <201205211936.40359.marex-ynQEQJNshbs@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Marek Vasut @ 2012-05-21 17:36 UTC (permalink / raw) To: Greg KH Cc: Richard Zhao, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Dear Greg KH, > On Mon, May 21, 2012 at 05:23:46PM +0800, Richard Zhao wrote: > > This let usb phy driver has a chance to change hw settings when connect > > status change. > > > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > > --- > > > > include/linux/usb/otg.h | 13 +++++++++++++ > > 1 files changed, 13 insertions(+), 0 deletions(-) > > > > diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h > > index 38ab3f4..385641d 100644 > > --- a/include/linux/usb/otg.h > > +++ b/include/linux/usb/otg.h > > @@ -117,6 +117,10 @@ struct usb_phy { > > > > int (*set_suspend)(struct usb_phy *x, > > > > int suspend); > > > > + /* notify phy connect status change */ > > + int (*notify_connect_change)(struct usb_phy *x, > > + int port, > > + int connected); > > > > }; > > No, please make this two different callbacks. As you see in your code > when you implemented this, you really have: > if (connected) { > do this... > } else { > do that... > } > > So you there is no consolidation in the driver, so just make it 2 > callbacks, especially as someone wanted to make connected -1 just for a > tristate, which would be impossible to document properly... Or he could make connected an enum maybe ? > > greg k-h > > > @@ -252,6 +256,15 @@ usb_phy_set_suspend(struct usb_phy *x, int suspend) > > > > } > > > > static inline int > > > > +usb_phy_notify_connect_change(struct usb_phy *x, int port, int > > connected) +{ > > + if (x->notify_connect_change != NULL) > > + return x->notify_connect_change(x, port, connected); > > + else > > + return 0; > > +} > > + > > +static inline int > > > > otg_start_srp(struct usb_otg *otg) > > { > > > > if (otg && otg->start_srp) Best regards, Marek Vasut -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <201205211936.40359.marex-ynQEQJNshbs@public.gmane.org>]
* Re: [PATCH v2 01/12] usb: otg: add notify_connect_change callback [not found] ` <201205211936.40359.marex-ynQEQJNshbs@public.gmane.org> @ 2012-05-21 17:47 ` Greg KH [not found] ` <20120521174742.GA31739-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Greg KH @ 2012-05-21 17:47 UTC (permalink / raw) To: Marek Vasut Cc: fabio.estevam-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, B29397-KZfg59tc24xl57MIdRCFDg, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, linux-usb-u79uwXL29TY76Z2rM5mHXA, Richard Zhao, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r On Mon, May 21, 2012 at 07:36:40PM +0200, Marek Vasut wrote: > Dear Greg KH, > > > On Mon, May 21, 2012 at 05:23:46PM +0800, Richard Zhao wrote: > > > This let usb phy driver has a chance to change hw settings when connect > > > status change. > > > > > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > > > --- > > > > > > include/linux/usb/otg.h | 13 +++++++++++++ > > > 1 files changed, 13 insertions(+), 0 deletions(-) > > > > > > diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h > > > index 38ab3f4..385641d 100644 > > > --- a/include/linux/usb/otg.h > > > +++ b/include/linux/usb/otg.h > > > @@ -117,6 +117,10 @@ struct usb_phy { > > > > > > int (*set_suspend)(struct usb_phy *x, > > > > > > int suspend); > > > > > > + /* notify phy connect status change */ > > > + int (*notify_connect_change)(struct usb_phy *x, > > > + int port, > > > + int connected); > > > > > > }; > > > > No, please make this two different callbacks. As you see in your code > > when you implemented this, you really have: > > if (connected) { > > do this... > > } else { > > do that... > > } > > > > So you there is no consolidation in the driver, so just make it 2 > > callbacks, especially as someone wanted to make connected -1 just for a > > tristate, which would be impossible to document properly... > > Or he could make connected an enum maybe ? No, again, that will make nothing easier on the driver end at all. What's the problem with different functions that people keep resisting? greg k-h ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120521174742.GA31739-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org>]
* Re: [PATCH v2 01/12] usb: otg: add notify_connect_change callback [not found] ` <20120521174742.GA31739-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org> @ 2012-05-21 18:32 ` Marek Vasut [not found] ` <201205212032.21757.marex-ynQEQJNshbs@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Marek Vasut @ 2012-05-21 18:32 UTC (permalink / raw) To: Greg KH Cc: Richard Zhao, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Dear Greg KH, > On Mon, May 21, 2012 at 07:36:40PM +0200, Marek Vasut wrote: > > Dear Greg KH, > > > > > On Mon, May 21, 2012 at 05:23:46PM +0800, Richard Zhao wrote: > > > > This let usb phy driver has a chance to change hw settings when > > > > connect status change. > > > > > > > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > > > > --- > > > > > > > > include/linux/usb/otg.h | 13 +++++++++++++ > > > > 1 files changed, 13 insertions(+), 0 deletions(-) > > > > > > > > diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h > > > > index 38ab3f4..385641d 100644 > > > > --- a/include/linux/usb/otg.h > > > > +++ b/include/linux/usb/otg.h > > > > @@ -117,6 +117,10 @@ struct usb_phy { > > > > > > > > int (*set_suspend)(struct usb_phy *x, > > > > > > > > int suspend); > > > > > > > > + /* notify phy connect status change */ > > > > + int (*notify_connect_change)(struct usb_phy *x, > > > > + int port, > > > > + int connected); > > > > > > > > }; > > > > > > No, please make this two different callbacks. As you see in your code > > > > > > when you implemented this, you really have: > > > if (connected) { > > > > > > do this... > > > > > > } else { > > > > > > do that... > > > > > > } > > > > > > So you there is no consolidation in the driver, so just make it 2 > > > callbacks, especially as someone wanted to make connected -1 just for a > > > tristate, which would be impossible to document properly... > > > > Or he could make connected an enum maybe ? > > No, again, that will make nothing easier on the driver end at all. > > What's the problem with different functions that people keep resisting? The structure grows a few bytes ... so the kernel eats a bit more ram. > > greg k-h Best regards, Marek Vasut -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <201205212032.21757.marex-ynQEQJNshbs@public.gmane.org>]
* Re: [PATCH v2 01/12] usb: otg: add notify_connect_change callback [not found] ` <201205212032.21757.marex-ynQEQJNshbs@public.gmane.org> @ 2012-05-21 18:40 ` Greg KH [not found] ` <20120521184014.GA21692-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Greg KH @ 2012-05-21 18:40 UTC (permalink / raw) To: Marek Vasut Cc: Richard Zhao, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Mon, May 21, 2012 at 08:32:21PM +0200, Marek Vasut wrote: > Dear Greg KH, > > > On Mon, May 21, 2012 at 07:36:40PM +0200, Marek Vasut wrote: > > > Dear Greg KH, > > > > > > > On Mon, May 21, 2012 at 05:23:46PM +0800, Richard Zhao wrote: > > > > > This let usb phy driver has a chance to change hw settings when > > > > > connect status change. > > > > > > > > > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > > > > > --- > > > > > > > > > > include/linux/usb/otg.h | 13 +++++++++++++ > > > > > 1 files changed, 13 insertions(+), 0 deletions(-) > > > > > > > > > > diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h > > > > > index 38ab3f4..385641d 100644 > > > > > --- a/include/linux/usb/otg.h > > > > > +++ b/include/linux/usb/otg.h > > > > > @@ -117,6 +117,10 @@ struct usb_phy { > > > > > > > > > > int (*set_suspend)(struct usb_phy *x, > > > > > > > > > > int suspend); > > > > > > > > > > + /* notify phy connect status change */ > > > > > + int (*notify_connect_change)(struct usb_phy *x, > > > > > + int port, > > > > > + int connected); > > > > > > > > > > }; > > > > > > > > No, please make this two different callbacks. As you see in your code > > > > > > > > when you implemented this, you really have: > > > > if (connected) { > > > > > > > > do this... > > > > > > > > } else { > > > > > > > > do that... > > > > > > > > } > > > > > > > > So you there is no consolidation in the driver, so just make it 2 > > > > callbacks, especially as someone wanted to make connected -1 just for a > > > > tristate, which would be impossible to document properly... > > > > > > Or he could make connected an enum maybe ? > > > > No, again, that will make nothing easier on the driver end at all. > > > > What's the problem with different functions that people keep resisting? > > The structure grows a few bytes ... so the kernel eats a bit more ram. The time it took you to write this email just made up for that extra ram, sorry :) It doesn't matter, have people leaned nothing from our past mistakes? greg k-h -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120521184014.GA21692-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org>]
* Re: [PATCH v2 01/12] usb: otg: add notify_connect_change callback [not found] ` <20120521184014.GA21692-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org> @ 2012-05-21 19:27 ` Marek Vasut [not found] ` <201205212127.51020.marex-ynQEQJNshbs@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Marek Vasut @ 2012-05-21 19:27 UTC (permalink / raw) To: Greg KH Cc: Richard Zhao, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Dear Greg KH, > On Mon, May 21, 2012 at 08:32:21PM +0200, Marek Vasut wrote: > > Dear Greg KH, > > > > > On Mon, May 21, 2012 at 07:36:40PM +0200, Marek Vasut wrote: > > > > Dear Greg KH, > > > > > > > > > On Mon, May 21, 2012 at 05:23:46PM +0800, Richard Zhao wrote: > > > > > > This let usb phy driver has a chance to change hw settings when > > > > > > connect status change. > > > > > > > > > > > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > > > > > > --- > > > > > > > > > > > > include/linux/usb/otg.h | 13 +++++++++++++ > > > > > > 1 files changed, 13 insertions(+), 0 deletions(-) > > > > > > > > > > > > diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h > > > > > > index 38ab3f4..385641d 100644 > > > > > > --- a/include/linux/usb/otg.h > > > > > > +++ b/include/linux/usb/otg.h > > > > > > @@ -117,6 +117,10 @@ struct usb_phy { > > > > > > > > > > > > int (*set_suspend)(struct usb_phy *x, > > > > > > > > > > > > int suspend); > > > > > > > > > > > > + /* notify phy connect status change */ > > > > > > + int (*notify_connect_change)(struct usb_phy *x, > > > > > > + int port, > > > > > > + int connected); > > > > > > > > > > > > }; > > > > > > > > > > No, please make this two different callbacks. As you see in your > > > > > code > > > > > > > > > > when you implemented this, you really have: > > > > > if (connected) { > > > > > > > > > > do this... > > > > > > > > > > } else { > > > > > > > > > > do that... > > > > > > > > > > } > > > > > > > > > > So you there is no consolidation in the driver, so just make it 2 > > > > > callbacks, especially as someone wanted to make connected -1 just > > > > > for a tristate, which would be impossible to document properly... > > > > > > > > Or he could make connected an enum maybe ? > > > > > > No, again, that will make nothing easier on the driver end at all. > > > > > > What's the problem with different functions that people keep resisting? > > > > The structure grows a few bytes ... so the kernel eats a bit more ram. > > The time it took you to write this email just made up for that extra > ram, sorry :) Heh :-) But is this email constantly allocated in your kernel space? > It doesn't matter, have people leaned nothing from our past mistakes? All right, I won't argue with you. Richard, let's obey. > greg k-h Best regards, Marek Vasut -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <201205212127.51020.marex-ynQEQJNshbs@public.gmane.org>]
* Re: [PATCH v2 01/12] usb: otg: add notify_connect_change callback [not found] ` <201205212127.51020.marex-ynQEQJNshbs@public.gmane.org> @ 2012-05-22 0:27 ` Richard Zhao 0 siblings, 0 replies; 91+ messages in thread From: Richard Zhao @ 2012-05-22 0:27 UTC (permalink / raw) To: Marek Vasut Cc: Greg KH, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Mon, May 21, 2012 at 09:27:50PM +0200, Marek Vasut wrote: > Dear Greg KH, > > > On Mon, May 21, 2012 at 08:32:21PM +0200, Marek Vasut wrote: > > > Dear Greg KH, > > > > > > > On Mon, May 21, 2012 at 07:36:40PM +0200, Marek Vasut wrote: > > > > > Dear Greg KH, > > > > > > > > > > > On Mon, May 21, 2012 at 05:23:46PM +0800, Richard Zhao wrote: > > > > > > > This let usb phy driver has a chance to change hw settings when > > > > > > > connect status change. > > > > > > > > > > > > > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > > > > > > > --- > > > > > > > > > > > > > > include/linux/usb/otg.h | 13 +++++++++++++ > > > > > > > 1 files changed, 13 insertions(+), 0 deletions(-) > > > > > > > > > > > > > > diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h > > > > > > > index 38ab3f4..385641d 100644 > > > > > > > --- a/include/linux/usb/otg.h > > > > > > > +++ b/include/linux/usb/otg.h > > > > > > > @@ -117,6 +117,10 @@ struct usb_phy { > > > > > > > > > > > > > > int (*set_suspend)(struct usb_phy *x, > > > > > > > > > > > > > > int suspend); > > > > > > > > > > > > > > + /* notify phy connect status change */ > > > > > > > + int (*notify_connect_change)(struct usb_phy *x, > > > > > > > + int port, > > > > > > > + int connected); > > > > > > > > > > > > > > }; > > > > > > > > > > > > No, please make this two different callbacks. As you see in your > > > > > > code > > > > > > > > > > > > when you implemented this, you really have: > > > > > > if (connected) { > > > > > > > > > > > > do this... > > > > > > > > > > > > } else { > > > > > > > > > > > > do that... > > > > > > > > > > > > } > > > > > > > > > > > > So you there is no consolidation in the driver, so just make it 2 > > > > > > callbacks, especially as someone wanted to make connected -1 just > > > > > > for a tristate, which would be impossible to document properly... > > > > > > > > > > Or he could make connected an enum maybe ? > > > > > > > > No, again, that will make nothing easier on the driver end at all. > > > > > > > > What's the problem with different functions that people keep resisting? > > > > > > The structure grows a few bytes ... so the kernel eats a bit more ram. > > > > The time it took you to write this email just made up for that extra > > ram, sorry :) > > Heh :-) But is this email constantly allocated in your kernel space? > > > It doesn't matter, have people leaned nothing from our past mistakes? > > All right, I won't argue with you. Richard, let's obey. Sure. I'll change it. I think Greq's point here is maintenance. And 4-byte ram consume don't cost to be noticed. Thanks Richard > > > greg k-h > > Best regards, > Marek Vasut > -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* [PATCH v2 02/12] usb: chipidea: permit driver bindings pass phy pointer [not found] ` <1337592237-5090-1-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-21 9:23 ` [PATCH v2 01/12] usb: otg: add notify_connect_change callback Richard Zhao @ 2012-05-21 9:23 ` Richard Zhao [not found] ` <1337592237-5090-3-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-21 9:23 ` [PATCH v2 03/12] usb: ehci-hcd: notify phy when connect change Richard Zhao ` (10 subsequent siblings) 12 siblings, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-21 9:23 UTC (permalink / raw) To: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ Cc: B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, richard.zhao-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Sometimes, the driver bindings may know what phy they use. For example, when using device tree, the usb controller may have a phandler pointing to usb phy. Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> --- drivers/usb/chipidea/ci.h | 2 ++ drivers/usb/chipidea/core.c | 4 ++++ drivers/usb/chipidea/host.c | 1 + drivers/usb/chipidea/udc.c | 11 +++++++---- include/linux/usb/chipidea.h | 3 +++ 5 files changed, 17 insertions(+), 4 deletions(-) diff --git a/drivers/usb/chipidea/ci.h b/drivers/usb/chipidea/ci.h index 50911f8..71d7080 100644 --- a/drivers/usb/chipidea/ci.h +++ b/drivers/usb/chipidea/ci.h @@ -160,6 +160,8 @@ struct ci13xxx { struct ci13xxx_udc_driver *udc_driver; int vbus_active; + /* FIXME: some day, we'll not use global phy */ + bool global_phy; struct usb_phy *transceiver; struct usb_hcd *hcd; }; diff --git a/drivers/usb/chipidea/core.c b/drivers/usb/chipidea/core.c index 15e03b3..0492786 100644 --- a/drivers/usb/chipidea/core.c +++ b/drivers/usb/chipidea/core.c @@ -365,6 +365,10 @@ static int __devinit ci_hdrc_probe(struct platform_device *pdev) ci->dev = dev; ci->udc_driver = dev->platform_data; + if (ci->udc_driver->phy) + ci->transceiver = ci->udc_driver->phy; + else + ci->global_phy = 1; ret = hw_device_init(ci, base); if (ret < 0) { diff --git a/drivers/usb/chipidea/host.c b/drivers/usb/chipidea/host.c index 9eacd21..7bc11a5 100644 --- a/drivers/usb/chipidea/host.c +++ b/drivers/usb/chipidea/host.c @@ -121,6 +121,7 @@ static int host_start(struct ci13xxx *ci) ehci = hcd_to_ehci(hcd); ehci->caps = ci->hw_bank.cap; ehci->has_hostpc = ci->hw_bank.lpm; + ehci->transceiver = ci->transceiver; ret = usb_add_hcd(hcd, 0, 0); if (ret) diff --git a/drivers/usb/chipidea/udc.c b/drivers/usb/chipidea/udc.c index 51f9694..22139fae 100644 --- a/drivers/usb/chipidea/udc.c +++ b/drivers/usb/chipidea/udc.c @@ -1687,7 +1687,8 @@ static int udc_start(struct ci13xxx *udc) udc->gadget.ep0 = &udc->ep0in->ep; - udc->transceiver = usb_get_transceiver(); + if (udc->global_phy) { + udc->transceiver = usb_get_transceiver(); if (udc->udc_driver->flags & CI13XXX_REQUIRE_TRANSCEIVER) { if (udc->transceiver == NULL) { @@ -1731,7 +1732,8 @@ static int udc_start(struct ci13xxx *udc) remove_trans: if (udc->transceiver) { otg_set_peripheral(udc->transceiver->otg, &udc->gadget); - usb_put_transceiver(udc->transceiver); + if (udc->global_phy) + usb_put_transceiver(udc->transceiver); } dev_err(dev, "error = %i\n", retval); @@ -1740,7 +1742,7 @@ remove_dbg: unreg_device: device_unregister(&udc->gadget.dev); put_transceiver: - if (udc->transceiver) + if (udc->transceiver && udc->global_phy) usb_put_transceiver(udc->transceiver); free_pools: dma_pool_destroy(udc->td_pool); @@ -1774,7 +1776,8 @@ static void udc_stop(struct ci13xxx *udc) if (udc->transceiver) { otg_set_peripheral(udc->transceiver->otg, NULL); - usb_put_transceiver(udc->transceiver); + if (udc->global_phy) + usb_put_transceiver(udc->transceiver); } dbg_remove_files(&udc->gadget.dev); device_unregister(&udc->gadget.dev); diff --git a/include/linux/usb/chipidea.h b/include/linux/usb/chipidea.h index edb90d6..c46c9e9 100644 --- a/include/linux/usb/chipidea.h +++ b/include/linux/usb/chipidea.h @@ -5,12 +5,15 @@ #ifndef __LINUX_USB_CHIPIDEA_H #define __LINUX_USB_CHIPIDEA_H +#include <linux/usb/otg.h> + struct ci13xxx; struct ci13xxx_udc_driver { const char *name; /* offset of the capability registers */ uintptr_t capoffset; unsigned power_budget; + struct usb_phy *phy; unsigned long flags; #define CI13XXX_REGS_SHARED BIT(0) #define CI13XXX_REQUIRE_TRANSCEIVER BIT(1) -- 1.7.5.4 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply related [flat|nested] 91+ messages in thread
[parent not found: <1337592237-5090-3-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org>]
* Re: [PATCH v2 02/12] usb: chipidea: permit driver bindings pass phy pointer [not found] ` <1337592237-5090-3-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> @ 2012-05-22 4:22 ` Marek Vasut 2012-05-22 9:59 ` Alexander Shishkin 1 sibling, 0 replies; 91+ messages in thread From: Marek Vasut @ 2012-05-22 4:22 UTC (permalink / raw) To: Richard Zhao Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Dear Richard Zhao, > Sometimes, the driver bindings may know what phy they use. > For example, when using device tree, the usb controller may have a > phandler pointing to usb phy. > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> Reviewed-by: Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> > --- > drivers/usb/chipidea/ci.h | 2 ++ > drivers/usb/chipidea/core.c | 4 ++++ > drivers/usb/chipidea/host.c | 1 + > drivers/usb/chipidea/udc.c | 11 +++++++---- > include/linux/usb/chipidea.h | 3 +++ > 5 files changed, 17 insertions(+), 4 deletions(-) > > diff --git a/drivers/usb/chipidea/ci.h b/drivers/usb/chipidea/ci.h > index 50911f8..71d7080 100644 > --- a/drivers/usb/chipidea/ci.h > +++ b/drivers/usb/chipidea/ci.h > @@ -160,6 +160,8 @@ struct ci13xxx { > > struct ci13xxx_udc_driver *udc_driver; > int vbus_active; > + /* FIXME: some day, we'll not use global phy */ > + bool global_phy; > struct usb_phy *transceiver; > struct usb_hcd *hcd; > }; > diff --git a/drivers/usb/chipidea/core.c b/drivers/usb/chipidea/core.c > index 15e03b3..0492786 100644 > --- a/drivers/usb/chipidea/core.c > +++ b/drivers/usb/chipidea/core.c > @@ -365,6 +365,10 @@ static int __devinit ci_hdrc_probe(struct > platform_device *pdev) > > ci->dev = dev; > ci->udc_driver = dev->platform_data; > + if (ci->udc_driver->phy) > + ci->transceiver = ci->udc_driver->phy; > + else > + ci->global_phy = 1; > > ret = hw_device_init(ci, base); > if (ret < 0) { > diff --git a/drivers/usb/chipidea/host.c b/drivers/usb/chipidea/host.c > index 9eacd21..7bc11a5 100644 > --- a/drivers/usb/chipidea/host.c > +++ b/drivers/usb/chipidea/host.c > @@ -121,6 +121,7 @@ static int host_start(struct ci13xxx *ci) > ehci = hcd_to_ehci(hcd); > ehci->caps = ci->hw_bank.cap; > ehci->has_hostpc = ci->hw_bank.lpm; > + ehci->transceiver = ci->transceiver; > > ret = usb_add_hcd(hcd, 0, 0); > if (ret) > diff --git a/drivers/usb/chipidea/udc.c b/drivers/usb/chipidea/udc.c > index 51f9694..22139fae 100644 > --- a/drivers/usb/chipidea/udc.c > +++ b/drivers/usb/chipidea/udc.c > @@ -1687,7 +1687,8 @@ static int udc_start(struct ci13xxx *udc) > > udc->gadget.ep0 = &udc->ep0in->ep; > > - udc->transceiver = usb_get_transceiver(); > + if (udc->global_phy) { > + udc->transceiver = usb_get_transceiver(); > > if (udc->udc_driver->flags & CI13XXX_REQUIRE_TRANSCEIVER) { > if (udc->transceiver == NULL) { > @@ -1731,7 +1732,8 @@ static int udc_start(struct ci13xxx *udc) > remove_trans: > if (udc->transceiver) { > otg_set_peripheral(udc->transceiver->otg, &udc->gadget); > - usb_put_transceiver(udc->transceiver); > + if (udc->global_phy) > + usb_put_transceiver(udc->transceiver); > } > > dev_err(dev, "error = %i\n", retval); > @@ -1740,7 +1742,7 @@ remove_dbg: > unreg_device: > device_unregister(&udc->gadget.dev); > put_transceiver: > - if (udc->transceiver) > + if (udc->transceiver && udc->global_phy) > usb_put_transceiver(udc->transceiver); > free_pools: > dma_pool_destroy(udc->td_pool); > @@ -1774,7 +1776,8 @@ static void udc_stop(struct ci13xxx *udc) > > if (udc->transceiver) { > otg_set_peripheral(udc->transceiver->otg, NULL); > - usb_put_transceiver(udc->transceiver); > + if (udc->global_phy) > + usb_put_transceiver(udc->transceiver); > } > dbg_remove_files(&udc->gadget.dev); > device_unregister(&udc->gadget.dev); > diff --git a/include/linux/usb/chipidea.h b/include/linux/usb/chipidea.h > index edb90d6..c46c9e9 100644 > --- a/include/linux/usb/chipidea.h > +++ b/include/linux/usb/chipidea.h > @@ -5,12 +5,15 @@ > #ifndef __LINUX_USB_CHIPIDEA_H > #define __LINUX_USB_CHIPIDEA_H > > +#include <linux/usb/otg.h> > + > struct ci13xxx; > struct ci13xxx_udc_driver { > const char *name; > /* offset of the capability registers */ > uintptr_t capoffset; > unsigned power_budget; > + struct usb_phy *phy; > unsigned long flags; > #define CI13XXX_REGS_SHARED BIT(0) > #define CI13XXX_REQUIRE_TRANSCEIVER BIT(1) Best regards, Marek Vasut -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* Re: [PATCH v2 02/12] usb: chipidea: permit driver bindings pass phy pointer [not found] ` <1337592237-5090-3-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-22 4:22 ` Marek Vasut @ 2012-05-22 9:59 ` Alexander Shishkin [not found] ` <87ehqcbko0.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org> 1 sibling, 1 reply; 91+ messages in thread From: Alexander Shishkin @ 2012-05-22 9:59 UTC (permalink / raw) To: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ Cc: B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, richard.zhao-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> writes: Hi, > Sometimes, the driver bindings may know what phy they use. > For example, when using device tree, the usb controller may have a > phandler pointing to usb phy. Some comments below: [snip] > ci->dev = dev; > ci->udc_driver = dev->platform_data; > + if (ci->udc_driver->phy) > + ci->transceiver = ci->udc_driver->phy; > + else > + ci->global_phy = 1; Nitpick: since it's a bool, don't you want to use "true" instead? [snip] > +#include <linux/usb/otg.h> > + > struct ci13xxx; > struct ci13xxx_udc_driver { > const char *name; > /* offset of the capability registers */ > uintptr_t capoffset; > unsigned power_budget; > + struct usb_phy *phy; This structure is really platform information, not per-device instance. Consider, for example, situation when you have 2 controllers in one system, they'll be using the same platform structure, but they'll have different phys. Right? Regards, -- Alex -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <87ehqcbko0.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org>]
* Re: [PATCH v2 02/12] usb: chipidea: permit driver bindings pass phy pointer [not found] ` <87ehqcbko0.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org> @ 2012-05-22 14:07 ` Marek Vasut [not found] ` <201205221607.31624.marex-ynQEQJNshbs@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Marek Vasut @ 2012-05-22 14:07 UTC (permalink / raw) To: Alexander Shishkin Cc: Richard Zhao, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Dear Alexander Shishkin, > Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> writes: > > Hi, > > > Sometimes, the driver bindings may know what phy they use. > > For example, when using device tree, the usb controller may have a > > phandler pointing to usb phy. > > Some comments below: > > [snip] > > > ci->dev = dev; > > ci->udc_driver = dev->platform_data; > > > > + if (ci->udc_driver->phy) > > + ci->transceiver = ci->udc_driver->phy; > > + else > > + ci->global_phy = 1; > > Nitpick: since it's a bool, don't you want to use "true" instead? > > [snip] > > > +#include <linux/usb/otg.h> > > + > > > > struct ci13xxx; > > struct ci13xxx_udc_driver { > > > > const char *name; > > /* offset of the capability registers */ > > uintptr_t capoffset; > > unsigned power_budget; > > > > + struct usb_phy *phy; > > This structure is really platform information, not per-device > instance. Consider, for example, situation when you have 2 controllers > in one system, they'll be using the same platform structure, but they'll > have different phys. Right? Not really, won't you allocate separate structure for them? > > Regards, > -- > Alex Best regards, Marek Vasut -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <201205221607.31624.marex-ynQEQJNshbs@public.gmane.org>]
* Re: [PATCH v2 02/12] usb: chipidea: permit driver bindings pass phy pointer [not found] ` <201205221607.31624.marex-ynQEQJNshbs@public.gmane.org> @ 2012-05-22 15:14 ` Richard Zhao 2012-05-23 1:35 ` Chen Peter-B29397 2012-05-23 8:08 ` Alexander Shishkin 1 sibling, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-22 15:14 UTC (permalink / raw) To: Marek Vasut Cc: Alexander Shishkin, Richard Zhao, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Tue, May 22, 2012 at 04:07:31PM +0200, Marek Vasut wrote: > Dear Alexander Shishkin, > > > Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> writes: > > > > Hi, > > > > > Sometimes, the driver bindings may know what phy they use. > > > For example, when using device tree, the usb controller may have a > > > phandler pointing to usb phy. > > > > Some comments below: > > > > [snip] > > > > > ci->dev = dev; > > > ci->udc_driver = dev->platform_data; > > > > > > + if (ci->udc_driver->phy) > > > + ci->transceiver = ci->udc_driver->phy; > > > + else > > > + ci->global_phy = 1; > > > > Nitpick: since it's a bool, don't you want to use "true" instead? Yes. Thanks. > > > > [snip] > > > > > +#include <linux/usb/otg.h> > > > + > > > > > > struct ci13xxx; > > > struct ci13xxx_udc_driver { > > > > > > const char *name; > > > /* offset of the capability registers */ > > > uintptr_t capoffset; > > > unsigned power_budget; > > > > > > + struct usb_phy *phy; > > > > This structure is really platform information, not per-device > > instance. Consider, for example, situation when you have 2 controllers > > in one system, they'll be using the same platform structure, but they'll > > have different phys. Right? > > Not really, won't you allocate separate structure for them? Finally, we'll get phy instance from phy lib. But I don't know when it is ready. So I add this code for handy use before phy lib. For now, it's ok. When I register platform device, it dup the plat data memory. Thanks Richard > > > > > Regards, > > -- > > Alex > > Best regards, > Marek Vasut > -- > To unsubscribe from this list: send the line "unsubscribe linux-usb" in > the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* RE: [PATCH v2 02/12] usb: chipidea: permit driver bindings pass phy pointer 2012-05-22 15:14 ` Richard Zhao @ 2012-05-23 1:35 ` Chen Peter-B29397 0 siblings, 0 replies; 91+ messages in thread From: Chen Peter-B29397 @ 2012-05-23 1:35 UTC (permalink / raw) To: Richard Zhao, Marek Vasut Cc: Alexander Shishkin, Zhao Richard-B20223, linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org, Li Frank-B20596, shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org, kernel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org, Estevam Fabio-R49496, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz@public.gmane.org, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA@public.gmane.org > Finally, we'll get phy instance from phy lib. But I don't know when it > is ready. So I add this code for handy use before phy lib. > not phy lib, but phy driver. lib is different with driver. > For now, it's ok. When I register platform device, it dup the plat data > memory. > > Thanks > Richard > > > > > > > > Regards, > > > -- > > > Alex > > > > Best regards, > > Marek Vasut > > -- > > To unsubscribe from this list: send the line "unsubscribe linux-usb" in > > the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org > > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* Re: [PATCH v2 02/12] usb: chipidea: permit driver bindings pass phy pointer [not found] ` <201205221607.31624.marex-ynQEQJNshbs@public.gmane.org> 2012-05-22 15:14 ` Richard Zhao @ 2012-05-23 8:08 ` Alexander Shishkin 1 sibling, 0 replies; 91+ messages in thread From: Alexander Shishkin @ 2012-05-23 8:08 UTC (permalink / raw) To: Marek Vasut Cc: Richard Zhao, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> writes: > Dear Alexander Shishkin, > >> Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> writes: >> >> Hi, >> >> > Sometimes, the driver bindings may know what phy they use. >> > For example, when using device tree, the usb controller may have a >> > phandler pointing to usb phy. >> >> Some comments below: >> >> [snip] >> >> > ci->dev = dev; >> > ci->udc_driver = dev->platform_data; >> > >> > + if (ci->udc_driver->phy) >> > + ci->transceiver = ci->udc_driver->phy; >> > + else >> > + ci->global_phy = 1; >> >> Nitpick: since it's a bool, don't you want to use "true" instead? >> >> [snip] >> >> > +#include <linux/usb/otg.h> >> > + >> > >> > struct ci13xxx; >> > struct ci13xxx_udc_driver { >> > >> > const char *name; >> > /* offset of the capability registers */ >> > uintptr_t capoffset; >> > unsigned power_budget; >> > >> > + struct usb_phy *phy; >> >> This structure is really platform information, not per-device >> instance. Consider, for example, situation when you have 2 controllers >> in one system, they'll be using the same platform structure, but they'll >> have different phys. Right? > > Not really, won't you allocate separate structure for them? Currently, it's a static structure, see 05/12 and my comment there. Regards, -- Alex -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* [PATCH v2 03/12] usb: ehci-hcd: notify phy when connect change [not found] ` <1337592237-5090-1-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-21 9:23 ` [PATCH v2 01/12] usb: otg: add notify_connect_change callback Richard Zhao 2012-05-21 9:23 ` [PATCH v2 02/12] usb: chipidea: permit driver bindings pass phy pointer Richard Zhao @ 2012-05-21 9:23 ` Richard Zhao [not found] ` <1337592237-5090-4-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-21 9:23 ` [PATCH v2 04/12] usb: otg: add basic mxs phy driver support Richard Zhao ` (9 subsequent siblings) 12 siblings, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-21 9:23 UTC (permalink / raw) To: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ Cc: B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, richard.zhao-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA It still has below limitations: - it does not work for multi-phy ehci - the best place is after debounce, but I can't get phy there Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> --- drivers/usb/host/ehci-hcd.c | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-) diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c index 5597e60..389252e 100644 --- a/drivers/usb/host/ehci-hcd.c +++ b/drivers/usb/host/ehci-hcd.c @@ -928,6 +928,15 @@ static irqreturn_t ehci_irq (struct usb_hcd *hcd) pstatus = ehci_readl(ehci, &ehci->regs->port_status[i]); + /* FIXME: + * - it does not work for multi-phy ehci + * - the best place is after debounce, but I can't get + * phy there + */ + if ((pstatus & PORT_CSC) && ehci->transceiver) + usb_phy_notify_connect_change(ehci->transceiver, + i, pstatus & PORT_CONNECT); + if (pstatus & PORT_OWNER) continue; if (!(test_bit(i, &ehci->suspended_ports) && -- 1.7.5.4 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply related [flat|nested] 91+ messages in thread
[parent not found: <1337592237-5090-4-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org>]
* Re: [PATCH v2 03/12] usb: ehci-hcd: notify phy when connect change [not found] ` <1337592237-5090-4-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> @ 2012-05-22 4:23 ` Marek Vasut [not found] ` <201205220623.49878.marex-ynQEQJNshbs@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Marek Vasut @ 2012-05-22 4:23 UTC (permalink / raw) To: Richard Zhao Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Dear Richard Zhao, > It still has below limitations: > - it does not work for multi-phy ehci > - the best place is after debounce, but I can't get > phy there Now, you'll laugh as this would be an obviously stupid question -- but where exactly does the debounce happen in the code? > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > --- > drivers/usb/host/ehci-hcd.c | 9 +++++++++ > 1 files changed, 9 insertions(+), 0 deletions(-) > > diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c > index 5597e60..389252e 100644 > --- a/drivers/usb/host/ehci-hcd.c > +++ b/drivers/usb/host/ehci-hcd.c > @@ -928,6 +928,15 @@ static irqreturn_t ehci_irq (struct usb_hcd *hcd) > pstatus = ehci_readl(ehci, > &ehci->regs->port_status[i]); > > + /* FIXME: > + * - it does not work for multi-phy ehci > + * - the best place is after debounce, but I can't get > + * phy there > + */ > + if ((pstatus & PORT_CSC) && ehci->transceiver) > + usb_phy_notify_connect_change(ehci->transceiver, > + i, pstatus & PORT_CONNECT); > + > if (pstatus & PORT_OWNER) > continue; > if (!(test_bit(i, &ehci->suspended_ports) && Best regards, Marek Vasut -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <201205220623.49878.marex-ynQEQJNshbs@public.gmane.org>]
* Re: [PATCH v2 03/12] usb: ehci-hcd: notify phy when connect change [not found] ` <201205220623.49878.marex-ynQEQJNshbs@public.gmane.org> @ 2012-05-22 4:36 ` Richard Zhao 0 siblings, 0 replies; 91+ messages in thread From: Richard Zhao @ 2012-05-22 4:36 UTC (permalink / raw) To: Marek Vasut Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Hi Marek, On Tue, May 22, 2012 at 06:23:49AM +0200, Marek Vasut wrote: > Dear Richard Zhao, > > > It still has below limitations: > > - it does not work for multi-phy ehci > > - the best place is after debounce, but I can't get > > phy there > > Now, you'll laugh as this would be an obviously stupid question -- but where > exactly does the debounce happen in the code? I meant hub_port_debounce function at drivers/usb/core/hub.c. Thanks Richard -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* [PATCH v2 04/12] usb: otg: add basic mxs phy driver support [not found] ` <1337592237-5090-1-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> ` (2 preceding siblings ...) 2012-05-21 9:23 ` [PATCH v2 03/12] usb: ehci-hcd: notify phy when connect change Richard Zhao @ 2012-05-21 9:23 ` Richard Zhao 2012-05-21 9:23 ` [PATCH v2 05/12] usb: chipidea: add imx driver binding Richard Zhao ` (8 subsequent siblings) 12 siblings, 0 replies; 91+ messages in thread From: Richard Zhao @ 2012-05-21 9:23 UTC (permalink / raw) To: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ Cc: B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, richard.zhao-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Peter Chen mxs phy is used in Freescale i.MX SoCs, for example imx23, imx28, imx6Q. This patch adds the basic host support. Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> Signed-off-by: Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> Cc: Peter Chen <peter.chen-KZfg59tc24xl57MIdRCFDg@public.gmane.org> --- Documentation/devicetree/bindings/usb/mxs-phy.txt | 13 ++ drivers/usb/otg/Kconfig | 8 + drivers/usb/otg/Makefile | 1 + drivers/usb/otg/mxs-phy.c | 196 +++++++++++++++++++++ 4 files changed, 218 insertions(+), 0 deletions(-) create mode 100644 Documentation/devicetree/bindings/usb/mxs-phy.txt create mode 100644 drivers/usb/otg/mxs-phy.c diff --git a/Documentation/devicetree/bindings/usb/mxs-phy.txt b/Documentation/devicetree/bindings/usb/mxs-phy.txt new file mode 100644 index 0000000..5835b27 --- /dev/null +++ b/Documentation/devicetree/bindings/usb/mxs-phy.txt @@ -0,0 +1,13 @@ +* Freescale MXS USB Phy Device + +Required properties: +- compatible: Should be "fsl,imx23-usbphy" +- reg: Should contain registers location and length +- interrupts: Should contain phy interrupt + +Example: +usbphy1: usbphy@020c9000 { + compatible = "fsl,imx6q-usbphy", "fsl,imx23-usbphy"; + reg = <0x020c9000 0x1000>; + interrupts = <0 44 0x04>; +}; diff --git a/drivers/usb/otg/Kconfig b/drivers/usb/otg/Kconfig index 5c87db0..3a9bc44 100644 --- a/drivers/usb/otg/Kconfig +++ b/drivers/usb/otg/Kconfig @@ -116,6 +116,14 @@ config FSL_USB2_OTG help Enable this to support Freescale USB OTG transceiver. +config USB_MXS_PHY + tristate "Freescale MXS USB PHY support" + select USB_OTG_UTILS + help + Enable this to support the Freescale MXS USB PHY. + + MXS Phy is used by some of the i.MX SoCs, for example imx23/28/6x. + config USB_MV_OTG tristate "Marvell USB OTG support" depends on USB_EHCI_MV && USB_MV_UDC && USB_SUSPEND diff --git a/drivers/usb/otg/Makefile b/drivers/usb/otg/Makefile index 41aa509..a844b8d 100644 --- a/drivers/usb/otg/Makefile +++ b/drivers/usb/otg/Makefile @@ -20,4 +20,5 @@ obj-$(CONFIG_USB_MSM_OTG) += msm_otg.o obj-$(CONFIG_AB8500_USB) += ab8500-usb.o fsl_usb2_otg-objs := fsl_otg.o otg_fsm.o obj-$(CONFIG_FSL_USB2_OTG) += fsl_usb2_otg.o +obj-$(CONFIG_USB_MXS_PHY) += mxs-phy.o obj-$(CONFIG_USB_MV_OTG) += mv_otg.o diff --git a/drivers/usb/otg/mxs-phy.c b/drivers/usb/otg/mxs-phy.c new file mode 100644 index 0000000..cc232ee --- /dev/null +++ b/drivers/usb/otg/mxs-phy.c @@ -0,0 +1,196 @@ +/* + * Copyright 2012 Freescale Semiconductor, Inc. + * Copyright (C) 2012 Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> + * on behalf of DENX Software Engineering GmbH + * + * The code contained herein is licensed under the GNU General Public + * License. You may obtain a copy of the GNU General Public License + * Version 2 or later at the following locations: + * + * http://www.opensource.org/licenses/gpl-license.html + * http://www.gnu.org/copyleft/gpl.html + */ + +#include <linux/module.h> +#include <linux/kernel.h> +#include <linux/platform_device.h> +#include <linux/clk.h> +#include <linux/usb/otg.h> +#include <linux/delay.h> +#include <linux/err.h> +#include <linux/io.h> + +#define DRIVER_NAME "mxs_phy" + +#define HW_USBPHY_PWD 0x00 +#define HW_USBPHY_CTRL 0x30 +#define HW_USBPHY_CTRL_SET 0x34 +#define HW_USBPHY_CTRL_CLR 0x38 + +#define BM_USBPHY_CTRL_SFTRST BIT(31) +#define BM_USBPHY_CTRL_CLKGATE BIT(30) +#define BM_USBPHY_CTRL_ENUTMILEVEL3 BIT(15) +#define BM_USBPHY_CTRL_ENUTMILEVEL2 BIT(14) +#define BM_USBPHY_CTRL_ENHOSTDISCONDETECT BIT(1) + +struct mxs_phy { + struct usb_phy phy; + struct clk *clk; + int connected:1; +}; + +#define to_mxs_phy(p) container_of((p), struct mxs_phy, phy) + +static void mxs_phy_hw_init(struct mxs_phy *mxs_phy) +{ + void __iomem *base = mxs_phy->phy.io_priv; + + writel_relaxed(BM_USBPHY_CTRL_CLKGATE, base + HW_USBPHY_CTRL_CLR); + + /* Reset USBPHY module */ + writel_relaxed(BM_USBPHY_CTRL_SFTRST, base + HW_USBPHY_CTRL_SET); + udelay(10); + + /* Remove CLKGATE and SFTRST */ + writel_relaxed(BM_USBPHY_CTRL_CLKGATE | BM_USBPHY_CTRL_SFTRST, + base + HW_USBPHY_CTRL_CLR); + udelay(10); + + /* Power up the PHY */ + writel_relaxed(0, base + HW_USBPHY_PWD); + + /* enable FS/LS device */ + writel_relaxed(BM_USBPHY_CTRL_ENUTMILEVEL2 | + BM_USBPHY_CTRL_ENUTMILEVEL3, + base + HW_USBPHY_CTRL_SET); + +} + +static int mxs_phy_init(struct usb_phy *phy) +{ + struct mxs_phy *mxs_phy = to_mxs_phy(phy); + + clk_prepare_enable(mxs_phy->clk); + mxs_phy_hw_init(mxs_phy); + + return 0; +} + +static void mxs_phy_shutdown(struct usb_phy *phy) +{ + struct mxs_phy *mxs_phy = to_mxs_phy(phy); + + writel_relaxed(BM_USBPHY_CTRL_CLKGATE, + phy->io_priv + HW_USBPHY_CTRL_SET); + + clk_disable_unprepare(mxs_phy->clk); +} + +static int mxs_phy_connect_change(struct usb_phy *phy, int port, int connected) +{ + struct mxs_phy *mxs_phy = to_mxs_phy(phy); + + dev_dbg(phy->dev, "connect change: port %d, connected %d\n", port, connected); + + if (connected) { + if (mxs_phy->connected) + return 0; + mxs_phy_hw_init(to_mxs_phy(phy)); + writel_relaxed(BM_USBPHY_CTRL_ENHOSTDISCONDETECT, + phy->io_priv + HW_USBPHY_CTRL_SET); + mxs_phy->connected = 1; + } else { + if (!mxs_phy->connected) + return 0; + writel_relaxed(BM_USBPHY_CTRL_ENHOSTDISCONDETECT, + phy->io_priv + HW_USBPHY_CTRL_CLR); + mxs_phy->connected = 0; + } + + 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; + + res = platform_get_resource(pdev, IORESOURCE_MEM, 0); + if (!res) { + dev_err(&pdev->dev, "can't get device resources\n"); + return -ENOENT; + } + + base = devm_request_and_ioremap(&pdev->dev, res); + if (!base) + return -EBUSY; + + clk = devm_clk_get(&pdev->dev, NULL); + if (IS_ERR(clk)) { + dev_err(&pdev->dev, "can't get the clock!"); + return PTR_ERR(clk); + } + + mxs_phy = devm_kzalloc(&pdev->dev, sizeof(*mxs_phy), GFP_KERNEL); + if (!mxs_phy) { + dev_err(&pdev->dev, "Failed to allocate USB PHY structure!\n"); + return -ENOMEM; + } + + mxs_phy->phy.io_priv = base; + mxs_phy->phy.dev = &pdev->dev; + mxs_phy->phy.label = DRIVER_NAME; + mxs_phy->phy.init = mxs_phy_init; + mxs_phy->phy.shutdown = mxs_phy_shutdown; + mxs_phy->phy.notify_connect_change = mxs_phy_connect_change; + + ATOMIC_INIT_NOTIFIER_HEAD(&mxs_phy->phy.notifier); + + mxs_phy->clk = clk; + + platform_set_drvdata(pdev, &mxs_phy->phy); + + return 0; +} + +static int __devexit mxs_phy_remove(struct platform_device *pdev) +{ + platform_set_drvdata(pdev, NULL); + + return 0; +} + +static const struct of_device_id mxs_phy_dt_ids[] = { + { .compatible = "fsl,imx23-usbphy", }, + { /* sentinel */ } +}; + +static struct platform_driver mxs_phy_driver = { + .probe = mxs_phy_probe, + .remove = __devexit_p(mxs_phy_remove), + .driver = { + .name = DRIVER_NAME, + .owner = THIS_MODULE, + .of_match_table = mxs_phy_dt_ids, + }, +}; + +static int __init mxs_phy_module_init(void) +{ + return platform_driver_register(&mxs_phy_driver); +} +postcore_initcall(mxs_phy_module_init); + +static void __exit mxs_phy_module_exit(void) +{ + platform_driver_unregister(&mxs_phy_driver); +} +module_exit(mxs_phy_module_exit); + +MODULE_ALIAS("platform:mxs-usb-phy"); +MODULE_AUTHOR("Marek Vasut <marex-ynQEQJNshbs@public.gmane.org>"); +MODULE_AUTHOR("Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org>"); +MODULE_DESCRIPTION("Freescale MXS USB PHY driver"); +MODULE_LICENSE("GPL"); -- 1.7.5.4 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply related [flat|nested] 91+ messages in thread
* [PATCH v2 05/12] usb: chipidea: add imx driver binding [not found] ` <1337592237-5090-1-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> ` (3 preceding siblings ...) 2012-05-21 9:23 ` [PATCH v2 04/12] usb: otg: add basic mxs phy driver support Richard Zhao @ 2012-05-21 9:23 ` Richard Zhao [not found] ` <1337592237-5090-6-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-21 9:23 ` [PATCH v2 06/12] ARM: imx6q: correct device name of usbphy and usb controller clock export Richard Zhao ` (7 subsequent siblings) 12 siblings, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-21 9:23 UTC (permalink / raw) To: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ Cc: B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, richard.zhao-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Peter Chen Just add host support. Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> Signed-off-by: Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> Cc: Peter Chen <peter.chen-KZfg59tc24xl57MIdRCFDg@public.gmane.org> Cc: Alexander Shishkin <alexander.shishkin-VuQAYsv1563Yd54FQh9/CA@public.gmane.org> Cc: Greg Kroah-Hartman <gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org> --- .../devicetree/bindings/usb/ci13xxx-imx.txt | 20 ++ drivers/usb/chipidea/Makefile | 8 + drivers/usb/chipidea/ci13xxx_imx.c | 191 ++++++++++++++++++++ 3 files changed, 219 insertions(+), 0 deletions(-) create mode 100644 Documentation/devicetree/bindings/usb/ci13xxx-imx.txt create mode 100644 drivers/usb/chipidea/ci13xxx_imx.c diff --git a/Documentation/devicetree/bindings/usb/ci13xxx-imx.txt b/Documentation/devicetree/bindings/usb/ci13xxx-imx.txt new file mode 100644 index 0000000..beb75d6 --- /dev/null +++ b/Documentation/devicetree/bindings/usb/ci13xxx-imx.txt @@ -0,0 +1,20 @@ +* Freescale i.MX ci13xxx usb controllers + +Required properties: +- compatible: Should be "fsl,imx31-usb" +- reg: Should contain registers location and length +- interrupts: Should contain controller interrupt + +Optional properties: +- fsl,usbphy: phandler of usb phy that connects to the only one port +- fsl,hub-reset-gpios: gpio used to reset on-board usb hub +- fsl,vbus-power-gpios: gpio used to set vbus power of the only one port + +Examples: +usb@02184000 { /* USB OTG */ + compatible = "fsl,imx6q-usb", "fsl,imx31-usb"; + reg = <0x02184000 0x200>; + interrupts = <0 43 0x04>; + fsl,usbphy = <&usbphy1>; + fsl,vbus-power-gpios = <&gpio3 22 0>; +}; diff --git a/drivers/usb/chipidea/Makefile b/drivers/usb/chipidea/Makefile index cc34937..ffa2f63 100644 --- a/drivers/usb/chipidea/Makefile +++ b/drivers/usb/chipidea/Makefile @@ -12,3 +12,11 @@ endif ifneq ($(CONFIG_ARCH_MSM),) obj-$(CONFIG_USB_CHIPIDEA) += ci13xxx_msm.o endif + +ifneq ($(CONFIG_ARCH_MXC),) + obj-$(CONFIG_USB_CHIPIDEA) += ci13xxx_imx.o +else + ifneq ($(CONFIG_ARCH_MXS),) + obj-$(CONFIG_USB_CHIPIDEA) += ci13xxx_imx.o + endif +endif diff --git a/drivers/usb/chipidea/ci13xxx_imx.c b/drivers/usb/chipidea/ci13xxx_imx.c new file mode 100644 index 0000000..9f64b3c --- /dev/null +++ b/drivers/usb/chipidea/ci13xxx_imx.c @@ -0,0 +1,191 @@ +/* + * Copyright 2012 Freescale Semiconductor, Inc. + * Copyright (C) 2012 Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> + * on behalf of DENX Software Engineering GmbH + * + * The code contained herein is licensed under the GNU General Public + * License. You may obtain a copy of the GNU General Public License + * Version 2 or later at the following locations: + * + * http://www.opensource.org/licenses/gpl-license.html + * http://www.gnu.org/copyleft/gpl.html + */ + +#include <linux/module.h> +#include <linux/of_platform.h> +#include <linux/of_gpio.h> +#include <linux/platform_device.h> +#include <linux/pm_runtime.h> +#include <linux/usb/chipidea.h> +#include <linux/usb/ehci_def.h> +#include <linux/usb/gadget.h> +#include <linux/usb/chipidea.h> +#include <linux/usb/otg.h> +#include <linux/dma-mapping.h> +#include <linux/clk.h> +#include <linux/string.h> + +#include "ci.h" + +#define PORT0_STATUS 0x184 + +#define pdev_to_phy(pdev) \ + ((struct usb_phy *)platform_get_drvdata(pdev)) + +struct ci13xxx_imx_data { + struct device_node *phy_np; + struct usb_phy *phy; + struct platform_device *ci_pdev; + struct clk *clk; + int gpio_hub_rst, gpio_vbus_pwr; +}; + +static struct ci13xxx_udc_driver ci13xxx_imx_udc_driver __devinitdata = { + .name = "ci13xxx_imx", + .flags = CI13XXX_REQUIRE_TRANSCEIVER | + CI13XXX_PULLUP_ON_VBUS | + CI13XXX_DISABLE_STREAMING, + .capoffset = DEF_CAPOFFSET, +}; + +static int __devinit ci13xxx_imx_probe(struct platform_device *pdev) +{ + struct ci13xxx_imx_data *data; + struct platform_device *plat_ci, *phy_pdev; + struct platform_device_info ci_pdevinfo; + struct device_node *phy_np; + struct resource *res; + int vbus_pwr; + int ret; + + data = devm_kzalloc(&pdev->dev, sizeof(*data), GFP_KERNEL); + if (!data) { + dev_err(&pdev->dev, "Failed to allocate CI13xxx-IMX data!\n"); + return -ENOMEM; + } + data->gpio_hub_rst = -1; + data->gpio_vbus_pwr = -1; + + res = platform_get_resource(pdev, IORESOURCE_MEM, 0); + if (!res) { + dev_err(&pdev->dev, "can't get device resources!\n"); + return -ENOENT; + } + + data->clk = devm_clk_get(&pdev->dev, NULL); + if (IS_ERR(data->clk)) { + dev_err(&pdev->dev, "Failed to get clock!\n"); + return PTR_ERR(data->clk); + } + + ret = clk_prepare_enable(data->clk); + if (ret) { + dev_err(&pdev->dev, "Failed to prepare or enable clock!\n"); + return ret; + } + + phy_np = of_parse_phandle(pdev->dev.of_node, "fsl,usbphy", 0); + if (phy_np) { + data->phy_np = phy_np; + phy_pdev = of_find_device_by_node(phy_np); + if (phy_pdev) { + struct usb_phy *phy; + phy = pdev_to_phy(phy_pdev); + if (phy && + try_module_get(phy_pdev->dev.driver->owner)) { + usb_phy_init(phy); + data->phy = phy; + } + } + } + + /* we only support host now, so enable vbus here */ + vbus_pwr = of_get_named_gpio(pdev->dev.of_node, + "fsl,vbus-power-gpios", 0); + if (gpio_is_valid(vbus_pwr) && + !devm_gpio_request(&pdev->dev, vbus_pwr, "vbus-pwr")) { + gpio_direction_output(vbus_pwr, 1); + data->gpio_hub_rst = vbus_pwr; + } + + ci13xxx_imx_udc_driver.phy = data->phy; + memset(&ci_pdevinfo, 0, sizeof(ci_pdevinfo)); + ci_pdevinfo.parent = &pdev->dev; + ci_pdevinfo.name = "ci_hdrc"; + ci_pdevinfo.id = (int)res->start; + ci_pdevinfo.res = pdev->resource; + ci_pdevinfo.num_res = pdev->num_resources; + ci_pdevinfo.data = &ci13xxx_imx_udc_driver; + ci_pdevinfo.size_data = sizeof(ci13xxx_imx_udc_driver); + ci_pdevinfo.dma_mask = DMA_BIT_MASK(32); + + plat_ci = platform_device_register_full(&ci_pdevinfo); + if (IS_ERR(plat_ci)) { + dev_err(&pdev->dev, "can't register ci_hdrc platform device\n"); + ret = PTR_ERR(plat_ci); + goto put_np; + } + + data->ci_pdev = plat_ci; + platform_set_drvdata(pdev, data); + + pm_runtime_no_callbacks(&pdev->dev); + pm_runtime_enable(&pdev->dev); + + return 0; + +put_np: + if (phy_np) + of_node_put(phy_np); + return ret; +} + +static int __devexit ci13xxx_imx_remove(struct platform_device *pdev) +{ + struct ci13xxx_imx_data *data = platform_get_drvdata(pdev); + + kfree(data->ci_pdev->dev.dma_mask); + data->ci_pdev->dev.dma_mask = NULL; + platform_device_unregister(data->ci_pdev); + + if (data->gpio_vbus_pwr != -1) + gpio_direction_output(data->gpio_vbus_pwr, 0); + if (data->gpio_hub_rst != -1) + gpio_direction_output(data->gpio_hub_rst, 0); + + if (data->phy) { + usb_phy_shutdown(data->phy); + module_put(data->phy->dev->driver->owner); + } + + of_node_put(data->phy_np); + + clk_disable_unprepare(data->clk); + + platform_set_drvdata(pdev, NULL); + + return 0; +} + +static const struct of_device_id ci13xxx_imx_dt_ids[] = { + { .compatible = "fsl,imx31-usb", }, + { /* sentinel */ } +}; + +static struct platform_driver ci13xxx_imx_driver = { + .probe = ci13xxx_imx_probe, + .remove = __devexit_p(ci13xxx_imx_remove), + .driver = { + .name = "imx_usb", + .owner = THIS_MODULE, + .of_match_table = ci13xxx_imx_dt_ids, + }, +}; + +module_platform_driver(ci13xxx_imx_driver); + +MODULE_ALIAS("platform:imx-usb"); +MODULE_LICENSE("GPL v2"); +MODULE_DESCRIPTION("CI13xxx i.MX USB binding"); +MODULE_AUTHOR("Marek Vasut <marex-ynQEQJNshbs@public.gmane.org>"); +MODULE_AUTHOR("Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org>"); -- 1.7.5.4 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply related [flat|nested] 91+ messages in thread
[parent not found: <1337592237-5090-6-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org>]
* Re: [PATCH v2 05/12] usb: chipidea: add imx driver binding [not found] ` <1337592237-5090-6-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> @ 2012-05-22 4:30 ` Marek Vasut [not found] ` <201205220630.57007.marex-ynQEQJNshbs@public.gmane.org> 2012-05-22 10:21 ` Alexander Shishkin 1 sibling, 1 reply; 91+ messages in thread From: Marek Vasut @ 2012-05-22 4:30 UTC (permalink / raw) To: Richard Zhao Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Peter Chen Dear Richard Zhao, > Just add host support. Maybe rephrase it to something like "This patch supports only the host-mode functionality so far." > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > Signed-off-by: Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> > Cc: Peter Chen <peter.chen-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > Cc: Alexander Shishkin <alexander.shishkin-VuQAYsv1563Yd54FQh9/CA@public.gmane.org> > Cc: Greg Kroah-Hartman <gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org> > --- > .../devicetree/bindings/usb/ci13xxx-imx.txt | 20 ++ > drivers/usb/chipidea/Makefile | 8 + > drivers/usb/chipidea/ci13xxx_imx.c | 191 > ++++++++++++++++++++ 3 files changed, 219 insertions(+), 0 deletions(-) > create mode 100644 Documentation/devicetree/bindings/usb/ci13xxx-imx.txt > create mode 100644 drivers/usb/chipidea/ci13xxx_imx.c > > diff --git a/Documentation/devicetree/bindings/usb/ci13xxx-imx.txt > b/Documentation/devicetree/bindings/usb/ci13xxx-imx.txt new file mode > 100644 > index 0000000..beb75d6 > --- /dev/null > +++ b/Documentation/devicetree/bindings/usb/ci13xxx-imx.txt > @@ -0,0 +1,20 @@ > +* Freescale i.MX ci13xxx usb controllers > + > +Required properties: > +- compatible: Should be "fsl,imx31-usb" > +- reg: Should contain registers location and length > +- interrupts: Should contain controller interrupt > + > +Optional properties: > +- fsl,usbphy: phandler of usb phy that connects to the only one port > +- fsl,hub-reset-gpios: gpio used to reset on-board usb hub > +- fsl,vbus-power-gpios: gpio used to set vbus power of the only one port > + > +Examples: > +usb@02184000 { /* USB OTG */ > + compatible = "fsl,imx6q-usb", "fsl,imx31-usb"; > + reg = <0x02184000 0x200>; > + interrupts = <0 43 0x04>; > + fsl,usbphy = <&usbphy1>; > + fsl,vbus-power-gpios = <&gpio3 22 0>; > +}; > diff --git a/drivers/usb/chipidea/Makefile b/drivers/usb/chipidea/Makefile > index cc34937..ffa2f63 100644 > --- a/drivers/usb/chipidea/Makefile > +++ b/drivers/usb/chipidea/Makefile > @@ -12,3 +12,11 @@ endif > ifneq ($(CONFIG_ARCH_MSM),) > obj-$(CONFIG_USB_CHIPIDEA) += ci13xxx_msm.o > endif > + > +ifneq ($(CONFIG_ARCH_MXC),) > + obj-$(CONFIG_USB_CHIPIDEA) += ci13xxx_imx.o > +else > + ifneq ($(CONFIG_ARCH_MXS),) > + obj-$(CONFIG_USB_CHIPIDEA) += ci13xxx_imx.o > + endif > +endif I think someone commented on these patches (my previous set of patches actually), that this should be fixed in a way that you can actually select which bindings you want to compile in (and not limit it via Makefile like it's now). > diff --git a/drivers/usb/chipidea/ci13xxx_imx.c > b/drivers/usb/chipidea/ci13xxx_imx.c new file mode 100644 > index 0000000..9f64b3c > --- /dev/null > +++ b/drivers/usb/chipidea/ci13xxx_imx.c > @@ -0,0 +1,191 @@ > +/* > + * Copyright 2012 Freescale Semiconductor, Inc. > + * Copyright (C) 2012 Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> > + * on behalf of DENX Software Engineering GmbH > + * > + * The code contained herein is licensed under the GNU General Public > + * License. You may obtain a copy of the GNU General Public License > + * Version 2 or later at the following locations: > + * > + * http://www.opensource.org/licenses/gpl-license.html > + * http://www.gnu.org/copyleft/gpl.html > + */ > + > +#include <linux/module.h> > +#include <linux/of_platform.h> > +#include <linux/of_gpio.h> > +#include <linux/platform_device.h> > +#include <linux/pm_runtime.h> > +#include <linux/usb/chipidea.h> > +#include <linux/usb/ehci_def.h> > +#include <linux/usb/gadget.h> > +#include <linux/usb/chipidea.h> > +#include <linux/usb/otg.h> > +#include <linux/dma-mapping.h> > +#include <linux/clk.h> > +#include <linux/string.h> > + > +#include "ci.h" > + > +#define PORT0_STATUS 0x184 > + > +#define pdev_to_phy(pdev) \ > + ((struct usb_phy *)platform_get_drvdata(pdev)) > + > +struct ci13xxx_imx_data { > + struct device_node *phy_np; > + struct usb_phy *phy; > + struct platform_device *ci_pdev; > + struct clk *clk; > + int gpio_hub_rst, gpio_vbus_pwr; > +}; > + > +static struct ci13xxx_udc_driver ci13xxx_imx_udc_driver __devinitdata = { > + .name = "ci13xxx_imx", > + .flags = CI13XXX_REQUIRE_TRANSCEIVER | > + CI13XXX_PULLUP_ON_VBUS | > + CI13XXX_DISABLE_STREAMING, > + .capoffset = DEF_CAPOFFSET, > +}; > + > +static int __devinit ci13xxx_imx_probe(struct platform_device *pdev) > +{ > + struct ci13xxx_imx_data *data; > + struct platform_device *plat_ci, *phy_pdev; > + struct platform_device_info ci_pdevinfo; > + struct device_node *phy_np; > + struct resource *res; > + int vbus_pwr; > + int ret; > + > + data = devm_kzalloc(&pdev->dev, sizeof(*data), GFP_KERNEL); > + if (!data) { > + dev_err(&pdev->dev, "Failed to allocate CI13xxx-IMX data!\n"); > + return -ENOMEM; > + } > + data->gpio_hub_rst = -1; > + data->gpio_vbus_pwr = -1; This really freaks me out. Maybe we should have some kind of a regulator that manages the VBUS and let this driver toggle the regulator when fitting? That'd solve the problem to some extent, as other people would be able to supply NOP regulator. > + res = platform_get_resource(pdev, IORESOURCE_MEM, 0); > + if (!res) { > + dev_err(&pdev->dev, "can't get device resources!\n"); Can't ... capital "C" ;-) > + return -ENOENT; > + } > + > + data->clk = devm_clk_get(&pdev->dev, NULL); > + if (IS_ERR(data->clk)) { > + dev_err(&pdev->dev, "Failed to get clock!\n"); > + return PTR_ERR(data->clk); > + } > + > + ret = clk_prepare_enable(data->clk); > + if (ret) { > + dev_err(&pdev->dev, "Failed to prepare or enable clock!\n"); > + return ret; > + } > + > + phy_np = of_parse_phandle(pdev->dev.of_node, "fsl,usbphy", 0); > + if (phy_np) { > + data->phy_np = phy_np; > + phy_pdev = of_find_device_by_node(phy_np); > + if (phy_pdev) { > + struct usb_phy *phy; Do we really want to define new variables in the middle of a code? > + phy = pdev_to_phy(phy_pdev); > + if (phy && > + try_module_get(phy_pdev->dev.driver->owner)) { > + usb_phy_init(phy); > + data->phy = phy; > + } > + } > + } > + > + /* we only support host now, so enable vbus here */ > + vbus_pwr = of_get_named_gpio(pdev->dev.of_node, > + "fsl,vbus-power-gpios", 0); (This one is for my personal enlightment) Why is the property called "gpios" (plural) if it's only one GPIO? > + if (gpio_is_valid(vbus_pwr) && > + !devm_gpio_request(&pdev->dev, vbus_pwr, "vbus-pwr")) { > + gpio_direction_output(vbus_pwr, 1); > + data->gpio_hub_rst = vbus_pwr; > + } > + > + ci13xxx_imx_udc_driver.phy = data->phy; > + memset(&ci_pdevinfo, 0, sizeof(ci_pdevinfo)); > + ci_pdevinfo.parent = &pdev->dev; > + ci_pdevinfo.name = "ci_hdrc"; > + ci_pdevinfo.id = (int)res->start; > + ci_pdevinfo.res = pdev->resource; > + ci_pdevinfo.num_res = pdev->num_resources; > + ci_pdevinfo.data = &ci13xxx_imx_udc_driver; > + ci_pdevinfo.size_data = sizeof(ci13xxx_imx_udc_driver); > + ci_pdevinfo.dma_mask = DMA_BIT_MASK(32); > + > + plat_ci = platform_device_register_full(&ci_pdevinfo); > + if (IS_ERR(plat_ci)) { > + dev_err(&pdev->dev, "can't register ci_hdrc platform device\n"); > + ret = PTR_ERR(plat_ci); > + goto put_np; > + } > + > + data->ci_pdev = plat_ci; > + platform_set_drvdata(pdev, data); > + > + pm_runtime_no_callbacks(&pdev->dev); > + pm_runtime_enable(&pdev->dev); > + > + return 0; > + > +put_np: > + if (phy_np) > + of_node_put(phy_np); > + return ret; > +} > + > +static int __devexit ci13xxx_imx_remove(struct platform_device *pdev) > +{ > + struct ci13xxx_imx_data *data = platform_get_drvdata(pdev); > + > + kfree(data->ci_pdev->dev.dma_mask); > + data->ci_pdev->dev.dma_mask = NULL; > + platform_device_unregister(data->ci_pdev); > + > + if (data->gpio_vbus_pwr != -1) > + gpio_direction_output(data->gpio_vbus_pwr, 0); > + if (data->gpio_hub_rst != -1) > + gpio_direction_output(data->gpio_hub_rst, 0); > + > + if (data->phy) { > + usb_phy_shutdown(data->phy); > + module_put(data->phy->dev->driver->owner); > + } > + > + of_node_put(data->phy_np); > + > + clk_disable_unprepare(data->clk); > + > + platform_set_drvdata(pdev, NULL); > + > + return 0; > +} > + > +static const struct of_device_id ci13xxx_imx_dt_ids[] = { > + { .compatible = "fsl,imx31-usb", }, Wow, now it's imx31-usb ? > + { /* sentinel */ } > +}; > + > +static struct platform_driver ci13xxx_imx_driver = { > + .probe = ci13xxx_imx_probe, > + .remove = __devexit_p(ci13xxx_imx_remove), > + .driver = { > + .name = "imx_usb", > + .owner = THIS_MODULE, > + .of_match_table = ci13xxx_imx_dt_ids, > + }, > +}; > + > +module_platform_driver(ci13xxx_imx_driver); > + Richard, thanks for your work on these patches so far. Sorry for taking so long with reviewing these. -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <201205220630.57007.marex-ynQEQJNshbs@public.gmane.org>]
* Re: [PATCH v2 05/12] usb: chipidea: add imx driver binding [not found] ` <201205220630.57007.marex-ynQEQJNshbs@public.gmane.org> @ 2012-05-22 4:51 ` Richard Zhao [not found] ` <20120522045120.GL6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-22 4:51 UTC (permalink / raw) To: Marek Vasut Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Peter Chen On Tue, May 22, 2012 at 06:30:56AM +0200, Marek Vasut wrote: > Dear Richard Zhao, > > > Just add host support. > > Maybe rephrase it to something like "This patch supports only the host-mode > functionality so far." Thanks. > > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > > Signed-off-by: Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> > > Cc: Peter Chen <peter.chen-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > > Cc: Alexander Shishkin <alexander.shishkin-VuQAYsv1563Yd54FQh9/CA@public.gmane.org> > > Cc: Greg Kroah-Hartman <gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org> > > --- > > .../devicetree/bindings/usb/ci13xxx-imx.txt | 20 ++ > > drivers/usb/chipidea/Makefile | 8 + > > drivers/usb/chipidea/ci13xxx_imx.c | 191 > > ++++++++++++++++++++ 3 files changed, 219 insertions(+), 0 deletions(-) > > create mode 100644 Documentation/devicetree/bindings/usb/ci13xxx-imx.txt > > create mode 100644 drivers/usb/chipidea/ci13xxx_imx.c > > > > diff --git a/Documentation/devicetree/bindings/usb/ci13xxx-imx.txt > > b/Documentation/devicetree/bindings/usb/ci13xxx-imx.txt new file mode > > 100644 > > index 0000000..beb75d6 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/usb/ci13xxx-imx.txt > > @@ -0,0 +1,20 @@ > > +* Freescale i.MX ci13xxx usb controllers > > + > > +Required properties: > > +- compatible: Should be "fsl,imx31-usb" > > +- reg: Should contain registers location and length > > +- interrupts: Should contain controller interrupt > > + > > +Optional properties: > > +- fsl,usbphy: phandler of usb phy that connects to the only one port > > +- fsl,hub-reset-gpios: gpio used to reset on-board usb hub > > +- fsl,vbus-power-gpios: gpio used to set vbus power of the only one port > > + > > +Examples: > > +usb@02184000 { /* USB OTG */ > > + compatible = "fsl,imx6q-usb", "fsl,imx31-usb"; > > + reg = <0x02184000 0x200>; > > + interrupts = <0 43 0x04>; > > + fsl,usbphy = <&usbphy1>; > > + fsl,vbus-power-gpios = <&gpio3 22 0>; > > +}; > > diff --git a/drivers/usb/chipidea/Makefile b/drivers/usb/chipidea/Makefile > > index cc34937..ffa2f63 100644 > > --- a/drivers/usb/chipidea/Makefile > > +++ b/drivers/usb/chipidea/Makefile > > @@ -12,3 +12,11 @@ endif > > ifneq ($(CONFIG_ARCH_MSM),) > > obj-$(CONFIG_USB_CHIPIDEA) += ci13xxx_msm.o > > endif > > + > > +ifneq ($(CONFIG_ARCH_MXC),) > > + obj-$(CONFIG_USB_CHIPIDEA) += ci13xxx_imx.o > > +else > > + ifneq ($(CONFIG_ARCH_MXS),) > > + obj-$(CONFIG_USB_CHIPIDEA) += ci13xxx_imx.o > > + endif > > +endif > > I think someone commented on these patches (my previous set of patches > actually), that this should be fixed in a way that you can actually select which > bindings you want to compile in (and not limit it via Makefile like it's now). Yes. I think you're right. Alexander, Do you think it's a good idea to let user select binding driver directly and the binding driver config depends on chipidea config? > > > diff --git a/drivers/usb/chipidea/ci13xxx_imx.c > > b/drivers/usb/chipidea/ci13xxx_imx.c new file mode 100644 > > index 0000000..9f64b3c > > --- /dev/null > > +++ b/drivers/usb/chipidea/ci13xxx_imx.c > > @@ -0,0 +1,191 @@ > > +/* > > + * Copyright 2012 Freescale Semiconductor, Inc. > > + * Copyright (C) 2012 Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> > > + * on behalf of DENX Software Engineering GmbH > > + * > > + * The code contained herein is licensed under the GNU General Public > > + * License. You may obtain a copy of the GNU General Public License > > + * Version 2 or later at the following locations: > > + * > > + * http://www.opensource.org/licenses/gpl-license.html > > + * http://www.gnu.org/copyleft/gpl.html > > + */ > > + > > +#include <linux/module.h> > > +#include <linux/of_platform.h> > > +#include <linux/of_gpio.h> > > +#include <linux/platform_device.h> > > +#include <linux/pm_runtime.h> > > +#include <linux/usb/chipidea.h> > > +#include <linux/usb/ehci_def.h> > > +#include <linux/usb/gadget.h> > > +#include <linux/usb/chipidea.h> > > +#include <linux/usb/otg.h> > > +#include <linux/dma-mapping.h> > > +#include <linux/clk.h> > > +#include <linux/string.h> > > + > > +#include "ci.h" > > + > > +#define PORT0_STATUS 0x184 > > + > > +#define pdev_to_phy(pdev) \ > > + ((struct usb_phy *)platform_get_drvdata(pdev)) > > + > > +struct ci13xxx_imx_data { > > + struct device_node *phy_np; > > + struct usb_phy *phy; > > + struct platform_device *ci_pdev; > > + struct clk *clk; > > + int gpio_hub_rst, gpio_vbus_pwr; > > +}; > > + > > +static struct ci13xxx_udc_driver ci13xxx_imx_udc_driver __devinitdata = { > > + .name = "ci13xxx_imx", > > + .flags = CI13XXX_REQUIRE_TRANSCEIVER | > > + CI13XXX_PULLUP_ON_VBUS | > > + CI13XXX_DISABLE_STREAMING, > > + .capoffset = DEF_CAPOFFSET, > > +}; > > + > > +static int __devinit ci13xxx_imx_probe(struct platform_device *pdev) > > +{ > > + struct ci13xxx_imx_data *data; > > + struct platform_device *plat_ci, *phy_pdev; > > + struct platform_device_info ci_pdevinfo; > > + struct device_node *phy_np; > > + struct resource *res; > > + int vbus_pwr; > > + int ret; > > + > > + data = devm_kzalloc(&pdev->dev, sizeof(*data), GFP_KERNEL); > > + if (!data) { > > + dev_err(&pdev->dev, "Failed to allocate CI13xxx-IMX data!\n"); > > + return -ENOMEM; > > + } > > + data->gpio_hub_rst = -1; ah, I should remove hub reset here. > > + data->gpio_vbus_pwr = -1; > > This really freaks me out. Maybe we should have some kind of a regulator that > manages the VBUS and let this driver toggle the regulator when fitting? That'd > solve the problem to some extent, as other people would be able to supply NOP > regulator. Good point. It looks like we still lack gpio controlled fixed regulator driver. > > > + res = platform_get_resource(pdev, IORESOURCE_MEM, 0); > > + if (!res) { > > + dev_err(&pdev->dev, "can't get device resources!\n"); > > Can't ... capital "C" ;-) thanks. > > > + return -ENOENT; > > + } > > + > > + data->clk = devm_clk_get(&pdev->dev, NULL); > > + if (IS_ERR(data->clk)) { > > + dev_err(&pdev->dev, "Failed to get clock!\n"); > > + return PTR_ERR(data->clk); > > + } > > + > > + ret = clk_prepare_enable(data->clk); > > + if (ret) { > > + dev_err(&pdev->dev, "Failed to prepare or enable clock!\n"); > > + return ret; > > + } > > + > > + phy_np = of_parse_phandle(pdev->dev.of_node, "fsl,usbphy", 0); > > + if (phy_np) { > > + data->phy_np = phy_np; > > + phy_pdev = of_find_device_by_node(phy_np); > > + if (phy_pdev) { > > + struct usb_phy *phy; > > Do we really want to define new variables in the middle of a code? It's not a problem in kernel using gcc. You can find the style though the kernel. > > > + phy = pdev_to_phy(phy_pdev); > > + if (phy && > > + try_module_get(phy_pdev->dev.driver->owner)) { > > + usb_phy_init(phy); > > + data->phy = phy; > > + } > > + } > > + } > > + > > + /* we only support host now, so enable vbus here */ > > + vbus_pwr = of_get_named_gpio(pdev->dev.of_node, > > + "fsl,vbus-power-gpios", 0); > > (This one is for my personal enlightment) Why is the property called "gpios" > (plural) if it's only one GPIO? It's just DT naming method. It can follow a gpio array. > > > + if (gpio_is_valid(vbus_pwr) && > > + !devm_gpio_request(&pdev->dev, vbus_pwr, "vbus-pwr")) { > > + gpio_direction_output(vbus_pwr, 1); > > + data->gpio_hub_rst = vbus_pwr; > > + } > > + > > + ci13xxx_imx_udc_driver.phy = data->phy; > > + memset(&ci_pdevinfo, 0, sizeof(ci_pdevinfo)); > > + ci_pdevinfo.parent = &pdev->dev; > > + ci_pdevinfo.name = "ci_hdrc"; > > + ci_pdevinfo.id = (int)res->start; > > + ci_pdevinfo.res = pdev->resource; > > + ci_pdevinfo.num_res = pdev->num_resources; > > + ci_pdevinfo.data = &ci13xxx_imx_udc_driver; > > + ci_pdevinfo.size_data = sizeof(ci13xxx_imx_udc_driver); > > + ci_pdevinfo.dma_mask = DMA_BIT_MASK(32); > > + > > + plat_ci = platform_device_register_full(&ci_pdevinfo); > > + if (IS_ERR(plat_ci)) { > > + dev_err(&pdev->dev, "can't register ci_hdrc platform device\n"); > > + ret = PTR_ERR(plat_ci); > > + goto put_np; > > + } > > + > > + data->ci_pdev = plat_ci; > > + platform_set_drvdata(pdev, data); > > + > > + pm_runtime_no_callbacks(&pdev->dev); > > + pm_runtime_enable(&pdev->dev); > > + > > + return 0; > > + > > +put_np: > > + if (phy_np) > > + of_node_put(phy_np); > > + return ret; > > +} > > + > > +static int __devexit ci13xxx_imx_remove(struct platform_device *pdev) > > +{ > > + struct ci13xxx_imx_data *data = platform_get_drvdata(pdev); > > + > > + kfree(data->ci_pdev->dev.dma_mask); > > + data->ci_pdev->dev.dma_mask = NULL; > > + platform_device_unregister(data->ci_pdev); > > + > > + if (data->gpio_vbus_pwr != -1) > > + gpio_direction_output(data->gpio_vbus_pwr, 0); > > + if (data->gpio_hub_rst != -1) > > + gpio_direction_output(data->gpio_hub_rst, 0); > > + > > + if (data->phy) { > > + usb_phy_shutdown(data->phy); > > + module_put(data->phy->dev->driver->owner); > > + } > > + > > + of_node_put(data->phy_np); > > + > > + clk_disable_unprepare(data->clk); > > + > > + platform_set_drvdata(pdev, NULL); > > + > > + return 0; > > +} > > + > > +static const struct of_device_id ci13xxx_imx_dt_ids[] = { > > + { .compatible = "fsl,imx31-usb", }, > > Wow, now it's imx31-usb ? Yes. we discussed that imx31 is the first SoC that use this IP. > > > + { /* sentinel */ } > > +}; > > + > > +static struct platform_driver ci13xxx_imx_driver = { > > + .probe = ci13xxx_imx_probe, > > + .remove = __devexit_p(ci13xxx_imx_remove), > > + .driver = { > > + .name = "imx_usb", > > + .owner = THIS_MODULE, > > + .of_match_table = ci13xxx_imx_dt_ids, > > + }, > > +}; > > + > > +module_platform_driver(ci13xxx_imx_driver); > > + > > Richard, thanks for your work on these patches so far. Sorry for taking so long > with reviewing these. My pleasure! Thanks for your review too! Richard > -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120522045120.GL6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org>]
* Re: [PATCH v2 05/12] usb: chipidea: add imx driver binding [not found] ` <20120522045120.GL6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> @ 2012-05-22 9:56 ` Alexander Shishkin [not found] ` <87fwasbkt7.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Alexander Shishkin @ 2012-05-22 9:56 UTC (permalink / raw) To: Richard Zhao, Marek Vasut Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Peter Chen Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> writes: > On Tue, May 22, 2012 at 06:30:56AM +0200, Marek Vasut wrote: >> Dear Richard Zhao, >> >> > Just add host support. >> >> Maybe rephrase it to something like "This patch supports only the host-mode >> functionality so far." > Thanks. >> >> > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> >> > Signed-off-by: Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> >> > Cc: Peter Chen <peter.chen-KZfg59tc24xl57MIdRCFDg@public.gmane.org> >> > Cc: Alexander Shishkin <alexander.shishkin-VuQAYsv1563Yd54FQh9/CA@public.gmane.org> >> > Cc: Greg Kroah-Hartman <gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org> >> > --- >> > .../devicetree/bindings/usb/ci13xxx-imx.txt | 20 ++ >> > drivers/usb/chipidea/Makefile | 8 + >> > drivers/usb/chipidea/ci13xxx_imx.c | 191 >> > ++++++++++++++++++++ 3 files changed, 219 insertions(+), 0 deletions(-) >> > create mode 100644 Documentation/devicetree/bindings/usb/ci13xxx-imx.txt >> > create mode 100644 drivers/usb/chipidea/ci13xxx_imx.c >> > >> > diff --git a/Documentation/devicetree/bindings/usb/ci13xxx-imx.txt >> > b/Documentation/devicetree/bindings/usb/ci13xxx-imx.txt new file mode >> > 100644 >> > index 0000000..beb75d6 >> > --- /dev/null >> > +++ b/Documentation/devicetree/bindings/usb/ci13xxx-imx.txt >> > @@ -0,0 +1,20 @@ >> > +* Freescale i.MX ci13xxx usb controllers >> > + >> > +Required properties: >> > +- compatible: Should be "fsl,imx31-usb" >> > +- reg: Should contain registers location and length >> > +- interrupts: Should contain controller interrupt >> > + >> > +Optional properties: >> > +- fsl,usbphy: phandler of usb phy that connects to the only one port >> > +- fsl,hub-reset-gpios: gpio used to reset on-board usb hub >> > +- fsl,vbus-power-gpios: gpio used to set vbus power of the only one port >> > + >> > +Examples: >> > +usb@02184000 { /* USB OTG */ >> > + compatible = "fsl,imx6q-usb", "fsl,imx31-usb"; >> > + reg = <0x02184000 0x200>; >> > + interrupts = <0 43 0x04>; >> > + fsl,usbphy = <&usbphy1>; >> > + fsl,vbus-power-gpios = <&gpio3 22 0>; >> > +}; >> > diff --git a/drivers/usb/chipidea/Makefile b/drivers/usb/chipidea/Makefile >> > index cc34937..ffa2f63 100644 >> > --- a/drivers/usb/chipidea/Makefile >> > +++ b/drivers/usb/chipidea/Makefile >> > @@ -12,3 +12,11 @@ endif >> > ifneq ($(CONFIG_ARCH_MSM),) >> > obj-$(CONFIG_USB_CHIPIDEA) += ci13xxx_msm.o >> > endif >> > + >> > +ifneq ($(CONFIG_ARCH_MXC),) >> > + obj-$(CONFIG_USB_CHIPIDEA) += ci13xxx_imx.o >> > +else >> > + ifneq ($(CONFIG_ARCH_MXS),) >> > + obj-$(CONFIG_USB_CHIPIDEA) += ci13xxx_imx.o >> > + endif >> > +endif >> >> I think someone commented on these patches (my previous set of patches >> actually), that this should be fixed in a way that you can actually select which >> bindings you want to compile in (and not limit it via Makefile like it's now). > Yes. I think you're right. > > Alexander, > > Do you think it's a good idea to let user select binding driver directly > and the binding driver config depends on chipidea config? I don't have a strong opinion on this, although I prefer it the way it is now, because, imo: * in case of =m (and that's the only sane way of compiling it anyway), these all are compiled as modules, which you simply don't install if you don't want them; * all of them get compile-tested every time you change something in the driver, which is a good thing; * the fewer kconfig options the better. Regards, -- Alex -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <87fwasbkt7.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org>]
* Re: [PATCH v2 05/12] usb: chipidea: add imx driver binding [not found] ` <87fwasbkt7.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org> @ 2012-05-22 10:06 ` Felipe Balbi [not found] ` <20120522100624.GP30559-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Felipe Balbi @ 2012-05-22 10:06 UTC (permalink / raw) To: Alexander Shishkin Cc: Richard Zhao, Marek Vasut, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Peter Chen [-- Attachment #1: Type: text/plain, Size: 782 bytes --] Hi, On Tue, May 22, 2012 at 12:56:52PM +0300, Alexander Shishkin wrote: > > Do you think it's a good idea to let user select binding driver directly > > and the binding driver config depends on chipidea config? > > I don't have a strong opinion on this, although I prefer it the way it > is now, because, imo: > > * in case of =m (and that's the only sane way of compiling it anyway), > these all are compiled as modules, which you simply don't install if > you don't want them; > * all of them get compile-tested every time you change something in > the driver, which is a good thing; only true for $(ARCH) builds. I would like to see these drivers being compile tested on linux-next on all arches. Thus the patches I just sent. -- balbi [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120522100624.GP30559-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org>]
* Re: [PATCH v2 05/12] usb: chipidea: add imx driver binding [not found] ` <20120522100624.GP30559-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org> @ 2012-05-22 10:31 ` Richard Zhao [not found] ` <20120522103139.GD32035-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-22 10:31 UTC (permalink / raw) To: Felipe Balbi Cc: Alexander Shishkin, Marek Vasut, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Peter Chen On Tue, May 22, 2012 at 01:06:26PM +0300, Felipe Balbi wrote: > Hi, > > On Tue, May 22, 2012 at 12:56:52PM +0300, Alexander Shishkin wrote: > > > Do you think it's a good idea to let user select binding driver directly > > > and the binding driver config depends on chipidea config? > > > > I don't have a strong opinion on this, although I prefer it the way it > > is now, because, imo: > > > > * in case of =m (and that's the only sane way of compiling it anyway), > > these all are compiled as modules, which you simply don't install if > > you don't want them; > > * all of them get compile-tested every time you change something in > > the driver, which is a good thing; > > only true for $(ARCH) builds. I would like to see these drivers being > compile tested on linux-next on all arches. Thus the patches I just > sent. The idea is great. But - how can I make sure it pass for all arch? There' 27 folder in arch/. - it's hard to predict one driver depends on what. - for embedded kernel, people like built-in drivers, and people will have things they don't need at all. Thanks Richard > > -- > balbi -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120522103139.GD32035-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org>]
* Re: [PATCH v2 05/12] usb: chipidea: add imx driver binding [not found] ` <20120522103139.GD32035-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> @ 2012-05-22 10:35 ` Felipe Balbi [not found] ` <20120522103516.GR30559-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Felipe Balbi @ 2012-05-22 10:35 UTC (permalink / raw) To: Richard Zhao Cc: Marek Vasut, B20596-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, fabio.estevam-KZfg59tc24xl57MIdRCFDg, Alexander Shishkin, B29397-KZfg59tc24xl57MIdRCFDg, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, linux-usb-u79uwXL29TY76Z2rM5mHXA, Felipe Balbi, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, Peter Chen, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r [-- Attachment #1.1: Type: text/plain, Size: 1990 bytes --] On Tue, May 22, 2012 at 06:31:40PM +0800, Richard Zhao wrote: > On Tue, May 22, 2012 at 01:06:26PM +0300, Felipe Balbi wrote: > > Hi, > > > > On Tue, May 22, 2012 at 12:56:52PM +0300, Alexander Shishkin wrote: > > > > Do you think it's a good idea to let user select binding driver directly > > > > and the binding driver config depends on chipidea config? > > > > > > I don't have a strong opinion on this, although I prefer it the way it > > > is now, because, imo: > > > > > > * in case of =m (and that's the only sane way of compiling it anyway), > > > these all are compiled as modules, which you simply don't install if > > > you don't want them; > > > * all of them get compile-tested every time you change something in > > > the driver, which is a good thing; > > > > only true for $(ARCH) builds. I would like to see these drivers being > > compile tested on linux-next on all arches. Thus the patches I just > > sent. > The idea is great. But > - how can I make sure it pass for all arch? There' 27 folder in arch/. > - it's hard to predict one driver depends on what. > - for embedded kernel, people like built-in drivers, and people will > have things they don't need at all. that's true to some extent, but until we know for sure that all of that is compiling fine and all dependencies are properly handled, I wouldn't like to see Kconfig or Makefile being abused. That has happened before and will happen again if we allow it. My suggestion to Alex is to remove all dependencies for at least a couple of merge windows and only add dependencies for stuff which actually matters; like only building the PCI glue layer when CONFIG_PCI is defined instead of when ARCH_X86 is defined and so on. When it gets to a product, that can be easily optimized and when we have decided what's the best way to place the choices, we will do so. Until then, we like to use linux-next for compile testing everything. -- balbi [-- Attachment #1.2: Digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --] [-- Attachment #2: Type: text/plain, Size: 192 bytes --] _______________________________________________ devicetree-discuss mailing list devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org https://lists.ozlabs.org/listinfo/devicetree-discuss ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120522103516.GR30559-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org>]
* Re: [PATCH v2 05/12] usb: chipidea: add imx driver binding [not found] ` <20120522103516.GR30559-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org> @ 2012-05-22 10:41 ` Alexander Shishkin [not found] ` <8762bobiqt.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org> 2012-05-22 13:52 ` Shawn Guo 1 sibling, 1 reply; 91+ messages in thread From: Alexander Shishkin @ 2012-05-22 10:41 UTC (permalink / raw) To: Richard Zhao Cc: Felipe Balbi, Marek Vasut, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Peter Chen Felipe Balbi <balbi-l0cyMroinI0@public.gmane.org> writes: > On Tue, May 22, 2012 at 06:31:40PM +0800, Richard Zhao wrote: >> On Tue, May 22, 2012 at 01:06:26PM +0300, Felipe Balbi wrote: >> > Hi, >> > >> > On Tue, May 22, 2012 at 12:56:52PM +0300, Alexander Shishkin wrote: >> > > > Do you think it's a good idea to let user select binding driver directly >> > > > and the binding driver config depends on chipidea config? >> > > >> > > I don't have a strong opinion on this, although I prefer it the way it >> > > is now, because, imo: >> > > >> > > * in case of =m (and that's the only sane way of compiling it anyway), >> > > these all are compiled as modules, which you simply don't install if >> > > you don't want them; >> > > * all of them get compile-tested every time you change something in >> > > the driver, which is a good thing; >> > >> > only true for $(ARCH) builds. I would like to see these drivers being >> > compile tested on linux-next on all arches. Thus the patches I just >> > sent. >> The idea is great. But >> - how can I make sure it pass for all arch? There' 27 folder in arch/. >> - it's hard to predict one driver depends on what. >> - for embedded kernel, people like built-in drivers, and people will >> have things they don't need at all. > > that's true to some extent, but until we know for sure that all of that > is compiling fine and all dependencies are properly handled, I wouldn't > like to see Kconfig or Makefile being abused. That has happened before > and will happen again if we allow it. > > My suggestion to Alex is to remove all dependencies for at least a > couple of merge windows and only add dependencies for stuff which > actually matters; like only building the PCI glue layer when CONFIG_PCI > is defined instead of when ARCH_X86 is defined and so on. That's what I mean to do as well. I wouldn't dream of making something like this x86 specific. :) > When it gets to a product, that can be easily optimized and when we have > decided what's the best way to place the choices, we will do so. Until > then, we like to use linux-next for compile testing everything. Seconded. Regards, -- Alex -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <8762bobiqt.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org>]
* Re: [PATCH v2 05/12] usb: chipidea: add imx driver binding [not found] ` <8762bobiqt.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org> @ 2012-05-22 15:06 ` Richard Zhao 2012-05-23 13:02 ` Alexander Shishkin 0 siblings, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-22 15:06 UTC (permalink / raw) To: Alexander Shishkin Cc: Felipe Balbi, Richard Zhao, Marek Vasut, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Peter Chen On Tue, May 22, 2012 at 01:41:30PM +0300, Alexander Shishkin wrote: > Felipe Balbi <balbi-l0cyMroinI0@public.gmane.org> writes: > > > On Tue, May 22, 2012 at 06:31:40PM +0800, Richard Zhao wrote: > >> On Tue, May 22, 2012 at 01:06:26PM +0300, Felipe Balbi wrote: > >> > Hi, > >> > > >> > On Tue, May 22, 2012 at 12:56:52PM +0300, Alexander Shishkin wrote: > >> > > > Do you think it's a good idea to let user select binding driver directly > >> > > > and the binding driver config depends on chipidea config? > >> > > > >> > > I don't have a strong opinion on this, although I prefer it the way it > >> > > is now, because, imo: > >> > > > >> > > * in case of =m (and that's the only sane way of compiling it anyway), > >> > > these all are compiled as modules, which you simply don't install if > >> > > you don't want them; > >> > > * all of them get compile-tested every time you change something in > >> > > the driver, which is a good thing; > >> > > >> > only true for $(ARCH) builds. I would like to see these drivers being > >> > compile tested on linux-next on all arches. Thus the patches I just > >> > sent. > >> The idea is great. But > >> - how can I make sure it pass for all arch? There' 27 folder in arch/. > >> - it's hard to predict one driver depends on what. > >> - for embedded kernel, people like built-in drivers, and people will > >> have things they don't need at all. > > > > that's true to some extent, but until we know for sure that all of that > > is compiling fine and all dependencies are properly handled, I wouldn't > > like to see Kconfig or Makefile being abused. That has happened before > > and will happen again if we allow it. > > > > My suggestion to Alex is to remove all dependencies for at least a > > couple of merge windows and only add dependencies for stuff which > > actually matters; like only building the PCI glue layer when CONFIG_PCI > > is defined instead of when ARCH_X86 is defined and so on. > > That's what I mean to do as well. I wouldn't dream of making something > like this x86 specific. :) Alex, Have you made the decision that remove all dependencies and leave only ones that has to be there? If yes, I'll try the way, though I don't feel good about that. Thanks Richard > > > When it gets to a product, that can be easily optimized and when we have > > decided what's the best way to place the choices, we will do so. Until > > then, we like to use linux-next for compile testing everything. > > Seconded. > > Regards, > -- > Alex > -- > To unsubscribe from this list: send the line "unsubscribe linux-usb" in > the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* Re: [PATCH v2 05/12] usb: chipidea: add imx driver binding 2012-05-22 15:06 ` Richard Zhao @ 2012-05-23 13:02 ` Alexander Shishkin [not found] ` <87wr439hk2.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Alexander Shishkin @ 2012-05-23 13:02 UTC (permalink / raw) To: Richard Zhao Cc: Felipe Balbi, Richard Zhao, Marek Vasut, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Peter Chen Richard Zhao <linuxzsc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> writes: > On Tue, May 22, 2012 at 01:41:30PM +0300, Alexander Shishkin wrote: >> Felipe Balbi <balbi-l0cyMroinI0@public.gmane.org> writes: >> >> > On Tue, May 22, 2012 at 06:31:40PM +0800, Richard Zhao wrote: >> >> On Tue, May 22, 2012 at 01:06:26PM +0300, Felipe Balbi wrote: >> >> > Hi, >> >> > >> >> > On Tue, May 22, 2012 at 12:56:52PM +0300, Alexander Shishkin wrote: >> >> > > > Do you think it's a good idea to let user select binding driver directly >> >> > > > and the binding driver config depends on chipidea config? >> >> > > >> >> > > I don't have a strong opinion on this, although I prefer it the way it >> >> > > is now, because, imo: >> >> > > >> >> > > * in case of =m (and that's the only sane way of compiling it anyway), >> >> > > these all are compiled as modules, which you simply don't install if >> >> > > you don't want them; >> >> > > * all of them get compile-tested every time you change something in >> >> > > the driver, which is a good thing; >> >> > >> >> > only true for $(ARCH) builds. I would like to see these drivers being >> >> > compile tested on linux-next on all arches. Thus the patches I just >> >> > sent. >> >> The idea is great. But >> >> - how can I make sure it pass for all arch? There' 27 folder in arch/. >> >> - it's hard to predict one driver depends on what. >> >> - for embedded kernel, people like built-in drivers, and people will >> >> have things they don't need at all. >> > >> > that's true to some extent, but until we know for sure that all of that >> > is compiling fine and all dependencies are properly handled, I wouldn't >> > like to see Kconfig or Makefile being abused. That has happened before >> > and will happen again if we allow it. >> > >> > My suggestion to Alex is to remove all dependencies for at least a >> > couple of merge windows and only add dependencies for stuff which >> > actually matters; like only building the PCI glue layer when CONFIG_PCI >> > is defined instead of when ARCH_X86 is defined and so on. >> >> That's what I mean to do as well. I wouldn't dream of making something >> like this x86 specific. :) > Alex, Have you made the decision that remove all dependencies and leave > only ones that has to be there? If yes, I'll try the way, though I don't > feel good about that. Yes, I like Felipe's suggestion. Currently (with Felipe's patches from yesterday), there is only one dependency (PCI for ci13xxx_pci, which is ok). So let's try to keep it that way. I'll push the patches to my tree on github [1] soon, which I propose to use for all chipidea-related patches. [1] git://github.com/virtuoso/linux-ci.git Regards, -- Alex -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <87wr439hk2.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org>]
* Re: [PATCH v2 05/12] usb: chipidea: add imx driver binding [not found] ` <87wr439hk2.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org> @ 2012-05-23 13:09 ` Felipe Balbi [not found] ` <20120523130928.GC1015-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Felipe Balbi @ 2012-05-23 13:09 UTC (permalink / raw) To: Alexander Shishkin Cc: Richard Zhao, Felipe Balbi, Richard Zhao, Marek Vasut, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Peter Chen [-- Attachment #1: Type: text/plain, Size: 3043 bytes --] On Wed, May 23, 2012 at 04:02:21PM +0300, Alexander Shishkin wrote: > Richard Zhao <linuxzsc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> writes: > > > On Tue, May 22, 2012 at 01:41:30PM +0300, Alexander Shishkin wrote: > >> Felipe Balbi <balbi-l0cyMroinI0@public.gmane.org> writes: > >> > >> > On Tue, May 22, 2012 at 06:31:40PM +0800, Richard Zhao wrote: > >> >> On Tue, May 22, 2012 at 01:06:26PM +0300, Felipe Balbi wrote: > >> >> > Hi, > >> >> > > >> >> > On Tue, May 22, 2012 at 12:56:52PM +0300, Alexander Shishkin wrote: > >> >> > > > Do you think it's a good idea to let user select binding driver directly > >> >> > > > and the binding driver config depends on chipidea config? > >> >> > > > >> >> > > I don't have a strong opinion on this, although I prefer it the way it > >> >> > > is now, because, imo: > >> >> > > > >> >> > > * in case of =m (and that's the only sane way of compiling it anyway), > >> >> > > these all are compiled as modules, which you simply don't install if > >> >> > > you don't want them; > >> >> > > * all of them get compile-tested every time you change something in > >> >> > > the driver, which is a good thing; > >> >> > > >> >> > only true for $(ARCH) builds. I would like to see these drivers being > >> >> > compile tested on linux-next on all arches. Thus the patches I just > >> >> > sent. > >> >> The idea is great. But > >> >> - how can I make sure it pass for all arch? There' 27 folder in arch/. > >> >> - it's hard to predict one driver depends on what. > >> >> - for embedded kernel, people like built-in drivers, and people will > >> >> have things they don't need at all. > >> > > >> > that's true to some extent, but until we know for sure that all of that > >> > is compiling fine and all dependencies are properly handled, I wouldn't > >> > like to see Kconfig or Makefile being abused. That has happened before > >> > and will happen again if we allow it. > >> > > >> > My suggestion to Alex is to remove all dependencies for at least a > >> > couple of merge windows and only add dependencies for stuff which > >> > actually matters; like only building the PCI glue layer when CONFIG_PCI > >> > is defined instead of when ARCH_X86 is defined and so on. > >> > >> That's what I mean to do as well. I wouldn't dream of making something > >> like this x86 specific. :) > > Alex, Have you made the decision that remove all dependencies and leave > > only ones that has to be there? If yes, I'll try the way, though I don't > > feel good about that. > > Yes, I like Felipe's suggestion. Currently (with Felipe's patches from > yesterday), there is only one dependency (PCI for ci13xxx_pci, which is > ok). So let's try to keep it that way. > > I'll push the patches to my tree on github [1] soon, which I propose to > use for all chipidea-related patches. > > [1] git://github.com/virtuoso/linux-ci.git you should add it to MAINTAINERS file. T: git git://github.com/virtuoso/linux-ci.git -- balbi [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120523130928.GC1015-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org>]
* Re: [PATCH v2 05/12] usb: chipidea: add imx driver binding [not found] ` <20120523130928.GC1015-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org> @ 2012-05-23 13:13 ` Alexander Shishkin 0 siblings, 0 replies; 91+ messages in thread From: Alexander Shishkin @ 2012-05-23 13:13 UTC (permalink / raw) Cc: Richard Zhao, Felipe Balbi, Richard Zhao, Marek Vasut, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Peter Chen Felipe Balbi <balbi-l0cyMroinI0@public.gmane.org> writes: > On Wed, May 23, 2012 at 04:02:21PM +0300, Alexander Shishkin wrote: >> Richard Zhao <linuxzsc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> writes: >> >> > On Tue, May 22, 2012 at 01:41:30PM +0300, Alexander Shishkin wrote: >> >> Felipe Balbi <balbi-l0cyMroinI0@public.gmane.org> writes: >> >> >> >> > On Tue, May 22, 2012 at 06:31:40PM +0800, Richard Zhao wrote: >> >> >> On Tue, May 22, 2012 at 01:06:26PM +0300, Felipe Balbi wrote: >> >> >> > Hi, >> >> >> > >> >> >> > On Tue, May 22, 2012 at 12:56:52PM +0300, Alexander Shishkin wrote: >> >> >> > > > Do you think it's a good idea to let user select binding driver directly >> >> >> > > > and the binding driver config depends on chipidea config? >> >> >> > > >> >> >> > > I don't have a strong opinion on this, although I prefer it the way it >> >> >> > > is now, because, imo: >> >> >> > > >> >> >> > > * in case of =m (and that's the only sane way of compiling it anyway), >> >> >> > > these all are compiled as modules, which you simply don't install if >> >> >> > > you don't want them; >> >> >> > > * all of them get compile-tested every time you change something in >> >> >> > > the driver, which is a good thing; >> >> >> > >> >> >> > only true for $(ARCH) builds. I would like to see these drivers being >> >> >> > compile tested on linux-next on all arches. Thus the patches I just >> >> >> > sent. >> >> >> The idea is great. But >> >> >> - how can I make sure it pass for all arch? There' 27 folder in arch/. >> >> >> - it's hard to predict one driver depends on what. >> >> >> - for embedded kernel, people like built-in drivers, and people will >> >> >> have things they don't need at all. >> >> > >> >> > that's true to some extent, but until we know for sure that all of that >> >> > is compiling fine and all dependencies are properly handled, I wouldn't >> >> > like to see Kconfig or Makefile being abused. That has happened before >> >> > and will happen again if we allow it. >> >> > >> >> > My suggestion to Alex is to remove all dependencies for at least a >> >> > couple of merge windows and only add dependencies for stuff which >> >> > actually matters; like only building the PCI glue layer when CONFIG_PCI >> >> > is defined instead of when ARCH_X86 is defined and so on. >> >> >> >> That's what I mean to do as well. I wouldn't dream of making something >> >> like this x86 specific. :) >> > Alex, Have you made the decision that remove all dependencies and leave >> > only ones that has to be there? If yes, I'll try the way, though I don't >> > feel good about that. >> >> Yes, I like Felipe's suggestion. Currently (with Felipe's patches from >> yesterday), there is only one dependency (PCI for ci13xxx_pci, which is >> ok). So let's try to keep it that way. >> >> I'll push the patches to my tree on github [1] soon, which I propose to >> use for all chipidea-related patches. >> >> [1] git://github.com/virtuoso/linux-ci.git > > you should add it to MAINTAINERS file. > > T: git git://github.com/virtuoso/linux-ci.git Sure. Regrards, -- Alex -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* Re: [PATCH v2 05/12] usb: chipidea: add imx driver binding [not found] ` <20120522103516.GR30559-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org> 2012-05-22 10:41 ` Alexander Shishkin @ 2012-05-22 13:52 ` Shawn Guo [not found] ` <20120522135257.GQ8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 1 sibling, 1 reply; 91+ messages in thread From: Shawn Guo @ 2012-05-22 13:52 UTC (permalink / raw) To: Felipe Balbi Cc: Richard Zhao, Alexander Shishkin, Marek Vasut, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Peter Chen On Tue, May 22, 2012 at 01:35:17PM +0300, Felipe Balbi wrote: > My suggestion to Alex is to remove all dependencies for at least a > couple of merge windows and only add dependencies for stuff which > actually matters; like only building the PCI glue layer when CONFIG_PCI > is defined instead of when ARCH_X86 is defined and so on. > As ci13xxx_imx is a DT only driver, it needs to depend on CONFIG_OF. -- Regards, Shawn -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120522135257.GQ8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>]
* Re: [PATCH v2 05/12] usb: chipidea: add imx driver binding [not found] ` <20120522135257.GQ8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> @ 2012-05-22 13:55 ` Felipe Balbi 0 siblings, 0 replies; 91+ messages in thread From: Felipe Balbi @ 2012-05-22 13:55 UTC (permalink / raw) To: Shawn Guo Cc: Felipe Balbi, Richard Zhao, Alexander Shishkin, Marek Vasut, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Peter Chen [-- Attachment #1: Type: text/plain, Size: 598 bytes --] On Tue, May 22, 2012 at 09:52:59PM +0800, Shawn Guo wrote: > On Tue, May 22, 2012 at 01:35:17PM +0300, Felipe Balbi wrote: > > My suggestion to Alex is to remove all dependencies for at least a > > couple of merge windows and only add dependencies for stuff which > > actually matters; like only building the PCI glue layer when CONFIG_PCI > > is defined instead of when ARCH_X86 is defined and so on. > > > As ci13xxx_imx is a DT only driver, it needs to depend on CONFIG_OF. yes, and I have said that it should depend on CONFIG_OF, rather then ARCH_IMX... that's fine. -- balbi [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 91+ messages in thread
* Re: [PATCH v2 05/12] usb: chipidea: add imx driver binding [not found] ` <1337592237-5090-6-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-22 4:30 ` Marek Vasut @ 2012-05-22 10:21 ` Alexander Shishkin [not found] ` <87bolgbjnr.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org> 1 sibling, 1 reply; 91+ messages in thread From: Alexander Shishkin @ 2012-05-22 10:21 UTC (permalink / raw) To: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ Cc: B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, richard.zhao-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Peter Chen Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> writes: > +#include "ci.h" > + > +#define PORT0_STATUS 0x184 This doesn't seem to be used anywhere. [snip] > + ci13xxx_imx_udc_driver.phy = data->phy; See my comment to the other patch about phy pointer being a per-device thing rather then per-platform driver. Now, (at the risk of being flamed) I think it could work if you allocated the ci13xxx_imx_udc_driver dynamically in every probe, but that's not what you want to do for the actual platform data. So, I suggest we come up with a better way of passing phy to the driver. I also think that it's really about time we renamed "struct ci13xxx_udc_driver" to something that emphasizes the "platform" in it. What do you think? Regards, -- Alex -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <87bolgbjnr.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org>]
* Re: [PATCH v2 05/12] usb: chipidea: add imx driver binding [not found] ` <87bolgbjnr.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org> @ 2012-05-22 10:24 ` Alexander Shishkin [not found] ` <878vgkbjie.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org> 2012-05-22 15:28 ` Richard Zhao 1 sibling, 1 reply; 91+ messages in thread From: Alexander Shishkin @ 2012-05-22 10:24 UTC (permalink / raw) To: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ Cc: B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, richard.zhao-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Peter Chen Alexander Shishkin <alexander.shishkin-VuQAYsv1563Yd54FQh9/CA@public.gmane.org> writes: > Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> writes: > >> +#include "ci.h" >> + >> +#define PORT0_STATUS 0x184 > > This doesn't seem to be used anywhere. Please disregard this one. Regards, -- Alex -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <878vgkbjie.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org>]
* Re: [PATCH v2 05/12] usb: chipidea: add imx driver binding [not found] ` <878vgkbjie.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org> @ 2012-05-22 15:30 ` Richard Zhao 0 siblings, 0 replies; 91+ messages in thread From: Richard Zhao @ 2012-05-22 15:30 UTC (permalink / raw) To: Alexander Shishkin Cc: Richard Zhao, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Peter Chen On Tue, May 22, 2012 at 01:24:57PM +0300, Alexander Shishkin wrote: > Alexander Shishkin <alexander.shishkin-VuQAYsv1563Yd54FQh9/CA@public.gmane.org> writes: > > > Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> writes: > > > >> +#include "ci.h" > >> + > >> +#define PORT0_STATUS 0x184 > > > > This doesn't seem to be used anywhere. > > Please disregard this one. Thanks. Richard > > Regards, > -- > Alex > -- > To unsubscribe from this list: send the line "unsubscribe linux-usb" in > the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* Re: [PATCH v2 05/12] usb: chipidea: add imx driver binding [not found] ` <87bolgbjnr.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org> 2012-05-22 10:24 ` Alexander Shishkin @ 2012-05-22 15:28 ` Richard Zhao 1 sibling, 0 replies; 91+ messages in thread From: Richard Zhao @ 2012-05-22 15:28 UTC (permalink / raw) To: Alexander Shishkin Cc: Richard Zhao, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Peter Chen On Tue, May 22, 2012 at 01:21:44PM +0300, Alexander Shishkin wrote: > Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> writes: > > > +#include "ci.h" > > + > > +#define PORT0_STATUS 0x184 > > This doesn't seem to be used anywhere. > > [snip] > > + ci13xxx_imx_udc_driver.phy = data->phy; > > See my comment to the other patch about phy pointer being a per-device > thing rather then per-platform driver. Now, (at the risk of being > flamed) I think it could work if you allocated the > ci13xxx_imx_udc_driver dynamically in every probe, but that's not what > you want to do for the actual platform data. At least for imx, most platfrom data memory is duplicated when add device. arch/arm/plat-mxc/devices/ > So, I suggest we come up > with a better way of passing phy to the driver. I also think that it's > really about time we renamed "struct ci13xxx_udc_driver" to something > that emphasizes the "platform" in it. What do you think? struct ci13xxx_plat_data ? Thanks Richard > > Regards, > -- > Alex > -- > To unsubscribe from this list: send the line "unsubscribe linux-usb" in > the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* [PATCH v2 06/12] ARM: imx6q: correct device name of usbphy and usb controller clock export [not found] ` <1337592237-5090-1-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> ` (4 preceding siblings ...) 2012-05-21 9:23 ` [PATCH v2 05/12] usb: chipidea: add imx driver binding Richard Zhao @ 2012-05-21 9:23 ` Richard Zhao [not found] ` <1337592237-5090-7-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-21 9:23 ` [PATCH v2 07/12] ARM: imx6q: add config-on-boot gpios Richard Zhao ` (6 subsequent siblings) 12 siblings, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-21 9:23 UTC (permalink / raw) To: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ Cc: B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, richard.zhao-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> --- arch/arm/mach-imx/clk-imx6q.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-) diff --git a/arch/arm/mach-imx/clk-imx6q.c b/arch/arm/mach-imx/clk-imx6q.c index 96e9edd..f99509a 100644 --- a/arch/arm/mach-imx/clk-imx6q.c +++ b/arch/arm/mach-imx/clk-imx6q.c @@ -391,7 +391,10 @@ int __init mx6q_clocks_init(void) clk_register_clkdev(clk[gpt_ipg], "ipg", "imx-gpt.0"); clk_register_clkdev(clk[gpt_ipg_per], "per", "imx-gpt.0"); clk_register_clkdev(clk[twd], NULL, "smp_twd"); - clk_register_clkdev(clk[usboh3], NULL, "usboh3"); + clk_register_clkdev(clk[usboh3], NULL, "2184000.usb"); + clk_register_clkdev(clk[usboh3], NULL, "2184200.usb"); + clk_register_clkdev(clk[usboh3], NULL, "2184400.usb"); + clk_register_clkdev(clk[usboh3], NULL, "2184600.usb"); clk_register_clkdev(clk[uart_serial], "per", "2020000.serial"); clk_register_clkdev(clk[uart_ipg], "ipg", "2020000.serial"); clk_register_clkdev(clk[uart_serial], "per", "21e8000.serial"); -- 1.7.5.4 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply related [flat|nested] 91+ messages in thread
[parent not found: <1337592237-5090-7-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org>]
* Re: [PATCH v2 06/12] ARM: imx6q: correct device name of usbphy and usb controller clock export [not found] ` <1337592237-5090-7-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> @ 2012-05-22 4:31 ` Marek Vasut [not found] ` <201205220631.28739.marex-ynQEQJNshbs@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Marek Vasut @ 2012-05-22 4:31 UTC (permalink / raw) To: Richard Zhao Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Dear Richard Zhao, We will need similar patch for mx28 I think? Otherwise Reviewed-by: Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > --- > arch/arm/mach-imx/clk-imx6q.c | 5 ++++- > 1 files changed, 4 insertions(+), 1 deletions(-) > > diff --git a/arch/arm/mach-imx/clk-imx6q.c b/arch/arm/mach-imx/clk-imx6q.c > index 96e9edd..f99509a 100644 > --- a/arch/arm/mach-imx/clk-imx6q.c > +++ b/arch/arm/mach-imx/clk-imx6q.c > @@ -391,7 +391,10 @@ int __init mx6q_clocks_init(void) > clk_register_clkdev(clk[gpt_ipg], "ipg", "imx-gpt.0"); > clk_register_clkdev(clk[gpt_ipg_per], "per", "imx-gpt.0"); > clk_register_clkdev(clk[twd], NULL, "smp_twd"); > - clk_register_clkdev(clk[usboh3], NULL, "usboh3"); > + clk_register_clkdev(clk[usboh3], NULL, "2184000.usb"); > + clk_register_clkdev(clk[usboh3], NULL, "2184200.usb"); > + clk_register_clkdev(clk[usboh3], NULL, "2184400.usb"); > + clk_register_clkdev(clk[usboh3], NULL, "2184600.usb"); > clk_register_clkdev(clk[uart_serial], "per", "2020000.serial"); > clk_register_clkdev(clk[uart_ipg], "ipg", "2020000.serial"); > clk_register_clkdev(clk[uart_serial], "per", "21e8000.serial"); Best regards, Marek Vasut -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <201205220631.28739.marex-ynQEQJNshbs@public.gmane.org>]
* Re: [PATCH v2 06/12] ARM: imx6q: correct device name of usbphy and usb controller clock export [not found] ` <201205220631.28739.marex-ynQEQJNshbs@public.gmane.org> @ 2012-05-22 4:56 ` Richard Zhao 0 siblings, 0 replies; 91+ messages in thread From: Richard Zhao @ 2012-05-22 4:56 UTC (permalink / raw) To: Marek Vasut Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Tue, May 22, 2012 at 06:31:28AM +0200, Marek Vasut wrote: > Dear Richard Zhao, > > We will need similar patch for mx28 I think? It has mx28 clk patch. hmm..., something is wrong. I'll fix the name. Thanks Richard > > Otherwise > Reviewed-by: Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> > > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > > --- > > arch/arm/mach-imx/clk-imx6q.c | 5 ++++- > > 1 files changed, 4 insertions(+), 1 deletions(-) > > > > diff --git a/arch/arm/mach-imx/clk-imx6q.c b/arch/arm/mach-imx/clk-imx6q.c > > index 96e9edd..f99509a 100644 > > --- a/arch/arm/mach-imx/clk-imx6q.c > > +++ b/arch/arm/mach-imx/clk-imx6q.c > > @@ -391,7 +391,10 @@ int __init mx6q_clocks_init(void) > > clk_register_clkdev(clk[gpt_ipg], "ipg", "imx-gpt.0"); > > clk_register_clkdev(clk[gpt_ipg_per], "per", "imx-gpt.0"); > > clk_register_clkdev(clk[twd], NULL, "smp_twd"); > > - clk_register_clkdev(clk[usboh3], NULL, "usboh3"); > > + clk_register_clkdev(clk[usboh3], NULL, "2184000.usb"); > > + clk_register_clkdev(clk[usboh3], NULL, "2184200.usb"); > > + clk_register_clkdev(clk[usboh3], NULL, "2184400.usb"); > > + clk_register_clkdev(clk[usboh3], NULL, "2184600.usb"); > > clk_register_clkdev(clk[uart_serial], "per", "2020000.serial"); > > clk_register_clkdev(clk[uart_ipg], "ipg", "2020000.serial"); > > clk_register_clkdev(clk[uart_serial], "per", "21e8000.serial"); > > Best regards, > Marek Vasut > -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* [PATCH v2 07/12] ARM: imx6q: add config-on-boot gpios [not found] ` <1337592237-5090-1-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> ` (5 preceding siblings ...) 2012-05-21 9:23 ` [PATCH v2 06/12] ARM: imx6q: correct device name of usbphy and usb controller clock export Richard Zhao @ 2012-05-21 9:23 ` Richard Zhao [not found] ` <1337592237-5090-8-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-21 9:23 ` [PATCH v2 08/12] ARM: imx6q: add usbphy clocks Richard Zhao ` (5 subsequent siblings) 12 siblings, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-21 9:23 UTC (permalink / raw) To: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ Cc: B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, richard.zhao-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Rob Herring, Grant Likely Sometimes, boards have gpios that don't own by any driver or owner by a generic driver that don't like hacks. Such gpios is normally output and need setup once on boot. So I introduce the config-on-boot gpios. Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> Cc: Shawn Guo <shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> Cc: Rob Herring <rob.herring-bsGFqQB8/DxBDgjK7y7TUQ@public.gmane.org> Cc: Grant Likely <grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org> --- arch/arm/boot/dts/imx6q-sabrelite.dts | 7 ++++++ arch/arm/mach-imx/mach-imx6q.c | 35 +++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 0 deletions(-) diff --git a/arch/arm/boot/dts/imx6q-sabrelite.dts b/arch/arm/boot/dts/imx6q-sabrelite.dts index e0ec929..1dd2261 100644 --- a/arch/arm/boot/dts/imx6q-sabrelite.dts +++ b/arch/arm/boot/dts/imx6q-sabrelite.dts @@ -17,6 +17,13 @@ model = "Freescale i.MX6 Quad SABRE Lite Board"; compatible = "fsl,imx6q-sabrelite", "fsl,imx6q"; + config-on-boot { + output-gpios = < + &gpio3 22 0>; /* vbus reset */ + output-gpio-values = < + 1>; /* vbus reset */ + }; + memory { reg = <0x10000000 0x40000000>; }; diff --git a/arch/arm/mach-imx/mach-imx6q.c b/arch/arm/mach-imx/mach-imx6q.c index b47e98b..577cf19 100644 --- a/arch/arm/mach-imx/mach-imx6q.c +++ b/arch/arm/mach-imx/mach-imx6q.c @@ -19,6 +19,7 @@ #include <linux/irqdomain.h> #include <linux/of.h> #include <linux/of_address.h> +#include <linux/of_gpio.h> #include <linux/of_irq.h> #include <linux/of_platform.h> #include <linux/pinctrl/machine.h> @@ -113,6 +114,38 @@ static void __init imx6q_sabrelite_init(void) imx6q_sabrelite_cko1_setup(); } +static void __init imx6q_config_on_boot(void) +{ + struct device_node *np; + struct property *pp; + int cnt, len, i; + int gpio; + + np = of_find_node_by_path("/config-on-boot"); + if (!np) + return; + cnt = of_gpio_named_count(np, "output-gpios"); + pp = of_find_property(np, "output-gpio-values", &len); + if (!pp || cnt != len / sizeof(u32)) { + pr_err("Invalid config-on-boot gpios!\n"); + of_node_put(np); + return; + } + for (i = 0; i < cnt; i++) { + gpio = of_get_named_gpio(np, "output-gpios", i); + if (gpio_is_valid(gpio)) + gpio_request_one(gpio, GPIOF_OUT_INIT_HIGH, + "config-on-boot"); + } + + of_node_put(np); +} + +static void __init imx6q_post_populate(void) +{ + imx6q_config_on_boot(); +} + static void __init imx6q_init_machine(void) { /* @@ -126,6 +159,8 @@ static void __init imx6q_init_machine(void) of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); + imx6q_post_populate(); + imx6q_pm_init(); } -- 1.7.5.4 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply related [flat|nested] 91+ messages in thread
[parent not found: <1337592237-5090-8-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org>]
* Re: [PATCH v2 07/12] ARM: imx6q: add config-on-boot gpios [not found] ` <1337592237-5090-8-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> @ 2012-05-22 3:17 ` Shawn Guo [not found] ` <20120522031709.GH8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Shawn Guo @ 2012-05-22 3:17 UTC (permalink / raw) To: Richard Zhao Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Rob Herring, Grant Likely Apart from my comments below, we really need to know Rob and Grant's opinion on this. On Mon, May 21, 2012 at 05:23:52PM +0800, Richard Zhao wrote: > Sometimes, boards have gpios that don't own by any driver or owner > by a generic driver that don't like hacks. Such gpios is normally > output and need setup once on boot. So I introduce the config-on-boot > gpios. > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > Cc: Shawn Guo <shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> > Cc: Rob Herring <rob.herring-bsGFqQB8/DxBDgjK7y7TUQ@public.gmane.org> > Cc: Grant Likely <grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org> > --- > arch/arm/boot/dts/imx6q-sabrelite.dts | 7 ++++++ > arch/arm/mach-imx/mach-imx6q.c | 35 +++++++++++++++++++++++++++++++++ > 2 files changed, 42 insertions(+), 0 deletions(-) > > diff --git a/arch/arm/boot/dts/imx6q-sabrelite.dts b/arch/arm/boot/dts/imx6q-sabrelite.dts > index e0ec929..1dd2261 100644 > --- a/arch/arm/boot/dts/imx6q-sabrelite.dts > +++ b/arch/arm/boot/dts/imx6q-sabrelite.dts > @@ -17,6 +17,13 @@ > model = "Freescale i.MX6 Quad SABRE Lite Board"; > compatible = "fsl,imx6q-sabrelite", "fsl,imx6q"; > > + config-on-boot { > + output-gpios = < > + &gpio3 22 0>; /* vbus reset */ > + output-gpio-values = < > + 1>; /* vbus reset */ > + }; > + So it looks like something not specific to imx board but generic to other boards. If so, we may need to come up with a generic binding document for this. Is this only used to configure output pin? Will there be any pin that needs to be configured as input but not owned by any driver? Hopefully not. > memory { > reg = <0x10000000 0x40000000>; > }; > diff --git a/arch/arm/mach-imx/mach-imx6q.c b/arch/arm/mach-imx/mach-imx6q.c > index b47e98b..577cf19 100644 > --- a/arch/arm/mach-imx/mach-imx6q.c > +++ b/arch/arm/mach-imx/mach-imx6q.c > @@ -19,6 +19,7 @@ > #include <linux/irqdomain.h> > #include <linux/of.h> > #include <linux/of_address.h> > +#include <linux/of_gpio.h> > #include <linux/of_irq.h> > #include <linux/of_platform.h> > #include <linux/pinctrl/machine.h> > @@ -113,6 +114,38 @@ static void __init imx6q_sabrelite_init(void) > imx6q_sabrelite_cko1_setup(); > } > > +static void __init imx6q_config_on_boot(void) Do you intend to make this function non-gpio-config only. Otherwise, we may need to have "gpio" in the function name, as well as the "config-on-boot" node name. Also, if we define the binding as generic one, we may need to find a common place to implement the function. > +{ > + struct device_node *np; > + struct property *pp; > + int cnt, len, i; > + int gpio; > + > + np = of_find_node_by_path("/config-on-boot"); > + if (!np) > + return; > + cnt = of_gpio_named_count(np, "output-gpios"); > + pp = of_find_property(np, "output-gpio-values", &len); > + if (!pp || cnt != len / sizeof(u32)) { > + pr_err("Invalid config-on-boot gpios!\n"); > + of_node_put(np); > + return; > + } > + for (i = 0; i < cnt; i++) { > + gpio = of_get_named_gpio(np, "output-gpios", i); > + if (gpio_is_valid(gpio)) > + gpio_request_one(gpio, GPIOF_OUT_INIT_HIGH, > + "config-on-boot"); So all the gpios will use the same name. And doesn't the reset generally need a pulse or edge signal, e.g. pull down for a msec and pull up? Regards, Shawn > + } > + > + of_node_put(np); > +} > + > +static void __init imx6q_post_populate(void) > +{ > + imx6q_config_on_boot(); > +} > + > static void __init imx6q_init_machine(void) > { > /* > @@ -126,6 +159,8 @@ static void __init imx6q_init_machine(void) > > of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); > > + imx6q_post_populate(); > + > imx6q_pm_init(); > } > > -- > 1.7.5.4 > > -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120522031709.GH8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>]
* Re: [PATCH v2 07/12] ARM: imx6q: add config-on-boot gpios [not found] ` <20120522031709.GH8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> @ 2012-05-22 3:25 ` Marek Vasut [not found] ` <201205220525.39660.marex-ynQEQJNshbs@public.gmane.org> 2012-05-22 3:38 ` Richard Zhao 1 sibling, 1 reply; 91+ messages in thread From: Marek Vasut @ 2012-05-22 3:25 UTC (permalink / raw) To: Shawn Guo Cc: Richard Zhao, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Rob Herring, Grant Likely Dear Shawn Guo, > Apart from my comments below, we really need to know Rob and Grant's > opinion on this. Hm ... so why don't you actually write per-board driver ? :-) That'd handle every single board very well, you'd configure the GPIOs there, every single additional necessary thing that has to be configured would sink there too etc. > On Mon, May 21, 2012 at 05:23:52PM +0800, Richard Zhao wrote: > > Sometimes, boards have gpios that don't own by any driver or owner > > by a generic driver that don't like hacks. Such gpios is normally > > output and need setup once on boot. So I introduce the config-on-boot > > gpios. > > > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > > Cc: Shawn Guo <shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> > > Cc: Rob Herring <rob.herring-bsGFqQB8/DxBDgjK7y7TUQ@public.gmane.org> > > Cc: Grant Likely <grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org> > > --- > > > > arch/arm/boot/dts/imx6q-sabrelite.dts | 7 ++++++ > > arch/arm/mach-imx/mach-imx6q.c | 35 > > +++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 0 > > deletions(-) > > > > diff --git a/arch/arm/boot/dts/imx6q-sabrelite.dts > > b/arch/arm/boot/dts/imx6q-sabrelite.dts index e0ec929..1dd2261 100644 > > --- a/arch/arm/boot/dts/imx6q-sabrelite.dts > > +++ b/arch/arm/boot/dts/imx6q-sabrelite.dts > > @@ -17,6 +17,13 @@ > > > > model = "Freescale i.MX6 Quad SABRE Lite Board"; > > compatible = "fsl,imx6q-sabrelite", "fsl,imx6q"; > > > > + config-on-boot { > > + output-gpios = < > > + &gpio3 22 0>; /* vbus reset */ > > + output-gpio-values = < > > + 1>; /* vbus reset */ > > + }; > > + > > So it looks like something not specific to imx board but generic to > other boards. If so, we may need to come up with a generic binding > document for this. > > Is this only used to configure output pin? Will there be any pin that > needs to be configured as input but not owned by any driver? Hopefully > not. > > > memory { > > > > reg = <0x10000000 0x40000000>; > > > > }; > > > > diff --git a/arch/arm/mach-imx/mach-imx6q.c > > b/arch/arm/mach-imx/mach-imx6q.c index b47e98b..577cf19 100644 > > --- a/arch/arm/mach-imx/mach-imx6q.c > > +++ b/arch/arm/mach-imx/mach-imx6q.c > > @@ -19,6 +19,7 @@ > > > > #include <linux/irqdomain.h> > > #include <linux/of.h> > > #include <linux/of_address.h> > > > > +#include <linux/of_gpio.h> > > > > #include <linux/of_irq.h> > > #include <linux/of_platform.h> > > #include <linux/pinctrl/machine.h> > > > > @@ -113,6 +114,38 @@ static void __init imx6q_sabrelite_init(void) > > > > imx6q_sabrelite_cko1_setup(); > > > > } > > > > +static void __init imx6q_config_on_boot(void) > > Do you intend to make this function non-gpio-config only. Otherwise, > we may need to have "gpio" in the function name, as well as the > "config-on-boot" node name. > > Also, if we define the binding as generic one, we may need to find a > common place to implement the function. > > > +{ > > + struct device_node *np; > > + struct property *pp; > > + int cnt, len, i; > > + int gpio; > > + > > + np = of_find_node_by_path("/config-on-boot"); > > + if (!np) > > + return; > > + cnt = of_gpio_named_count(np, "output-gpios"); > > + pp = of_find_property(np, "output-gpio-values", &len); > > + if (!pp || cnt != len / sizeof(u32)) { > > + pr_err("Invalid config-on-boot gpios!\n"); > > + of_node_put(np); > > + return; > > + } > > + for (i = 0; i < cnt; i++) { > > + gpio = of_get_named_gpio(np, "output-gpios", i); > > + if (gpio_is_valid(gpio)) > > + gpio_request_one(gpio, GPIOF_OUT_INIT_HIGH, > > + "config-on-boot"); > > So all the gpios will use the same name. > > And doesn't the reset generally need a pulse or edge signal, e.g. pull > down for a msec and pull up? > > Regards, > Shawn > > > + } > > + > > + of_node_put(np); > > +} > > + > > +static void __init imx6q_post_populate(void) > > +{ > > + imx6q_config_on_boot(); > > +} > > + > > > > static void __init imx6q_init_machine(void) > > { > > > > /* > > > > @@ -126,6 +159,8 @@ static void __init imx6q_init_machine(void) > > > > of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); > > > > + imx6q_post_populate(); > > + > > > > imx6q_pm_init(); > > > > } Best regards, Marek Vasut -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <201205220525.39660.marex-ynQEQJNshbs@public.gmane.org>]
* Re: [PATCH v2 07/12] ARM: imx6q: add config-on-boot gpios [not found] ` <201205220525.39660.marex-ynQEQJNshbs@public.gmane.org> @ 2012-05-22 3:32 ` Shawn Guo [not found] ` <CAAQ0ZWSiD170Yb5CQdGEZw066ULvSOr4AFcBtYFiLw3P9L-VuA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Shawn Guo @ 2012-05-22 3:32 UTC (permalink / raw) To: Marek Vasut Cc: Richard Zhao, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Rob Herring, Grant Likely On 22 May 2012 11:25, Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> wrote: > Dear Shawn Guo, > >> Apart from my comments below, we really need to know Rob and Grant's >> opinion on this. > > Hm ... so why don't you actually write per-board driver ? :-) That'd handle > every single board very well, you'd configure the GPIOs there, every single > additional necessary thing that has to be configured would sink there too etc. > I'm not completely sure about how the per-board driver looks like exactly. Can you have some code demonstrating it? Regards, Shawn -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <CAAQ0ZWSiD170Yb5CQdGEZw066ULvSOr4AFcBtYFiLw3P9L-VuA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>]
* Re: [PATCH v2 07/12] ARM: imx6q: add config-on-boot gpios [not found] ` <CAAQ0ZWSiD170Yb5CQdGEZw066ULvSOr4AFcBtYFiLw3P9L-VuA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> @ 2012-05-22 4:20 ` Marek Vasut [not found] ` <201205220620.17109.marex-ynQEQJNshbs@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Marek Vasut @ 2012-05-22 4:20 UTC (permalink / raw) To: Shawn Guo Cc: Richard Zhao, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Rob Herring, Grant Likely Dear Shawn Guo, > On 22 May 2012 11:25, Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> wrote: > > Dear Shawn Guo, > > > >> Apart from my comments below, we really need to know Rob and Grant's > >> opinion on this. > > > > Hm ... so why don't you actually write per-board driver ? :-) That'd > > handle every single board very well, you'd configure the GPIOs there, > > every single additional necessary thing that has to be configured would > > sink there too etc. > > I'm not completely sure about how the per-board driver looks like > exactly. Can you have some code demonstrating it? Well such per-board driver would handle the board-specific init, like configuring the hub GPIO (as Richard has to do so on mx6q) or flick some other GPIOs, configure registers etc. You can not depend on a bootloader to do such init for you, even though the bootloader should do it and should do it right. > > Regards, > Shawn Best regards, Marek Vasut -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <201205220620.17109.marex-ynQEQJNshbs@public.gmane.org>]
* Re: [PATCH v2 07/12] ARM: imx6q: add config-on-boot gpios [not found] ` <201205220620.17109.marex-ynQEQJNshbs@public.gmane.org> @ 2012-05-22 4:42 ` Shawn Guo [not found] ` <20120522044223.GJ8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Shawn Guo @ 2012-05-22 4:42 UTC (permalink / raw) To: Marek Vasut Cc: Richard Zhao, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Rob Herring, Grant Likely On Tue, May 22, 2012 at 06:20:16AM +0200, Marek Vasut wrote: > Dear Shawn Guo, > > > On 22 May 2012 11:25, Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> wrote: > > > Dear Shawn Guo, > > > > > >> Apart from my comments below, we really need to know Rob and Grant's > > >> opinion on this. > > > > > > Hm ... so why don't you actually write per-board driver ? :-) That'd > > > handle every single board very well, you'd configure the GPIOs there, > > > every single additional necessary thing that has to be configured would > > > sink there too etc. > > > > I'm not completely sure about how the per-board driver looks like > > exactly. Can you have some code demonstrating it? > > Well such per-board driver would handle the board-specific init, like > configuring the hub GPIO (as Richard has to do so on mx6q) or flick some other > GPIOs, configure registers etc. > So when you say driver, you just meant a C file like imx6q-sabrelite.c containing a number of init functions to be called by mach-imx6q.c? -- Regards, Shawn -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120522044223.GJ8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>]
* Re: [PATCH v2 07/12] ARM: imx6q: add config-on-boot gpios [not found] ` <20120522044223.GJ8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> @ 2012-05-22 5:22 ` Marek Vasut [not found] ` <201205220722.00653.marex-ynQEQJNshbs@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Marek Vasut @ 2012-05-22 5:22 UTC (permalink / raw) To: Shawn Guo Cc: Richard Zhao, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Rob Herring, Grant Likely Dear Shawn Guo, > On Tue, May 22, 2012 at 06:20:16AM +0200, Marek Vasut wrote: > > Dear Shawn Guo, > > > > > On 22 May 2012 11:25, Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> wrote: > > > > Dear Shawn Guo, > > > > > > > >> Apart from my comments below, we really need to know Rob and Grant's > > > >> opinion on this. > > > > > > > > Hm ... so why don't you actually write per-board driver ? :-) That'd > > > > handle every single board very well, you'd configure the GPIOs there, > > > > every single additional necessary thing that has to be configured > > > > would sink there too etc. > > > > > > I'm not completely sure about how the per-board driver looks like > > > exactly. Can you have some code demonstrating it? > > > > Well such per-board driver would handle the board-specific init, like > > configuring the hub GPIO (as Richard has to do so on mx6q) or flick some > > other GPIOs, configure registers etc. > > So when you say driver, you just meant a C file like imx6q-sabrelite.c > containing a number of init functions to be called by mach-imx6q.c? Something like that ... but didn't Linus complain that we have too many files in arch/arm/ ? Best regards, Marek Vasut -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <201205220722.00653.marex-ynQEQJNshbs@public.gmane.org>]
* Re: [PATCH v2 07/12] ARM: imx6q: add config-on-boot gpios [not found] ` <201205220722.00653.marex-ynQEQJNshbs@public.gmane.org> @ 2012-05-22 5:25 ` Shawn Guo [not found] ` <CAAQ0ZWSS3ONsF=MLQOJ2u1h3mGErfZ4W2QoSNk4+MQHTC830MQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Shawn Guo @ 2012-05-22 5:25 UTC (permalink / raw) To: Marek Vasut Cc: Richard Zhao, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Rob Herring, Grant Likely On 22 May 2012 13:22, Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> wrote: > Something like that ... but didn't Linus complain that we have too many files in > arch/arm/ ? So what do you exactly mean by per-board driver? Regards, Shawn -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <CAAQ0ZWSS3ONsF=MLQOJ2u1h3mGErfZ4W2QoSNk4+MQHTC830MQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>]
* Re: [PATCH v2 07/12] ARM: imx6q: add config-on-boot gpios [not found] ` <CAAQ0ZWSS3ONsF=MLQOJ2u1h3mGErfZ4W2QoSNk4+MQHTC830MQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> @ 2012-05-22 5:27 ` Marek Vasut [not found] ` <201205220727.30910.marex-ynQEQJNshbs@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Marek Vasut @ 2012-05-22 5:27 UTC (permalink / raw) To: Shawn Guo Cc: Richard Zhao, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Rob Herring, Grant Likely Dear Shawn Guo, > On 22 May 2012 13:22, Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> wrote: > > Something like that ... but didn't Linus complain that we have too many > > files in arch/arm/ ? > > So what do you exactly mean by per-board driver? Exactly such fixup as there's for mx6q-sabrelite. But then, if you have too broken bootloader, you'll need such a fixup for every such board. Or do you want to let mach-imx6q.c grow in size with each broken board? > Regards, > Shawn Best regards, Marek Vasut -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <201205220727.30910.marex-ynQEQJNshbs@public.gmane.org>]
* Re: [PATCH v2 07/12] ARM: imx6q: add config-on-boot gpios [not found] ` <201205220727.30910.marex-ynQEQJNshbs@public.gmane.org> @ 2012-05-22 6:07 ` Richard Zhao 0 siblings, 0 replies; 91+ messages in thread From: Richard Zhao @ 2012-05-22 6:07 UTC (permalink / raw) To: Marek Vasut Cc: Shawn Guo, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Rob Herring, Grant Likely On Tue, May 22, 2012 at 07:27:30AM +0200, Marek Vasut wrote: > Dear Shawn Guo, > > > On 22 May 2012 13:22, Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> wrote: > > > Something like that ... but didn't Linus complain that we have too many > > > files in arch/arm/ ? > > > > So what do you exactly mean by per-board driver? > > Exactly such fixup as there's for mx6q-sabrelite. But then, if you have too > broken bootloader, you'll need such a fixup for every such board. Or do you want > to let mach-imx6q.c grow in size with each broken board? As Shawn said, this patch is trying to abstract common things. We don't need to repeat the code that interpret output-gpios. Generally discuss often draw no conclusion. So let's talk about code. Thanks Richard > > > Regards, > > Shawn > > Best regards, > Marek Vasut > -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* Re: [PATCH v2 07/12] ARM: imx6q: add config-on-boot gpios [not found] ` <20120522031709.GH8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 2012-05-22 3:25 ` Marek Vasut @ 2012-05-22 3:38 ` Richard Zhao 1 sibling, 0 replies; 91+ messages in thread From: Richard Zhao @ 2012-05-22 3:38 UTC (permalink / raw) To: Shawn Guo Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, Rob Herring, Grant Likely On Tue, May 22, 2012 at 11:17:12AM +0800, Shawn Guo wrote: > Apart from my comments below, we really need to know Rob and Grant's > opinion on this. Exactly. I cced them to draw their attention. > > On Mon, May 21, 2012 at 05:23:52PM +0800, Richard Zhao wrote: > > Sometimes, boards have gpios that don't own by any driver or owner > > by a generic driver that don't like hacks. Such gpios is normally > > output and need setup once on boot. So I introduce the config-on-boot > > gpios. > > > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > > Cc: Shawn Guo <shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> > > Cc: Rob Herring <rob.herring-bsGFqQB8/DxBDgjK7y7TUQ@public.gmane.org> > > Cc: Grant Likely <grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org> > > --- > > arch/arm/boot/dts/imx6q-sabrelite.dts | 7 ++++++ > > arch/arm/mach-imx/mach-imx6q.c | 35 +++++++++++++++++++++++++++++++++ > > 2 files changed, 42 insertions(+), 0 deletions(-) > > > > diff --git a/arch/arm/boot/dts/imx6q-sabrelite.dts b/arch/arm/boot/dts/imx6q-sabrelite.dts > > index e0ec929..1dd2261 100644 > > --- a/arch/arm/boot/dts/imx6q-sabrelite.dts > > +++ b/arch/arm/boot/dts/imx6q-sabrelite.dts > > @@ -17,6 +17,13 @@ > > model = "Freescale i.MX6 Quad SABRE Lite Board"; > > compatible = "fsl,imx6q-sabrelite", "fsl,imx6q"; > > > > + config-on-boot { > > + output-gpios = < > > + &gpio3 22 0>; /* vbus reset */ > > + output-gpio-values = < > > + 1>; /* vbus reset */ > > + }; > > + > > So it looks like something not specific to imx board but generic to > other boards. If so, we may need to come up with a generic binding > document for this. Yes. > > Is this only used to configure output pin? Will there be any pin that > needs to be configured as input but not owned by any driver? Hopefully > not. I didn't see the case yet. Input pin normally has a corresponding driver. > > > memory { > > reg = <0x10000000 0x40000000>; > > }; > > diff --git a/arch/arm/mach-imx/mach-imx6q.c b/arch/arm/mach-imx/mach-imx6q.c > > index b47e98b..577cf19 100644 > > --- a/arch/arm/mach-imx/mach-imx6q.c > > +++ b/arch/arm/mach-imx/mach-imx6q.c > > @@ -19,6 +19,7 @@ > > #include <linux/irqdomain.h> > > #include <linux/of.h> > > #include <linux/of_address.h> > > +#include <linux/of_gpio.h> > > #include <linux/of_irq.h> > > #include <linux/of_platform.h> > > #include <linux/pinctrl/machine.h> > > @@ -113,6 +114,38 @@ static void __init imx6q_sabrelite_init(void) > > imx6q_sabrelite_cko1_setup(); > > } > > > > +static void __init imx6q_config_on_boot(void) > > Do you intend to make this function non-gpio-config only. Otherwise, > we may need to have "gpio" in the function name, as well as the > "config-on-boot" node name. config-on-boot is not specific for gpio, but may be for others. For example, regulators. For now, it only has output gpios. > > Also, if we define the binding as generic one, we may need to find a > common place to implement the function. Yes. But it's better be called at machine init after populate devices. > > > +{ > > + struct device_node *np; > > + struct property *pp; > > + int cnt, len, i; > > + int gpio; > > + > > + np = of_find_node_by_path("/config-on-boot"); > > + if (!np) > > + return; > > + cnt = of_gpio_named_count(np, "output-gpios"); > > + pp = of_find_property(np, "output-gpio-values", &len); > > + if (!pp || cnt != len / sizeof(u32)) { > > + pr_err("Invalid config-on-boot gpios!\n"); > > + of_node_put(np); > > + return; > > + } > > + for (i = 0; i < cnt; i++) { > > + gpio = of_get_named_gpio(np, "output-gpios", i); > > + if (gpio_is_valid(gpio)) > > + gpio_request_one(gpio, GPIOF_OUT_INIT_HIGH, > > + "config-on-boot"); > > So all the gpios will use the same name. Yes. > > And doesn't the reset generally need a pulse or edge signal, e.g. pull > down for a msec and pull up? strict reset is too complicated for config-on-boot. It may need delay some time case by case. I don't have the case yet. But someone may add it if it really needed, probably with addon properties. Thanks Richard > > Regards, > Shawn > > > + } > > + > > + of_node_put(np); > > +} > > + > > +static void __init imx6q_post_populate(void) > > +{ > > + imx6q_config_on_boot(); > > +} > > + > > static void __init imx6q_init_machine(void) > > { > > /* > > @@ -126,6 +159,8 @@ static void __init imx6q_init_machine(void) > > > > of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); > > > > + imx6q_post_populate(); > > + > > imx6q_pm_init(); > > } > > > > -- > > 1.7.5.4 > > > > > -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* [PATCH v2 08/12] ARM: imx6q: add usbphy clocks [not found] ` <1337592237-5090-1-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> ` (6 preceding siblings ...) 2012-05-21 9:23 ` [PATCH v2 07/12] ARM: imx6q: add config-on-boot gpios Richard Zhao @ 2012-05-21 9:23 ` Richard Zhao [not found] ` <1337592237-5090-9-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-21 9:23 ` [PATCH v2 09/12] ARM: imx6q: disable usb charger detector Richard Zhao ` (4 subsequent siblings) 12 siblings, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-21 9:23 UTC (permalink / raw) To: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ Cc: B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, richard.zhao-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> --- arch/arm/mach-imx/clk-imx6q.c | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-) diff --git a/arch/arm/mach-imx/clk-imx6q.c b/arch/arm/mach-imx/clk-imx6q.c index f99509a..0d003aa 100644 --- a/arch/arm/mach-imx/clk-imx6q.c +++ b/arch/arm/mach-imx/clk-imx6q.c @@ -152,7 +152,7 @@ enum mx6q_clks { ssi2, ssi3, uart_ipg, uart_serial, usboh3, usdhc1, usdhc2, usdhc3, usdhc4, vdo_axi, vpu_axi, cko1, pll1_sys, pll2_bus, pll3_usb_otg, pll4_audio, pll5_video, pll6_mlb, pll7_usb_host, pll8_enet, ssi1_ipg, - ssi2_ipg, ssi3_ipg, clk_max + ssi2_ipg, ssi3_ipg, usbphy1_gate, usbphy2_gate, clk_max }; static struct clk *clk[clk_max]; @@ -197,6 +197,9 @@ int __init mx6q_clocks_init(void) clk[pll7_usb_host] = imx_clk_pllv3(IMX_PLLV3_USB, "pll7_usb_host","osc", base + 0x20, 0x2000, 0x3); clk[pll8_enet] = imx_clk_pllv3(IMX_PLLV3_ENET, "pll8_enet", "osc", base + 0xe0, 0x182000, 0x3); + clk[usbphy1_gate] = imx_clk_gate("usbphy1_gate", "pll3_usb_otg", base + 0x10, 6); + clk[usbphy2_gate] = imx_clk_gate("usbphy2_gate", "pll7_usb_host", base + 0x20, 6); + /* name parent_name reg idx */ clk[pll2_pfd0_352m] = imx_clk_pfd("pll2_pfd0_352m", "pll2_bus", base + 0x100, 0); clk[pll2_pfd1_594m] = imx_clk_pfd("pll2_pfd1_594m", "pll2_bus", base + 0x100, 1); @@ -395,6 +398,8 @@ int __init mx6q_clocks_init(void) clk_register_clkdev(clk[usboh3], NULL, "2184200.usb"); clk_register_clkdev(clk[usboh3], NULL, "2184400.usb"); clk_register_clkdev(clk[usboh3], NULL, "2184600.usb"); + clk_register_clkdev(clk[usbphy1_gate], NULL, "20c9000.usbphy"); + clk_register_clkdev(clk[usbphy2_gate], NULL, "20ca000.usbphy"); clk_register_clkdev(clk[uart_serial], "per", "2020000.serial"); clk_register_clkdev(clk[uart_ipg], "ipg", "2020000.serial"); clk_register_clkdev(clk[uart_serial], "per", "21e8000.serial"); -- 1.7.5.4 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply related [flat|nested] 91+ messages in thread
[parent not found: <1337592237-5090-9-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org>]
* Re: [PATCH v2 08/12] ARM: imx6q: add usbphy clocks [not found] ` <1337592237-5090-9-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> @ 2012-05-22 4:32 ` Marek Vasut [not found] ` <201205220632.13896.marex-ynQEQJNshbs@public.gmane.org> 2012-05-22 5:37 ` Shawn Guo 1 sibling, 1 reply; 91+ messages in thread From: Marek Vasut @ 2012-05-22 4:32 UTC (permalink / raw) To: Richard Zhao Cc: fabio.estevam-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, B29397-KZfg59tc24xl57MIdRCFDg, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, linux-usb-u79uwXL29TY76Z2rM5mHXA, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r Dear Richard Zhao, Maybe reorder this so it's in before the PHY driver? Reviewed-by: Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > --- > arch/arm/mach-imx/clk-imx6q.c | 7 ++++++- > 1 files changed, 6 insertions(+), 1 deletions(-) > > diff --git a/arch/arm/mach-imx/clk-imx6q.c b/arch/arm/mach-imx/clk-imx6q.c > index f99509a..0d003aa 100644 > --- a/arch/arm/mach-imx/clk-imx6q.c > +++ b/arch/arm/mach-imx/clk-imx6q.c > @@ -152,7 +152,7 @@ enum mx6q_clks { > ssi2, ssi3, uart_ipg, uart_serial, usboh3, usdhc1, usdhc2, usdhc3, > usdhc4, vdo_axi, vpu_axi, cko1, pll1_sys, pll2_bus, pll3_usb_otg, > pll4_audio, pll5_video, pll6_mlb, pll7_usb_host, pll8_enet, ssi1_ipg, > - ssi2_ipg, ssi3_ipg, clk_max > + ssi2_ipg, ssi3_ipg, usbphy1_gate, usbphy2_gate, clk_max > }; > > static struct clk *clk[clk_max]; > @@ -197,6 +197,9 @@ int __init mx6q_clocks_init(void) > clk[pll7_usb_host] = imx_clk_pllv3(IMX_PLLV3_USB, "pll7_usb_host","osc", > base + 0x20, 0x2000, 0x3); clk[pll8_enet] = > imx_clk_pllv3(IMX_PLLV3_ENET, "pll8_enet", "osc", base + 0xe0, 0x182000, > 0x3); > > + clk[usbphy1_gate] = imx_clk_gate("usbphy1_gate", "pll3_usb_otg", base + > 0x10, 6); + clk[usbphy2_gate] = imx_clk_gate("usbphy2_gate", > "pll7_usb_host", base + 0x20, 6); + > /* name parent_name > reg idx */ clk[pll2_pfd0_352m] = imx_clk_pfd("pll2_pfd0_352m", > "pll2_bus", base + 0x100, 0); clk[pll2_pfd1_594m] = > imx_clk_pfd("pll2_pfd1_594m", "pll2_bus", base + 0x100, 1); @@ -395,6 > +398,8 @@ int __init mx6q_clocks_init(void) > clk_register_clkdev(clk[usboh3], NULL, "2184200.usb"); > clk_register_clkdev(clk[usboh3], NULL, "2184400.usb"); > clk_register_clkdev(clk[usboh3], NULL, "2184600.usb"); > + clk_register_clkdev(clk[usbphy1_gate], NULL, "20c9000.usbphy"); > + clk_register_clkdev(clk[usbphy2_gate], NULL, "20ca000.usbphy"); > clk_register_clkdev(clk[uart_serial], "per", "2020000.serial"); > clk_register_clkdev(clk[uart_ipg], "ipg", "2020000.serial"); > clk_register_clkdev(clk[uart_serial], "per", "21e8000.serial"); Best regards, Marek Vasut ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <201205220632.13896.marex-ynQEQJNshbs@public.gmane.org>]
* Re: [PATCH v2 08/12] ARM: imx6q: add usbphy clocks [not found] ` <201205220632.13896.marex-ynQEQJNshbs@public.gmane.org> @ 2012-05-22 4:45 ` Shawn Guo [not found] ` <20120522044515.GK8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 2012-05-22 4:59 ` Richard Zhao 1 sibling, 1 reply; 91+ messages in thread From: Shawn Guo @ 2012-05-22 4:45 UTC (permalink / raw) To: Marek Vasut Cc: Richard Zhao, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Tue, May 22, 2012 at 06:32:13AM +0200, Marek Vasut wrote: > Dear Richard Zhao, > > Maybe reorder this so it's in before the PHY driver? > It should not matter, as I suppose all those "usb: ..." patches will go via usb tree, while all those "ARM: ..." will go via arm-soc tree. -- Regards, Shawn -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120522044515.GK8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>]
* Re: [PATCH v2 08/12] ARM: imx6q: add usbphy clocks [not found] ` <20120522044515.GK8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> @ 2012-05-22 5:22 ` Marek Vasut 0 siblings, 0 replies; 91+ messages in thread From: Marek Vasut @ 2012-05-22 5:22 UTC (permalink / raw) To: Shawn Guo Cc: Richard Zhao, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Dear Shawn Guo, > On Tue, May 22, 2012 at 06:32:13AM +0200, Marek Vasut wrote: > > Dear Richard Zhao, > > > > Maybe reorder this so it's in before the PHY driver? > > It should not matter, as I suppose all those "usb: ..." patches will > go via usb tree, while all those "ARM: ..." will go via arm-soc tree. It's easier to bisect, but ok. Best regards, Marek Vasut -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* Re: [PATCH v2 08/12] ARM: imx6q: add usbphy clocks [not found] ` <201205220632.13896.marex-ynQEQJNshbs@public.gmane.org> 2012-05-22 4:45 ` Shawn Guo @ 2012-05-22 4:59 ` Richard Zhao 1 sibling, 0 replies; 91+ messages in thread From: Richard Zhao @ 2012-05-22 4:59 UTC (permalink / raw) To: Marek Vasut Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Tue, May 22, 2012 at 06:32:13AM +0200, Marek Vasut wrote: > Dear Richard Zhao, > > Maybe reorder this so it's in before the PHY driver? Patch series always driver come first. > > Reviewed-by: Marek Vasut <marex-ynQEQJNshbs@public.gmane.org> > > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > > --- > > arch/arm/mach-imx/clk-imx6q.c | 7 ++++++- > > 1 files changed, 6 insertions(+), 1 deletions(-) > > > > diff --git a/arch/arm/mach-imx/clk-imx6q.c b/arch/arm/mach-imx/clk-imx6q.c > > index f99509a..0d003aa 100644 > > --- a/arch/arm/mach-imx/clk-imx6q.c > > +++ b/arch/arm/mach-imx/clk-imx6q.c > > @@ -152,7 +152,7 @@ enum mx6q_clks { > > ssi2, ssi3, uart_ipg, uart_serial, usboh3, usdhc1, usdhc2, usdhc3, > > usdhc4, vdo_axi, vpu_axi, cko1, pll1_sys, pll2_bus, pll3_usb_otg, > > pll4_audio, pll5_video, pll6_mlb, pll7_usb_host, pll8_enet, ssi1_ipg, > > - ssi2_ipg, ssi3_ipg, clk_max > > + ssi2_ipg, ssi3_ipg, usbphy1_gate, usbphy2_gate, clk_max > > }; > > > > static struct clk *clk[clk_max]; > > @@ -197,6 +197,9 @@ int __init mx6q_clocks_init(void) > > clk[pll7_usb_host] = imx_clk_pllv3(IMX_PLLV3_USB, > "pll7_usb_host","osc", could you disable auto-wrap? Thanks Richard > > base + 0x20, 0x2000, 0x3); clk[pll8_enet] = > > imx_clk_pllv3(IMX_PLLV3_ENET, "pll8_enet", "osc", base + 0xe0, 0x182000, > > 0x3); > > > > + clk[usbphy1_gate] = imx_clk_gate("usbphy1_gate", "pll3_usb_otg", base + > > 0x10, 6); + clk[usbphy2_gate] = imx_clk_gate("usbphy2_gate", > > "pll7_usb_host", base + 0x20, 6); + > > /* name parent_name > > reg idx */ clk[pll2_pfd0_352m] = imx_clk_pfd("pll2_pfd0_352m", > > "pll2_bus", base + 0x100, 0); clk[pll2_pfd1_594m] = > > imx_clk_pfd("pll2_pfd1_594m", "pll2_bus", base + 0x100, 1); @@ -395,6 > > +398,8 @@ int __init mx6q_clocks_init(void) > > clk_register_clkdev(clk[usboh3], NULL, "2184200.usb"); > > clk_register_clkdev(clk[usboh3], NULL, "2184400.usb"); > > clk_register_clkdev(clk[usboh3], NULL, "2184600.usb"); > > + clk_register_clkdev(clk[usbphy1_gate], NULL, "20c9000.usbphy"); > > + clk_register_clkdev(clk[usbphy2_gate], NULL, "20ca000.usbphy"); > > clk_register_clkdev(clk[uart_serial], "per", "2020000.serial"); > > clk_register_clkdev(clk[uart_ipg], "ipg", "2020000.serial"); > > clk_register_clkdev(clk[uart_serial], "per", "21e8000.serial"); > > Best regards, > Marek Vasut > -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* Re: [PATCH v2 08/12] ARM: imx6q: add usbphy clocks [not found] ` <1337592237-5090-9-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-22 4:32 ` Marek Vasut @ 2012-05-22 5:37 ` Shawn Guo [not found] ` <20120522053706.GO8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 1 sibling, 1 reply; 91+ messages in thread From: Shawn Guo @ 2012-05-22 5:37 UTC (permalink / raw) To: Richard Zhao Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Mon, May 21, 2012 at 05:23:53PM +0800, Richard Zhao wrote: > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > --- > arch/arm/mach-imx/clk-imx6q.c | 7 ++++++- > 1 files changed, 6 insertions(+), 1 deletions(-) > > diff --git a/arch/arm/mach-imx/clk-imx6q.c b/arch/arm/mach-imx/clk-imx6q.c > index f99509a..0d003aa 100644 > --- a/arch/arm/mach-imx/clk-imx6q.c > +++ b/arch/arm/mach-imx/clk-imx6q.c > @@ -152,7 +152,7 @@ enum mx6q_clks { > ssi2, ssi3, uart_ipg, uart_serial, usboh3, usdhc1, usdhc2, usdhc3, > usdhc4, vdo_axi, vpu_axi, cko1, pll1_sys, pll2_bus, pll3_usb_otg, > pll4_audio, pll5_video, pll6_mlb, pll7_usb_host, pll8_enet, ssi1_ipg, > - ssi2_ipg, ssi3_ipg, clk_max > + ssi2_ipg, ssi3_ipg, usbphy1_gate, usbphy2_gate, clk_max Can you drop the "_gate" suffix? We do not have such suffix for leaf clock in imx6q clock file. Regards, Shawn > }; > > static struct clk *clk[clk_max]; > @@ -197,6 +197,9 @@ int __init mx6q_clocks_init(void) > clk[pll7_usb_host] = imx_clk_pllv3(IMX_PLLV3_USB, "pll7_usb_host","osc", base + 0x20, 0x2000, 0x3); > clk[pll8_enet] = imx_clk_pllv3(IMX_PLLV3_ENET, "pll8_enet", "osc", base + 0xe0, 0x182000, 0x3); > > + clk[usbphy1_gate] = imx_clk_gate("usbphy1_gate", "pll3_usb_otg", base + 0x10, 6); > + clk[usbphy2_gate] = imx_clk_gate("usbphy2_gate", "pll7_usb_host", base + 0x20, 6); > + > /* name parent_name reg idx */ > clk[pll2_pfd0_352m] = imx_clk_pfd("pll2_pfd0_352m", "pll2_bus", base + 0x100, 0); > clk[pll2_pfd1_594m] = imx_clk_pfd("pll2_pfd1_594m", "pll2_bus", base + 0x100, 1); > @@ -395,6 +398,8 @@ int __init mx6q_clocks_init(void) > clk_register_clkdev(clk[usboh3], NULL, "2184200.usb"); > clk_register_clkdev(clk[usboh3], NULL, "2184400.usb"); > clk_register_clkdev(clk[usboh3], NULL, "2184600.usb"); > + clk_register_clkdev(clk[usbphy1_gate], NULL, "20c9000.usbphy"); > + clk_register_clkdev(clk[usbphy2_gate], NULL, "20ca000.usbphy"); > clk_register_clkdev(clk[uart_serial], "per", "2020000.serial"); > clk_register_clkdev(clk[uart_ipg], "ipg", "2020000.serial"); > clk_register_clkdev(clk[uart_serial], "per", "21e8000.serial"); > -- > 1.7.5.4 > > -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120522053706.GO8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>]
* Re: [PATCH v2 08/12] ARM: imx6q: add usbphy clocks [not found] ` <20120522053706.GO8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> @ 2012-05-22 6:08 ` Richard Zhao 0 siblings, 0 replies; 91+ messages in thread From: Richard Zhao @ 2012-05-22 6:08 UTC (permalink / raw) To: Shawn Guo Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Tue, May 22, 2012 at 01:37:08PM +0800, Shawn Guo wrote: > On Mon, May 21, 2012 at 05:23:53PM +0800, Richard Zhao wrote: > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > > --- > > arch/arm/mach-imx/clk-imx6q.c | 7 ++++++- > > 1 files changed, 6 insertions(+), 1 deletions(-) > > > > diff --git a/arch/arm/mach-imx/clk-imx6q.c b/arch/arm/mach-imx/clk-imx6q.c > > index f99509a..0d003aa 100644 > > --- a/arch/arm/mach-imx/clk-imx6q.c > > +++ b/arch/arm/mach-imx/clk-imx6q.c > > @@ -152,7 +152,7 @@ enum mx6q_clks { > > ssi2, ssi3, uart_ipg, uart_serial, usboh3, usdhc1, usdhc2, usdhc3, > > usdhc4, vdo_axi, vpu_axi, cko1, pll1_sys, pll2_bus, pll3_usb_otg, > > pll4_audio, pll5_video, pll6_mlb, pll7_usb_host, pll8_enet, ssi1_ipg, > > - ssi2_ipg, ssi3_ipg, clk_max > > + ssi2_ipg, ssi3_ipg, usbphy1_gate, usbphy2_gate, clk_max > > Can you drop the "_gate" suffix? We do not have such suffix for leaf > clock in imx6q clock file. ok Thanks Richard -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* [PATCH v2 09/12] ARM: imx6q: disable usb charger detector [not found] ` <1337592237-5090-1-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> ` (7 preceding siblings ...) 2012-05-21 9:23 ` [PATCH v2 08/12] ARM: imx6q: add usbphy clocks Richard Zhao @ 2012-05-21 9:23 ` Richard Zhao [not found] ` <1337592237-5090-10-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-21 9:23 ` [PATCH v2 10/12] ARM: dts: imx6q-sabrelite: add usb devices Richard Zhao ` (3 subsequent siblings) 12 siblings, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-21 9:23 UTC (permalink / raw) To: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ Cc: B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, richard.zhao-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA The external charger detector needs to be disabled, or the signal at DP will be poor Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> --- arch/arm/mach-imx/mach-imx6q.c | 25 +++++++++++++++++++++++++ 1 files changed, 25 insertions(+), 0 deletions(-) diff --git a/arch/arm/mach-imx/mach-imx6q.c b/arch/arm/mach-imx/mach-imx6q.c index 577cf19..0bfd8c7 100644 --- a/arch/arm/mach-imx/mach-imx6q.c +++ b/arch/arm/mach-imx/mach-imx6q.c @@ -25,6 +25,7 @@ #include <linux/pinctrl/machine.h> #include <linux/phy.h> #include <linux/micrel_phy.h> +#include <linux/mfd/anatop.h> #include <asm/smp_twd.h> #include <asm/hardware/cache-l2x0.h> #include <asm/hardware/gic.h> @@ -141,9 +142,33 @@ static void __init imx6q_config_on_boot(void) of_node_put(np); } +static void __init imx6q_usb_init(void) +{ +#define HW_ANADIG_USB1_CHRG_DETECT 0x000001b0 +#define HW_ANADIG_USB2_CHRG_DETECT 0x00000210 + +#define BM_ANADIG_USB_CHRG_DETECT_EN_B 0x00100000 +#define BM_ANADIG_USB_CHRG_DETECT_CHK_CHRG_B 0x00080000 + + /* + * The external charger detector needs to be disabled, + * or the signal at DP will be poor + */ + + anatop_write_reg(NULL, HW_ANADIG_USB1_CHRG_DETECT, + BM_ANADIG_USB_CHRG_DETECT_EN_B + | BM_ANADIG_USB_CHRG_DETECT_CHK_CHRG_B, + ~0); + anatop_write_reg(NULL, HW_ANADIG_USB2_CHRG_DETECT, + BM_ANADIG_USB_CHRG_DETECT_EN_B | + BM_ANADIG_USB_CHRG_DETECT_CHK_CHRG_B, + ~0); +} + static void __init imx6q_post_populate(void) { imx6q_config_on_boot(); + imx6q_usb_init(); } static void __init imx6q_init_machine(void) -- 1.7.5.4 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply related [flat|nested] 91+ messages in thread
[parent not found: <1337592237-5090-10-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org>]
* Re: [PATCH v2 09/12] ARM: imx6q: disable usb charger detector [not found] ` <1337592237-5090-10-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> @ 2012-05-22 3:48 ` Shawn Guo [not found] ` <20120522034809.GI8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Shawn Guo @ 2012-05-22 3:48 UTC (permalink / raw) To: Richard Zhao Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Mon, May 21, 2012 at 05:23:54PM +0800, Richard Zhao wrote: > +static void __init imx6q_usb_init(void) > +{ > +#define HW_ANADIG_USB1_CHRG_DETECT 0x000001b0 > +#define HW_ANADIG_USB2_CHRG_DETECT 0x00000210 > + > +#define BM_ANADIG_USB_CHRG_DETECT_EN_B 0x00100000 > +#define BM_ANADIG_USB_CHRG_DETECT_CHK_CHRG_B 0x00080000 > + > + /* > + * The external charger detector needs to be disabled, > + * or the signal at DP will be poor > + */ > + Nit: drop this unnecessary new line. Regards, Shawn > + anatop_write_reg(NULL, HW_ANADIG_USB1_CHRG_DETECT, > + BM_ANADIG_USB_CHRG_DETECT_EN_B > + | BM_ANADIG_USB_CHRG_DETECT_CHK_CHRG_B, > + ~0); > + anatop_write_reg(NULL, HW_ANADIG_USB2_CHRG_DETECT, > + BM_ANADIG_USB_CHRG_DETECT_EN_B | > + BM_ANADIG_USB_CHRG_DETECT_CHK_CHRG_B, > + ~0); > +} > + -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120522034809.GI8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>]
* Re: [PATCH v2 09/12] ARM: imx6q: disable usb charger detector [not found] ` <20120522034809.GI8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> @ 2012-05-22 4:32 ` Richard Zhao 0 siblings, 0 replies; 91+ messages in thread From: Richard Zhao @ 2012-05-22 4:32 UTC (permalink / raw) To: Shawn Guo Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Tue, May 22, 2012 at 11:48:11AM +0800, Shawn Guo wrote: > On Mon, May 21, 2012 at 05:23:54PM +0800, Richard Zhao wrote: > > +static void __init imx6q_usb_init(void) > > +{ > > +#define HW_ANADIG_USB1_CHRG_DETECT 0x000001b0 > > +#define HW_ANADIG_USB2_CHRG_DETECT 0x00000210 > > + > > +#define BM_ANADIG_USB_CHRG_DETECT_EN_B 0x00100000 > > +#define BM_ANADIG_USB_CHRG_DETECT_CHK_CHRG_B 0x00080000 > > + > > + /* > > + * The external charger detector needs to be disabled, > > + * or the signal at DP will be poor > > + */ > > + > Nit: drop this unnecessary new line. OK. Thanks Richard > > Regards, > Shawn > > > + anatop_write_reg(NULL, HW_ANADIG_USB1_CHRG_DETECT, > > + BM_ANADIG_USB_CHRG_DETECT_EN_B > > + | BM_ANADIG_USB_CHRG_DETECT_CHK_CHRG_B, > > + ~0); > > + anatop_write_reg(NULL, HW_ANADIG_USB2_CHRG_DETECT, > > + BM_ANADIG_USB_CHRG_DETECT_EN_B | > > + BM_ANADIG_USB_CHRG_DETECT_CHK_CHRG_B, > > + ~0); > > +} > > + > -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* [PATCH v2 10/12] ARM: dts: imx6q-sabrelite: add usb devices [not found] ` <1337592237-5090-1-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> ` (8 preceding siblings ...) 2012-05-21 9:23 ` [PATCH v2 09/12] ARM: imx6q: disable usb charger detector Richard Zhao @ 2012-05-21 9:23 ` Richard Zhao [not found] ` <1337592237-5090-11-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-21 9:23 ` [PATCH v2 11/12] ARM: mxs: clk_register_clkdev mx28 usb clocks Richard Zhao ` (2 subsequent siblings) 12 siblings, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-21 9:23 UTC (permalink / raw) To: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ Cc: B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, richard.zhao-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> --- arch/arm/boot/dts/imx6q-sabrelite.dts | 18 ++++++++++++- arch/arm/boot/dts/imx6q.dtsi | 44 +++++++++++++++++++++++++++++++- 2 files changed, 59 insertions(+), 3 deletions(-) diff --git a/arch/arm/boot/dts/imx6q-sabrelite.dts b/arch/arm/boot/dts/imx6q-sabrelite.dts index 1dd2261..1d28957 100644 --- a/arch/arm/boot/dts/imx6q-sabrelite.dts +++ b/arch/arm/boot/dts/imx6q-sabrelite.dts @@ -48,10 +48,26 @@ status = "okay"; }; }; - + iomuxc@020e0000 { + gpios { + pinctrl_gpio_hog: gpiohog { + fsl,pins = <1044 0x80000000 + 144 0x80000000>; /* MX6Q_PAD_GPIO_17__GPIO_7_12 */ + }; + }; + }; }; aips-bus@02100000 { /* AIPS2 */ + usb@02184000 { /* USB OTG */ + fsl,vbus-power-gpios = <&gpio3 22 0>; + status = "okay"; + }; + + usb@02184200 { /* USB1 */ + status = "okay"; + }; + ethernet@02188000 { phy-mode = "rgmii"; phy-reset-gpios = <&gpio3 23 0>; diff --git a/arch/arm/boot/dts/imx6q.dtsi b/arch/arm/boot/dts/imx6q.dtsi index 8c90cba..f67048e 100644 --- a/arch/arm/boot/dts/imx6q.dtsi +++ b/arch/arm/boot/dts/imx6q.dtsi @@ -444,12 +444,14 @@ }; }; - usbphy@020c9000 { /* USBPHY1 */ + usbphy1: usbphy@020c9000 { + compatible = "fsl,imx6q-usbphy", "fsl,imx23-usbphy"; reg = <0x020c9000 0x1000>; interrupts = <0 44 0x04>; }; - usbphy@020ca000 { /* USBPHY2 */ + usbphy2: usbphy@020ca000 { + compatible = "fsl,imx6q-usbphy", "fsl,imx23-usbphy"; reg = <0x020ca000 0x1000>; interrupts = <0 45 0x04>; }; @@ -485,6 +487,9 @@ compatible = "fsl,imx6q-iomuxc"; reg = <0x020e0000 0x4000>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_gpio_hog>; + /* shared pinctrl settings */ audmux { pinctrl_audmux_1: audmux-1 { @@ -495,6 +500,11 @@ }; }; + gpios { + pinctrl_gpio_hog: gpiohog { + }; + }; + i2c1 { pinctrl_i2c1_1: i2c1grp-1 { fsl,pins = <137 0x4001b8b1 /* MX6Q_PAD_EIM_D21__I2C1_SCL */ @@ -573,6 +583,36 @@ reg = <0x0217c000 0x4000>; }; + usb@02184000 { /* USB OTG */ + compatible = "fsl,imx6q-usb", "fsl,imx31-usb"; + reg = <0x02184000 0x200>; + interrupts = <0 43 0x04>; + fsl,usbphy = <&usbphy1>; + status = "disabled"; + }; + + usb@02184200 { /* USB1 */ + compatible = "fsl,imx6q-usb", "fsl,imx31-usb"; + reg = <0x02184200 0x200>; + interrupts = <0 40 0x04>; + fsl,usbphy = <&usbphy2>; + status = "disabled"; + }; + + usb@02184400 { /* USB2 */ + compatible = "fsl,imx6q-usb", "fsl,imx31-usb"; + reg = <0x02184400 0x200>; + interrupts = <0 41 0x04>; + status = "disabled"; + }; + + usb@02184600 { /* USB3 */ + compatible = "fsl,imx6q-usb", "fsl,imx31-usb"; + reg = <0x02184600 0x200>; + interrupts = <0 42 0x04>; + status = "disabled"; + }; + ethernet@02188000 { compatible = "fsl,imx6q-fec"; reg = <0x02188000 0x4000>; -- 1.7.5.4 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply related [flat|nested] 91+ messages in thread
[parent not found: <1337592237-5090-11-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org>]
* Re: [PATCH v2 10/12] ARM: dts: imx6q-sabrelite: add usb devices [not found] ` <1337592237-5090-11-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> @ 2012-05-22 5:10 ` Shawn Guo [not found] ` <20120522051005.GN8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Shawn Guo @ 2012-05-22 5:10 UTC (permalink / raw) To: Richard Zhao Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Mon, May 21, 2012 at 05:23:55PM +0800, Richard Zhao wrote: > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > --- > arch/arm/boot/dts/imx6q-sabrelite.dts | 18 ++++++++++++- > arch/arm/boot/dts/imx6q.dtsi | 44 +++++++++++++++++++++++++++++++- > 2 files changed, 59 insertions(+), 3 deletions(-) > > diff --git a/arch/arm/boot/dts/imx6q-sabrelite.dts b/arch/arm/boot/dts/imx6q-sabrelite.dts > index 1dd2261..1d28957 100644 > --- a/arch/arm/boot/dts/imx6q-sabrelite.dts > +++ b/arch/arm/boot/dts/imx6q-sabrelite.dts > @@ -48,10 +48,26 @@ > status = "okay"; > }; > }; > - > + iomuxc@020e0000 { > + gpios { > + pinctrl_gpio_hog: gpiohog { This isn't really welcomed, and should really be removed after we have gpio_request() be able to call pinctrl to set the mux. > + fsl,pins = <1044 0x80000000 > + 144 0x80000000>; /* MX6Q_PAD_GPIO_17__GPIO_7_12 */ Here are what I get from fsl,imx6q-pinctrl.txt. The comment was put on the wrong line? MX6Q_PAD_EIM_D22__GPIO_3_22 144 MX6Q_PAD_GPIO_17__GPIO_7_12 1044 > + }; > + }; > + }; > }; > ... > @@ -495,6 +500,11 @@ > }; > }; > > + gpios { > + pinctrl_gpio_hog: gpiohog { > + }; > + }; > + Why the empty nodes? -- Regards, Shawn -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120522051005.GN8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>]
* Re: [PATCH v2 10/12] ARM: dts: imx6q-sabrelite: add usb devices [not found] ` <20120522051005.GN8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> @ 2012-05-22 5:59 ` Richard Zhao [not found] ` <20120522055901.GR6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-22 5:59 UTC (permalink / raw) To: Shawn Guo Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Tue, May 22, 2012 at 01:10:08PM +0800, Shawn Guo wrote: > On Mon, May 21, 2012 at 05:23:55PM +0800, Richard Zhao wrote: > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > > --- > > arch/arm/boot/dts/imx6q-sabrelite.dts | 18 ++++++++++++- > > arch/arm/boot/dts/imx6q.dtsi | 44 +++++++++++++++++++++++++++++++- > > 2 files changed, 59 insertions(+), 3 deletions(-) > > > > diff --git a/arch/arm/boot/dts/imx6q-sabrelite.dts b/arch/arm/boot/dts/imx6q-sabrelite.dts > > index 1dd2261..1d28957 100644 > > --- a/arch/arm/boot/dts/imx6q-sabrelite.dts > > +++ b/arch/arm/boot/dts/imx6q-sabrelite.dts > > @@ -48,10 +48,26 @@ > > status = "okay"; > > }; > > }; > > - > > + iomuxc@020e0000 { > > + gpios { > > + pinctrl_gpio_hog: gpiohog { > > This isn't really welcomed, and should really be removed after we have > gpio_request() be able to call pinctrl to set the mux. Yes, but we don't have now. If I add dependency which don't even hit next tree, I experienced people refuse pick my patch. Of course, If you're ok to pick other patches, I can leave the code locally for test. > > > + fsl,pins = <1044 0x80000000 > > + 144 0x80000000>; /* MX6Q_PAD_GPIO_17__GPIO_7_12 */ > > Here are what I get from fsl,imx6q-pinctrl.txt. The comment was put on > the wrong line? > > MX6Q_PAD_EIM_D22__GPIO_3_22 144 > MX6Q_PAD_GPIO_17__GPIO_7_12 1044 Good catch. > > > + }; > > + }; > > + }; > > }; > > > ... > > > @@ -495,6 +500,11 @@ > > }; > > }; > > > > + gpios { > > + pinctrl_gpio_hog: gpiohog { > > + }; > > + }; > > + > Why the empty nodes? It's place holder that let use know to add gpio hog-on-boot in board dts. Thanks Richard > > -- > Regards, > Shawn > -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120522055901.GR6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org>]
* Re: [PATCH v2 10/12] ARM: dts: imx6q-sabrelite: add usb devices [not found] ` <20120522055901.GR6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> @ 2012-05-22 6:08 ` Shawn Guo [not found] ` <20120522060828.GP8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Shawn Guo @ 2012-05-22 6:08 UTC (permalink / raw) To: Richard Zhao Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Tue, May 22, 2012 at 01:59:02PM +0800, Richard Zhao wrote: > Yes, but we don't have now. If I add dependency which don't even hit > next tree, I experienced people refuse pick my patch. > Of course, If you're ok to pick other patches, I can leave the code > locally for test. I'm fine for now. > > > + gpios { > > > + pinctrl_gpio_hog: gpiohog { > > > + }; > > > + }; > > > + > > Why the empty nodes? > It's place holder that let use know to add gpio hog-on-boot in board dts. > It's meaningless. Please remove it. -- Regards, Shawn -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120522060828.GP8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>]
* Re: [PATCH v2 10/12] ARM: dts: imx6q-sabrelite: add usb devices [not found] ` <20120522060828.GP8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> @ 2012-05-22 6:19 ` Richard Zhao 0 siblings, 0 replies; 91+ messages in thread From: Richard Zhao @ 2012-05-22 6:19 UTC (permalink / raw) To: Shawn Guo Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Tue, May 22, 2012 at 02:08:31PM +0800, Shawn Guo wrote: > On Tue, May 22, 2012 at 01:59:02PM +0800, Richard Zhao wrote: > > Yes, but we don't have now. If I add dependency which don't even hit > > next tree, I experienced people refuse pick my patch. > > Of course, If you're ok to pick other patches, I can leave the code > > locally for test. > > I'm fine for now. > > > > > + gpios { > > > > + pinctrl_gpio_hog: gpiohog { > > > > + }; > > > > + }; > > > > + > > > Why the empty nodes? > > It's place holder that let use know to add gpio hog-on-boot in board dts. > > > It's meaningless. Please remove it. Ok. Thanks Richard > > -- > Regards, > Shawn > -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* [PATCH v2 11/12] ARM: mxs: clk_register_clkdev mx28 usb clocks [not found] ` <1337592237-5090-1-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> ` (9 preceding siblings ...) 2012-05-21 9:23 ` [PATCH v2 10/12] ARM: dts: imx6q-sabrelite: add usb devices Richard Zhao @ 2012-05-21 9:23 ` Richard Zhao [not found] ` <1337592237-5090-12-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-21 9:23 ` [PATCH v2 12/12] ARM: dts: imx28-evk: add usb devices Richard Zhao 2012-05-21 19:34 ` [PATCH v2 00/12] add imx usb driver for mx28/6x Fabio Estevam 12 siblings, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-21 9:23 UTC (permalink / raw) To: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ Cc: B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, richard.zhao-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> --- drivers/clk/mxs/clk-imx28.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/drivers/clk/mxs/clk-imx28.c b/drivers/clk/mxs/clk-imx28.c index 2826a26..5330b27 100644 --- a/drivers/clk/mxs/clk-imx28.c +++ b/drivers/clk/mxs/clk-imx28.c @@ -328,6 +328,10 @@ int __init mx28_clocks_init(void) clk_register_clkdevs(clks[fec], fec_lookups, ARRAY_SIZE(fec_lookups)); clk_register_clkdevs(clks[can0], can0_lookups, ARRAY_SIZE(can0_lookups)); clk_register_clkdevs(clks[can1], can1_lookups, ARRAY_SIZE(can1_lookups)); + clk_register_clkdev(clks[usb0_pwr], NULL, "8007c000.usbphy"); + clk_register_clkdev(clks[usb1_pwr], NULL, "8007e000.usbphy"); + clk_register_clkdev(clks[usb0], NULL, "80080000.usbctrl"); + clk_register_clkdev(clks[usb1], NULL, "80090000.usbctrl"); for (i = 0; i < ARRAY_SIZE(clks_init_on); i++) clk_prepare_enable(clks[clks_init_on[i]]); -- 1.7.5.4 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply related [flat|nested] 91+ messages in thread
[parent not found: <1337592237-5090-12-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org>]
* Re: [PATCH v2 11/12] ARM: mxs: clk_register_clkdev mx28 usb clocks [not found] ` <1337592237-5090-12-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> @ 2012-05-22 4:48 ` Shawn Guo [not found] ` <20120522044846.GL8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Shawn Guo @ 2012-05-22 4:48 UTC (permalink / raw) To: Richard Zhao Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Mon, May 21, 2012 at 05:23:56PM +0800, Richard Zhao wrote: > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > --- > drivers/clk/mxs/clk-imx28.c | 4 ++++ > 1 files changed, 4 insertions(+), 0 deletions(-) > > diff --git a/drivers/clk/mxs/clk-imx28.c b/drivers/clk/mxs/clk-imx28.c > index 2826a26..5330b27 100644 > --- a/drivers/clk/mxs/clk-imx28.c > +++ b/drivers/clk/mxs/clk-imx28.c > @@ -328,6 +328,10 @@ int __init mx28_clocks_init(void) > clk_register_clkdevs(clks[fec], fec_lookups, ARRAY_SIZE(fec_lookups)); > clk_register_clkdevs(clks[can0], can0_lookups, ARRAY_SIZE(can0_lookups)); > clk_register_clkdevs(clks[can1], can1_lookups, ARRAY_SIZE(can1_lookups)); > + clk_register_clkdev(clks[usb0_pwr], NULL, "8007c000.usbphy"); > + clk_register_clkdev(clks[usb1_pwr], NULL, "8007e000.usbphy"); > + clk_register_clkdev(clks[usb0], NULL, "80080000.usbctrl"); > + clk_register_clkdev(clks[usb1], NULL, "80090000.usbctrl"); > You changed usb node name from "usbctrl" to "usb". The clk lookup needs to be updated correspondingly. -- Regards, Shawn -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120522044846.GL8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>]
* Re: [PATCH v2 11/12] ARM: mxs: clk_register_clkdev mx28 usb clocks [not found] ` <20120522044846.GL8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> @ 2012-05-22 5:01 ` Richard Zhao 0 siblings, 0 replies; 91+ messages in thread From: Richard Zhao @ 2012-05-22 5:01 UTC (permalink / raw) To: Shawn Guo Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Tue, May 22, 2012 at 12:48:48PM +0800, Shawn Guo wrote: > On Mon, May 21, 2012 at 05:23:56PM +0800, Richard Zhao wrote: > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> > > --- > > drivers/clk/mxs/clk-imx28.c | 4 ++++ > > 1 files changed, 4 insertions(+), 0 deletions(-) > > > > diff --git a/drivers/clk/mxs/clk-imx28.c b/drivers/clk/mxs/clk-imx28.c > > index 2826a26..5330b27 100644 > > --- a/drivers/clk/mxs/clk-imx28.c > > +++ b/drivers/clk/mxs/clk-imx28.c > > @@ -328,6 +328,10 @@ int __init mx28_clocks_init(void) > > clk_register_clkdevs(clks[fec], fec_lookups, ARRAY_SIZE(fec_lookups)); > > clk_register_clkdevs(clks[can0], can0_lookups, ARRAY_SIZE(can0_lookups)); > > clk_register_clkdevs(clks[can1], can1_lookups, ARRAY_SIZE(can1_lookups)); > > + clk_register_clkdev(clks[usb0_pwr], NULL, "8007c000.usbphy"); > > + clk_register_clkdev(clks[usb1_pwr], NULL, "8007e000.usbphy"); > > + clk_register_clkdev(clks[usb0], NULL, "80080000.usbctrl"); > > + clk_register_clkdev(clks[usb1], NULL, "80090000.usbctrl"); > > > You changed usb node name from "usbctrl" to "usb". The clk lookup > needs to be updated correspondingly. Yes, I just noticed it too. Thanks Richard > > -- > Regards, > Shawn > -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* [PATCH v2 12/12] ARM: dts: imx28-evk: add usb devices [not found] ` <1337592237-5090-1-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> ` (10 preceding siblings ...) 2012-05-21 9:23 ` [PATCH v2 11/12] ARM: mxs: clk_register_clkdev mx28 usb clocks Richard Zhao @ 2012-05-21 9:23 ` Richard Zhao [not found] ` <1337592237-5090-13-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-21 19:34 ` [PATCH v2 00/12] add imx usb driver for mx28/6x Fabio Estevam 12 siblings, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-21 9:23 UTC (permalink / raw) To: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ Cc: B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, richard.zhao-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> --- arch/arm/boot/dts/imx28-evk.dts | 18 ++++++++++++++++++ arch/arm/boot/dts/imx28.dtsi | 12 ++++++++++-- 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/arch/arm/boot/dts/imx28-evk.dts b/arch/arm/boot/dts/imx28-evk.dts index ee520a5..ca6fe30 100644 --- a/arch/arm/boot/dts/imx28-evk.dts +++ b/arch/arm/boot/dts/imx28-evk.dts @@ -73,10 +73,28 @@ pinctrl-0 = <&duart_pins_a>; status = "okay"; }; + + usbphy0: usbphy@8007c000 { + status = "okay"; + }; + + usbphy1: usbphy@8007e000 { + status = "okay"; + }; }; }; ahb@80080000 { + usb0: usb@80080000 { + fsl,vbus-power = <&gpio3 9 0>; + status = "okay"; + }; + + usb1: usb@80090000 { + fsl,vbus-power = <&gpio3 8 0>; + status = "okay"; + }; + mac0: ethernet@800f0000 { phy-mode = "rmii"; pinctrl-names = "default"; diff --git a/arch/arm/boot/dts/imx28.dtsi b/arch/arm/boot/dts/imx28.dtsi index 4634cb8..502ad05 100644 --- a/arch/arm/boot/dts/imx28.dtsi +++ b/arch/arm/boot/dts/imx28.dtsi @@ -441,11 +441,13 @@ }; usbphy0: usbphy@8007c000 { + compatible = "fsl,imx28-usbphy", "fsl,imx23-usbphy"; reg = <0x8007c000 0x2000>; status = "disabled"; }; usbphy1: usbphy@8007e000 { + compatible = "fsl,imx28-usbphy", "fsl,imx23-usbphy"; reg = <0x8007e000 0x2000>; status = "disabled"; }; @@ -459,13 +461,19 @@ reg = <0x80080000 0x80000>; ranges; - usbctrl0: usbctrl@80080000 { + usb0: usb@80080000 { + compatible = "fsl,imx28-usb", "fsl,imx31-usb"; reg = <0x80080000 0x10000>; + interrupts = <93>; + fsl,usbphy = <&usbphy0>; status = "disabled"; }; - usbctrl1: usbctrl@80090000 { + usb1: usb@80090000 { + compatible = "fsl,imx28-usb", "fsl,imx31-usb"; reg = <0x80090000 0x10000>; + interrupts = <92>; + fsl,usbphy = <&usbphy1>; status = "disabled"; }; -- 1.7.5.4 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply related [flat|nested] 91+ messages in thread
[parent not found: <1337592237-5090-13-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org>]
* Re: [PATCH v2 12/12] ARM: dts: imx28-evk: add usb devices [not found] ` <1337592237-5090-13-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> @ 2012-05-22 4:52 ` Shawn Guo [not found] ` <20120522045240.GM8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Shawn Guo @ 2012-05-22 4:52 UTC (permalink / raw) To: Richard Zhao Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Mon, May 21, 2012 at 05:23:57PM +0800, Richard Zhao wrote: > ahb@80080000 { > + usb0: usb@80080000 { > + fsl,vbus-power = <&gpio3 9 0>; fsl,vbus-power-gpios > + status = "okay"; > + }; > + > + usb1: usb@80090000 { > + fsl,vbus-power = <&gpio3 8 0>; Ditto > + status = "okay"; > + }; > + -- Regards, Shawn -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120522045240.GM8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>]
* Re: [PATCH v2 12/12] ARM: dts: imx28-evk: add usb devices [not found] ` <20120522045240.GM8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> @ 2012-05-22 5:03 ` Richard Zhao [not found] ` <20120522050345.GP6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-22 5:03 UTC (permalink / raw) To: Shawn Guo Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Tue, May 22, 2012 at 12:52:43PM +0800, Shawn Guo wrote: > On Mon, May 21, 2012 at 05:23:57PM +0800, Richard Zhao wrote: > > ahb@80080000 { > > + usb0: usb@80080000 { > > + fsl,vbus-power = <&gpio3 9 0>; > > fsl,vbus-power-gpios Yes. > > > + status = "okay"; > > + }; > > + > > + usb1: usb@80090000 { > > + fsl,vbus-power = <&gpio3 8 0>; > > Ditto Yes. I'll test mx28 too next time before send out patch. Maybe need your help :) Thanks Richard > > > + status = "okay"; > > + }; > > + > > -- > Regards, > Shawn > -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120522050345.GP6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org>]
* Re: [PATCH v2 12/12] ARM: dts: imx28-evk: add usb devices [not found] ` <20120522050345.GP6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> @ 2012-05-22 5:24 ` Marek Vasut 0 siblings, 0 replies; 91+ messages in thread From: Marek Vasut @ 2012-05-22 5:24 UTC (permalink / raw) To: Richard Zhao Cc: Shawn Guo, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Dear Richard Zhao, > On Tue, May 22, 2012 at 12:52:43PM +0800, Shawn Guo wrote: > > On Mon, May 21, 2012 at 05:23:57PM +0800, Richard Zhao wrote: > > > ahb@80080000 { > > > > > > + usb0: usb@80080000 { > > > + fsl,vbus-power = <&gpio3 9 0>; > > > > fsl,vbus-power-gpios > > Yes. > > > > + status = "okay"; > > > + }; > > > + > > > + usb1: usb@80090000 { > > > + fsl,vbus-power = <&gpio3 8 0>; > > > > Ditto > > Yes. > > I'll test mx28 too next time before send out patch. > Maybe need your help :) I'm still stuck a bit with the DT conversion :-( I'll start testing ASAP. > Thanks > Richard > > > > + status = "okay"; > > > + }; > > > + Best regards, Marek Vasut -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* Re: [PATCH v2 00/12] add imx usb driver for mx28/6x [not found] ` <1337592237-5090-1-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> ` (11 preceding siblings ...) 2012-05-21 9:23 ` [PATCH v2 12/12] ARM: dts: imx28-evk: add usb devices Richard Zhao @ 2012-05-21 19:34 ` Fabio Estevam [not found] ` <CAOMZO5AcP2cAAkuFPJn3Xp5NuR+JG4hDO7Ehq5H-V6PCy4DwNA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 12 siblings, 1 reply; 91+ messages in thread From: Fabio Estevam @ 2012-05-21 19:34 UTC (permalink / raw) To: Richard Zhao Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Hi Richard, On Mon, May 21, 2012 at 6:23 AM, Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> wrote: > The work is based on ci13xxx rework done by Alexander Shishkin. > > Status: > - this version only support host > - usbotg controler works at host role > > Changes since V1: > - Merge the work of Marek > - re-implement connect change notify > - imx6q: move part of code to clk > - imx6q: add config-on-boot gpios Can you please also add the driver into the defconfig files? What about the existing USB host drivers for mx27/mx31/mx35/mx25/mx35? Is the idea to switch to drivers/usb/chipidea/host.c too? Regards, Fabio Estevam -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <CAOMZO5AcP2cAAkuFPJn3Xp5NuR+JG4hDO7Ehq5H-V6PCy4DwNA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>]
* Re: [PATCH v2 00/12] add imx usb driver for mx28/6x [not found] ` <CAOMZO5AcP2cAAkuFPJn3Xp5NuR+JG4hDO7Ehq5H-V6PCy4DwNA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> @ 2012-05-21 19:41 ` Marek Vasut [not found] ` <201205212141.52171.marex-ynQEQJNshbs@public.gmane.org> 2012-05-22 5:08 ` Richard Zhao 1 sibling, 1 reply; 91+ messages in thread From: Marek Vasut @ 2012-05-21 19:41 UTC (permalink / raw) To: Fabio Estevam Cc: Richard Zhao, linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA Dear Fabio Estevam, > Hi Richard, > > On Mon, May 21, 2012 at 6:23 AM, Richard Zhao > > <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> wrote: > > The work is based on ci13xxx rework done by Alexander Shishkin. > > > > Status: > > - this version only support host > > - usbotg controler works at host role > > > > Changes since V1: > > - Merge the work of Marek > > - re-implement connect change notify > > - imx6q: move part of code to clk > > - imx6q: add config-on-boot gpios > > Can you please also add the driver into the defconfig files? > > What about the existing USB host drivers for mx27/mx31/mx35/mx25/mx35? > > Is the idea to switch to drivers/usb/chipidea/host.c too? I think the core is the same, it's just the ci13xxx-imx driver that'd need to be written differently for these > > Regards, > > Fabio Estevam Best regards, Marek Vasut -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <201205212141.52171.marex-ynQEQJNshbs@public.gmane.org>]
* Re: [PATCH v2 00/12] add imx usb driver for mx28/6x [not found] ` <201205212141.52171.marex-ynQEQJNshbs@public.gmane.org> @ 2012-05-21 19:47 ` Subodh Nijsure [not found] ` <4FBA9BE4.7020303-4jo+YWezP1RWk0Htik3J/w@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Subodh Nijsure @ 2012-05-21 19:47 UTC (permalink / raw) To: Marek Vasut Cc: Fabio Estevam, fabio.estevam-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, B29397-KZfg59tc24xl57MIdRCFDg, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, linux-usb-u79uwXL29TY76Z2rM5mHXA, Richard Zhao, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r On 05/21/2012 12:41 PM, Marek Vasut wrote: > Dear Fabio Estevam, > >> Hi Richard, >> >> On Mon, May 21, 2012 at 6:23 AM, Richard Zhao >> >> <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> wrote: >>> The work is based on ci13xxx rework done by Alexander Shishkin. >>> >>> Status: >>> - this version only support host >>> - usbotg controler works at host role >>> >>> Changes since V1: >>> - Merge the work of Marek >>> - re-implement connect change notify >>> - imx6q: move part of code to clk >>> - imx6q: add config-on-boot gpios >> Can you please also add the driver into the defconfig files? >> >> What about the existing USB host drivers for mx27/mx31/mx35/mx25/mx35? >> >> Is the idea to switch to drivers/usb/chipidea/host.c too? > I think the core is the same, it's just the ci13xxx-imx driver that'd need to be > written differently for these So that means driver that you did are not going to be up streamed for mx28/mxs? And those interested should be tracking this patch set? -Subodh -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <4FBA9BE4.7020303-4jo+YWezP1RWk0Htik3J/w@public.gmane.org>]
* Re: [PATCH v2 00/12] add imx usb driver for mx28/6x [not found] ` <4FBA9BE4.7020303-4jo+YWezP1RWk0Htik3J/w@public.gmane.org> @ 2012-05-21 20:07 ` Marek Vasut [not found] ` <201205212207.34978.marex-ynQEQJNshbs@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Marek Vasut @ 2012-05-21 20:07 UTC (permalink / raw) To: Subodh Nijsure Cc: Fabio Estevam, fabio.estevam-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, B29397-KZfg59tc24xl57MIdRCFDg, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, linux-usb-u79uwXL29TY76Z2rM5mHXA, Richard Zhao, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r Dear Subodh Nijsure, > On 05/21/2012 12:41 PM, Marek Vasut wrote: > > Dear Fabio Estevam, > > > >> Hi Richard, > >> > >> On Mon, May 21, 2012 at 6:23 AM, Richard Zhao > >> > >> <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> wrote: > >>> The work is based on ci13xxx rework done by Alexander Shishkin. > >>> > >>> Status: > >>> - this version only support host > >>> - usbotg controler works at host role > >>> > >>> Changes since V1: > >>> - Merge the work of Marek > >>> - re-implement connect change notify > >>> - imx6q: move part of code to clk > >>> - imx6q: add config-on-boot gpios > >> > >> Can you please also add the driver into the defconfig files? > >> > >> What about the existing USB host drivers for mx27/mx31/mx35/mx25/mx35? > >> > >> Is the idea to switch to drivers/usb/chipidea/host.c too? > > > > I think the core is the same, it's just the ci13xxx-imx driver that'd > > need to be written differently for these > > So that means driver that you did are not going to be up streamed for > mx28/mxs? And those interested should be tracking this patch set? This here is definitelly going to support mx28 and I'm slowly working through the DT stuff to test this, all right? We were talking about imx.{xz|x,y is [0-9a-z]} \ imx.{23,28,6q} > > -Subodh Best regards, Marek Vasut -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <201205212207.34978.marex-ynQEQJNshbs@public.gmane.org>]
* RE: [PATCH v2 00/12] add imx usb driver for mx28/6x [not found] ` <201205212207.34978.marex-ynQEQJNshbs@public.gmane.org> @ 2012-05-22 1:38 ` Chen Peter-B29397 [not found] ` <F281D0F91ED19E4D8E63A7504E8A649803BB2B2F-RL0Hj/+nBVDtkydW1Tv2Dq4g8xLGJsHaLnY5E4hWTkheoWH0uzbU5w@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Chen Peter-B29397 @ 2012-05-22 1:38 UTC (permalink / raw) To: Marek Vasut, Subodh Nijsure Cc: Fabio Estevam, Estevam Fabio-R49496, Li Frank-B20596, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA@public.gmane.org, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA@public.gmane.org, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org, linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Zhao Richard-B20223, kernel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz@public.gmane.org, shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org > > > > > >> Hi Richard, > > >> > > >> On Mon, May 21, 2012 at 6:23 AM, Richard Zhao > > >> > > >> <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> wrote: > > >>> The work is based on ci13xxx rework done by Alexander Shishkin. > > >>> > > >>> Status: > > >>> - this version only support host > > >>> - usbotg controler works at host role > > >>> > > >>> Changes since V1: > > >>> - Merge the work of Marek > > >>> - re-implement connect change notify > > >>> - imx6q: move part of code to clk > > >>> - imx6q: add config-on-boot gpios > > >> > > >> Can you please also add the driver into the defconfig files? > > >> > > >> What about the existing USB host drivers for > mx27/mx31/mx35/mx25/mx35? > > >> > > >> Is the idea to switch to drivers/usb/chipidea/host.c too? > > > > > > I think the core is the same, it's just the ci13xxx-imx driver that'd > > > need to be written differently for these > > > > So that means driver that you did are not going to be up streamed for > > mx28/mxs? And those interested should be tracking this patch set? > > This here is definitelly going to support mx28 and I'm slowly working > through > the DT stuff to test this, all right? > > We were talking about imx.{xz|x,y is [0-9a-z]} \ imx.{23,28,6q} > This driver needs to work on both DT and non-DT support. Let's do it after next version when we need to add it for old mxc platform. > > > > -Subodh > > Best regards, > Marek Vasut -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <F281D0F91ED19E4D8E63A7504E8A649803BB2B2F-RL0Hj/+nBVDtkydW1Tv2Dq4g8xLGJsHaLnY5E4hWTkheoWH0uzbU5w@public.gmane.org>]
* Re: [PATCH v2 00/12] add imx usb driver for mx28/6x [not found] ` <F281D0F91ED19E4D8E63A7504E8A649803BB2B2F-RL0Hj/+nBVDtkydW1Tv2Dq4g8xLGJsHaLnY5E4hWTkheoWH0uzbU5w@public.gmane.org> @ 2012-05-22 1:41 ` Richard Zhao [not found] ` <20120522014158.GF6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> 0 siblings, 1 reply; 91+ messages in thread From: Richard Zhao @ 2012-05-22 1:41 UTC (permalink / raw) To: Chen Peter-B29397 Cc: Marek Vasut, Subodh Nijsure, Fabio Estevam, Estevam Fabio-R49496, Li Frank-B20596, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA@public.gmane.org, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA@public.gmane.org, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org, linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Zhao Richard-B20223, kernel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz@public.gmane.org, shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org On Tue, May 22, 2012 at 09:38:33AM +0800, Chen Peter-B29397 wrote: > > > > > > > > >> Hi Richard, > > > >> > > > >> On Mon, May 21, 2012 at 6:23 AM, Richard Zhao > > > >> > > > >> <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> wrote: > > > >>> The work is based on ci13xxx rework done by Alexander Shishkin. > > > >>> > > > >>> Status: > > > >>> - this version only support host > > > >>> - usbotg controler works at host role > > > >>> > > > >>> Changes since V1: > > > >>> - Merge the work of Marek > > > >>> - re-implement connect change notify > > > >>> - imx6q: move part of code to clk > > > >>> - imx6q: add config-on-boot gpios > > > >> > > > >> Can you please also add the driver into the defconfig files? > > > >> > > > >> What about the existing USB host drivers for > > mx27/mx31/mx35/mx25/mx35? > > > >> > > > >> Is the idea to switch to drivers/usb/chipidea/host.c too? > > > > > > > > I think the core is the same, it's just the ci13xxx-imx driver that'd > > > > need to be written differently for these > > > > > > So that means driver that you did are not going to be up streamed for > > > mx28/mxs? And those interested should be tracking this patch set? > > > > This here is definitelly going to support mx28 and I'm slowly working > > through > > the DT stuff to test this, all right? > > > > We were talking about imx.{xz|x,y is [0-9a-z]} \ imx.{23,28,6q} > > > This driver needs to work on both DT and non-DT support. > Let's do it after next version when we need to add it for old mxc platform. I don't think so. We only need to go right direction and don't do extra work for what is going to be abandoned. Thanks Richard > > > > > > > > -Subodh > > > > Best regards, > > Marek Vasut > -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <20120522014158.GF6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org>]
* RE: [PATCH v2 00/12] add imx usb driver for mx28/6x [not found] ` <20120522014158.GF6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> @ 2012-05-22 1:44 ` Chen Peter-B29397 2012-05-22 1:51 ` Richard Zhao [not found] ` <F281D0F91ED19E4D8E63A7504E8A649803BB2B79-RL0Hj/+nBVDtkydW1Tv2Dq4g8xLGJsHaLnY5E4hWTkheoWH0uzbU5w@public.gmane.org> 0 siblings, 2 replies; 91+ messages in thread From: Chen Peter-B29397 @ 2012-05-22 1:44 UTC (permalink / raw) To: Zhao Richard-B20223 Cc: Marek Vasut, Subodh Nijsure, Fabio Estevam, Estevam Fabio-R49496, Li Frank-B20596, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA@public.gmane.org, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA@public.gmane.org, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org, linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, kernel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz@public.gmane.org, shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org > > > > > > This here is definitelly going to support mx28 and I'm slowly working > > > through > > > the DT stuff to test this, all right? > > > > > > We were talking about imx.{xz|x,y is [0-9a-z]} \ imx.{23,28,6q} > > > > > This driver needs to work on both DT and non-DT support. > > Let's do it after next version when we need to add it for old mxc > platform. > I don't think so. We only need to go right direction and don't do > extra work for what is going to be abandoned. Are you sure all i.mx platform will support DT in future? > > Thanks > Richard > > > > > > > > > > > > -Subodh > > > > > > Best regards, > > > Marek Vasut > > -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* Re: [PATCH v2 00/12] add imx usb driver for mx28/6x 2012-05-22 1:44 ` Chen Peter-B29397 @ 2012-05-22 1:51 ` Richard Zhao [not found] ` <F281D0F91ED19E4D8E63A7504E8A649803BB2B79-RL0Hj/+nBVDtkydW1Tv2Dq4g8xLGJsHaLnY5E4hWTkheoWH0uzbU5w@public.gmane.org> 1 sibling, 0 replies; 91+ messages in thread From: Richard Zhao @ 2012-05-22 1:51 UTC (permalink / raw) To: Chen Peter-B29397 Cc: Marek Vasut, Li Frank-B20596, Zhao Richard-B20223, shawn.guo@linaro.org, Subodh Nijsure, alexander.shishkin@linux.intel.com, Estevam Fabio-R49496, devicetree-discuss@lists.ozlabs.org, linux-usb@vger.kernel.org, linuxzsc@gmaill.com, stern@rowland.harvard.edu, kernel@pengutronix.de, gregkh@linuxfoundation.org, dong.aisheng@linaro.org, Fabio Estevam, linux-arm-kernel@lists.infradead.org On Tue, May 22, 2012 at 09:44:14AM +0800, Chen Peter-B29397 wrote: > > > > > > > > > This here is definitelly going to support mx28 and I'm slowly working > > > > through > > > > the DT stuff to test this, all right? > > > > > > > > We were talking about imx.{xz|x,y is [0-9a-z]} \ imx.{23,28,6q} > > > > > > > This driver needs to work on both DT and non-DT support. > > > Let's do it after next version when we need to add it for old mxc > > platform. > > I don't think so. We only need to go right direction and don't do > > extra work for what is going to be abandoned. > Are you sure all i.mx platform will support DT in future? Finally, yes. > > > > > Thanks > > Richard > > > > > > > > > > > > > > > > -Subodh > > > > > > > > Best regards, > > > > Marek Vasut > > > ^ permalink raw reply [flat|nested] 91+ messages in thread
[parent not found: <F281D0F91ED19E4D8E63A7504E8A649803BB2B79-RL0Hj/+nBVDtkydW1Tv2Dq4g8xLGJsHaLnY5E4hWTkheoWH0uzbU5w@public.gmane.org>]
* Re: [PATCH v2 00/12] add imx usb driver for mx28/6x [not found] ` <F281D0F91ED19E4D8E63A7504E8A649803BB2B79-RL0Hj/+nBVDtkydW1Tv2Dq4g8xLGJsHaLnY5E4hWTkheoWH0uzbU5w@public.gmane.org> @ 2012-05-22 2:00 ` Shawn Guo 0 siblings, 0 replies; 91+ messages in thread From: Shawn Guo @ 2012-05-22 2:00 UTC (permalink / raw) To: Chen Peter-B29397 Cc: Zhao Richard-B20223, Marek Vasut, Subodh Nijsure, Fabio Estevam, Estevam Fabio-R49496, Li Frank-B20596, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA@public.gmane.org, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA@public.gmane.org, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org, linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, kernel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz@public.gmane.org, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org On 22 May 2012 09:44, Chen Peter-B29397 <B29397-KZfg59tc24xl57MIdRCFDg@public.gmane.org> wrote: >> > This driver needs to work on both DT and non-DT support. >> > Let's do it after next version when we need to add it for old mxc >> platform. >> I don't think so. We only need to go right direction and don't do >> extra work for what is going to be abandoned. > Are you sure all i.mx platform will support DT in future? > I'm with Richard on this. With all new drivers support DT only, we can attract people to convert their platform to DT, if they want to use the new driver. Otherwise, people lose motivation to move to DT. Regards, Shawn -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
* Re: [PATCH v2 00/12] add imx usb driver for mx28/6x [not found] ` <CAOMZO5AcP2cAAkuFPJn3Xp5NuR+JG4hDO7Ehq5H-V6PCy4DwNA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2012-05-21 19:41 ` Marek Vasut @ 2012-05-22 5:08 ` Richard Zhao 2012-05-22 13:13 ` Dirk Behme [not found] ` <20120522050831.GQ6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> 1 sibling, 2 replies; 91+ messages in thread From: Richard Zhao @ 2012-05-22 5:08 UTC (permalink / raw) To: Fabio Estevam Cc: marex-ynQEQJNshbs, B20596-KZfg59tc24xl57MIdRCFDg, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, fabio.estevam-KZfg59tc24xl57MIdRCFDg, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, B29397-KZfg59tc24xl57MIdRCFDg, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, linux-usb-u79uwXL29TY76Z2rM5mHXA, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r On Mon, May 21, 2012 at 04:34:15PM -0300, Fabio Estevam wrote: > Hi Richard, > > On Mon, May 21, 2012 at 6:23 AM, Richard Zhao > <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> wrote: > > The work is based on ci13xxx rework done by Alexander Shishkin. > > > > Status: > > - this version only support host > > - usbotg controler works at host role > > > > Changes since V1: > > - Merge the work of Marek > > - re-implement connect change notify > > - imx6q: move part of code to clk > > - imx6q: add config-on-boot gpios > > Can you please also add the driver into the defconfig files? Thanks for you reminder. > > What about the existing USB host drivers for mx27/mx31/mx35/mx25/mx35? > > Is the idea to switch to drivers/usb/chipidea/host.c too? Yes. but I'm now just focusing on imx6q and imx28. Thanks Richard > > Regards, > > Fabio Estevam > ^ permalink raw reply [flat|nested] 91+ messages in thread
* Re: [PATCH v2 00/12] add imx usb driver for mx28/6x 2012-05-22 5:08 ` Richard Zhao @ 2012-05-22 13:13 ` Dirk Behme [not found] ` <20120522050831.GQ6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> 1 sibling, 0 replies; 91+ messages in thread From: Dirk Behme @ 2012-05-22 13:13 UTC (permalink / raw) To: Richard Zhao Cc: marex@denx.de, B20596@freescale.com, linuxzsc@gmaill.com, shawn.guo@linaro.org, fabio.estevam@freescale.com, alexander.shishkin@linux.intel.com, B29397@freescale.com, devicetree-discuss@lists.ozlabs.org, linux-usb@vger.kernel.org, stern@rowland.harvard.edu, kernel@pengutronix.de, gregkh@linuxfoundation.org, dong.aisheng@linaro.org, Fabio Estevam, linux-arm-kernel@lists.infradead.org On 22.05.2012 07:08, Richard Zhao wrote: > On Mon, May 21, 2012 at 04:34:15PM -0300, Fabio Estevam wrote: >> Hi Richard, >> >> On Mon, May 21, 2012 at 6:23 AM, Richard Zhao >> <richard.zhao@freescale.com> wrote: >>> The work is based on ci13xxx rework done by Alexander Shishkin. >>> >>> Status: >>> - this version only support host >>> - usbotg controler works at host role >>> >>> Changes since V1: >>> - Merge the work of Marek >>> - re-implement connect change notify >>> - imx6q: move part of code to clk >>> - imx6q: add config-on-boot gpios >> Can you please also add the driver into the defconfig files? > Thanks for you reminder. For i.MX6 I use something like [1]. Best regards Dirk [1] From: Dirk Behme <dirk.behme@de.bosch.com> Subject: [PATCH] ARM: imx_v6_v7_defconfig: Enable chipidea USB host driver Signed-off-by: Dirk Behme <dirk.behme@de.bosch.com> --- arch/arm/configs/imx_v6_v7_defconfig | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) diff --git a/arch/arm/configs/imx_v6_v7_defconfig b/arch/arm/configs/imx_v6_v7_defconfig index c3a828e..45001ef 100644 --- a/arch/arm/configs/imx_v6_v7_defconfig +++ b/arch/arm/configs/imx_v6_v7_defconfig @@ -130,6 +130,7 @@ CONFIG_GPIO_SYSFS=y CONFIG_WATCHDOG=y CONFIG_IMX2_WDT=y CONFIG_MFD_MC13XXX=y +CONFIG_MFD_ANATOP=y CONFIG_REGULATOR=y CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_MC13783=y @@ -166,9 +167,12 @@ CONFIG_LOGO_LINUX_MONO=y CONFIG_LOGO_LINUX_VGA16=y CONFIG_LOGO_LINUX_CLUT224=y CONFIG_USB=y -CONFIG_USB_EHCI_HCD=y -CONFIG_USB_EHCI_MXC=y +CONFIG_USB_EHCI_ROOT_HUB_TT=y +CONFIG_USB_CHIPIDEA=y +CONFIG_USB_CHIPIDEA_HOST=y +CONFIG_USB_CHIPIDEA_DEBUG=y CONFIG_USB_STORAGE=y +CONFIG_USB_MXS_PHY=y CONFIG_MMC=y CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_PLTFM=y ^ permalink raw reply related [flat|nested] 91+ messages in thread
[parent not found: <20120522050831.GQ6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org>]
* Re: [PATCH v2 00/12] add imx usb driver for mx28/6x [not found] ` <20120522050831.GQ6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> @ 2012-05-24 3:38 ` Richard Zhao 0 siblings, 0 replies; 91+ messages in thread From: Richard Zhao @ 2012-05-24 3:38 UTC (permalink / raw) To: Fabio Estevam Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, B29397-KZfg59tc24xl57MIdRCFDg, B20596-KZfg59tc24xl57MIdRCFDg, marex-ynQEQJNshbs, shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ, alexander.shishkin-VuQAYsv1563Yd54FQh9/CA, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, fabio.estevam-KZfg59tc24xl57MIdRCFDg, dong.aisheng-QSEj5FYQhm4dnm+yROfE0A, stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz, linuxzsc-MeMPY/F8WlbQT0dZR+AlfA On Tue, May 22, 2012 at 01:08:31PM +0800, Richard Zhao wrote: > On Mon, May 21, 2012 at 04:34:15PM -0300, Fabio Estevam wrote: > > Hi Richard, > > > > On Mon, May 21, 2012 at 6:23 AM, Richard Zhao > > <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> wrote: > > > The work is based on ci13xxx rework done by Alexander Shishkin. > > > > > > Status: > > > - this version only support host > > > - usbotg controler works at host role > > > > > > Changes since V1: > > > - Merge the work of Marek > > > - re-implement connect change notify > > > - imx6q: move part of code to clk > > > - imx6q: add config-on-boot gpios > > > > Can you please also add the driver into the defconfig files? > Thanks for you reminder. I'll not put it in defconfig until we can get ride of mxc usb driver. It cannot be in one image. Thanks Richard > > > > What about the existing USB host drivers for mx27/mx31/mx35/mx25/mx35? > > > > Is the idea to switch to drivers/usb/chipidea/host.c too? > Yes. but I'm now just focusing on imx6q and imx28. > > Thanks > Richard > > > > Regards, > > > > Fabio Estevam > > > > -- > To unsubscribe from this list: send the line "unsubscribe linux-usb" in > the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 91+ messages in thread
end of thread, other threads:[~2012-05-24 3:38 UTC | newest] Thread overview: 91+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2012-05-21 9:23 [PATCH v2 00/12] add imx usb driver for mx28/6x Richard Zhao [not found] ` <1337592237-5090-1-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-21 9:23 ` [PATCH v2 01/12] usb: otg: add notify_connect_change callback Richard Zhao [not found] ` <1337592237-5090-2-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-21 9:26 ` Felipe Balbi [not found] ` <20120521092635.GL8633-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org> 2012-05-21 9:36 ` Richard Zhao [not found] ` <20120521093614.GL30755-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> 2012-05-21 9:38 ` Felipe Balbi [not found] ` <20120521093840.GM8633-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org> 2012-05-21 10:19 ` Richard Zhao 2012-05-21 13:03 ` Greg KH 2012-05-21 13:05 ` Greg KH [not found] ` <20120521130556.GB18926-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org> 2012-05-21 17:36 ` Marek Vasut [not found] ` <201205211936.40359.marex-ynQEQJNshbs@public.gmane.org> 2012-05-21 17:47 ` Greg KH [not found] ` <20120521174742.GA31739-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org> 2012-05-21 18:32 ` Marek Vasut [not found] ` <201205212032.21757.marex-ynQEQJNshbs@public.gmane.org> 2012-05-21 18:40 ` Greg KH [not found] ` <20120521184014.GA21692-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org> 2012-05-21 19:27 ` Marek Vasut [not found] ` <201205212127.51020.marex-ynQEQJNshbs@public.gmane.org> 2012-05-22 0:27 ` Richard Zhao 2012-05-21 9:23 ` [PATCH v2 02/12] usb: chipidea: permit driver bindings pass phy pointer Richard Zhao [not found] ` <1337592237-5090-3-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-22 4:22 ` Marek Vasut 2012-05-22 9:59 ` Alexander Shishkin [not found] ` <87ehqcbko0.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org> 2012-05-22 14:07 ` Marek Vasut [not found] ` <201205221607.31624.marex-ynQEQJNshbs@public.gmane.org> 2012-05-22 15:14 ` Richard Zhao 2012-05-23 1:35 ` Chen Peter-B29397 2012-05-23 8:08 ` Alexander Shishkin 2012-05-21 9:23 ` [PATCH v2 03/12] usb: ehci-hcd: notify phy when connect change Richard Zhao [not found] ` <1337592237-5090-4-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-22 4:23 ` Marek Vasut [not found] ` <201205220623.49878.marex-ynQEQJNshbs@public.gmane.org> 2012-05-22 4:36 ` Richard Zhao 2012-05-21 9:23 ` [PATCH v2 04/12] usb: otg: add basic mxs phy driver support Richard Zhao 2012-05-21 9:23 ` [PATCH v2 05/12] usb: chipidea: add imx driver binding Richard Zhao [not found] ` <1337592237-5090-6-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-22 4:30 ` Marek Vasut [not found] ` <201205220630.57007.marex-ynQEQJNshbs@public.gmane.org> 2012-05-22 4:51 ` Richard Zhao [not found] ` <20120522045120.GL6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> 2012-05-22 9:56 ` Alexander Shishkin [not found] ` <87fwasbkt7.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org> 2012-05-22 10:06 ` Felipe Balbi [not found] ` <20120522100624.GP30559-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org> 2012-05-22 10:31 ` Richard Zhao [not found] ` <20120522103139.GD32035-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> 2012-05-22 10:35 ` Felipe Balbi [not found] ` <20120522103516.GR30559-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org> 2012-05-22 10:41 ` Alexander Shishkin [not found] ` <8762bobiqt.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org> 2012-05-22 15:06 ` Richard Zhao 2012-05-23 13:02 ` Alexander Shishkin [not found] ` <87wr439hk2.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org> 2012-05-23 13:09 ` Felipe Balbi [not found] ` <20120523130928.GC1015-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org> 2012-05-23 13:13 ` Alexander Shishkin 2012-05-22 13:52 ` Shawn Guo [not found] ` <20120522135257.GQ8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 2012-05-22 13:55 ` Felipe Balbi 2012-05-22 10:21 ` Alexander Shishkin [not found] ` <87bolgbjnr.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org> 2012-05-22 10:24 ` Alexander Shishkin [not found] ` <878vgkbjie.fsf-qxRn5AmX6ZD9BXuAQUXR0fooFf0ArEBIu+b9c/7xato@public.gmane.org> 2012-05-22 15:30 ` Richard Zhao 2012-05-22 15:28 ` Richard Zhao 2012-05-21 9:23 ` [PATCH v2 06/12] ARM: imx6q: correct device name of usbphy and usb controller clock export Richard Zhao [not found] ` <1337592237-5090-7-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-22 4:31 ` Marek Vasut [not found] ` <201205220631.28739.marex-ynQEQJNshbs@public.gmane.org> 2012-05-22 4:56 ` Richard Zhao 2012-05-21 9:23 ` [PATCH v2 07/12] ARM: imx6q: add config-on-boot gpios Richard Zhao [not found] ` <1337592237-5090-8-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-22 3:17 ` Shawn Guo [not found] ` <20120522031709.GH8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 2012-05-22 3:25 ` Marek Vasut [not found] ` <201205220525.39660.marex-ynQEQJNshbs@public.gmane.org> 2012-05-22 3:32 ` Shawn Guo [not found] ` <CAAQ0ZWSiD170Yb5CQdGEZw066ULvSOr4AFcBtYFiLw3P9L-VuA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2012-05-22 4:20 ` Marek Vasut [not found] ` <201205220620.17109.marex-ynQEQJNshbs@public.gmane.org> 2012-05-22 4:42 ` Shawn Guo [not found] ` <20120522044223.GJ8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 2012-05-22 5:22 ` Marek Vasut [not found] ` <201205220722.00653.marex-ynQEQJNshbs@public.gmane.org> 2012-05-22 5:25 ` Shawn Guo [not found] ` <CAAQ0ZWSS3ONsF=MLQOJ2u1h3mGErfZ4W2QoSNk4+MQHTC830MQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2012-05-22 5:27 ` Marek Vasut [not found] ` <201205220727.30910.marex-ynQEQJNshbs@public.gmane.org> 2012-05-22 6:07 ` Richard Zhao 2012-05-22 3:38 ` Richard Zhao 2012-05-21 9:23 ` [PATCH v2 08/12] ARM: imx6q: add usbphy clocks Richard Zhao [not found] ` <1337592237-5090-9-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-22 4:32 ` Marek Vasut [not found] ` <201205220632.13896.marex-ynQEQJNshbs@public.gmane.org> 2012-05-22 4:45 ` Shawn Guo [not found] ` <20120522044515.GK8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 2012-05-22 5:22 ` Marek Vasut 2012-05-22 4:59 ` Richard Zhao 2012-05-22 5:37 ` Shawn Guo [not found] ` <20120522053706.GO8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 2012-05-22 6:08 ` Richard Zhao 2012-05-21 9:23 ` [PATCH v2 09/12] ARM: imx6q: disable usb charger detector Richard Zhao [not found] ` <1337592237-5090-10-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-22 3:48 ` Shawn Guo [not found] ` <20120522034809.GI8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 2012-05-22 4:32 ` Richard Zhao 2012-05-21 9:23 ` [PATCH v2 10/12] ARM: dts: imx6q-sabrelite: add usb devices Richard Zhao [not found] ` <1337592237-5090-11-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-22 5:10 ` Shawn Guo [not found] ` <20120522051005.GN8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 2012-05-22 5:59 ` Richard Zhao [not found] ` <20120522055901.GR6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> 2012-05-22 6:08 ` Shawn Guo [not found] ` <20120522060828.GP8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 2012-05-22 6:19 ` Richard Zhao 2012-05-21 9:23 ` [PATCH v2 11/12] ARM: mxs: clk_register_clkdev mx28 usb clocks Richard Zhao [not found] ` <1337592237-5090-12-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-22 4:48 ` Shawn Guo [not found] ` <20120522044846.GL8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 2012-05-22 5:01 ` Richard Zhao 2012-05-21 9:23 ` [PATCH v2 12/12] ARM: dts: imx28-evk: add usb devices Richard Zhao [not found] ` <1337592237-5090-13-git-send-email-richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> 2012-05-22 4:52 ` Shawn Guo [not found] ` <20120522045240.GM8140-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org> 2012-05-22 5:03 ` Richard Zhao [not found] ` <20120522050345.GP6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> 2012-05-22 5:24 ` Marek Vasut 2012-05-21 19:34 ` [PATCH v2 00/12] add imx usb driver for mx28/6x Fabio Estevam [not found] ` <CAOMZO5AcP2cAAkuFPJn3Xp5NuR+JG4hDO7Ehq5H-V6PCy4DwNA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2012-05-21 19:41 ` Marek Vasut [not found] ` <201205212141.52171.marex-ynQEQJNshbs@public.gmane.org> 2012-05-21 19:47 ` Subodh Nijsure [not found] ` <4FBA9BE4.7020303-4jo+YWezP1RWk0Htik3J/w@public.gmane.org> 2012-05-21 20:07 ` Marek Vasut [not found] ` <201205212207.34978.marex-ynQEQJNshbs@public.gmane.org> 2012-05-22 1:38 ` Chen Peter-B29397 [not found] ` <F281D0F91ED19E4D8E63A7504E8A649803BB2B2F-RL0Hj/+nBVDtkydW1Tv2Dq4g8xLGJsHaLnY5E4hWTkheoWH0uzbU5w@public.gmane.org> 2012-05-22 1:41 ` Richard Zhao [not found] ` <20120522014158.GF6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> 2012-05-22 1:44 ` Chen Peter-B29397 2012-05-22 1:51 ` Richard Zhao [not found] ` <F281D0F91ED19E4D8E63A7504E8A649803BB2B79-RL0Hj/+nBVDtkydW1Tv2Dq4g8xLGJsHaLnY5E4hWTkheoWH0uzbU5w@public.gmane.org> 2012-05-22 2:00 ` Shawn Guo 2012-05-22 5:08 ` Richard Zhao 2012-05-22 13:13 ` Dirk Behme [not found] ` <20120522050831.GQ6206-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> 2012-05-24 3:38 ` Richard Zhao
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).