aboutsummaryrefslogtreecommitdiff
path: root/drivers/net/mpc8xx_fec.c
diff options
context:
space:
mode:
authorChristophe Leroy <christophe.leroy@c-s.fr>2017-07-07 10:16:42 +0200
committerTom Rini <trini@konsulko.com>2017-07-08 15:56:06 -0400
commit53193a4f07c9e7a7d42493863712352cf16f1258 (patch)
tree6e57b908237df4d480f97f5cd197f9ecd0ee4b4c /drivers/net/mpc8xx_fec.c
parentdd7ff4721aaf46533a42ebd017aecd70cafa98e3 (diff)
downloadu-boot-53193a4f07c9e7a7d42493863712352cf16f1258.zip
u-boot-53193a4f07c9e7a7d42493863712352cf16f1258.tar.gz
u-boot-53193a4f07c9e7a7d42493863712352cf16f1258.tar.bz2
powerpc, 8xx: Add support for MCR3000 board from CSSI
CS Systemes d'Information (CSSI) manufactures two boards, named MCR3000 and CMPC885 which are respectively based on MPC866 and MPC885 processors. This patch adds support for the first board. Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Diffstat (limited to 'drivers/net/mpc8xx_fec.c')
-rw-r--r--drivers/net/mpc8xx_fec.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/drivers/net/mpc8xx_fec.c b/drivers/net/mpc8xx_fec.c
index b070d66..e525d3b 100644
--- a/drivers/net/mpc8xx_fec.c
+++ b/drivers/net/mpc8xx_fec.c
@@ -413,6 +413,26 @@ static void fec_pin_init(int fecidx)
*/
out_be16(&immr->im_ioport.iop_pdpar, 0x1fff);
out_be16(&immr->im_ioport.iop_pddir, 0x1fff);
+
+#if defined(CONFIG_TARGET_MCR3000)
+ out_be16(&immr->im_ioport.iop_papar, 0xBBFF);
+ out_be16(&immr->im_ioport.iop_padir, 0x04F0);
+ out_be16(&immr->im_ioport.iop_paodr, 0x0000);
+
+ out_be32(&immr->im_cpm.cp_pbpar, 0x000133FF);
+ out_be32(&immr->im_cpm.cp_pbdir, 0x0003BF0F);
+ out_be16(&immr->im_cpm.cp_pbodr, 0x0000);
+
+ out_be16(&immr->im_ioport.iop_pcpar, 0x0400);
+ out_be16(&immr->im_ioport.iop_pcdir, 0x0080);
+ out_be16(&immr->im_ioport.iop_pcso , 0x0D53);
+ out_be16(&immr->im_ioport.iop_pcint, 0x0000);
+
+ out_be16(&immr->im_ioport.iop_pdpar, 0x03FE);
+ out_be16(&immr->im_ioport.iop_pddir, 0x1C09);
+
+ setbits_be32(&immr->im_ioport.utmode, 0x80);
+#endif
#endif
#endif /* CONFIG_ETHER_ON_FEC1 */