diff mbox

[U-Boot] vexpress64: use DM for all vexpress64 boards

Message ID 1428998495-14441-1-git-send-email-linus.walleij@linaro.org
State Accepted
Delegated to: Tom Rini
Headers show

Commit Message

Linus Walleij April 14, 2015, 8:01 a.m. UTC
Commit d8bafe1310487ba0e0785997726b4792072178d3
"ARMv8: enable DM in vexpress64 board" only enabled DM
for the simulated vexpress64 board (FVP) with the
hardcoded clock value for the simulated board, causing
a console regression on the Juno board which was using
a different clock setting.

Fix this by enabling DM for all vexpress64 boards,
defining the clock frequency per-board, deleting the
static array of PL01x ports from the config file and
relying solely on the port defined in the boardfile
using platform data.

Cc: David Feng <fenghua@phytium.com.cn>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
---
 board/armltd/vexpress64/vexpress64.c |  2 +-
 include/configs/vexpress_aemv8a.h    | 20 ++++----------------
 2 files changed, 5 insertions(+), 17 deletions(-)

Comments

Tom Rini April 23, 2015, 1:14 p.m. UTC | #1
On Tue, Apr 14, 2015 at 10:01:35AM +0200, Linus Walleij wrote:

> Commit d8bafe1310487ba0e0785997726b4792072178d3
> "ARMv8: enable DM in vexpress64 board" only enabled DM
> for the simulated vexpress64 board (FVP) with the
> hardcoded clock value for the simulated board, causing
> a console regression on the Juno board which was using
> a different clock setting.
> 
> Fix this by enabling DM for all vexpress64 boards,
> defining the clock frequency per-board, deleting the
> static array of PL01x ports from the config file and
> relying solely on the port defined in the boardfile
> using platform data.
> 
> Cc: David Feng <fenghua@phytium.com.cn>
> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>

Applied to u-boot/master, thanks!
diff mbox

Patch

diff --git a/board/armltd/vexpress64/vexpress64.c b/board/armltd/vexpress64/vexpress64.c
index 13dd6674363c..7cb4e0021f66 100644
--- a/board/armltd/vexpress64/vexpress64.c
+++ b/board/armltd/vexpress64/vexpress64.c
@@ -19,7 +19,7 @@  DECLARE_GLOBAL_DATA_PTR;
 static const struct pl01x_serial_platdata serial_platdata = {
 	.base = V2M_UART0,
 	.type = TYPE_PL011,
-	.clock = 2400 * 1000,
+	.clock = CONFIG_PL011_CLOCK,
 };
 
 U_BOOT_DEVICE(vexpress_serials) = {
diff --git a/include/configs/vexpress_aemv8a.h b/include/configs/vexpress_aemv8a.h
index 3fda20a8f6c8..032010bb9e02 100644
--- a/include/configs/vexpress_aemv8a.h
+++ b/include/configs/vexpress_aemv8a.h
@@ -8,10 +8,9 @@ 
 #ifndef __VEXPRESS_AEMV8A_H
 #define __VEXPRESS_AEMV8A_H
 
-#define CONFIG_DM
-
-/* We use generic board for v8 Versatile Express */
+/* We use generic board and device manager for v8 Versatile Express */
 #define CONFIG_SYS_GENERIC_BOARD
+#define CONFIG_DM
 
 #ifdef CONFIG_TARGET_VEXPRESS64_BASE_FVP
 #ifndef CONFIG_SEMIHOSTING
@@ -134,27 +133,16 @@ 
 #endif
 
 /* PL011 Serial Configuration */
-#define CONFIG_BAUDRATE			115200
-#ifdef CONFIG_DM
 #define CONFIG_DM_SERIAL
-#define CONFIG_PL01X_SERIAL
-#else
-#define CONFIG_SYS_SERIAL0		V2M_UART0
-#define CONFIG_SYS_SERIAL1		V2M_UART1
+#define CONFIG_BAUDRATE			115200
 #define CONFIG_CONS_INDEX		0
+#define CONFIG_PL01X_SERIAL
 #define CONFIG_PL011_SERIAL
 #ifdef CONFIG_TARGET_VEXPRESS64_JUNO
 #define CONFIG_PL011_CLOCK		7273800
 #else
 #define CONFIG_PL011_CLOCK		24000000
 #endif
-#define CONFIG_PL01x_PORTS		{(void *)CONFIG_SYS_SERIAL0, \
-					 (void *)CONFIG_SYS_SERIAL1}
-#endif
-
-#define CONFIG_BAUDRATE			115200
-#define CONFIG_SYS_SERIAL0		V2M_UART0
-#define CONFIG_SYS_SERIAL1		V2M_UART1
 
 /* Command line configuration */
 #define CONFIG_MENU