linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/2] arm: mach-imx: Move anatop related from board file to anatop driver
@ 2013-08-12  7:26 Peter Chen
  2013-08-12  7:26 ` [PATCH 2/2] arm: mach-imx: anatop: add two APIs for USB driver Peter Chen
  2013-08-14  3:46 ` [PATCH 1/2] arm: mach-imx: Move anatop related from board file to anatop driver Shawn Guo
  0 siblings, 2 replies; 8+ messages in thread
From: Peter Chen @ 2013-08-12  7:26 UTC (permalink / raw)
  To: linux-arm-kernel

Move anatop related (For USB) from board file to anatop driver

Signed-off-by: Peter Chen <peter.chen@freescale.com>
---
 arch/arm/mach-imx/anatop.c     |    4 +++-
 arch/arm/mach-imx/common.h     |    1 -
 arch/arm/mach-imx/mach-imx6q.c |    5 -----
 3 files changed, 3 insertions(+), 7 deletions(-)

diff --git a/arch/arm/mach-imx/anatop.c b/arch/arm/mach-imx/anatop.c
index f7efabe..71f1a08 100644
--- a/arch/arm/mach-imx/anatop.c
+++ b/arch/arm/mach-imx/anatop.c
@@ -115,7 +115,7 @@ void imx_anatop_post_resume(void)
 	imx_anatop_enable_weak2p5(false);
 }
 
-void imx_anatop_usb_chrg_detect_disable(void)
+static void imx_anatop_usb_chrg_detect_disable(void)
 {
 	regmap_write(anatop, ANADIG_USB1_CHRG_DETECT,
 		BM_ANADIG_USB_CHRG_DETECT_EN_B
@@ -157,4 +157,6 @@ void __init imx_anatop_init(void)
 	 */
 	imx_anatop_pu_enable(true);
 	imx_gpc_xpu_enable();
+
+	imx_anatop_usb_chrg_detect_disable();
 }
diff --git a/arch/arm/mach-imx/common.h b/arch/arm/mach-imx/common.h
index 558e95f..df1d7b0 100644
--- a/arch/arm/mach-imx/common.h
+++ b/arch/arm/mach-imx/common.h
@@ -136,7 +136,6 @@ extern void imx_gpc_xpu_enable(void);
 extern void imx_anatop_init(void);
 extern void imx_anatop_pre_suspend(void);
 extern void imx_anatop_post_resume(void);
-extern void imx_anatop_usb_chrg_detect_disable(void);
 extern u32 imx_anatop_get_digprog(void);
 extern int imx6q_set_lpm(enum mxc_cpu_pwr_mode mode);
 extern void imx6q_set_chicken_bit(void);
diff --git a/arch/arm/mach-imx/mach-imx6q.c b/arch/arm/mach-imx/mach-imx6q.c
index e04abe9..846731d 100644
--- a/arch/arm/mach-imx/mach-imx6q.c
+++ b/arch/arm/mach-imx/mach-imx6q.c
@@ -185,10 +185,6 @@ static void __init imx6q_1588_init(void)
 		pr_err("failed to find fsl,imx6q-iomux-gpr regmap\n");
 
 }
-static void __init imx6q_usb_init(void)
-{
-	imx_anatop_usb_chrg_detect_disable();
-}
 
 static void __init imx6q_init_machine(void)
 {
@@ -198,7 +194,6 @@ static void __init imx6q_init_machine(void)
 
 	imx_anatop_init();
 	imx6q_pm_init();
-	imx6q_usb_init();
 	imx6q_1588_init();
 }
 
-- 
1.7.1

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 2/2] arm: mach-imx: anatop: add two APIs for USB driver
  2013-08-12  7:26 [PATCH 1/2] arm: mach-imx: Move anatop related from board file to anatop driver Peter Chen
@ 2013-08-12  7:26 ` Peter Chen
  2013-08-14  3:47   ` Shawn Guo
  2013-08-14  3:46 ` [PATCH 1/2] arm: mach-imx: Move anatop related from board file to anatop driver Shawn Guo
  1 sibling, 1 reply; 8+ messages in thread
From: Peter Chen @ 2013-08-12  7:26 UTC (permalink / raw)
  To: linux-arm-kernel

imx_anatop_usb1_disconnect_line is used to disconnect dp/dm between
PHY and controller, after that, the controller always gets SE0
for the status of dp/dm, it is not any wakeup signal for controller.
It is used to avoid unknown interrupt due to dp/dm is floading
after the USB PHY is no powered when there is no vbus supplied.

imx_anatop_set_stop_mode_config is used to keep internal regualtor on
when the system enters suspend mode, it will increase power consumption,
we only enable it when the user enables USB wakeup (default is off).

Signed-off-by: Peter Chen <peter.chen@freescale.com>
---
 arch/arm/mach-imx/anatop.c |   22 ++++++++++++++++++++++
 arch/arm/mach-imx/common.h |    2 ++
 2 files changed, 24 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-imx/anatop.c b/arch/arm/mach-imx/anatop.c
index 71f1a08..7f96bbc 100644
--- a/arch/arm/mach-imx/anatop.c
+++ b/arch/arm/mach-imx/anatop.c
@@ -26,6 +26,7 @@
 #define ANADIG_ANA_MISC0	0x150
 #define ANADIG_ANA_MISC2	0x170
 #define ANADIG_USB1_CHRG_DETECT	0x1b0
+#define ANADIG_USB1_LOOPBACK	0x1e0
 #define ANADIG_USB2_CHRG_DETECT	0x210
 #define ANADIG_DIGPROG		0x260
 
@@ -34,6 +35,8 @@
 #define BM_ANADIG_ANA_MISC0_STOP_MODE_CONFIG	0x1000
 #define BM_ANADIG_USB_CHRG_DETECT_CHK_CHRG_B	0x80000
 #define BM_ANADIG_USB_CHRG_DETECT_EN_B		0x100000
+#define BM_ANADIG_USB1_LOOPBACK_UTMI_DIG_TST1	0x00000004
+#define BM_ANADIG_USB1_LOOPBACK_TSTI_TX_EN	0x00000020
 
 #define ANADIG_ANA_MISC2_REG1_STEP_OFFSET	26
 #define ANADIG_ANA_MISC2_REG_STEP_MASK		0x3
@@ -142,6 +145,25 @@ u32 imx_anatop_get_digprog(void)
 	return digprog;
 }
 
+void imx_anatop_usb1_disconnect_line(bool enable)
+{
+	if (enable)
+		regmap_write(anatop, ANADIG_USB1_LOOPBACK,
+			BM_ANADIG_USB1_LOOPBACK_UTMI_DIG_TST1 |
+				BM_ANADIG_USB1_LOOPBACK_TSTI_TX_EN);
+	else
+		regmap_write(anatop, ANADIG_USB1_LOOPBACK, 0);
+}
+EXPORT_SYMBOL(imx_anatop_usb1_disconnect_line);
+
+void imx_anatop_set_stop_mode_config(bool enable)
+{
+	regmap_write(anatop, ANADIG_ANA_MISC0 +
+		(enable ? REG_SET : REG_CLR),
+			BM_ANADIG_ANA_MISC0_STOP_MODE_CONFIG);
+}
+EXPORT_SYMBOL(imx_anatop_set_stop_mode_config);
+
 void __init imx_anatop_init(void)
 {
 	anatop = syscon_regmap_lookup_by_compatible("fsl,imx6q-anatop");
diff --git a/arch/arm/mach-imx/common.h b/arch/arm/mach-imx/common.h
index df1d7b0..dcb3305 100644
--- a/arch/arm/mach-imx/common.h
+++ b/arch/arm/mach-imx/common.h
@@ -137,6 +137,8 @@ extern void imx_anatop_init(void);
 extern void imx_anatop_pre_suspend(void);
 extern void imx_anatop_post_resume(void);
 extern u32 imx_anatop_get_digprog(void);
+extern void imx_anatop_usb1_disconnect_line(bool);
+extern void imx_anatop_set_stop_mode_config(bool);
 extern int imx6q_set_lpm(enum mxc_cpu_pwr_mode mode);
 extern void imx6q_set_chicken_bit(void);
 
-- 
1.7.1

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 1/2] arm: mach-imx: Move anatop related from board file to anatop driver
  2013-08-12  7:26 [PATCH 1/2] arm: mach-imx: Move anatop related from board file to anatop driver Peter Chen
  2013-08-12  7:26 ` [PATCH 2/2] arm: mach-imx: anatop: add two APIs for USB driver Peter Chen
@ 2013-08-14  3:46 ` Shawn Guo
  2013-08-14  3:53   ` Peter Chen
  1 sibling, 1 reply; 8+ messages in thread
From: Shawn Guo @ 2013-08-14  3:46 UTC (permalink / raw)
  To: linux-arm-kernel

I change the subject prefix to "ARM: imx: ".

On Mon, Aug 12, 2013 at 03:26:53PM +0800, Peter Chen wrote:
> Move anatop related (For USB) from board file to anatop driver
> 
> Signed-off-by: Peter Chen <peter.chen@freescale.com>
> ---
>  arch/arm/mach-imx/anatop.c     |    4 +++-
>  arch/arm/mach-imx/common.h     |    1 -
>  arch/arm/mach-imx/mach-imx6q.c |    5 -----
>  3 files changed, 3 insertions(+), 7 deletions(-)
> 
> diff --git a/arch/arm/mach-imx/anatop.c b/arch/arm/mach-imx/anatop.c
> index f7efabe..71f1a08 100644
> --- a/arch/arm/mach-imx/anatop.c
> +++ b/arch/arm/mach-imx/anatop.c
> @@ -115,7 +115,7 @@ void imx_anatop_post_resume(void)
>  	imx_anatop_enable_weak2p5(false);
>  }
>  
> -void imx_anatop_usb_chrg_detect_disable(void)
> +static void imx_anatop_usb_chrg_detect_disable(void)
>  {
>  	regmap_write(anatop, ANADIG_USB1_CHRG_DETECT,
>  		BM_ANADIG_USB_CHRG_DETECT_EN_B
> @@ -157,4 +157,6 @@ void __init imx_anatop_init(void)
>  	 */
>  	imx_anatop_pu_enable(true);
>  	imx_gpc_xpu_enable();
> +
> +	imx_anatop_usb_chrg_detect_disable();

The patch was generated from vendor tree.  I fixed it up and applied the
patch.  Please do not do this next time.

Shawn

>  }
> diff --git a/arch/arm/mach-imx/common.h b/arch/arm/mach-imx/common.h
> index 558e95f..df1d7b0 100644
> --- a/arch/arm/mach-imx/common.h
> +++ b/arch/arm/mach-imx/common.h
> @@ -136,7 +136,6 @@ extern void imx_gpc_xpu_enable(void);
>  extern void imx_anatop_init(void);
>  extern void imx_anatop_pre_suspend(void);
>  extern void imx_anatop_post_resume(void);
> -extern void imx_anatop_usb_chrg_detect_disable(void);
>  extern u32 imx_anatop_get_digprog(void);
>  extern int imx6q_set_lpm(enum mxc_cpu_pwr_mode mode);
>  extern void imx6q_set_chicken_bit(void);
> diff --git a/arch/arm/mach-imx/mach-imx6q.c b/arch/arm/mach-imx/mach-imx6q.c
> index e04abe9..846731d 100644
> --- a/arch/arm/mach-imx/mach-imx6q.c
> +++ b/arch/arm/mach-imx/mach-imx6q.c
> @@ -185,10 +185,6 @@ static void __init imx6q_1588_init(void)
>  		pr_err("failed to find fsl,imx6q-iomux-gpr regmap\n");
>  
>  }
> -static void __init imx6q_usb_init(void)
> -{
> -	imx_anatop_usb_chrg_detect_disable();
> -}
>  
>  static void __init imx6q_init_machine(void)
>  {
> @@ -198,7 +194,6 @@ static void __init imx6q_init_machine(void)
>  
>  	imx_anatop_init();
>  	imx6q_pm_init();
> -	imx6q_usb_init();
>  	imx6q_1588_init();
>  }
>  
> -- 
> 1.7.1
> 
> 

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH 2/2] arm: mach-imx: anatop: add two APIs for USB driver
  2013-08-12  7:26 ` [PATCH 2/2] arm: mach-imx: anatop: add two APIs for USB driver Peter Chen
@ 2013-08-14  3:47   ` Shawn Guo
  2013-08-14  3:50     ` Peter Chen
  0 siblings, 1 reply; 8+ messages in thread
From: Shawn Guo @ 2013-08-14  3:47 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Aug 12, 2013 at 03:26:54PM +0800, Peter Chen wrote:
> imx_anatop_usb1_disconnect_line is used to disconnect dp/dm between
> PHY and controller, after that, the controller always gets SE0
> for the status of dp/dm, it is not any wakeup signal for controller.
> It is used to avoid unknown interrupt due to dp/dm is floading
> after the USB PHY is no powered when there is no vbus supplied.
> 
> imx_anatop_set_stop_mode_config is used to keep internal regualtor on
> when the system enters suspend mode, it will increase power consumption,
> we only enable it when the user enables USB wakeup (default is off).
> 
> Signed-off-by: Peter Chen <peter.chen@freescale.com>
> ---
>  arch/arm/mach-imx/anatop.c |   22 ++++++++++++++++++++++
>  arch/arm/mach-imx/common.h |    2 ++
>  2 files changed, 24 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/arm/mach-imx/anatop.c b/arch/arm/mach-imx/anatop.c
> index 71f1a08..7f96bbc 100644
> --- a/arch/arm/mach-imx/anatop.c
> +++ b/arch/arm/mach-imx/anatop.c
> @@ -26,6 +26,7 @@
>  #define ANADIG_ANA_MISC0	0x150
>  #define ANADIG_ANA_MISC2	0x170
>  #define ANADIG_USB1_CHRG_DETECT	0x1b0
> +#define ANADIG_USB1_LOOPBACK	0x1e0
>  #define ANADIG_USB2_CHRG_DETECT	0x210
>  #define ANADIG_DIGPROG		0x260
>  
> @@ -34,6 +35,8 @@
>  #define BM_ANADIG_ANA_MISC0_STOP_MODE_CONFIG	0x1000
>  #define BM_ANADIG_USB_CHRG_DETECT_CHK_CHRG_B	0x80000
>  #define BM_ANADIG_USB_CHRG_DETECT_EN_B		0x100000
> +#define BM_ANADIG_USB1_LOOPBACK_UTMI_DIG_TST1	0x00000004
> +#define BM_ANADIG_USB1_LOOPBACK_TSTI_TX_EN	0x00000020
>  
>  #define ANADIG_ANA_MISC2_REG1_STEP_OFFSET	26
>  #define ANADIG_ANA_MISC2_REG_STEP_MASK		0x3
> @@ -142,6 +145,25 @@ u32 imx_anatop_get_digprog(void)
>  	return digprog;
>  }
>  
> +void imx_anatop_usb1_disconnect_line(bool enable)
> +{
> +	if (enable)
> +		regmap_write(anatop, ANADIG_USB1_LOOPBACK,
> +			BM_ANADIG_USB1_LOOPBACK_UTMI_DIG_TST1 |
> +				BM_ANADIG_USB1_LOOPBACK_TSTI_TX_EN);
> +	else
> +		regmap_write(anatop, ANADIG_USB1_LOOPBACK, 0);
> +}
> +EXPORT_SYMBOL(imx_anatop_usb1_disconnect_line);
> +
> +void imx_anatop_set_stop_mode_config(bool enable)
> +{
> +	regmap_write(anatop, ANADIG_ANA_MISC0 +
> +		(enable ? REG_SET : REG_CLR),
> +			BM_ANADIG_ANA_MISC0_STOP_MODE_CONFIG);
> +}
> +EXPORT_SYMBOL(imx_anatop_set_stop_mode_config);
> +

Where do you want to call these two functions from?

Shawn

>  void __init imx_anatop_init(void)
>  {
>  	anatop = syscon_regmap_lookup_by_compatible("fsl,imx6q-anatop");
> diff --git a/arch/arm/mach-imx/common.h b/arch/arm/mach-imx/common.h
> index df1d7b0..dcb3305 100644
> --- a/arch/arm/mach-imx/common.h
> +++ b/arch/arm/mach-imx/common.h
> @@ -137,6 +137,8 @@ extern void imx_anatop_init(void);
>  extern void imx_anatop_pre_suspend(void);
>  extern void imx_anatop_post_resume(void);
>  extern u32 imx_anatop_get_digprog(void);
> +extern void imx_anatop_usb1_disconnect_line(bool);
> +extern void imx_anatop_set_stop_mode_config(bool);
>  extern int imx6q_set_lpm(enum mxc_cpu_pwr_mode mode);
>  extern void imx6q_set_chicken_bit(void);
>  
> -- 
> 1.7.1
> 
> 

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH 2/2] arm: mach-imx: anatop: add two APIs for USB driver
  2013-08-14  3:47   ` Shawn Guo
@ 2013-08-14  3:50     ` Peter Chen
  2013-08-14  6:32       ` Shawn Guo
  0 siblings, 1 reply; 8+ messages in thread
From: Peter Chen @ 2013-08-14  3:50 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, Aug 14, 2013 at 11:47:56AM +0800, Shawn Guo wrote:
> On Mon, Aug 12, 2013 at 03:26:54PM +0800, Peter Chen wrote:
> > imx_anatop_usb1_disconnect_line is used to disconnect dp/dm between
> > PHY and controller, after that, the controller always gets SE0
> > for the status of dp/dm, it is not any wakeup signal for controller.
> > It is used to avoid unknown interrupt due to dp/dm is floading
> > after the USB PHY is no powered when there is no vbus supplied.
> > 
> > imx_anatop_set_stop_mode_config is used to keep internal regualtor on
> > when the system enters suspend mode, it will increase power consumption,
> > we only enable it when the user enables USB wakeup (default is off).
> > 
> > Signed-off-by: Peter Chen <peter.chen@freescale.com>
> > ---
> >  arch/arm/mach-imx/anatop.c |   22 ++++++++++++++++++++++
> >  arch/arm/mach-imx/common.h |    2 ++
> >  2 files changed, 24 insertions(+), 0 deletions(-)
> > 
> > diff --git a/arch/arm/mach-imx/anatop.c b/arch/arm/mach-imx/anatop.c
> > index 71f1a08..7f96bbc 100644
> > --- a/arch/arm/mach-imx/anatop.c
> > +++ b/arch/arm/mach-imx/anatop.c
> > @@ -26,6 +26,7 @@
> >  #define ANADIG_ANA_MISC0	0x150
> >  #define ANADIG_ANA_MISC2	0x170
> >  #define ANADIG_USB1_CHRG_DETECT	0x1b0
> > +#define ANADIG_USB1_LOOPBACK	0x1e0
> >  #define ANADIG_USB2_CHRG_DETECT	0x210
> >  #define ANADIG_DIGPROG		0x260
> >  
> > @@ -34,6 +35,8 @@
> >  #define BM_ANADIG_ANA_MISC0_STOP_MODE_CONFIG	0x1000
> >  #define BM_ANADIG_USB_CHRG_DETECT_CHK_CHRG_B	0x80000
> >  #define BM_ANADIG_USB_CHRG_DETECT_EN_B		0x100000
> > +#define BM_ANADIG_USB1_LOOPBACK_UTMI_DIG_TST1	0x00000004
> > +#define BM_ANADIG_USB1_LOOPBACK_TSTI_TX_EN	0x00000020
> >  
> >  #define ANADIG_ANA_MISC2_REG1_STEP_OFFSET	26
> >  #define ANADIG_ANA_MISC2_REG_STEP_MASK		0x3
> > @@ -142,6 +145,25 @@ u32 imx_anatop_get_digprog(void)
> >  	return digprog;
> >  }
> >  
> > +void imx_anatop_usb1_disconnect_line(bool enable)
> > +{
> > +	if (enable)
> > +		regmap_write(anatop, ANADIG_USB1_LOOPBACK,
> > +			BM_ANADIG_USB1_LOOPBACK_UTMI_DIG_TST1 |
> > +				BM_ANADIG_USB1_LOOPBACK_TSTI_TX_EN);
> > +	else
> > +		regmap_write(anatop, ANADIG_USB1_LOOPBACK, 0);
> > +}
> > +EXPORT_SYMBOL(imx_anatop_usb1_disconnect_line);
> > +
> > +void imx_anatop_set_stop_mode_config(bool enable)
> > +{
> > +	regmap_write(anatop, ANADIG_ANA_MISC0 +
> > +		(enable ? REG_SET : REG_CLR),
> > +			BM_ANADIG_ANA_MISC0_STOP_MODE_CONFIG);
> > +}
> > +EXPORT_SYMBOL(imx_anatop_set_stop_mode_config);
> > +
> 
> Where do you want to call these two functions from?
> 

>From USB driver, the usb driver is possible built as module.

-- 

Best Regards,
Peter Chen

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH 1/2] arm: mach-imx: Move anatop related from board file to anatop driver
  2013-08-14  3:46 ` [PATCH 1/2] arm: mach-imx: Move anatop related from board file to anatop driver Shawn Guo
@ 2013-08-14  3:53   ` Peter Chen
  0 siblings, 0 replies; 8+ messages in thread
From: Peter Chen @ 2013-08-14  3:53 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, Aug 14, 2013 at 11:46:34AM +0800, Shawn Guo wrote:
> I change the subject prefix to "ARM: imx: ".
> 
> On Mon, Aug 12, 2013 at 03:26:53PM +0800, Peter Chen wrote:
> > Move anatop related (For USB) from board file to anatop driver
> > 
> > Signed-off-by: Peter Chen <peter.chen@freescale.com>
> > ---
> >  arch/arm/mach-imx/anatop.c     |    4 +++-
> >  arch/arm/mach-imx/common.h     |    1 -
> >  arch/arm/mach-imx/mach-imx6q.c |    5 -----
> >  3 files changed, 3 insertions(+), 7 deletions(-)
> > 
> > diff --git a/arch/arm/mach-imx/anatop.c b/arch/arm/mach-imx/anatop.c
> > index f7efabe..71f1a08 100644
> > --- a/arch/arm/mach-imx/anatop.c
> > +++ b/arch/arm/mach-imx/anatop.c
> > @@ -115,7 +115,7 @@ void imx_anatop_post_resume(void)
> >  	imx_anatop_enable_weak2p5(false);
> >  }
> >  
> > -void imx_anatop_usb_chrg_detect_disable(void)
> > +static void imx_anatop_usb_chrg_detect_disable(void)
> >  {
> >  	regmap_write(anatop, ANADIG_USB1_CHRG_DETECT,
> >  		BM_ANADIG_USB_CHRG_DETECT_EN_B
> > @@ -157,4 +157,6 @@ void __init imx_anatop_init(void)
> >  	 */
> >  	imx_anatop_pu_enable(true);
> >  	imx_gpc_xpu_enable();
> > +
> > +	imx_anatop_usb_chrg_detect_disable();
> 
> The patch was generated from vendor tree.  I fixed it up and applied the
> patch.  Please do not do this next time.
> 

I see. Thanks.

-- 

Best Regards,
Peter Chen

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH 2/2] arm: mach-imx: anatop: add two APIs for USB driver
  2013-08-14  6:32       ` Shawn Guo
@ 2013-08-14  4:51         ` Peter Chen
  0 siblings, 0 replies; 8+ messages in thread
From: Peter Chen @ 2013-08-14  4:51 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, Aug 14, 2013 at 02:32:38PM +0800, Shawn Guo wrote:
> On Wed, Aug 14, 2013 at 11:50:07AM +0800, Peter Chen wrote:
> > > > +void imx_anatop_usb1_disconnect_line(bool enable)
> > > > +{
> > > > +	if (enable)
> > > > +		regmap_write(anatop, ANADIG_USB1_LOOPBACK,
> > > > +			BM_ANADIG_USB1_LOOPBACK_UTMI_DIG_TST1 |
> > > > +				BM_ANADIG_USB1_LOOPBACK_TSTI_TX_EN);
> > > > +	else
> > > > +		regmap_write(anatop, ANADIG_USB1_LOOPBACK, 0);
> > > > +}
> > > > +EXPORT_SYMBOL(imx_anatop_usb1_disconnect_line);
> > > > +
> > > > +void imx_anatop_set_stop_mode_config(bool enable)
> > > > +{
> > > > +	regmap_write(anatop, ANADIG_ANA_MISC0 +
> > > > +		(enable ? REG_SET : REG_CLR),
> > > > +			BM_ANADIG_ANA_MISC0_STOP_MODE_CONFIG);
> > > > +}
> > > > +EXPORT_SYMBOL(imx_anatop_set_stop_mode_config);
> > > > +
> > > 
> > > Where do you want to call these two functions from?
> > > 
> > 
> > From USB driver, the usb driver is possible built as module.
> 
> I do not think it's appropriate have device driver directly call into
> platform level functions.

Will do it like thermal and regulator driver, please forget it.

-- 

Best Regards,
Peter Chen

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH 2/2] arm: mach-imx: anatop: add two APIs for USB driver
  2013-08-14  3:50     ` Peter Chen
@ 2013-08-14  6:32       ` Shawn Guo
  2013-08-14  4:51         ` Peter Chen
  0 siblings, 1 reply; 8+ messages in thread
From: Shawn Guo @ 2013-08-14  6:32 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, Aug 14, 2013 at 11:50:07AM +0800, Peter Chen wrote:
> > > +void imx_anatop_usb1_disconnect_line(bool enable)
> > > +{
> > > +	if (enable)
> > > +		regmap_write(anatop, ANADIG_USB1_LOOPBACK,
> > > +			BM_ANADIG_USB1_LOOPBACK_UTMI_DIG_TST1 |
> > > +				BM_ANADIG_USB1_LOOPBACK_TSTI_TX_EN);
> > > +	else
> > > +		regmap_write(anatop, ANADIG_USB1_LOOPBACK, 0);
> > > +}
> > > +EXPORT_SYMBOL(imx_anatop_usb1_disconnect_line);
> > > +
> > > +void imx_anatop_set_stop_mode_config(bool enable)
> > > +{
> > > +	regmap_write(anatop, ANADIG_ANA_MISC0 +
> > > +		(enable ? REG_SET : REG_CLR),
> > > +			BM_ANADIG_ANA_MISC0_STOP_MODE_CONFIG);
> > > +}
> > > +EXPORT_SYMBOL(imx_anatop_set_stop_mode_config);
> > > +
> > 
> > Where do you want to call these two functions from?
> > 
> 
> From USB driver, the usb driver is possible built as module.

I do not think it's appropriate have device driver directly call into
platform level functions.

Shawn

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2013-08-14  6:32 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-08-12  7:26 [PATCH 1/2] arm: mach-imx: Move anatop related from board file to anatop driver Peter Chen
2013-08-12  7:26 ` [PATCH 2/2] arm: mach-imx: anatop: add two APIs for USB driver Peter Chen
2013-08-14  3:47   ` Shawn Guo
2013-08-14  3:50     ` Peter Chen
2013-08-14  6:32       ` Shawn Guo
2013-08-14  4:51         ` Peter Chen
2013-08-14  3:46 ` [PATCH 1/2] arm: mach-imx: Move anatop related from board file to anatop driver Shawn Guo
2013-08-14  3:53   ` Peter Chen

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).