From 2d4de6ae5be54b367a72a7ef4e0cf36a9cd4881f Mon Sep 17 00:00:00 2001 From: Haiying Wang Date: Thu, 26 Mar 2009 17:01:49 -0400 Subject: MPC85xx: Load and enable QE microcode patch in IRAM For the silicon which doesn't have ROM support in QE, it always needs to load a pre-built ucode binary to IRAM so that QE can work. Signed-off-by: Haiying Wang Signed-off-by: Hillel Avni --- drivers/qe/qe.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'drivers/qe/qe.c') diff --git a/drivers/qe/qe.c b/drivers/qe/qe.c index e90a4a5..ea5a14b 100644 --- a/drivers/qe/qe.c +++ b/drivers/qe/qe.c @@ -161,6 +161,15 @@ void qe_init(uint qe_base) /* Init the QE IMMR base */ qe_immr = (qe_map_t *)qe_base; +#ifdef CONFIG_SYS_QE_FW_ADDR + /* Upload microcode to IRAM for those SOCs which do not have ROM in QE. + */ + qe_upload_firmware((const struct qe_firmware *) CONFIG_SYS_QE_FW_ADDR); + + /* enable the microcode in IRAM */ + out_be32(&qe_immr->iram.iready,QE_IRAM_READY); +#endif + gd->mp_alloc_base = QE_DATAONLY_BASE; gd->mp_alloc_top = gd->mp_alloc_base + QE_DATAONLY_SIZE; -- cgit v1.1