Skip to content
Snippets Groups Projects
Commit 846f1574 authored by Andre Schwarz's avatar Andre Schwarz Committed by Kim Phillips
Browse files

fix system config overwrite @ MPC834x and MPC8313


During 83xx setup the "System I/O configuration register high" gets
overwritten with user defined value if CFG_SICRH is defined.

Regarding to the MPC834x manual (Table 5-28 reve.1) bits 28+29 of SICRH
must keep their reset value regardless of configuration.

On my board (using RGMII) those bits are set after reset - yet it's
unclear where they come from.

The patch keeps both bits on MPC834x and MPC8313.

Signed-off-by: default avatarAndre Schwarz <andre.schwarz@matrix-vision.de>
Signed-off-by: default avatarKim Phillips <kim.phillips@freescale.com>
parent 4890246a
Branches
Tags
No related merge requests found
......@@ -181,8 +181,13 @@ void cpu_init_f (volatile immap_t * im)
/* System General Purpose Register */
#ifdef CFG_SICRH
#if defined(CONFIG_MPC834X) || defined(CONFIG_MPC8313)
/* regarding to MPC34x manual rev.1 bits 28..29 must be preserved */
im->sysconf.sicrh = (im->sysconf.sicrh & 0x0000000C) | CFG_SICRH;
#else
im->sysconf.sicrh = CFG_SICRH;
#endif
#endif
#ifdef CFG_SICRL
im->sysconf.sicrl = CFG_SICRL;
#endif
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment