public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] OMAP4: pm.c extensions for OMAP4 support
@ 2010-08-17  4:36 Thara Gopinath
  2010-08-17 10:36 ` Nishanth Menon
  2010-08-24 21:58 ` Kevin Hilman
  0 siblings, 2 replies; 5+ messages in thread
From: Thara Gopinath @ 2010-08-17  4:36 UTC (permalink / raw)
  To: linux-omap; +Cc: khilman, paul, vishwanath.bs, sawant, Thara Gopinath

OMAP4 has an iva device and a dsp devcice where as OMAP2/3
has only an iva device. In this file the iva device in the
system is registered under the name dsp_dev and the API
to retrieve the iva device is omap2_get_dsp_device.
This patch renames the dsp_dev to iva_dev, renames
omap2_get_dsp_device to omap2_get_iva_device,
registers dsp_dev for OMAP4 and adds a new API
omap4_get_dsp_device to retrieve the dep_dev.

Signed-off-by: Thara Gopinath <thara@ti.com>
---
v2: Removed fixing of l3_main hwmod for OMAP4 as Benoit has
    already submitted a pach fixing the same.

 arch/arm/mach-omap2/pm.c                 |   19 ++++++++++++++-----
 arch/arm/plat-omap/include/plat/common.h |    3 ++-
 2 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/arch/arm/mach-omap2/pm.c b/arch/arm/mach-omap2/pm.c
index 68f9f2e..a98b5e8 100644
--- a/arch/arm/mach-omap2/pm.c
+++ b/arch/arm/mach-omap2/pm.c
@@ -21,8 +21,9 @@
 static struct omap_device_pm_latency *pm_lats;
 
 static struct device *mpu_dev;
-static struct device *dsp_dev;
+static struct device *iva_dev;
 static struct device *l3_dev;
+static struct device *dsp_dev;
 
 struct device *omap2_get_mpuss_device(void)
 {
@@ -30,10 +31,10 @@ struct device *omap2_get_mpuss_device(void)
 	return mpu_dev;
 }
 
-struct device *omap2_get_dsp_device(void)
+struct device *omap2_get_iva_device(void)
 {
-	WARN_ON_ONCE(!dsp_dev);
-	return dsp_dev;
+	WARN_ON_ONCE(!iva_dev);
+	return iva_dev;
 }
 
 struct device *omap2_get_l3_device(void)
@@ -42,6 +43,13 @@ struct device *omap2_get_l3_device(void)
 	return l3_dev;
 }
 
+struct device *omap4_get_dsp_device(void)
+{
+	WARN_ON_ONCE(!dsp_dev);
+	return dsp_dev;
+}
+EXPORT_SYMBOL(omap4_get_dsp_device);
+
 /* static int _init_omap_device(struct omap_hwmod *oh, void *user) */
 static int _init_omap_device(char *name, struct device **new_dev)
 {
@@ -69,7 +77,8 @@ static int _init_omap_device(char *name, struct device **new_dev)
 static void omap2_init_processor_devices(void)
 {
 	_init_omap_device("mpu", &mpu_dev);
-	_init_omap_device("iva", &dsp_dev);
+	_init_omap_device("iva", &iva_dev);
+	_init_omap_device("dsp", &dsp_dev);
 	_init_omap_device("l3_main", &l3_dev);
 }
 
diff --git a/arch/arm/plat-omap/include/plat/common.h b/arch/arm/plat-omap/include/plat/common.h
index 9776b41..c45dbb9 100644
--- a/arch/arm/plat-omap/include/plat/common.h
+++ b/arch/arm/plat-omap/include/plat/common.h
@@ -91,7 +91,8 @@ void omap3_map_io(void);
 })
 
 extern struct device *omap2_get_mpuss_device(void);
-extern struct device *omap2_get_dsp_device(void);
+extern struct device *omap2_get_iva_device(void);
 extern struct device *omap2_get_l3_device(void);
+extern struct device *omap4_get_dsp_device(void);
 
 #endif /* __ARCH_ARM_MACH_OMAP_COMMON_H */
-- 
1.7.0.4


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

* Re: [PATCH v2] OMAP4: pm.c extensions for OMAP4 support
  2010-08-17  4:36 [PATCH v2] OMAP4: pm.c extensions for OMAP4 support Thara Gopinath
@ 2010-08-17 10:36 ` Nishanth Menon
  2010-08-24 21:58 ` Kevin Hilman
  1 sibling, 0 replies; 5+ messages in thread
From: Nishanth Menon @ 2010-08-17 10:36 UTC (permalink / raw)
  To: Thara Gopinath; +Cc: linux-omap, khilman, paul, vishwanath.bs, sawant

On 08/16/2010 11:36 PM, Thara Gopinath wrote:
> OMAP4 has an iva device and a dsp devcice where as OMAP2/3
> has only an iva device. In this file the iva device in the
a bit confused regarding this -> IVA on OMAP3 was a C64 DSP. OMAP3 also 
had iva accelerators, but ARM does not directly talk to the 
accellerators. C64 did (that was why we had the dspbridge to talk to the 
C64).
Could you clarify the intent of the patch?

> system is registered under the name dsp_dev and the API
> to retrieve the iva device is omap2_get_dsp_device.
> This patch renames the dsp_dev to iva_dev, renames
> omap2_get_dsp_device to omap2_get_iva_device,
> registers dsp_dev for OMAP4 and adds a new API
> omap4_get_dsp_device to retrieve the dep_dev.


>
> Signed-off-by: Thara Gopinath<thara@ti.com>
> ---
> v2: Removed fixing of l3_main hwmod for OMAP4 as Benoit has
>      already submitted a pach fixing the same.
>
>   arch/arm/mach-omap2/pm.c                 |   19 ++++++++++++++-----
>   arch/arm/plat-omap/include/plat/common.h |    3 ++-
>   2 files changed, 16 insertions(+), 6 deletions(-)
>
> diff --git a/arch/arm/mach-omap2/pm.c b/arch/arm/mach-omap2/pm.c
> index 68f9f2e..a98b5e8 100644
> --- a/arch/arm/mach-omap2/pm.c
> +++ b/arch/arm/mach-omap2/pm.c
> @@ -21,8 +21,9 @@
>   static struct omap_device_pm_latency *pm_lats;
>
>   static struct device *mpu_dev;
> -static struct device *dsp_dev;
> +static struct device *iva_dev;
>   static struct device *l3_dev;
> +static struct device *dsp_dev;
>
>   struct device *omap2_get_mpuss_device(void)
>   {
> @@ -30,10 +31,10 @@ struct device *omap2_get_mpuss_device(void)
>   	return mpu_dev;
>   }
>
> -struct device *omap2_get_dsp_device(void)
> +struct device *omap2_get_iva_device(void)
>   {
> -	WARN_ON_ONCE(!dsp_dev);
> -	return dsp_dev;
> +	WARN_ON_ONCE(!iva_dev);
> +	return iva_dev;
>   }
>
>   struct device *omap2_get_l3_device(void)
> @@ -42,6 +43,13 @@ struct device *omap2_get_l3_device(void)
>   	return l3_dev;
>   }
>
> +struct device *omap4_get_dsp_device(void)
> +{
> +	WARN_ON_ONCE(!dsp_dev);
> +	return dsp_dev;
> +}
> +EXPORT_SYMBOL(omap4_get_dsp_device);
> +
>   /* static int _init_omap_device(struct omap_hwmod *oh, void *user) */
>   static int _init_omap_device(char *name, struct device **new_dev)
>   {
> @@ -69,7 +77,8 @@ static int _init_omap_device(char *name, struct device **new_dev)
>   static void omap2_init_processor_devices(void)
>   {
>   	_init_omap_device("mpu",&mpu_dev);
> -	_init_omap_device("iva",&dsp_dev);
> +	_init_omap_device("iva",&iva_dev);
> +	_init_omap_device("dsp",&dsp_dev);
>   	_init_omap_device("l3_main",&l3_dev);
>   }
>
> diff --git a/arch/arm/plat-omap/include/plat/common.h b/arch/arm/plat-omap/include/plat/common.h
> index 9776b41..c45dbb9 100644
> --- a/arch/arm/plat-omap/include/plat/common.h
> +++ b/arch/arm/plat-omap/include/plat/common.h
> @@ -91,7 +91,8 @@ void omap3_map_io(void);
>   })
>
>   extern struct device *omap2_get_mpuss_device(void);
> -extern struct device *omap2_get_dsp_device(void);
> +extern struct device *omap2_get_iva_device(void);
>   extern struct device *omap2_get_l3_device(void);
> +extern struct device *omap4_get_dsp_device(void);
>
>   #endif /* __ARCH_ARM_MACH_OMAP_COMMON_H */


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

* Re: [PATCH v2] OMAP4: pm.c extensions for OMAP4 support
  2010-08-17  4:36 [PATCH v2] OMAP4: pm.c extensions for OMAP4 support Thara Gopinath
  2010-08-17 10:36 ` Nishanth Menon
@ 2010-08-24 21:58 ` Kevin Hilman
  2010-08-24 23:12   ` Kevin Hilman
  1 sibling, 1 reply; 5+ messages in thread
From: Kevin Hilman @ 2010-08-24 21:58 UTC (permalink / raw)
  To: Thara Gopinath; +Cc: linux-omap, paul, vishwanath.bs, sawant

Thara Gopinath <thara@ti.com> writes:

> OMAP4 has an iva device and a dsp devcice where as OMAP2/3
> has only an iva device. In this file the iva device in the
> system is registered under the name dsp_dev and the API
> to retrieve the iva device is omap2_get_dsp_device.
> This patch renames the dsp_dev to iva_dev, renames
> omap2_get_dsp_device to omap2_get_iva_device,
> registers dsp_dev for OMAP4 and adds a new API
> omap4_get_dsp_device to retrieve the dep_dev.
>
> Signed-off-by: Thara Gopinath <thara@ti.com>
> ---
> v2: Removed fixing of l3_main hwmod for OMAP4 as Benoit has
>     already submitted a pach fixing the same.

OK, applying this to pm-fixes.

Kevin

>  arch/arm/mach-omap2/pm.c                 |   19 ++++++++++++++-----
>  arch/arm/plat-omap/include/plat/common.h |    3 ++-
>  2 files changed, 16 insertions(+), 6 deletions(-)
>
> diff --git a/arch/arm/mach-omap2/pm.c b/arch/arm/mach-omap2/pm.c
> index 68f9f2e..a98b5e8 100644
> --- a/arch/arm/mach-omap2/pm.c
> +++ b/arch/arm/mach-omap2/pm.c
> @@ -21,8 +21,9 @@
>  static struct omap_device_pm_latency *pm_lats;
>  
>  static struct device *mpu_dev;
> -static struct device *dsp_dev;
> +static struct device *iva_dev;
>  static struct device *l3_dev;
> +static struct device *dsp_dev;
>  
>  struct device *omap2_get_mpuss_device(void)
>  {
> @@ -30,10 +31,10 @@ struct device *omap2_get_mpuss_device(void)
>  	return mpu_dev;
>  }
>  
> -struct device *omap2_get_dsp_device(void)
> +struct device *omap2_get_iva_device(void)
>  {
> -	WARN_ON_ONCE(!dsp_dev);
> -	return dsp_dev;
> +	WARN_ON_ONCE(!iva_dev);
> +	return iva_dev;
>  }
>  
>  struct device *omap2_get_l3_device(void)
> @@ -42,6 +43,13 @@ struct device *omap2_get_l3_device(void)
>  	return l3_dev;
>  }
>  
> +struct device *omap4_get_dsp_device(void)
> +{
> +	WARN_ON_ONCE(!dsp_dev);
> +	return dsp_dev;
> +}
> +EXPORT_SYMBOL(omap4_get_dsp_device);
> +
>  /* static int _init_omap_device(struct omap_hwmod *oh, void *user) */
>  static int _init_omap_device(char *name, struct device **new_dev)
>  {
> @@ -69,7 +77,8 @@ static int _init_omap_device(char *name, struct device **new_dev)
>  static void omap2_init_processor_devices(void)
>  {
>  	_init_omap_device("mpu", &mpu_dev);
> -	_init_omap_device("iva", &dsp_dev);
> +	_init_omap_device("iva", &iva_dev);
> +	_init_omap_device("dsp", &dsp_dev);
>  	_init_omap_device("l3_main", &l3_dev);
>  }
>  
> diff --git a/arch/arm/plat-omap/include/plat/common.h b/arch/arm/plat-omap/include/plat/common.h
> index 9776b41..c45dbb9 100644
> --- a/arch/arm/plat-omap/include/plat/common.h
> +++ b/arch/arm/plat-omap/include/plat/common.h
> @@ -91,7 +91,8 @@ void omap3_map_io(void);
>  })
>  
>  extern struct device *omap2_get_mpuss_device(void);
> -extern struct device *omap2_get_dsp_device(void);
> +extern struct device *omap2_get_iva_device(void);
>  extern struct device *omap2_get_l3_device(void);
> +extern struct device *omap4_get_dsp_device(void);
>  
>  #endif /* __ARCH_ARM_MACH_OMAP_COMMON_H */

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

* Re: [PATCH v2] OMAP4: pm.c extensions for OMAP4 support
  2010-08-24 21:58 ` Kevin Hilman
@ 2010-08-24 23:12   ` Kevin Hilman
  2010-08-30 14:02     ` Gopinath, Thara
  0 siblings, 1 reply; 5+ messages in thread
From: Kevin Hilman @ 2010-08-24 23:12 UTC (permalink / raw)
  To: Thara Gopinath; +Cc: linux-omap, paul, vishwanath.bs, sawant

On Tue, 2010-08-24 at 14:58 -0700, Kevin Hilman wrote:
> Thara Gopinath <thara@ti.com> writes:
> 
> > OMAP4 has an iva device and a dsp devcice where as OMAP2/3
> > has only an iva device. In this file the iva device in the
> > system is registered under the name dsp_dev and the API
> > to retrieve the iva device is omap2_get_dsp_device.
> > This patch renames the dsp_dev to iva_dev, renames
> > omap2_get_dsp_device to omap2_get_iva_device,
> > registers dsp_dev for OMAP4 and adds a new API
> > omap4_get_dsp_device to retrieve the dep_dev.
> >
> > Signed-off-by: Thara Gopinath <thara@ti.com>
> > ---
> > v2: Removed fixing of l3_main hwmod for OMAP4 as Benoit has
> >     already submitted a pach fixing the same.
> 
> OK, applying this to pm-fixes.

No second thought, not yet...

> 
> >  arch/arm/mach-omap2/pm.c                 |   19 ++++++++++++++-----
> >  arch/arm/plat-omap/include/plat/common.h |    3 ++-
> >  2 files changed, 16 insertions(+), 6 deletions(-)
> >
> > diff --git a/arch/arm/mach-omap2/pm.c b/arch/arm/mach-omap2/pm.c
> > index 68f9f2e..a98b5e8 100644
> > --- a/arch/arm/mach-omap2/pm.c
> > +++ b/arch/arm/mach-omap2/pm.c
> > @@ -21,8 +21,9 @@
> >  static struct omap_device_pm_latency *pm_lats;
> >  
> >  static struct device *mpu_dev;
> > -static struct device *dsp_dev;
> > +static struct device *iva_dev;
> >  static struct device *l3_dev;
> > +static struct device *dsp_dev;
> >  
> >  struct device *omap2_get_mpuss_device(void)
> >  {
> > @@ -30,10 +31,10 @@ struct device *omap2_get_mpuss_device(void)
> >  	return mpu_dev;
> >  }
> >  
> > -struct device *omap2_get_dsp_device(void)
> > +struct device *omap2_get_iva_device(void)
> >  {
> > -	WARN_ON_ONCE(!dsp_dev);
> > -	return dsp_dev;
> > +	WARN_ON_ONCE(!iva_dev);
> > +	return iva_dev;
> >  }
> >  
> >  struct device *omap2_get_l3_device(void)
> > @@ -42,6 +43,13 @@ struct device *omap2_get_l3_device(void)
> >  	return l3_dev;
> >  }
> >  
> > +struct device *omap4_get_dsp_device(void)
> > +{
> > +	WARN_ON_ONCE(!dsp_dev);
> > +	return dsp_dev;
> > +}
> > +EXPORT_SYMBOL(omap4_get_dsp_device);
> > +
> >  /* static int _init_omap_device(struct omap_hwmod *oh, void *user) */
> >  static int _init_omap_device(char *name, struct device **new_dev)
> >  {
> > @@ -69,7 +77,8 @@ static int _init_omap_device(char *name, struct device **new_dev)
> >  static void omap2_init_processor_devices(void)
> >  {
> >  	_init_omap_device("mpu", &mpu_dev);
> > -	_init_omap_device("iva", &dsp_dev);
> > +	_init_omap_device("iva", &iva_dev);
> > +	_init_omap_device("dsp", &dsp_dev);

this one causes the noisy WARN to be tirggered on !OMAP4.   Since !OMAP4
doesn't have a DSP, we shouldn't be warning users about a missing dsp
hwmod.  

Kevin

> >  	_init_omap_device("l3_main", &l3_dev);
> >  }
> >  
> > diff --git a/arch/arm/plat-omap/include/plat/common.h b/arch/arm/plat-omap/include/plat/common.h
> > index 9776b41..c45dbb9 100644
> > --- a/arch/arm/plat-omap/include/plat/common.h
> > +++ b/arch/arm/plat-omap/include/plat/common.h
> > @@ -91,7 +91,8 @@ void omap3_map_io(void);
> >  })
> >  
> >  extern struct device *omap2_get_mpuss_device(void);
> > -extern struct device *omap2_get_dsp_device(void);
> > +extern struct device *omap2_get_iva_device(void);
> >  extern struct device *omap2_get_l3_device(void);
> > +extern struct device *omap4_get_dsp_device(void);
> >  
> >  #endif /* __ARCH_ARM_MACH_OMAP_COMMON_H */



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

* RE: [PATCH v2] OMAP4: pm.c extensions for OMAP4 support
  2010-08-24 23:12   ` Kevin Hilman
@ 2010-08-30 14:02     ` Gopinath, Thara
  0 siblings, 0 replies; 5+ messages in thread
From: Gopinath, Thara @ 2010-08-30 14:02 UTC (permalink / raw)
  To: Kevin Hilman
  Cc: linux-omap@vger.kernel.org, paul@pwsan.com, Sripathy, Vishwanath,
	Sawant, Anand



>>-----Original Message-----
>>From: Kevin Hilman [mailto:khilman@deeprootsystems.com]
>>Sent: Wednesday, August 25, 2010 4:43 AM
>>To: Gopinath, Thara
>>Cc: linux-omap@vger.kernel.org; paul@pwsan.com; Sripathy, Vishwanath; Sawant, Anand
>>Subject: Re: [PATCH v2] OMAP4: pm.c extensions for OMAP4 support
>>
>>On Tue, 2010-08-24 at 14:58 -0700, Kevin Hilman wrote:
>>> Thara Gopinath <thara@ti.com> writes:
>>>
>>> > OMAP4 has an iva device and a dsp devcice where as OMAP2/3
>>> > has only an iva device. In this file the iva device in the
>>> > system is registered under the name dsp_dev and the API
>>> > to retrieve the iva device is omap2_get_dsp_device.
>>> > This patch renames the dsp_dev to iva_dev, renames
>>> > omap2_get_dsp_device to omap2_get_iva_device,
>>> > registers dsp_dev for OMAP4 and adds a new API
>>> > omap4_get_dsp_device to retrieve the dep_dev.
>>> >
>>> > Signed-off-by: Thara Gopinath <thara@ti.com>
>>> > ---
>>> > v2: Removed fixing of l3_main hwmod for OMAP4 as Benoit has
>>> >     already submitted a pach fixing the same.
>>>
>>> OK, applying this to pm-fixes.
>>
>>No second thought, not yet...
>>
>>>
>>> >  arch/arm/mach-omap2/pm.c                 |   19 ++++++++++++++-----
>>> >  arch/arm/plat-omap/include/plat/common.h |    3 ++-
>>> >  2 files changed, 16 insertions(+), 6 deletions(-)
>>> >
>>> > diff --git a/arch/arm/mach-omap2/pm.c b/arch/arm/mach-omap2/pm.c
>>> > index 68f9f2e..a98b5e8 100644
>>> > --- a/arch/arm/mach-omap2/pm.c
>>> > +++ b/arch/arm/mach-omap2/pm.c
>>> > @@ -21,8 +21,9 @@
>>> >  static struct omap_device_pm_latency *pm_lats;
>>> >
>>> >  static struct device *mpu_dev;
>>> > -static struct device *dsp_dev;
>>> > +static struct device *iva_dev;
>>> >  static struct device *l3_dev;
>>> > +static struct device *dsp_dev;
>>> >
>>> >  struct device *omap2_get_mpuss_device(void)
>>> >  {
>>> > @@ -30,10 +31,10 @@ struct device *omap2_get_mpuss_device(void)
>>> >  	return mpu_dev;
>>> >  }
>>> >
>>> > -struct device *omap2_get_dsp_device(void)
>>> > +struct device *omap2_get_iva_device(void)
>>> >  {
>>> > -	WARN_ON_ONCE(!dsp_dev);
>>> > -	return dsp_dev;
>>> > +	WARN_ON_ONCE(!iva_dev);
>>> > +	return iva_dev;
>>> >  }
>>> >
>>> >  struct device *omap2_get_l3_device(void)
>>> > @@ -42,6 +43,13 @@ struct device *omap2_get_l3_device(void)
>>> >  	return l3_dev;
>>> >  }
>>> >
>>> > +struct device *omap4_get_dsp_device(void)
>>> > +{
>>> > +	WARN_ON_ONCE(!dsp_dev);
>>> > +	return dsp_dev;
>>> > +}
>>> > +EXPORT_SYMBOL(omap4_get_dsp_device);
>>> > +
>>> >  /* static int _init_omap_device(struct omap_hwmod *oh, void *user) */
>>> >  static int _init_omap_device(char *name, struct device **new_dev)
>>> >  {
>>> > @@ -69,7 +77,8 @@ static int _init_omap_device(char *name, struct device **new_dev)
>>> >  static void omap2_init_processor_devices(void)
>>> >  {
>>> >  	_init_omap_device("mpu", &mpu_dev);
>>> > -	_init_omap_device("iva", &dsp_dev);
>>> > +	_init_omap_device("iva", &iva_dev);
>>> > +	_init_omap_device("dsp", &dsp_dev);
>>
>>this one causes the noisy WARN to be tirggered on !OMAP4.   Since !OMAP4
>>doesn't have a DSP, we shouldn't be warning users about a missing dsp
>>hwmod.
Hello Kevin,

I will put a OMAP4 check across this and repost.

Regards
Thara

>>
>>Kevin
>>
>>> >  	_init_omap_device("l3_main", &l3_dev);
>>> >  }
>>> >
>>> > diff --git a/arch/arm/plat-omap/include/plat/common.h b/arch/arm/plat-omap/include/plat/common.h
>>> > index 9776b41..c45dbb9 100644
>>> > --- a/arch/arm/plat-omap/include/plat/common.h
>>> > +++ b/arch/arm/plat-omap/include/plat/common.h
>>> > @@ -91,7 +91,8 @@ void omap3_map_io(void);
>>> >  })
>>> >
>>> >  extern struct device *omap2_get_mpuss_device(void);
>>> > -extern struct device *omap2_get_dsp_device(void);
>>> > +extern struct device *omap2_get_iva_device(void);
>>> >  extern struct device *omap2_get_l3_device(void);
>>> > +extern struct device *omap4_get_dsp_device(void);
>>> >
>>> >  #endif /* __ARCH_ARM_MACH_OMAP_COMMON_H */
>>


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

end of thread, other threads:[~2010-08-30 14:02 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-08-17  4:36 [PATCH v2] OMAP4: pm.c extensions for OMAP4 support Thara Gopinath
2010-08-17 10:36 ` Nishanth Menon
2010-08-24 21:58 ` Kevin Hilman
2010-08-24 23:12   ` Kevin Hilman
2010-08-30 14:02     ` Gopinath, Thara

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox