arm: imx6: configure NoC on i.MX6DQP

The i.MX6DP and i.MX6QP incorporate NoC interconnect logic
which needs to be configured in order to use external DDR memory.

This patch enables the SPL to configure the necessary registers
in accordance with the NXP engineering bulletin EB828.

Co-developed-by: Filip Brozović <fbrozovic@gmail.com>

Signed-off-by: Bernhard Messerklinger <bernhard.messerklinger@br-automation.com>
Signed-off-by: Filip Brozovic <fbrozovic@gmail.com>
This commit is contained in:
Bernhard Messerklinger
2020-03-09 10:55:34 +01:00
committed by Stefano Babic
parent a0448e5c03
commit 7794d889d3
2 changed files with 115 additions and 0 deletions

View File

@@ -306,6 +306,25 @@ struct mx6dq_iomux_grp_regs {
u32 grp_b6ds;
};
/*
* NoC scheduler registers - only on IMX6DQP
*/
#define MX6DQP_NOC_SCHED_BASE 0x00bb0000
struct mx6dqp_noc_sched_regs {
u32 coreid;
u32 revid;
u32 ddrconf;
u32 ddrtiming;
u32 ddrmode;
u32 rlat;
u32 res1[4];
u32 ipu1;
u32 ipu2;
u32 res2[2];
u32 activate;
u32 res3[16];
};
#define MX6SDL_IOM_DDR_BASE 0x020e0400
struct mx6sdl_iomux_ddr_regs {
u32 res1[25];