linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH for v3.11] ARM: mvebu: fix length of ethernet registers in mv78260 dtsi
@ 2013-06-22 16:52 Ezequiel Garcia
  2013-06-23  8:16 ` Thomas Petazzoni
  2013-06-23 22:02 ` Jason Cooper
  0 siblings, 2 replies; 3+ messages in thread
From: Ezequiel Garcia @ 2013-06-22 16:52 UTC (permalink / raw)
  To: linux-arm-kernel

From: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>

The length of the registers area for the Marvell 370/XP Ethernet controller
was incorrect in the .dtsi: 0x2500, while it should have been 0x4000.
This problem wasn't noticed because there used to be a static mapping for
all the MMIO register region set up by ->map_io().

The register length was fixed in all the other device tree files,
except from the armada-xp-mv78260.dtsi, in the following commit:

  commit cf8088c5cac6ce20d914b9131533844b9291a054
  Author: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
  Date:   Tue May 21 12:33:27 2013 +0200

    arm: mvebu: fix length of Ethernet registers area in .dtsi

This commit fixes a kernel panic in mvneta_probe(), when the kernel
tries to access the unmapped registers:

[  163.639092] mvneta d0070000.ethernet eth0: mac: 6e:3c:4f:87:17:2e
[  163.646962] mvneta d0074000.ethernet eth1: mac: 6a:04:4e:6f:f5:ef
[  163.654853] mvneta d0030000.ethernet eth2: mac: 2a:99:19:19:fc:4c
[  163.661258] Unable to handle kernel paging request at virtual address f011bcf0
[  163.668523] pgd = c0004000
[  163.671237] [f011bcf0] *pgd=2f006811, *pte=00000000, *ppte=00000000
[  163.677565] Internal error: Oops: 807 [#1] SMP ARM
[  163.682370] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.10.0-rc6-01850-gba0682e #11
[  163.690046] task: ef04c000 ti: ef03e000 task.ti: ef03e000
[  163.695467] PC is at mvneta_probe+0x34c/0xabc
[...]

Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
---
 arch/arm/boot/dts/armada-xp-mv78260.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/armada-xp-mv78260.dtsi b/arch/arm/boot/dts/armada-xp-mv78260.dtsi
index f4029f0..2d9335d 100644
--- a/arch/arm/boot/dts/armada-xp-mv78260.dtsi
+++ b/arch/arm/boot/dts/armada-xp-mv78260.dtsi
@@ -92,7 +92,7 @@
 
 			ethernet at 34000 {
 				compatible = "marvell,armada-370-neta";
-				reg = <0x34000 0x2500>;
+				reg = <0x34000 0x4000>;
 				interrupts = <14>;
 				clocks = <&gateclk 1>;
 				status = "disabled";
-- 
1.8.1.5

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

* [PATCH for v3.11] ARM: mvebu: fix length of ethernet registers in mv78260 dtsi
  2013-06-22 16:52 [PATCH for v3.11] ARM: mvebu: fix length of ethernet registers in mv78260 dtsi Ezequiel Garcia
@ 2013-06-23  8:16 ` Thomas Petazzoni
  2013-06-23 22:02 ` Jason Cooper
  1 sibling, 0 replies; 3+ messages in thread
From: Thomas Petazzoni @ 2013-06-23  8:16 UTC (permalink / raw)
  To: linux-arm-kernel

Dear Ezequiel Garcia,

On Sat, 22 Jun 2013 13:52:27 -0300, Ezequiel Garcia wrote:
> From: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
> 
> The length of the registers area for the Marvell 370/XP Ethernet controller
> was incorrect in the .dtsi: 0x2500, while it should have been 0x4000.
> This problem wasn't noticed because there used to be a static mapping for
> all the MMIO register region set up by ->map_io().
> 
> The register length was fixed in all the other device tree files,
> except from the armada-xp-mv78260.dtsi, in the following commit:
> 
>   commit cf8088c5cac6ce20d914b9131533844b9291a054
>   Author: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
>   Date:   Tue May 21 12:33:27 2013 +0200
> 
>     arm: mvebu: fix length of Ethernet registers area in .dtsi
> 
> This commit fixes a kernel panic in mvneta_probe(), when the kernel
> tries to access the unmapped registers:
> 
> [  163.639092] mvneta d0070000.ethernet eth0: mac: 6e:3c:4f:87:17:2e
> [  163.646962] mvneta d0074000.ethernet eth1: mac: 6a:04:4e:6f:f5:ef
> [  163.654853] mvneta d0030000.ethernet eth2: mac: 2a:99:19:19:fc:4c
> [  163.661258] Unable to handle kernel paging request at virtual address f011bcf0
> [  163.668523] pgd = c0004000
> [  163.671237] [f011bcf0] *pgd=2f006811, *pte=00000000, *ppte=00000000
> [  163.677565] Internal error: Oops: 807 [#1] SMP ARM
> [  163.682370] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.10.0-rc6-01850-gba0682e #11
> [  163.690046] task: ef04c000 ti: ef03e000 task.ti: ef03e000
> [  163.695467] PC is at mvneta_probe+0x34c/0xabc
> [...]
> 
> Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>

Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>

Thanks for spotting the issue!

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

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

* [PATCH for v3.11] ARM: mvebu: fix length of ethernet registers in mv78260 dtsi
  2013-06-22 16:52 [PATCH for v3.11] ARM: mvebu: fix length of ethernet registers in mv78260 dtsi Ezequiel Garcia
  2013-06-23  8:16 ` Thomas Petazzoni
@ 2013-06-23 22:02 ` Jason Cooper
  1 sibling, 0 replies; 3+ messages in thread
From: Jason Cooper @ 2013-06-23 22:02 UTC (permalink / raw)
  To: linux-arm-kernel

On Sat, Jun 22, 2013 at 01:52:27PM -0300, Ezequiel Garcia wrote:
> From: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
> 
> The length of the registers area for the Marvell 370/XP Ethernet controller
> was incorrect in the .dtsi: 0x2500, while it should have been 0x4000.
> This problem wasn't noticed because there used to be a static mapping for
> all the MMIO register region set up by ->map_io().
> 
> The register length was fixed in all the other device tree files,
> except from the armada-xp-mv78260.dtsi, in the following commit:
> 
>   commit cf8088c5cac6ce20d914b9131533844b9291a054
>   Author: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
>   Date:   Tue May 21 12:33:27 2013 +0200
> 
>     arm: mvebu: fix length of Ethernet registers area in .dtsi
> 
> This commit fixes a kernel panic in mvneta_probe(), when the kernel
> tries to access the unmapped registers:
> 
> [  163.639092] mvneta d0070000.ethernet eth0: mac: 6e:3c:4f:87:17:2e
> [  163.646962] mvneta d0074000.ethernet eth1: mac: 6a:04:4e:6f:f5:ef
> [  163.654853] mvneta d0030000.ethernet eth2: mac: 2a:99:19:19:fc:4c
> [  163.661258] Unable to handle kernel paging request at virtual address f011bcf0
> [  163.668523] pgd = c0004000
> [  163.671237] [f011bcf0] *pgd=2f006811, *pte=00000000, *ppte=00000000
> [  163.677565] Internal error: Oops: 807 [#1] SMP ARM
> [  163.682370] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.10.0-rc6-01850-gba0682e #11
> [  163.690046] task: ef04c000 ti: ef03e000 task.ti: ef03e000
> [  163.695467] PC is at mvneta_probe+0x34c/0xabc
> [...]
> 
> Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
> ---
>  arch/arm/boot/dts/armada-xp-mv78260.dtsi | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Applied to mvebu/fixes-non-critical

thx,

Jason.

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

end of thread, other threads:[~2013-06-23 22:02 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-06-22 16:52 [PATCH for v3.11] ARM: mvebu: fix length of ethernet registers in mv78260 dtsi Ezequiel Garcia
2013-06-23  8:16 ` Thomas Petazzoni
2013-06-23 22:02 ` Jason Cooper

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