Skip to contentSkip to conversation

ARM: Kconfig: Do not select ARCH_VEXPRESS on ARCH_MULTI_V7

PATCH New Fabio Estevam 3 participants 5 messages Nov 19, 2012 Arm (32-bit)

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ARM: Kconfig: Do not select ARCH_VEXPRESS on ARCH_MULTI_V7

Booting a kernel on a mx53qsb board (built with imx_v6_v7_defconfig) leads to:

Unable to handle kernel NULL pointer dereference at virtual address 00000008
pgd = 80004000
[00000008] *pgd=00000000
Internal error: Oops: 805 [#1] SMP ARM
Modules linked in:
CPU: 0    Not tainted  (3.7.0-rc5-next-20121115+ #715)
PC is at vexpress_sysreg_init_leds+0x30/0xb8
LR is at do_one_initcall+0x3c/0x190
pc : [<8065e170>]    lr : [<800086a0>]    psr: 60000153

sp : df855ef0 ip : df855f18 fp : df855f14
r10: 00000000 r9 : 8067eb5c r8 : 8065e140
r7 : 80711cac r6 : 806c2cc0 r5 : 00000000 r4 : 80673850 r3 : 00000000 r2 : 00000000 r1 : df854000 r0 : 8065e140
...

Since commit c5a0d4977 (ARM: imx: enable multi-platform build), imx_v6_v7_defconfig selects CONFIG_ARCH_MULTI_V7=y, which in turn select ARCH_VEXPRESS.

Do not select ARCH_VEXPRESS on ARCH_MULTI_V7.

---
 arch/arm/Kconfig |    1 -
 1 file changed, 1 deletion(-)
arch/arm/Kconfig +0 -1
index 14f8160..d40e9d3 100644
@@ -1000,7 +1000,6 @@ config ARCH_MULTI_V7
 	bool "ARMv7 based platforms (Cortex-A, PJ4, Krait)"
 	default y
 	select ARCH_MULTI_V6_V7
-	select ARCH_VEXPRESS
 	select CPU_V7
 
 config ARCH_MULTI_V6_V7
Signature · 1 line
1.7.9.5
#1 lore raw

PATCH 1/1 ARM: Kconfig: Do not select ARCH_VEXPRESS on ARCH_MULTI_V7

Quoted 11 lines · Fabio Estevam

Booting a kernel on a mx53qsb board (built with imx_v6_v7_defconfig) leads to:

Unable to handle kernel NULL pointer dereference at virtual address 00000008
pgd = 80004000
[00000008] *pgd=00000000
Internal error: Oops: 805 [#1] SMP ARM
Modules linked in:
CPU: 0    Not tainted  (3.7.0-rc5-next-20121115+ #715)
PC is at vexpress_sysreg_init_leds+0x30/0xb8
LR is at do_one_initcall+0x3c/0x190
pc : [<8065e170>]    lr : [<800086a0>]    psr: 60000153
Quoted 5 lines

sp : df855ef0 ip : df855f18 fp : df855f14
r10: 00000000 r9 : 8067eb5c r8 : 8065e140
r7 : 80711cac r6 : 806c2cc0 r5 : 00000000 r4 : 80673850 r3 : 00000000 r2 : 00000000 r1 : df854000 r0 : 8065e140
...

It's a bug in vexpress-sysreg driver. 3 hours ago I've posted patch removing this code...

https://patchwork.kernel.org/patch/1764801/

Apologies about causing the issue in the first place.

Pawel

#2 lore raw

PATCH 1/1 ARM: Kconfig: Do not select ARCH_VEXPRESS on ARCH_MULTI_V7

Quoted 6 lines · Pawel Moll

It's a bug in vexpress-sysreg driver. 3 hours ago I've posted patch removing this code...

https://patchwork.kernel.org/patch/1764801/

Apologies about causing the issue in the first place.

But still, the patch that Fabio raises is interesting: why would ARCH_VEXPRESS be unconditionally enabled when building an ARM multiplatform kernel for v6/v7 ? I may want to build a kernel with several platforms, but not necessarily vexpress, no?

Thanks!

Thomas

Signature · 4 lines
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
#3 lore raw

PATCH 1/1 ARM: Kconfig: Do not select ARCH_VEXPRESS on ARCH_MULTI_V7

Quoted 5 lines · Thomas Petazzoni
Quoted 3 lines · Pawel Moll

It's a bug in vexpress-sysreg driver. 3 hours ago I've posted patch removing this code...

Quoted 8 lines
Quoted 3 lines

https://patchwork.kernel.org/patch/1764801/

Apologies about causing the issue in the first place.

But still, the patch that Fabio raises is interesting: why would ARCH_VEXPRESS be unconditionally enabled when building an ARM multiplatform kernel for v6/v7 ? I may want to build a kernel with several platforms, but not necessarily vexpress, no?

I'm not arguing this. As far as I remember Rob wanted to make vexpress a default for the multiplatform kernel, but you're right saying that forcing it with the SELECT was probably a step too far.

Pawe?

#4 lore raw

PATCH 1/1 ARM: Kconfig: Do not select ARCH_VEXPRESS on ARCH_MULTI_V7

Quoted 3 lines · Pawel Moll

I'm not arguing this. As far as I remember Rob wanted to make vexpress a default for the multiplatform kernel, but you're right saying that forcing it with the SELECT was probably a step too far.

IIRC, the problem is that we need at least one platform to be enabled, otherwise it doesn't build, but I might be wrong.

Best regards,

Thomas

Signature · 4 lines
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com