diff options
author | Kokoris, Ioannis <ioannis.kokoris@siemens-enterprise.com> | 2011-11-11 11:05:11 -0500 |
---|---|---|
committer | Kumar Gala <galak@kernel.crashing.org> | 2012-07-10 08:08:58 -0400 |
commit | e65650e6c3eb67226eda80a21f62b7aa145878f4 (patch) | |
tree | 9fe3c6ecf29385a4890c83724ef5be42b1e0328d /arch/powerpc/include/asm | |
parent | 1f0e90ad7a3b6f9f8a0598ed30f4e9c7dd9ff82e (diff) |
powerpc/qe: set IReady in QE Microcode Upload
QE Microcode Initialization using qe_upload_microcode() does not work on
P1021 if the IRAM-Ready register is not set after the microcode upload. Add
a definition for the "I-RAM Ready" register and sets it upon microcode
upload completion.
Signed-off-by: Ioannis Kokkoris <ioannis.kokoris@siemens-enterprise.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/include/asm')
-rw-r--r-- | arch/powerpc/include/asm/immap_qe.h | 4 | ||||
-rw-r--r-- | arch/powerpc/include/asm/qe.h | 1 |
2 files changed, 4 insertions, 1 deletions
diff --git a/arch/powerpc/include/asm/immap_qe.h b/arch/powerpc/include/asm/immap_qe.h index 0edb6842b13d..61e8490786b8 100644 --- a/arch/powerpc/include/asm/immap_qe.h +++ b/arch/powerpc/include/asm/immap_qe.h | |||
@@ -26,7 +26,9 @@ | |||
26 | struct qe_iram { | 26 | struct qe_iram { |
27 | __be32 iadd; /* I-RAM Address Register */ | 27 | __be32 iadd; /* I-RAM Address Register */ |
28 | __be32 idata; /* I-RAM Data Register */ | 28 | __be32 idata; /* I-RAM Data Register */ |
29 | u8 res0[0x78]; | 29 | u8 res0[0x04]; |
30 | __be32 iready; /* I-RAM Ready Register */ | ||
31 | u8 res1[0x70]; | ||
30 | } __attribute__ ((packed)); | 32 | } __attribute__ ((packed)); |
31 | 33 | ||
32 | /* QE Interrupt Controller */ | 34 | /* QE Interrupt Controller */ |
diff --git a/arch/powerpc/include/asm/qe.h b/arch/powerpc/include/asm/qe.h index 5e0b6d511e14..229571a49391 100644 --- a/arch/powerpc/include/asm/qe.h +++ b/arch/powerpc/include/asm/qe.h | |||
@@ -499,6 +499,7 @@ enum comm_dir { | |||
499 | /* I-RAM */ | 499 | /* I-RAM */ |
500 | #define QE_IRAM_IADD_AIE 0x80000000 /* Auto Increment Enable */ | 500 | #define QE_IRAM_IADD_AIE 0x80000000 /* Auto Increment Enable */ |
501 | #define QE_IRAM_IADD_BADDR 0x00080000 /* Base Address */ | 501 | #define QE_IRAM_IADD_BADDR 0x00080000 /* Base Address */ |
502 | #define QE_IRAM_READY 0x80000000 /* Ready */ | ||
502 | 503 | ||
503 | /* UPC */ | 504 | /* UPC */ |
504 | #define UPGCR_PROTOCOL 0x80000000 /* protocol ul2 or pl2 */ | 505 | #define UPGCR_PROTOCOL 0x80000000 /* protocol ul2 or pl2 */ |