All of lore.kernel.org
 help / color / mirror / Atom feed
* Latest regressions
@ 2011-01-07 11:57 Russell King - ARM Linux
  2011-01-07 12:58 ` Nishanth Menon
                   ` (2 more replies)
  0 siblings, 3 replies; 18+ messages in thread
From: Russell King - ARM Linux @ 2011-01-07 11:57 UTC (permalink / raw)
  To: linux-omap

In file included from arch/arm/plat-omap/include/plat/omap_hwmod.h:37,
                 from arch/arm/mach-omap2/io.c:45:
arch/arm/plat-omap/include/plat/voltage.h: In function ■omap_voltage_register_pmic■:
arch/arm/plat-omap/include/plat/voltage.h:137: warning: no return statement in function returning non-void

which gets spammed out all through the build.  voltage.h:137 says:

static inline int omap_voltage_register_pmic(struct voltagedomain *voltdm,
                struct omap_volt_pmic_info *pmic_info) {}

but no one checks the return value for this:

arch/arm/mach-omap2/omap_twl.c: omap_voltage_register_pmic(voltdm, &omap4_mpu_volt_info);
arch/arm/mach-omap2/omap_twl.c: omap_voltage_register_pmic(voltdm, &omap4_iva_volt_info);
arch/arm/mach-omap2/omap_twl.c: omap_voltage_register_pmic(voltdm, &omap4_core_volt_info);
arch/arm/mach-omap2/omap_twl.c: omap_voltage_register_pmic(voltdm, &omap3_mpu_volt_info);
arch/arm/mach-omap2/omap_twl.c: omap_voltage_register_pmic(voltdm, &omap3_core_volt_info);

so I don't see the point of it returning an 'int'.

There's also:
arch/arm/mach-omap2/io.c: In function ■omap_irq_base_init■:
arch/arm/mach-omap2/io.c:322: warning: unused variable ■omap_irq_base■

This has never been built with !MULTI_OMAP2:

+/*
+ * Initialize asm_irq_base for entry-macro.S
+ */
+static inline void omap_irq_base_init(void)
+{
+       extern void __iomem *omap_irq_base;
+
+#ifdef MULTI_OMAP2
+       if (cpu_is_omap242x())
+               omap_irq_base = OMAP2_L4_IO_ADDRESS(OMAP24XX_IC_BASE);
+       else if (cpu_is_omap34xx())
+               omap_irq_base = OMAP2_L4_IO_ADDRESS(OMAP34XX_IC_BASE);
+       else if (cpu_is_omap44xx())
+               omap_irq_base = OMAP2_L4_IO_ADDRESS(OMAP44XX_GIC_CPU_BASE);
+       else
+               pr_err("Could not initialize omap_irq_base\n");
+#endif
+}

and given the code and comment in entry-macros.S, it would be far better
to define omap_irq_base in here, get rid of the ifdef and always
initialize it, thereby eliminating that variability from needing
multiple different configurations get proper build coverage.

arch/arm/mach-omap2/mux.c: In function ■_omap_mux_get_by_name■:
arch/arm/mach-omap2/mux.c:163: warning: ■found_mode■ may be used uninitialized in this function

The build ends with:

In file included from arch/arm/plat-omap/include/plat/omap_hwmod.h:37,
                 from arch/arm/mach-omap2/omap_hwmod_common_data.c:19:
arch/arm/plat-omap/include/plat/voltage.h: In function ■omap_voltage_register_pmic■:
arch/arm/plat-omap/include/plat/voltage.h:137: warning: no return statement in function returning non-void
arch/arm/plat-omap/include/plat/voltage.h: In function ■omap_voltage_late_init■:
arch/arm/plat-omap/include/plat/voltage.h:142: error: ■EINVAL■ undeclared (first use in this function)
arch/arm/plat-omap/include/plat/voltage.h:142: error: (Each undeclared identifier is reported only once
arch/arm/plat-omap/include/plat/voltage.h:142: error: for each function it appears in.)
make[2]: *** [arch/arm/mach-omap2/omap_hwmod_common_data.o] Error 1
make[1]: *** [arch/arm/mach-omap2] Error 2
make[1]: *** Waiting for unfinished jobs....

Adding linux/errno.h to that header resolves that.  That gets us down to
the final link, which fails:

arch/arm/mach-omap2/built-in.o: In function `omap2_set_init_voltage':
arch/arm/mach-omap2/pm.c:181: undefined reference to `omap_voltage_domain_lookup'
arch/arm/mach-omap2/built-in.o: In function `omap3_twl_init':
arch/arm/mach-omap2/omap_twl.c:270: undefined reference to `omap_voltage_domain_lookup'
arch/arm/mach-omap2/omap_twl.c:273: undefined reference to `omap_voltage_domain_lookup'

So, this is what I currently have to get that far:

diff --git a/arch/arm/mach-omap2/include/mach/entry-macro.S b/arch/arm/mach-omap2/include/mach/entry-macro.S
index befa321..81985a6 100644
--- a/arch/arm/mach-omap2/include/mach/entry-macro.S
+++ b/arch/arm/mach-omap2/include/mach/entry-macro.S
@@ -38,20 +38,6 @@
  */
 
 #ifdef MULTI_OMAP2
-
-/*
- * We use __glue to avoid errors with multiple definitions of
- * .globl omap_irq_base as it's included from entry-armv.S but not
- * from entry-common.S.
- */
-#ifdef __glue
-		.pushsection .data
-		.globl	omap_irq_base
-omap_irq_base:
-		.word	0
-		.popsection
-#endif
-
 		/*
 		 * Configure the interrupt base on the first interrupt.
 		 * See also omap_irq_base_init for setting omap_irq_base.
diff --git a/arch/arm/mach-omap2/io.c b/arch/arm/mach-omap2/io.c
index e66687b..c203204 100644
--- a/arch/arm/mach-omap2/io.c
+++ b/arch/arm/mach-omap2/io.c
@@ -314,14 +314,13 @@ static int _set_hwmod_postsetup_state(struct omap_hwmod *oh, void *data)
 	return omap_hwmod_set_postsetup_state(oh, *(u8 *)data);
 }
 
+void __iomem *omap_irq_base;
+
 /*
  * Initialize asm_irq_base for entry-macro.S
  */
 static inline void omap_irq_base_init(void)
 {
-	extern void __iomem *omap_irq_base;
-
-#ifdef MULTI_OMAP2
 	if (cpu_is_omap24xx())
 		omap_irq_base = OMAP2_L4_IO_ADDRESS(OMAP24XX_IC_BASE);
 	else if (cpu_is_omap34xx())
@@ -330,7 +329,6 @@ static inline void omap_irq_base_init(void)
 		omap_irq_base = OMAP2_L4_IO_ADDRESS(OMAP44XX_GIC_CPU_BASE);
 	else
 		pr_err("Could not initialize omap_irq_base\n");
-#endif
 }
 
 void __init omap2_init_common_infrastructure(void)
diff --git a/arch/arm/mach-omap2/mux.c b/arch/arm/mach-omap2/mux.c
index 17bd639..9eaa28c 100644
--- a/arch/arm/mach-omap2/mux.c
+++ b/arch/arm/mach-omap2/mux.c
@@ -160,7 +160,7 @@ static int __init _omap_mux_get_by_name(struct omap_mux_partition *partition,
 	struct omap_mux *mux = NULL;
 	struct omap_mux_entry *e;
 	const char *mode_name;
-	int found = 0, found_mode, mode0_len = 0;
+	int found = 0, found_mode = 0, mode0_len = 0;
 	struct list_head *muxmodes = &partition->muxmodes;
 
 	mode_name = strchr(muxname, '.');
diff --git a/arch/arm/plat-omap/include/plat/voltage.h b/arch/arm/plat-omap/include/plat/voltage.h
index 0ff1233..ffcdff9 100644
--- a/arch/arm/plat-omap/include/plat/voltage.h
+++ b/arch/arm/plat-omap/include/plat/voltage.h
@@ -14,6 +14,8 @@
 #ifndef __ARCH_ARM_MACH_OMAP2_VOLTAGE_H
 #define __ARCH_ARM_MACH_OMAP2_VOLTAGE_H
 
+#include <linux/errno.h>
+
 #define VOLTSCALE_VPFORCEUPDATE		1
 #define VOLTSCALE_VCBYPASS		2
 
@@ -133,9 +135,9 @@ void omap_change_voltscale_method(struct voltagedomain *voltdm,
 		int voltscale_method);
 int omap_voltage_late_init(void);
 #else
-static inline int omap_voltage_register_pmic(struct voltagedomain *voltdm,
+static inline void omap_voltage_register_pmic(struct voltagedomain *voltdm,
 		struct omap_volt_pmic_info *pmic_info) {}
-static inline  void omap_change_voltscale_method(struct voltagedomain *voltdm,
+static inline void omap_change_voltscale_method(struct voltagedomain *voltdm,
 		int voltscale_method) {}
 static inline int omap_voltage_late_init(void)
 {
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* Re: Latest regressions
  2011-01-07 11:57 Latest regressions Russell King - ARM Linux
@ 2011-01-07 12:58 ` Nishanth Menon
  2011-01-07 14:41 ` Russell King - ARM Linux
  2011-01-07 16:56 ` Tony Lindgren
  2 siblings, 0 replies; 18+ messages in thread
From: Nishanth Menon @ 2011-01-07 12:58 UTC (permalink / raw)
  To: Russell King - ARM Linux; +Cc: linux-omap, Gopinath, Thara

Russell King - ARM Linux wrote, on 01/07/2011 05:57 AM:
> In file included from arch/arm/plat-omap/include/plat/omap_hwmod.h:37,
>                   from arch/arm/mach-omap2/io.c:45:
> arch/arm/plat-omap/include/plat/voltage.h: In function ■omap_voltage_register_pmic■:
> arch/arm/plat-omap/include/plat/voltage.h:137: warning: no return statement in function returning non-void
>
> which gets spammed out all through the build.  voltage.h:137 says:
>
> static inline int omap_voltage_register_pmic(struct voltagedomain *voltdm,
>                  struct omap_volt_pmic_info *pmic_info) {}
>
> but no one checks the return value for this:
>
> arch/arm/mach-omap2/omap_twl.c: omap_voltage_register_pmic(voltdm,&omap4_mpu_volt_info);
> arch/arm/mach-omap2/omap_twl.c: omap_voltage_register_pmic(voltdm,&omap4_iva_volt_info);
> arch/arm/mach-omap2/omap_twl.c: omap_voltage_register_pmic(voltdm,&omap4_core_volt_info);
> arch/arm/mach-omap2/omap_twl.c: omap_voltage_register_pmic(voltdm,&omap3_mpu_volt_info);
> arch/arm/mach-omap2/omap_twl.c: omap_voltage_register_pmic(voltdm,&omap3_core_volt_info);
>
> so I don't see the point of it returning an 'int'.
intent was that in the future the volt_info would be validated and users 
will check as well.


-- 
Regards,
Nishanth Menon
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* Re: Latest regressions
  2011-01-07 11:57 Latest regressions Russell King - ARM Linux
  2011-01-07 12:58 ` Nishanth Menon
@ 2011-01-07 14:41 ` Russell King - ARM Linux
  2011-01-07 14:54   ` Santosh Shilimkar
  2011-01-07 16:56 ` Tony Lindgren
  2 siblings, 1 reply; 18+ messages in thread
From: Russell King - ARM Linux @ 2011-01-07 14:41 UTC (permalink / raw)
  To: linux-omap

While trying to build the latest kernel for the SDP4430 board:

arch/arm/mach-omap2/clockdomain.c: In function ■_enable_hwsup■:
arch/arm/mach-omap2/clockdomain.c:251: error: ■struct clockdomain■ has no member named ■clktrctrl_mask■
arch/arm/mach-omap2/clockdomain.c:254: error: ■struct clockdomain■ has no member named ■clktrctrl_mask■
arch/arm/mach-omap2/clockdomain.c: In function ■_disable_hwsup■:
arch/arm/mach-omap2/clockdomain.c:277: error: ■struct clockdomain■ has no member named ■clktrctrl_mask■
arch/arm/mach-omap2/clockdomain.c:280: error: ■struct clockdomain■ has no member named ■clktrctrl_mask■
arch/arm/mach-omap2/clockdomain.c: In function ■omap2_clkdm_sleep■:
arch/arm/mach-omap2/clockdomain.c:744: error: ■struct clockdomain■ has no member named ■clktrctrl_mask■
arch/arm/mach-omap2/clockdomain.c: In function ■omap2_clkdm_wakeup■:
arch/arm/mach-omap2/clockdomain.c:789: error: ■struct clockdomain■ has no member named ■clktrctrl_mask■
arch/arm/mach-omap2/clockdomain.c: In function ■omap2_clkdm_clk_enable■:
arch/arm/mach-omap2/clockdomain.c:922: error: ■struct clockdomain■ has no member named ■clktrctrl_mask■
arch/arm/mach-omap2/clockdomain.c:926: error: ■struct clockdomain■ has no member named ■clktrctrl_mask■
arch/arm/mach-omap2/clockdomain.c: In function ■omap2_clkdm_clk_disable■:
arch/arm/mach-omap2/clockdomain.c:994: error: ■struct clockdomain■ has no member named ■clktrctrl_mask■
arch/arm/mach-omap2/clockdomain.c:998: error: ■struct clockdomain■ has no member named ■clktrctrl_mask■

Linus' tree prior to the OMAP merge is buildable for the same config.
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* RE: Latest regressions
  2011-01-07 14:41 ` Russell King - ARM Linux
@ 2011-01-07 14:54   ` Santosh Shilimkar
  2011-01-07 14:57     ` Russell King - ARM Linux
  0 siblings, 1 reply; 18+ messages in thread
From: Santosh Shilimkar @ 2011-01-07 14:54 UTC (permalink / raw)
  To: Russell King - ARM Linux, linux-omap

> -----Original Message-----
> From: linux-omap-owner@vger.kernel.org [mailto:linux-omap-
> owner@vger.kernel.org] On Behalf Of Russell King - ARM Linux
> Sent: Friday, January 07, 2011 8:11 PM
> To: linux-omap@vger.kernel.org
> Subject: Re: Latest regressions
>
> While trying to build the latest kernel for the SDP4430 board:
>
> arch/arm/mach-omap2/clockdomain.c: In function │_enable_hwsup│:
> arch/arm/mach-omap2/clockdomain.c:251: error: │struct clockdomain│
> has no member named │clktrctrl_mask│
> arch/arm/mach-omap2/clockdomain.c:254: error: │struct clockdomain│
> has no member named │clktrctrl_mask│
> arch/arm/mach-omap2/clockdomain.c: In function │_disable_hwsup│:
> arch/arm/mach-omap2/clockdomain.c:277: error: │struct clockdomain│
> has no member named │clktrctrl_mask│
> arch/arm/mach-omap2/clockdomain.c:280: error: │struct clockdomain│
> has no member named │clktrctrl_mask│
> arch/arm/mach-omap2/clockdomain.c: In function │omap2_clkdm_sleep│:
> arch/arm/mach-omap2/clockdomain.c:744: error: │struct clockdomain│
> has no member named │clktrctrl_mask│
> arch/arm/mach-omap2/clockdomain.c: In function │omap2_clkdm_wakeup│:
> arch/arm/mach-omap2/clockdomain.c:789: error: │struct clockdomain│
> has no member named │clktrctrl_mask│
> arch/arm/mach-omap2/clockdomain.c: In function
> │omap2_clkdm_clk_enable│:
> arch/arm/mach-omap2/clockdomain.c:922: error: │struct clockdomain│
> has no member named │clktrctrl_mask│
> arch/arm/mach-omap2/clockdomain.c:926: error: │struct clockdomain│
> has no member named │clktrctrl_mask│
> arch/arm/mach-omap2/clockdomain.c: In function
> │omap2_clkdm_clk_disable│:
> arch/arm/mach-omap2/clockdomain.c:994: error: │struct clockdomain│
> has no member named │clktrctrl_mask│
> arch/arm/mach-omap2/clockdomain.c:998: error: │struct clockdomain│
> has no member named │clktrctrl_mask│
>
> Linus' tree prior to the OMAP merge is buildable for the same
> config.
:)  This one is also fixed with the series but would get merged in rc1
http://www.mail-archive.com/linux-omap@vger.kernel.org/msg41712.html

Regards,
Santosh
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* Re: Latest regressions
  2011-01-07 14:54   ` Santosh Shilimkar
@ 2011-01-07 14:57     ` Russell King - ARM Linux
  2011-01-07 17:12       ` Tony Lindgren
  0 siblings, 1 reply; 18+ messages in thread
From: Russell King - ARM Linux @ 2011-01-07 14:57 UTC (permalink / raw)
  To: Santosh Shilimkar; +Cc: linux-omap

On Fri, Jan 07, 2011 at 08:24:26PM +0530, Santosh Shilimkar wrote:
> > -----Original Message-----
> > From: linux-omap-owner@vger.kernel.org [mailto:linux-omap-
> > owner@vger.kernel.org] On Behalf Of Russell King - ARM Linux
> > Sent: Friday, January 07, 2011 8:11 PM
> > To: linux-omap@vger.kernel.org
> > Subject: Re: Latest regressions
> >
> > While trying to build the latest kernel for the SDP4430 board:
> >
> > arch/arm/mach-omap2/clockdomain.c: In function │_enable_hwsup│:
> > arch/arm/mach-omap2/clockdomain.c:251: error: │struct clockdomain│
> > has no member named │clktrctrl_mask│
> > arch/arm/mach-omap2/clockdomain.c:254: error: │struct clockdomain│
> > has no member named │clktrctrl_mask│
> > arch/arm/mach-omap2/clockdomain.c: In function │_disable_hwsup│:
> > arch/arm/mach-omap2/clockdomain.c:277: error: │struct clockdomain│
> > has no member named │clktrctrl_mask│
> > arch/arm/mach-omap2/clockdomain.c:280: error: │struct clockdomain│
> > has no member named │clktrctrl_mask│
> > arch/arm/mach-omap2/clockdomain.c: In function │omap2_clkdm_sleep│:
> > arch/arm/mach-omap2/clockdomain.c:744: error: │struct clockdomain│
> > has no member named │clktrctrl_mask│
> > arch/arm/mach-omap2/clockdomain.c: In function │omap2_clkdm_wakeup│:
> > arch/arm/mach-omap2/clockdomain.c:789: error: │struct clockdomain│
> > has no member named │clktrctrl_mask│
> > arch/arm/mach-omap2/clockdomain.c: In function
> > │omap2_clkdm_clk_enable│:
> > arch/arm/mach-omap2/clockdomain.c:922: error: │struct clockdomain│
> > has no member named │clktrctrl_mask│
> > arch/arm/mach-omap2/clockdomain.c:926: error: │struct clockdomain│
> > has no member named │clktrctrl_mask│
> > arch/arm/mach-omap2/clockdomain.c: In function
> > │omap2_clkdm_clk_disable│:
> > arch/arm/mach-omap2/clockdomain.c:994: error: │struct clockdomain│
> > has no member named │clktrctrl_mask│
> > arch/arm/mach-omap2/clockdomain.c:998: error: │struct clockdomain│
> > has no member named │clktrctrl_mask│
> >
> > Linus' tree prior to the OMAP merge is buildable for the same
> > config.
> :)  This one is also fixed with the series but would get merged in rc1
> http://www.mail-archive.com/linux-omap@vger.kernel.org/msg41712.html

It's something that should be queued up to also go in during the merge
window IMHO.  Let's try to make rc1 a little less problematical than it
currently is.
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* Re: Latest regressions
  2011-01-07 11:57 Latest regressions Russell King - ARM Linux
  2011-01-07 12:58 ` Nishanth Menon
  2011-01-07 14:41 ` Russell King - ARM Linux
@ 2011-01-07 16:56 ` Tony Lindgren
  2011-01-07 21:56   ` Kevin Hilman
                     ` (2 more replies)
  2 siblings, 3 replies; 18+ messages in thread
From: Tony Lindgren @ 2011-01-07 16:56 UTC (permalink / raw)
  To: Russell King - ARM Linux; +Cc: linux-omap

* Russell King - ARM Linux <linux@arm.linux.org.uk> [110107 03:57]:
> 
> So, this is what I currently have to get that far:
> 
> diff --git a/arch/arm/mach-omap2/include/mach/entry-macro.S b/arch/arm/mach-omap2/include/mach/entry-macro.S
> index befa321..81985a6 100644
> --- a/arch/arm/mach-omap2/include/mach/entry-macro.S
> +++ b/arch/arm/mach-omap2/include/mach/entry-macro.S
> @@ -38,20 +38,6 @@
>   */
>  
>  #ifdef MULTI_OMAP2
> -
> -/*
> - * We use __glue to avoid errors with multiple definitions of
> - * .globl omap_irq_base as it's included from entry-armv.S but not
> - * from entry-common.S.
> - */
> -#ifdef __glue
> -		.pushsection .data
> -		.globl	omap_irq_base
> -omap_irq_base:
> -		.word	0
> -		.popsection
> -#endif
> -
>  		/*
>  		 * Configure the interrupt base on the first interrupt.
>  		 * See also omap_irq_base_init for setting omap_irq_base.
> diff --git a/arch/arm/mach-omap2/io.c b/arch/arm/mach-omap2/io.c
> index e66687b..c203204 100644
> --- a/arch/arm/mach-omap2/io.c
> +++ b/arch/arm/mach-omap2/io.c
> @@ -314,14 +314,13 @@ static int _set_hwmod_postsetup_state(struct omap_hwmod *oh, void *data)
>  	return omap_hwmod_set_postsetup_state(oh, *(u8 *)data);
>  }
>  
> +void __iomem *omap_irq_base;
> +
>  /*
>   * Initialize asm_irq_base for entry-macro.S
>   */
>  static inline void omap_irq_base_init(void)
>  {
> -	extern void __iomem *omap_irq_base;
> -
> -#ifdef MULTI_OMAP2
>  	if (cpu_is_omap24xx())
>  		omap_irq_base = OMAP2_L4_IO_ADDRESS(OMAP24XX_IC_BASE);
>  	else if (cpu_is_omap34xx())
> @@ -330,7 +329,6 @@ static inline void omap_irq_base_init(void)
>  		omap_irq_base = OMAP2_L4_IO_ADDRESS(OMAP44XX_GIC_CPU_BASE);
>  	else
>  		pr_err("Could not initialize omap_irq_base\n");
> -#endif
>  }
>  
>  void __init omap2_init_common_infrastructure(void)

This looks good to me.

> diff --git a/arch/arm/mach-omap2/mux.c b/arch/arm/mach-omap2/mux.c
> index 17bd639..9eaa28c 100644
> --- a/arch/arm/mach-omap2/mux.c
> +++ b/arch/arm/mach-omap2/mux.c
> @@ -160,7 +160,7 @@ static int __init _omap_mux_get_by_name(struct omap_mux_partition *partition,
>  	struct omap_mux *mux = NULL;
>  	struct omap_mux_entry *e;
>  	const char *mode_name;
> -	int found = 0, found_mode, mode0_len = 0;
> +	int found = 0, found_mode = 0, mode0_len = 0;
>  	struct list_head *muxmodes = &partition->muxmodes;
>  
>  	mode_name = strchr(muxname, '.');

Ack.

> diff --git a/arch/arm/plat-omap/include/plat/voltage.h b/arch/arm/plat-omap/include/plat/voltage.h
> index 0ff1233..ffcdff9 100644
> --- a/arch/arm/plat-omap/include/plat/voltage.h
> +++ b/arch/arm/plat-omap/include/plat/voltage.h
> @@ -14,6 +14,8 @@
>  #ifndef __ARCH_ARM_MACH_OMAP2_VOLTAGE_H
>  #define __ARCH_ARM_MACH_OMAP2_VOLTAGE_H
>  
> +#include <linux/errno.h>
> +
>  #define VOLTSCALE_VPFORCEUPDATE		1
>  #define VOLTSCALE_VCBYPASS		2

This fix is already queued up by Kevin, but missing..
  
> @@ -133,9 +135,9 @@ void omap_change_voltscale_method(struct voltagedomain *voltdm,
>  		int voltscale_method);
>  int omap_voltage_late_init(void);
>  #else
> -static inline int omap_voltage_register_pmic(struct voltagedomain *voltdm,
> +static inline void omap_voltage_register_pmic(struct voltagedomain *voltdm,
>  		struct omap_volt_pmic_info *pmic_info) {}
> -static inline  void omap_change_voltscale_method(struct voltagedomain *voltdm,
> +static inline void omap_change_voltscale_method(struct voltagedomain *voltdm,
>  		int voltscale_method) {}
>  static inline int omap_voltage_late_init(void)
>  {

..this change.

Regards,

Tony

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

* Re: Latest regressions
  2011-01-07 14:57     ` Russell King - ARM Linux
@ 2011-01-07 17:12       ` Tony Lindgren
  0 siblings, 0 replies; 18+ messages in thread
From: Tony Lindgren @ 2011-01-07 17:12 UTC (permalink / raw)
  To: Russell King - ARM Linux; +Cc: Santosh Shilimkar, linux-omap

* Russell King - ARM Linux <linux@arm.linux.org.uk> [110107 06:57]:
> > >
> > > Linus' tree prior to the OMAP merge is buildable for the same
> > > config.
> > :)  This one is also fixed with the series but would get merged in rc1
> > http://www.mail-archive.com/linux-omap@vger.kernel.org/msg41712.html
> 
> It's something that should be queued up to also go in during the merge
> window IMHO.  Let's try to make rc1 a little less problematical than it
> currently is.

Sorry did not want to mess with the pending patches while waiting
for the merge window to open.

Tony

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

* Re: Latest regressions
  2011-01-07 16:56 ` Tony Lindgren
@ 2011-01-07 21:56   ` Kevin Hilman
  2011-01-26  8:58   ` Russell King - ARM Linux
  2011-01-26  9:01   ` Russell King - ARM Linux
  2 siblings, 0 replies; 18+ messages in thread
From: Kevin Hilman @ 2011-01-07 21:56 UTC (permalink / raw)
  To: Tony Lindgren; +Cc: Russell King - ARM Linux, linux-omap

Tony Lindgren <tony@atomide.com> writes:

> * Russell King - ARM Linux <linux@arm.linux.org.uk> [110107 03:57]:

[...]

>> diff --git a/arch/arm/plat-omap/include/plat/voltage.h b/arch/arm/plat-omap/include/plat/voltage.h
>> index 0ff1233..ffcdff9 100644
>> --- a/arch/arm/plat-omap/include/plat/voltage.h
>> +++ b/arch/arm/plat-omap/include/plat/voltage.h
>> @@ -14,6 +14,8 @@
>>  #ifndef __ARCH_ARM_MACH_OMAP2_VOLTAGE_H
>>  #define __ARCH_ARM_MACH_OMAP2_VOLTAGE_H
>>  
>> +#include <linux/errno.h>
>> +
>>  #define VOLTSCALE_VPFORCEUPDATE		1
>>  #define VOLTSCALE_VCBYPASS		2
>
> This fix is already queued up by Kevin, but missing..

Yeah, the one in my queue uses <linux/err.h> because of usage of
ERR_PTR(), but fixes the same problem.

>> @@ -133,9 +135,9 @@ void omap_change_voltscale_method(struct voltagedomain *voltdm,
>>  		int voltscale_method);
>>  int omap_voltage_late_init(void);
>>  #else
>> -static inline int omap_voltage_register_pmic(struct voltagedomain *voltdm,
>> +static inline void omap_voltage_register_pmic(struct voltagedomain *voltdm,
>>  		struct omap_volt_pmic_info *pmic_info) {}
>> -static inline  void omap_change_voltscale_method(struct voltagedomain *voltdm,
>> +static inline void omap_change_voltscale_method(struct voltagedomain *voltdm,
>>  		int voltscale_method) {}
>>  static inline int omap_voltage_late_init(void)
>>  {
>
> ..this change.

And this is fixed in my queue as well, but differently.  Instead of
changing to void, it keeps the int return value and returns -EINVAL.

Will be sending pull request for my queue of fixes shortly, after a
little more build/boot testing.

Kevin

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

* Re: Latest regressions
  2011-01-07 16:56 ` Tony Lindgren
  2011-01-07 21:56   ` Kevin Hilman
@ 2011-01-26  8:58   ` Russell King - ARM Linux
  2011-01-26 18:12     ` Tony Lindgren
  2011-01-26  9:01   ` Russell King - ARM Linux
  2 siblings, 1 reply; 18+ messages in thread
From: Russell King - ARM Linux @ 2011-01-26  8:58 UTC (permalink / raw)
  To: Tony Lindgren; +Cc: linux-omap

On Fri, Jan 07, 2011 at 08:56:26AM -0800, Tony Lindgren wrote:
> > diff --git a/arch/arm/mach-omap2/io.c b/arch/arm/mach-omap2/io.c
> > index e66687b..c203204 100644
> > --- a/arch/arm/mach-omap2/io.c
> > +++ b/arch/arm/mach-omap2/io.c
> > @@ -314,14 +314,13 @@ static int _set_hwmod_postsetup_state(struct omap_hwmod *oh, void *data)
> >  	return omap_hwmod_set_postsetup_state(oh, *(u8 *)data);
> >  }
> >  
> > +void __iomem *omap_irq_base;
> > +
> >  /*
> >   * Initialize asm_irq_base for entry-macro.S
> >   */
> >  static inline void omap_irq_base_init(void)
> >  {
> > -	extern void __iomem *omap_irq_base;
> > -
> > -#ifdef MULTI_OMAP2
> >  	if (cpu_is_omap24xx())
> >  		omap_irq_base = OMAP2_L4_IO_ADDRESS(OMAP24XX_IC_BASE);
> >  	else if (cpu_is_omap34xx())
> > @@ -330,7 +329,6 @@ static inline void omap_irq_base_init(void)
> >  		omap_irq_base = OMAP2_L4_IO_ADDRESS(OMAP44XX_GIC_CPU_BASE);
> >  	else
> >  		pr_err("Could not initialize omap_irq_base\n");
> > -#endif
> >  }
> >  
> >  void __init omap2_init_common_infrastructure(void)
> 
> This looks good to me.

I notice this one is still there.

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

* Re: Latest regressions
  2011-01-07 16:56 ` Tony Lindgren
  2011-01-07 21:56   ` Kevin Hilman
  2011-01-26  8:58   ` Russell King - ARM Linux
@ 2011-01-26  9:01   ` Russell King - ARM Linux
  2011-01-26 18:15     ` Tony Lindgren
  2 siblings, 1 reply; 18+ messages in thread
From: Russell King - ARM Linux @ 2011-01-26  9:01 UTC (permalink / raw)
  To: Tony Lindgren; +Cc: linux-omap

On Fri, Jan 07, 2011 at 08:56:26AM -0800, Tony Lindgren wrote:
> > diff --git a/arch/arm/mach-omap2/mux.c b/arch/arm/mach-omap2/mux.c
> > index 17bd639..9eaa28c 100644
> > --- a/arch/arm/mach-omap2/mux.c
> > +++ b/arch/arm/mach-omap2/mux.c
> > @@ -160,7 +160,7 @@ static int __init _omap_mux_get_by_name(struct omap_mux_partition *partition,
> >  	struct omap_mux *mux = NULL;
> >  	struct omap_mux_entry *e;
> >  	const char *mode_name;
> > -	int found = 0, found_mode, mode0_len = 0;
> > +	int found = 0, found_mode = 0, mode0_len = 0;
> >  	struct list_head *muxmodes = &partition->muxmodes;
> >  
> >  	mode_name = strchr(muxname, '.');
> 
> Ack.

This one is also still there.

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

* Re: Latest regressions
  2011-01-26  8:58   ` Russell King - ARM Linux
@ 2011-01-26 18:12     ` Tony Lindgren
  2011-01-27 12:22       ` Russell King - ARM Linux
  0 siblings, 1 reply; 18+ messages in thread
From: Tony Lindgren @ 2011-01-26 18:12 UTC (permalink / raw)
  To: Russell King - ARM Linux; +Cc: linux-omap

* Russell King - ARM Linux <linux@arm.linux.org.uk> [110126 00:57]:
> On Fri, Jan 07, 2011 at 08:56:26AM -0800, Tony Lindgren wrote:
> > > diff --git a/arch/arm/mach-omap2/io.c b/arch/arm/mach-omap2/io.c
> > > index e66687b..c203204 100644
> > > --- a/arch/arm/mach-omap2/io.c
> > > +++ b/arch/arm/mach-omap2/io.c
> > > @@ -314,14 +314,13 @@ static int _set_hwmod_postsetup_state(struct omap_hwmod *oh, void *data)
> > >  	return omap_hwmod_set_postsetup_state(oh, *(u8 *)data);
> > >  }
> > >  
> > > +void __iomem *omap_irq_base;
> > > +
> > >  /*
> > >   * Initialize asm_irq_base for entry-macro.S
> > >   */
> > >  static inline void omap_irq_base_init(void)
> > >  {
> > > -	extern void __iomem *omap_irq_base;
> > > -
> > > -#ifdef MULTI_OMAP2
> > >  	if (cpu_is_omap24xx())
> > >  		omap_irq_base = OMAP2_L4_IO_ADDRESS(OMAP24XX_IC_BASE);
> > >  	else if (cpu_is_omap34xx())
> > > @@ -330,7 +329,6 @@ static inline void omap_irq_base_init(void)
> > >  		omap_irq_base = OMAP2_L4_IO_ADDRESS(OMAP44XX_GIC_CPU_BASE);
> > >  	else
> > >  		pr_err("Could not initialize omap_irq_base\n");
> > > -#endif
> > >  }
> > >  
> > >  void __init omap2_init_common_infrastructure(void)
> > 
> > This looks good to me.
> 
> I notice this one is still there.

Sorry I thought you'll queue this one.

BTW this fixes regression from patch 5d190c40100793a6dfc37bf325677c10f3c80edf
(omap2+: Initialize omap_irq_base for entry-macro.S from platform code).
So it should be OK for the -rc cycle:

Acked-by: Tony Lindgren <tony@atomide.com>

Let me know if you want me to take it, in that case I think it's still
missing your Signed-off-by.

Regards,

Tony
Let me know if you want me to queue it.

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

* Re: Latest regressions
  2011-01-26  9:01   ` Russell King - ARM Linux
@ 2011-01-26 18:15     ` Tony Lindgren
  2011-01-27 12:22       ` Russell King - ARM Linux
  0 siblings, 1 reply; 18+ messages in thread
From: Tony Lindgren @ 2011-01-26 18:15 UTC (permalink / raw)
  To: Russell King - ARM Linux; +Cc: linux-omap

* Russell King - ARM Linux <linux@arm.linux.org.uk> [110126 01:00]:
> On Fri, Jan 07, 2011 at 08:56:26AM -0800, Tony Lindgren wrote:
> > > diff --git a/arch/arm/mach-omap2/mux.c b/arch/arm/mach-omap2/mux.c
> > > index 17bd639..9eaa28c 100644
> > > --- a/arch/arm/mach-omap2/mux.c
> > > +++ b/arch/arm/mach-omap2/mux.c
> > > @@ -160,7 +160,7 @@ static int __init _omap_mux_get_by_name(struct omap_mux_partition *partition,
> > >  	struct omap_mux *mux = NULL;
> > >  	struct omap_mux_entry *e;
> > >  	const char *mode_name;
> > > -	int found = 0, found_mode, mode0_len = 0;
> > > +	int found = 0, found_mode = 0, mode0_len = 0;
> > >  	struct list_head *muxmodes = &partition->muxmodes;
> > >  
> > >  	mode_name = strchr(muxname, '.');
> > 
> > Ack.
> 
> This one is also still there.

I have a similar patch in devel-cleanup branch queued up from Felipe Balbi.
However, this fixes regression for patch 8419fdbaf2118a0a169441be82f09f7be93a5ca1
(omap2+: Add omap_mux_get_by_name) so this too should be done for the
-rc cycle:

Acked-by: Tony Lindgren <tony@atomide.com>

Again, let me know if you want me to take it.

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

* Re: Latest regressions
  2011-01-26 18:15     ` Tony Lindgren
@ 2011-01-27 12:22       ` Russell King - ARM Linux
  2011-01-28  0:22         ` Tony Lindgren
  0 siblings, 1 reply; 18+ messages in thread
From: Russell King - ARM Linux @ 2011-01-27 12:22 UTC (permalink / raw)
  To: Tony Lindgren; +Cc: linux-omap

On Wed, Jan 26, 2011 at 10:15:37AM -0800, Tony Lindgren wrote:
> * Russell King - ARM Linux <linux@arm.linux.org.uk> [110126 01:00]:
> > On Fri, Jan 07, 2011 at 08:56:26AM -0800, Tony Lindgren wrote:
> > > > diff --git a/arch/arm/mach-omap2/mux.c b/arch/arm/mach-omap2/mux.c
> > > > index 17bd639..9eaa28c 100644
> > > > --- a/arch/arm/mach-omap2/mux.c
> > > > +++ b/arch/arm/mach-omap2/mux.c
> > > > @@ -160,7 +160,7 @@ static int __init _omap_mux_get_by_name(struct omap_mux_partition *partition,
> > > >  	struct omap_mux *mux = NULL;
> > > >  	struct omap_mux_entry *e;
> > > >  	const char *mode_name;
> > > > -	int found = 0, found_mode, mode0_len = 0;
> > > > +	int found = 0, found_mode = 0, mode0_len = 0;
> > > >  	struct list_head *muxmodes = &partition->muxmodes;
> > > >  
> > > >  	mode_name = strchr(muxname, '.');
> > > 
> > > Ack.
> > 
> > This one is also still there.
> 
> I have a similar patch in devel-cleanup branch queued up from Felipe Balbi.
> However, this fixes regression for patch 8419fdbaf2118a0a169441be82f09f7be93a5ca1
> (omap2+: Add omap_mux_get_by_name) so this too should be done for the
> -rc cycle:
> 
> Acked-by: Tony Lindgren <tony@atomide.com>
> 
> Again, let me know if you want me to take it.

I'm happy if you want to queue it for -rc.

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

* Re: Latest regressions
  2011-01-26 18:12     ` Tony Lindgren
@ 2011-01-27 12:22       ` Russell King - ARM Linux
  2011-01-28  0:18         ` Tony Lindgren
  0 siblings, 1 reply; 18+ messages in thread
From: Russell King - ARM Linux @ 2011-01-27 12:22 UTC (permalink / raw)
  To: Tony Lindgren; +Cc: linux-omap

On Wed, Jan 26, 2011 at 10:12:16AM -0800, Tony Lindgren wrote:
> * Russell King - ARM Linux <linux@arm.linux.org.uk> [110126 00:57]:
> > On Fri, Jan 07, 2011 at 08:56:26AM -0800, Tony Lindgren wrote:
> > > > diff --git a/arch/arm/mach-omap2/io.c b/arch/arm/mach-omap2/io.c
> > > > index e66687b..c203204 100644
> > > > --- a/arch/arm/mach-omap2/io.c
> > > > +++ b/arch/arm/mach-omap2/io.c
> > > > @@ -314,14 +314,13 @@ static int _set_hwmod_postsetup_state(struct omap_hwmod *oh, void *data)
> > > >  	return omap_hwmod_set_postsetup_state(oh, *(u8 *)data);
> > > >  }
> > > >  
> > > > +void __iomem *omap_irq_base;
> > > > +
> > > >  /*
> > > >   * Initialize asm_irq_base for entry-macro.S
> > > >   */
> > > >  static inline void omap_irq_base_init(void)
> > > >  {
> > > > -	extern void __iomem *omap_irq_base;
> > > > -
> > > > -#ifdef MULTI_OMAP2
> > > >  	if (cpu_is_omap24xx())
> > > >  		omap_irq_base = OMAP2_L4_IO_ADDRESS(OMAP24XX_IC_BASE);
> > > >  	else if (cpu_is_omap34xx())
> > > > @@ -330,7 +329,6 @@ static inline void omap_irq_base_init(void)
> > > >  		omap_irq_base = OMAP2_L4_IO_ADDRESS(OMAP44XX_GIC_CPU_BASE);
> > > >  	else
> > > >  		pr_err("Could not initialize omap_irq_base\n");
> > > > -#endif
> > > >  }
> > > >  
> > > >  void __init omap2_init_common_infrastructure(void)
> > > 
> > > This looks good to me.
> > 
> > I notice this one is still there.
> 
> Sorry I thought you'll queue this one.
> 
> BTW this fixes regression from patch 5d190c40100793a6dfc37bf325677c10f3c80edf
> (omap2+: Initialize omap_irq_base for entry-macro.S from platform code).
> So it should be OK for the -rc cycle:
> 
> Acked-by: Tony Lindgren <tony@atomide.com>
> 
> Let me know if you want me to take it, in that case I think it's still
> missing your Signed-off-by.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

> Let me know if you want me to queue it.

Yes please.

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

* Re: Latest regressions
  2011-01-27 12:22       ` Russell King - ARM Linux
@ 2011-01-28  0:18         ` Tony Lindgren
  2011-01-28  0:21           ` Tony Lindgren
  0 siblings, 1 reply; 18+ messages in thread
From: Tony Lindgren @ 2011-01-28  0:18 UTC (permalink / raw)
  To: Russell King - ARM Linux; +Cc: linux-omap

* Russell King - ARM Linux <linux@arm.linux.org.uk> [110127 04:21]:
> On Wed, Jan 26, 2011 at 10:12:16AM -0800, Tony Lindgren wrote:
> > * Russell King - ARM Linux <linux@arm.linux.org.uk> [110126 00:57]:
> > > On Fri, Jan 07, 2011 at 08:56:26AM -0800, Tony Lindgren wrote:
> > > > > diff --git a/arch/arm/mach-omap2/io.c b/arch/arm/mach-omap2/io.c
> > > > > index e66687b..c203204 100644
> > > > > --- a/arch/arm/mach-omap2/io.c
> > > > > +++ b/arch/arm/mach-omap2/io.c
> > > > > @@ -314,14 +314,13 @@ static int _set_hwmod_postsetup_state(struct omap_hwmod *oh, void *data)
> > > > >  	return omap_hwmod_set_postsetup_state(oh, *(u8 *)data);
> > > > >  }
> > > > >  
> > > > > +void __iomem *omap_irq_base;
> > > > > +
> > > > >  /*
> > > > >   * Initialize asm_irq_base for entry-macro.S
> > > > >   */
> > > > >  static inline void omap_irq_base_init(void)
> > > > >  {
> > > > > -	extern void __iomem *omap_irq_base;
> > > > > -
> > > > > -#ifdef MULTI_OMAP2
> > > > >  	if (cpu_is_omap24xx())
> > > > >  		omap_irq_base = OMAP2_L4_IO_ADDRESS(OMAP24XX_IC_BASE);
> > > > >  	else if (cpu_is_omap34xx())
> > > > > @@ -330,7 +329,6 @@ static inline void omap_irq_base_init(void)
> > > > >  		omap_irq_base = OMAP2_L4_IO_ADDRESS(OMAP44XX_GIC_CPU_BASE);
> > > > >  	else
> > > > >  		pr_err("Could not initialize omap_irq_base\n");
> > > > > -#endif
> > > > >  }
> > > > >  
> > > > >  void __init omap2_init_common_infrastructure(void)
> > > > 
> > > > This looks good to me.
> > > 
> > > I notice this one is still there.
> > 
> > Sorry I thought you'll queue this one.
> > 
> > BTW this fixes regression from patch 5d190c40100793a6dfc37bf325677c10f3c80edf
> > (omap2+: Initialize omap_irq_base for entry-macro.S from platform code).
> > So it should be OK for the -rc cycle:
> > 
> > Acked-by: Tony Lindgren <tony@atomide.com>
> > 
> > Let me know if you want me to take it, in that case I think it's still
> > missing your Signed-off-by.
> 
> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
> 
> > Let me know if you want me to queue it.
> 
> Yes please.

OK here's I've queued. I updated the comments a bit.

Will also post a similar change for omap1.

Tony


From: Russell King <rmk+kernel@arm.linux.org.uk>
Date: Fri, 7 Jan 2011 11:57:44 +0000
Subject: [PATCH] omap2+: Fix unused variable warning for omap_irq_base

Commit 5d190c40100793a6dfc37bf325677c10f3c80edf
(omap2+: Initialize omap_irq_base for entry-macro.S from
platform code) simplified the handling of omap_irq_base
for multi-omap builds. However, this patch also introduced
a build warning for !MULTI_OMAP2 builds:

arch/arm/mach-omap2/io.c: In function 'omap_irq_base_init':
arch/arm/mach-omap2/io.c:322: warning: unused variable 'omap_irq_base'

Fix this by removing the ifdef. Also simplify things further
by moving omap_irq_base out of entry-macro.S.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
[tony@atomide.com: updated comments]
Signed-off-by: Tony Lindgren <tony@atomide.com>

--- a/arch/arm/mach-omap2/include/mach/entry-macro.S
+++ b/arch/arm/mach-omap2/include/mach/entry-macro.S
@@ -38,20 +38,6 @@
  */
 
 #ifdef MULTI_OMAP2
-
-/*
- * We use __glue to avoid errors with multiple definitions of
- * .globl omap_irq_base as it's included from entry-armv.S but not
- * from entry-common.S.
- */
-#ifdef __glue
-		.pushsection .data
-		.globl	omap_irq_base
-omap_irq_base:
-		.word	0
-		.popsection
-#endif
-
 		/*
 		 * Configure the interrupt base on the first interrupt.
 		 * See also omap_irq_base_init for setting omap_irq_base.
--- a/arch/arm/mach-omap2/io.c
+++ b/arch/arm/mach-omap2/io.c
@@ -314,14 +314,13 @@ static int _set_hwmod_postsetup_state(struct omap_hwmod *oh, void *data)
 	return omap_hwmod_set_postsetup_state(oh, *(u8 *)data);
 }
 
+void __iomem *omap_irq_base;
+
 /*
  * Initialize asm_irq_base for entry-macro.S
  */
 static inline void omap_irq_base_init(void)
 {
-	extern void __iomem *omap_irq_base;
-
-#ifdef MULTI_OMAP2
 	if (cpu_is_omap24xx())
 		omap_irq_base = OMAP2_L4_IO_ADDRESS(OMAP24XX_IC_BASE);
 	else if (cpu_is_omap34xx())
@@ -330,7 +329,6 @@ static inline void omap_irq_base_init(void)
 		omap_irq_base = OMAP2_L4_IO_ADDRESS(OMAP44XX_GIC_CPU_BASE);
 	else
 		pr_err("Could not initialize omap_irq_base\n");
-#endif
 }
 
 void __init omap2_init_common_infrastructure(void)

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

* Re: Latest regressions
  2011-01-28  0:18         ` Tony Lindgren
@ 2011-01-28  0:21           ` Tony Lindgren
  2011-01-28  0:24             ` Tony Lindgren
  0 siblings, 1 reply; 18+ messages in thread
From: Tony Lindgren @ 2011-01-28  0:21 UTC (permalink / raw)
  To: Russell King - ARM Linux; +Cc: linux-omap

* Tony Lindgren <tony@atomide.com> [110127 16:17]:
> 
> Will also post a similar change for omap1.

And here's the omap1 related change.

Tony


From: Tony Lindgren <tony@atomide.com>
Date: Thu, 27 Jan 2011 15:52:16 -0800
Subject: [PATCH] omap1: Simplify use of omap_irq_flags

Commit 03a9e5126147c9f92aeba4b34f62b15b625087fb
(omap1: Use asm_irq_flags for entry-macro.S) added support
for multi-omap builds with addition of the omap_irq_flags.

Commit 9f9605c2eda9679e6f63c605cbd9cbf6a9a7f3fa
(omap2+: Fix unused variable warning for omap_irq_base)
simplified omap2+ entry-macro.S by moving omap_irq_flags
out of entry-macro.S.

Simplify omap1 entry-macro.S in a similar way to keep the
code consistent. Based on a similar earlier patch for omap2+
by Russell King <rmk+kernel@arm.linux.org.uk>.

Signed-off-by: Tony Lindgren <tony@atomide.com>

--- a/arch/arm/mach-omap1/include/mach/entry-macro.S
+++ b/arch/arm/mach-omap1/include/mach/entry-macro.S
@@ -14,19 +14,6 @@
 #include <mach/irqs.h>
 #include <asm/hardware/gic.h>
 
-/*
- * We use __glue to avoid errors with multiple definitions of
- * .globl omap_irq_flags as it's included from entry-armv.S but not
- * from entry-common.S.
- */
-#ifdef __glue
-		.pushsection .data
-		.globl	omap_irq_flags
-omap_irq_flags:
-		.word	0
-		.popsection
-#endif
-
  		.macro	disable_fiq
 		.endm
 
--- a/arch/arm/mach-omap1/irq.c
+++ b/arch/arm/mach-omap1/irq.c
@@ -57,6 +57,7 @@ struct omap_irq_bank {
 	unsigned long wake_enable;
 };
 
+void __iomem *omap_irq_flags;
 static unsigned int irq_bank_count;
 static struct omap_irq_bank *irq_banks;
 
@@ -176,7 +177,6 @@ static struct irq_chip omap_irq_chip = {
 
 void __init omap_init_irq(void)
 {
-	extern unsigned int omap_irq_flags;
 	int i, j;
 
 #if defined(CONFIG_ARCH_OMAP730) || defined(CONFIG_ARCH_OMAP850)

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

* Re: Latest regressions
  2011-01-27 12:22       ` Russell King - ARM Linux
@ 2011-01-28  0:22         ` Tony Lindgren
  0 siblings, 0 replies; 18+ messages in thread
From: Tony Lindgren @ 2011-01-28  0:22 UTC (permalink / raw)
  To: Russell King - ARM Linux; +Cc: linux-omap

* Russell King - ARM Linux <linux@arm.linux.org.uk> [110127 04:21]:
> On Wed, Jan 26, 2011 at 10:15:37AM -0800, Tony Lindgren wrote:
> > * Russell King - ARM Linux <linux@arm.linux.org.uk> [110126 01:00]:
> > > On Fri, Jan 07, 2011 at 08:56:26AM -0800, Tony Lindgren wrote:
> > > > > diff --git a/arch/arm/mach-omap2/mux.c b/arch/arm/mach-omap2/mux.c
> > > > > index 17bd639..9eaa28c 100644
> > > > > --- a/arch/arm/mach-omap2/mux.c
> > > > > +++ b/arch/arm/mach-omap2/mux.c
> > > > > @@ -160,7 +160,7 @@ static int __init _omap_mux_get_by_name(struct omap_mux_partition *partition,
> > > > >  	struct omap_mux *mux = NULL;
> > > > >  	struct omap_mux_entry *e;
> > > > >  	const char *mode_name;
> > > > > -	int found = 0, found_mode, mode0_len = 0;
> > > > > +	int found = 0, found_mode = 0, mode0_len = 0;
> > > > >  	struct list_head *muxmodes = &partition->muxmodes;
> > > > >  
> > > > >  	mode_name = strchr(muxname, '.');
> > > > 
> > > > Ack.
> > > 
> > > This one is also still there.
> > 
> > I have a similar patch in devel-cleanup branch queued up from Felipe Balbi.
> > However, this fixes regression for patch 8419fdbaf2118a0a169441be82f09f7be93a5ca1
> > (omap2+: Add omap_mux_get_by_name) so this too should be done for the
> > -rc cycle:
> > 
> > Acked-by: Tony Lindgren <tony@atomide.com>
> > 
> > Again, let me know if you want me to take it.
> 
> I'm happy if you want to queue it for -rc.

OK, will use Felipe's patch as that does not require patch editing for me.

Tony

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

* Re: Latest regressions
  2011-01-28  0:21           ` Tony Lindgren
@ 2011-01-28  0:24             ` Tony Lindgren
  0 siblings, 0 replies; 18+ messages in thread
From: Tony Lindgren @ 2011-01-28  0:24 UTC (permalink / raw)
  To: Russell King - ARM Linux; +Cc: linux-omap

* Tony Lindgren <tony@atomide.com> [110127 16:20]:
> * Tony Lindgren <tony@atomide.com> [110127 16:17]:
> > 
> > Will also post a similar change for omap1.
> 
> And here's the omap1 related change.

> --- a/arch/arm/mach-omap1/irq.c
> +++ b/arch/arm/mach-omap1/irq.c
> @@ -57,6 +57,7 @@ struct omap_irq_bank {
>  	unsigned long wake_enable;
>  };
>  
> +void __iomem *omap_irq_flags;
>  static unsigned int irq_bank_count;
>  static struct omap_irq_bank *irq_banks;
>  

The omap_irq_flags here should not be void __iomem *, updated
patch below.

Tony


From: Tony Lindgren <tony@atomide.com>
Date: Thu, 27 Jan 2011 15:52:16 -0800
Subject: [PATCH] omap1: Simplify use of omap_irq_flags

Commit 03a9e5126147c9f92aeba4b34f62b15b625087fb
(omap1: Use asm_irq_flags for entry-macro.S) added support
for multi-omap builds with addition of the omap_irq_flags.

Commit 9f9605c2eda9679e6f63c605cbd9cbf6a9a7f3fa
(omap2+: Fix unused variable warning for omap_irq_base)
simplified omap2+ entry-macro.S by moving omap_irq_flags
out of entry-macro.S.

Simplify omap1 entry-macro.S in a similar way to keep the
code consistent. Based on a similar earlier patch for omap2+
by Russell King <rmk+kernel@arm.linux.org.uk>.

Signed-off-by: Tony Lindgren <tony@atomide.com>

--- a/arch/arm/mach-omap1/include/mach/entry-macro.S
+++ b/arch/arm/mach-omap1/include/mach/entry-macro.S
@@ -14,19 +14,6 @@
 #include <mach/irqs.h>
 #include <asm/hardware/gic.h>
 
-/*
- * We use __glue to avoid errors with multiple definitions of
- * .globl omap_irq_flags as it's included from entry-armv.S but not
- * from entry-common.S.
- */
-#ifdef __glue
-		.pushsection .data
-		.globl	omap_irq_flags
-omap_irq_flags:
-		.word	0
-		.popsection
-#endif
-
  		.macro	disable_fiq
 		.endm
 
--- a/arch/arm/mach-omap1/irq.c
+++ b/arch/arm/mach-omap1/irq.c
@@ -57,6 +57,7 @@ struct omap_irq_bank {
 	unsigned long wake_enable;
 };
 
+u32 omap_irq_flags;
 static unsigned int irq_bank_count;
 static struct omap_irq_bank *irq_banks;
 
@@ -176,7 +177,6 @@ static struct irq_chip omap_irq_chip = {
 
 void __init omap_init_irq(void)
 {
-	extern unsigned int omap_irq_flags;
 	int i, j;
 
 #if defined(CONFIG_ARCH_OMAP730) || defined(CONFIG_ARCH_OMAP850)

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

end of thread, other threads:[~2011-01-28  0:24 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-01-07 11:57 Latest regressions Russell King - ARM Linux
2011-01-07 12:58 ` Nishanth Menon
2011-01-07 14:41 ` Russell King - ARM Linux
2011-01-07 14:54   ` Santosh Shilimkar
2011-01-07 14:57     ` Russell King - ARM Linux
2011-01-07 17:12       ` Tony Lindgren
2011-01-07 16:56 ` Tony Lindgren
2011-01-07 21:56   ` Kevin Hilman
2011-01-26  8:58   ` Russell King - ARM Linux
2011-01-26 18:12     ` Tony Lindgren
2011-01-27 12:22       ` Russell King - ARM Linux
2011-01-28  0:18         ` Tony Lindgren
2011-01-28  0:21           ` Tony Lindgren
2011-01-28  0:24             ` Tony Lindgren
2011-01-26  9:01   ` Russell King - ARM Linux
2011-01-26 18:15     ` Tony Lindgren
2011-01-27 12:22       ` Russell King - ARM Linux
2011-01-28  0:22         ` Tony Lindgren

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.