Skip to contentSkip to conversation

fix issue where hwmods are being called twice during init

PATCH In review Andre Puschmann 2 participants 3 messages Dec 8, 2011

Subsystems (4)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 fix issue where hwmods are being called twice during init

Hi list,

when compiling the current git HEAD for a Gumstix Overo based board I discovered an issue during init causing the error message which is attached. I believe this is because they are called twice during init (the omap34xx_hwmods struct already contains them).

The attached patch fixes this issue.

BR
Andre

(quoted diff) +0 -0

b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
index 7f8915a..eef43e2 100644

arch/arm/mach-omap2/omap_hwmod_3xxx_data.c +0 -0
@@ -3247,18 +3247,14 @@ static __initdata struct omap_hwmod

*omap3xxx_hwmods[] = {

/* 3430ES1-only hwmods */
static __initdata struct omap_hwmod *omap3430es1_hwmods[] = {
- &omap3xxx_iva_hwmod,
&omap3430es1_dss_core_hwmod,
- &omap3xxx_mailbox_hwmod,
NULL
};

/* 3430ES2+-only hwmods */
static __initdata struct omap_hwmod *omap3430es2plus_hwmods[] = {
- &omap3xxx_iva_hwmod,
&omap3xxx_dss_core_hwmod, &omap3xxx_usbhsotg_hwmod,
- &omap3xxx_mailbox_hwmod,
NULL
};

Kernel output:

------------[ cut here ]------------
[    0.000000] WARNING: at arch/arm/mach-omap2/omap_hwmod.c:1959
omap_hwmod_r)
[    0.000000] omap_hwmod: iva: _register returned -22
[    0.000000] Modules linked in:
[    0.000000] [<c001b478>] (unwind_backtrace+0x0/0xf0) from
[<c0053a70>] (wa)
[    0.000000] [<c0053a70>] (warn_slowpath_common+0x4c/0x64) from
[<c0053b1c>)
[    0.000000] [<c0053b1c>] (warn_slowpath_fmt+0x30/0x40) from
[<c0681690>] ()
[    0.000000] [<c0681690>] (omap_hwmod_register+0x11c/0x158) from
[<c067e9e8)
[    0.000000] [<c067e9e8>] (omap3_init_early+0x1c/0x28) from
[<c067ad50>] (s)
[    0.000000] [<c067ad50>] (setup_arch+0x814/0x934) from [<c0677560>]
(start)
[    0.000000] [<c0677560>] (start_kernel+0x80/0x304) from [<80008044>]
(0x80)
[    0.000000] ---[ end trace 1b75b31a2719ed1c ]---
[    0.000000] ------------[ cut here ]------------
[    0.000000] WARNING: at arch/arm/mach-omap2/omap_hwmod.c:1959
omap_hwmod_r)
[    0.000000] omap_hwmod: mailbox: _register returned -22
[    0.000000] Modules linked in:
[    0.000000] [<c001b478>] (unwind_backtrace+0x0/0xf0) from
[<c0053a70>] (wa)
[    0.000000] [<c0053a70>] (warn_slowpath_common+0x4c/0x64) from
[<c0053b1c>)
[    0.000000] [<c0053b1c>] (warn_slowpath_fmt+0x30/0x40) from
[<c0681690>] ()
[    0.000000] [<c0681690>] (omap_hwmod_register+0x11c/0x158) from
[<c067e9e8)
[    0.000000] [<c067e9e8>] (omap3_init_early+0x1c/0x28) from
[<c067ad50>] (s)
[    0.000000] [<c067ad50>] (setup_arch+0x814/0x934) from [<c0677560>]
(start)
[    0.000000] [<c0677560>] (start_kernel+0x80/0x304) from [<80008044>]
(0x80)
[    0.000000] ---[ end trace 1b75b31a2719ed1d ]---
arch/arm/mach-omap2/omap_hwmod_3xxx_data.c +0 -4
index 7f8915a..eef43e2 100644
@@ -3247,18 +3247,14 @@ static __initdata struct omap_hwmod *omap3xxx_hwmods[] = {
 
 /* 3430ES1-only hwmods */
 static __initdata struct omap_hwmod *omap3430es1_hwmods[] = {
-	&omap3xxx_iva_hwmod,
 	&omap3430es1_dss_core_hwmod,
-	&omap3xxx_mailbox_hwmod,
 	NULL
 };
 
 /* 3430ES2+-only hwmods */
 static __initdata struct omap_hwmod *omap3430es2plus_hwmods[] = {
-	&omap3xxx_iva_hwmod,
 	&omap3xxx_dss_core_hwmod,
 	&omap3xxx_usbhsotg_hwmod,
-	&omap3xxx_mailbox_hwmod,
 	NULL
 };
 
#1 lore raw
Quoted 8 lines · Andre Puschmann

Hi list,

when compiling the current git HEAD for a Gumstix Overo based board I discovered an issue during init causing the error message which is attached. I believe this is because they are called twice during init (the omap34xx_hwmods struct already contains them).

The attached patch fixes this issue.

Steve Sakoman just notified me that Felipe Contreras' patch a few days ago already fixes this issue.
My apologies for posting the same thing again.

BR
Andre

maintainer
#2 lore raw

Hi Andre

Quoted 11 lines · Andre Puschmann
Quoted 6 lines · Andre Puschmann

when compiling the current git HEAD for a Gumstix Overo based board I discovered an issue during init causing the error message which is attached. I believe this is because they are called twice during init (the omap34xx_hwmods struct already contains them).

The attached patch fixes this issue.

Steve Sakoman just notified me that Felipe Contreras' patch a few days ago already fixes this issue.
My apologies for posting the same thing again.

Not at all, thanks very much for the patch.

- Paul