Commit e366154f authored by Heikki Krogerus's avatar Heikki Krogerus Committed by Jason Cooper

arm: mvebu: Reduce reg-io-width with UARTs

Setting the reg-io-width to 1 byte represents more accurate
description of the HW.

This will fix an issue where UART driver causes kernel
panic during bootup. Gregory CLEMENT traced the issue to
autoconfig() in 8250.c, where the existence of FIFO is
checked from UART_IIR register. The register is now read as
32-bit value as the reg-io-width is set to 4-bytes. The
retuned value seems to contain bogus data for bits 31:8,
causing the issue.
Signed-off-by: default avatarHeikki Krogerus <heikki.krogerus@linux.intel.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Tested-by: default avatarGregory CLEMENT <gregory.clement@free-electrons.com>
Acked-by: default avatarGregory CLEMENT <gregory.clement@free-electrons.com>
Tested-by: default avatarMasami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Tested-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: default avatarJason Cooper <jason@lakedaemon.net>
parent 85c0c13d
...@@ -54,7 +54,7 @@ serial@d0012000 { ...@@ -54,7 +54,7 @@ serial@d0012000 {
reg = <0xd0012000 0x100>; reg = <0xd0012000 0x100>;
reg-shift = <2>; reg-shift = <2>;
interrupts = <41>; interrupts = <41>;
reg-io-width = <4>; reg-io-width = <1>;
status = "disabled"; status = "disabled";
}; };
serial@d0012100 { serial@d0012100 {
...@@ -62,7 +62,7 @@ serial@d0012100 { ...@@ -62,7 +62,7 @@ serial@d0012100 {
reg = <0xd0012100 0x100>; reg = <0xd0012100 0x100>;
reg-shift = <2>; reg-shift = <2>;
interrupts = <42>; interrupts = <42>;
reg-io-width = <4>; reg-io-width = <1>;
status = "disabled"; status = "disabled";
}; };
......
...@@ -46,7 +46,7 @@ serial@d0012200 { ...@@ -46,7 +46,7 @@ serial@d0012200 {
reg = <0xd0012200 0x100>; reg = <0xd0012200 0x100>;
reg-shift = <2>; reg-shift = <2>;
interrupts = <43>; interrupts = <43>;
reg-io-width = <4>; reg-io-width = <1>;
status = "disabled"; status = "disabled";
}; };
serial@d0012300 { serial@d0012300 {
...@@ -54,7 +54,7 @@ serial@d0012300 { ...@@ -54,7 +54,7 @@ serial@d0012300 {
reg = <0xd0012300 0x100>; reg = <0xd0012300 0x100>;
reg-shift = <2>; reg-shift = <2>;
interrupts = <44>; interrupts = <44>;
reg-io-width = <4>; reg-io-width = <1>;
status = "disabled"; status = "disabled";
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment