Skip to content

Commit

Permalink
powerpc/85xx: clean up for mpc8568_mds name
Browse files Browse the repository at this point in the history
Keep an unique machine def for the MPC8568 MDS board to handle some
subtle differences between the future MDS board. Also set the bcsrs in
setup_arch() only for mpc8568_mds because other mds has different bcsr
settings.

Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
  • Loading branch information
Haiying Wang authored and Kumar Gala committed May 19, 2009
1 parent 1e76dff commit ea5130d
Showing 1 changed file with 15 additions and 14 deletions.
29 changes: 15 additions & 14 deletions arch/powerpc/platforms/85xx/mpc85xx_mds.c
Original file line number Diff line number Diff line change
Expand Up @@ -206,23 +206,24 @@ static void __init mpc85xx_mds_setup_arch(void)
}

if (bcsr_regs) {
if (machine_is(mpc8568_mds)) {
#define BCSR_UCC1_GETH_EN (0x1 << 7)
#define BCSR_UCC2_GETH_EN (0x1 << 7)
#define BCSR_UCC1_MODE_MSK (0x3 << 4)
#define BCSR_UCC2_MODE_MSK (0x3 << 0)

/* Turn off UCC1 & UCC2 */
clrbits8(&bcsr_regs[8], BCSR_UCC1_GETH_EN);
clrbits8(&bcsr_regs[9], BCSR_UCC2_GETH_EN);
/* Turn off UCC1 & UCC2 */
clrbits8(&bcsr_regs[8], BCSR_UCC1_GETH_EN);
clrbits8(&bcsr_regs[9], BCSR_UCC2_GETH_EN);

/* Mode is RGMII, all bits clear */
clrbits8(&bcsr_regs[11], BCSR_UCC1_MODE_MSK |
BCSR_UCC2_MODE_MSK);

/* Turn UCC1 & UCC2 on */
setbits8(&bcsr_regs[8], BCSR_UCC1_GETH_EN);
setbits8(&bcsr_regs[9], BCSR_UCC2_GETH_EN);
/* Mode is RGMII, all bits clear */
clrbits8(&bcsr_regs[11], BCSR_UCC1_MODE_MSK |
BCSR_UCC2_MODE_MSK);

/* Turn UCC1 & UCC2 on */
setbits8(&bcsr_regs[8], BCSR_UCC1_GETH_EN);
setbits8(&bcsr_regs[9], BCSR_UCC2_GETH_EN);
}
iounmap(bcsr_regs);
}
#endif /* CONFIG_QUICC_ENGINE */
Expand Down Expand Up @@ -257,7 +258,7 @@ static int __init board_fixups(void)

return 0;
}
machine_arch_initcall(mpc85xx_mds, board_fixups);
machine_arch_initcall(mpc8568_mds, board_fixups);

static struct of_device_id mpc85xx_ids[] = {
{ .type = "soc", },
Expand All @@ -276,7 +277,7 @@ static int __init mpc85xx_publish_devices(void)

return 0;
}
machine_device_initcall(mpc85xx_mds, mpc85xx_publish_devices);
machine_device_initcall(mpc8568_mds, mpc85xx_publish_devices);

static void __init mpc85xx_mds_pic_init(void)
{
Expand Down Expand Up @@ -321,8 +322,8 @@ static int __init mpc85xx_mds_probe(void)
return of_flat_dt_is_compatible(root, "MPC85xxMDS");
}

define_machine(mpc85xx_mds) {
.name = "MPC85xx MDS",
define_machine(mpc8568_mds) {
.name = "MPC8568 MDS",
.probe = mpc85xx_mds_probe,
.setup_arch = mpc85xx_mds_setup_arch,
.init_IRQ = mpc85xx_mds_pic_init,
Expand Down

0 comments on commit ea5130d

Please sign in to comment.