diff options
author | Kokoris, Ioannis <ioannis.kokoris@siemens-enterprise.com> | 2011-11-11 16:05:11 (GMT) |
---|---|---|
committer | Kumar Gala <galak@kernel.crashing.org> | 2012-07-10 12:08:58 (GMT) |
commit | e65650e6c3eb67226eda80a21f62b7aa145878f4 (patch) | |
tree | 9fe3c6ecf29385a4890c83724ef5be42b1e0328d /arch/powerpc/sysdev | |
parent | 1f0e90ad7a3b6f9f8a0598ed30f4e9c7dd9ff82e (diff) | |
download | linux-e65650e6c3eb67226eda80a21f62b7aa145878f4.tar.xz |
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/sysdev')
-rw-r--r-- | arch/powerpc/sysdev/qe_lib/qe.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/powerpc/sysdev/qe_lib/qe.c b/arch/powerpc/sysdev/qe_lib/qe.c index 818e763..b043675 100644 --- a/arch/powerpc/sysdev/qe_lib/qe.c +++ b/arch/powerpc/sysdev/qe_lib/qe.c @@ -395,6 +395,9 @@ static void qe_upload_microcode(const void *base, for (i = 0; i < be32_to_cpu(ucode->count); i++) out_be32(&qe_immr->iram.idata, be32_to_cpu(code[i])); + + /* Set I-RAM Ready Register */ + out_be32(&qe_immr->iram.iready, be32_to_cpu(QE_IRAM_READY)); } /* |