summaryrefslogtreecommitdiffstats
path: root/include/asm-ppc/global_data.h
diff options
context:
space:
mode:
authorNick Spence <nick.spence@freescale.com>2008-08-28 14:09:19 -0700
committerKim Phillips <kim.phillips@freescale.com>2008-09-03 16:06:57 -0500
commit46497056ae3b1e81e736e9cf3a170472c5d9719f (patch)
tree54a2adf89dbe8eec11474536e82736eca6891033 /include/asm-ppc/global_data.h
parentade50c7fa1b16ef98be17e9c3ae286aecf4f5605 (diff)
downloadbootable_bootloader_goldelico_gta04-46497056ae3b1e81e736e9cf3a170472c5d9719f.zip
bootable_bootloader_goldelico_gta04-46497056ae3b1e81e736e9cf3a170472c5d9719f.tar.gz
bootable_bootloader_goldelico_gta04-46497056ae3b1e81e736e9cf3a170472c5d9719f.tar.bz2
mpc83xx: Store and display Arbiter Event Register values
Record the Arbiter Event Register values and optionally display them. The Arbiter Event Register can record the type and effective address of an arbiter error, even through an HRESET. This patch stores the values in the global data structure. Display of the Arbiter Event registers immediately after the RSR value can be enabled with defines. The Arbiter values will only be displayed if an arbiter event has occured since the last Power On Reset, and either of the following defines exist: #define CONFIG_DISPLAY_AER_BRIEF - display only the arbiter address and and type register values #define CONFIG_DISPLAY_AER_FULL - display and interpret the arbiter event register values Address Only transactions are one of the trapped events that can register as an arbiter event. They occur with some cache manipulation instructions if the HID0_ABE (Address Broadcast Enable) is set and the memory region has the MEMORY_COHERENCE WIMG bit set. Setting: #define CONFIG_MASK_AER_AO - prevents the arbiter from recording address only events, so that it can still capture other real problems. Signed-off-by: Nick Spence <nick.spence@freescale.com> Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Diffstat (limited to 'include/asm-ppc/global_data.h')
-rw-r--r--include/asm-ppc/global_data.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/asm-ppc/global_data.h b/include/asm-ppc/global_data.h
index c09b07d..a9366c3 100644
--- a/include/asm-ppc/global_data.h
+++ b/include/asm-ppc/global_data.h
@@ -122,6 +122,10 @@ typedef struct global_data {
phys_size_t ram_size; /* RAM size */
unsigned long reloc_off; /* Relocation Offset */
unsigned long reset_status; /* reset status register at boot */
+#if defined(CONFIG_MPC83XX)
+ unsigned long arbiter_event_attributes;
+ unsigned long arbiter_event_address;
+#endif
unsigned long env_addr; /* Address of Environment struct */
unsigned long env_valid; /* Checksum of Environment valid? */
unsigned long have_console; /* serial_init() was called */