[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 06/28] pl110: Clarify comment about PL110 ID on Versa
From: |
Peter Maydell |
Subject: |
[Qemu-devel] [PULL 06/28] pl110: Clarify comment about PL110 ID on VersatilePB |
Date: |
Tue, 10 Sep 2013 19:52:00 +0100 |
Clarify a comment about the ID register value presented by
the PL110 variant present on the VersatilePB board (based
on testing what the actual hardware does), to indicate that
this is not an error in our emulation, and to remove an #if-0.
Signed-off-by: Peter Maydell <address@hidden>
---
hw/display/pl110.c | 18 ++++++++----------
1 file changed, 8 insertions(+), 10 deletions(-)
diff --git a/hw/display/pl110.c b/hw/display/pl110.c
index e79ab4b..790e510 100644
--- a/hw/display/pl110.c
+++ b/hw/display/pl110.c
@@ -94,23 +94,21 @@ static const VMStateDescription vmstate_pl110 = {
static const unsigned char pl110_id[] =
{ 0x10, 0x11, 0x04, 0x00, 0x0d, 0xf0, 0x05, 0xb1 };
-/* The Arm documentation (DDI0224C) says the CLDC on the Versatile board
- has a different ID. However Linux only looks for the normal ID. */
-#if 0
-static const unsigned char pl110_versatile_id[] =
-{ 0x93, 0x10, 0x04, 0x00, 0x0d, 0xf0, 0x05, 0xb1 };
-#else
-#define pl110_versatile_id pl110_id
-#endif
-
static const unsigned char pl111_id[] = {
0x11, 0x11, 0x24, 0x00, 0x0d, 0xf0, 0x05, 0xb1
};
+
/* Indexed by pl110_version */
static const unsigned char *idregs[] = {
pl110_id,
- pl110_versatile_id,
+ /* The ARM documentation (DDI0224C) says the CLCDC on the Versatile board
+ * has a different ID (0x93, 0x10, 0x04, 0x00, ...). However the hardware
+ * itself has the same ID values as a stock PL110, and guests (in
+ * particular Linux) rely on this. We emulate what the hardware does,
+ * rather than what the docs claim it ought to do.
+ */
+ pl110_id,
pl111_id
};
--
1.7.9.5
- [Qemu-devel] [PULL 00/28] target-arm queue, Peter Maydell, 2013/09/10
- [Qemu-devel] [PULL 06/28] pl110: Clarify comment about PL110 ID on VersatilePB,
Peter Maydell <=
- [Qemu-devel] [PULL 28/28] configure: Add handling code for AArch64 targets, Peter Maydell, 2013/09/10
- [Qemu-devel] [PULL 26/28] linux-user: Allow targets to specify a minimum uname release, Peter Maydell, 2013/09/10
- [Qemu-devel] [PULL 23/28] linux-user: Make sure NWFPE code is 32 bit ARM only, Peter Maydell, 2013/09/10
- [Qemu-devel] [PULL 25/28] linux-user: Add AArch64 termbits.h definitions, Peter Maydell, 2013/09/10
- [Qemu-devel] [PULL 21/28] linux-user: Fix up AArch64 syscall handlers, Peter Maydell, 2013/09/10
- [Qemu-devel] [PULL 19/28] linux-user: Add cpu loop for AArch64, Peter Maydell, 2013/09/10
- [Qemu-devel] [PULL 18/28] linux-user: Don't treat AArch64 cpu names specially, Peter Maydell, 2013/09/10
- [Qemu-devel] [PULL 24/28] linux-user: Implement cpu_set_tls() and cpu_clone_regs() for AArch64, Peter Maydell, 2013/09/10
- [Qemu-devel] [PULL 10/28] target-arm: Export cpu_env, Peter Maydell, 2013/09/10
- [Qemu-devel] [PULL 20/28] linux-user: Add syscall number definitions for AArch64, Peter Maydell, 2013/09/10