summaryrefslogtreecommitdiff
path: root/arch/powerpc/sysdev
diff options
context:
space:
mode:
authorKokoris, Ioannis <ioannis.kokoris@siemens-enterprise.com>2011-11-11 16:05:11 (GMT)
committerKumar Gala <galak@kernel.crashing.org>2012-07-10 12:08:58 (GMT)
commite65650e6c3eb67226eda80a21f62b7aa145878f4 (patch)
tree9fe3c6ecf29385a4890c83724ef5be42b1e0328d /arch/powerpc/sysdev
parent1f0e90ad7a3b6f9f8a0598ed30f4e9c7dd9ff82e (diff)
downloadlinux-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.c3
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));
}
/*