From 9e7758b2774cd3410d3f2477181e8a62a89399ce Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Wed, 31 Aug 2011 16:03:10 +0000 Subject: 2011-08-31 Sebastian Huber * startup/bspgetworkarea.c, startup/linkcmds.base: Removed files. * include/mpc55xx-config.h, make/custom/mpc5674fevb.cfg, startup/early-init.c, startup/ebi-cal-cs-config.c, startup/ebi-cs-config.c, startup/exc-vector-base.S, startup/fmpll-syncr-vals.c, startup/linkcmds.mpc5674fevb, startup/mmu-config.c, startup/siu-pcr-config.c: New files. * Makefile.am, preinstall.am: Reflect changes above. * startup/linkcmds.gwlcfm, startup/linkcmds.mpc5566evb, startup/linkcmds.phycore_mpc5554: Use linker command base file. * configure.ac: Support MPC5674F. Changed eSCI options. * clock/clock-config.c: Support MPC5674F. * i2c/i2c_init.c, network/smsc9218i.c, startup/sd-card-init.c: Update due to API changes. * include/bsp.h: Define BSP_INTERRUPT_STACK_AT_WORK_AREA_BEGIN. * network/if_smc.c: Use HAS_SMC91111. * startup/start.S, startup/bspstart.c: Moved low-level initialization into new files. Overall cleanup. --- c/src/lib/libbsp/powerpc/mpc55xxevb/network/if_smc.c | 8 ++++++-- .../lib/libbsp/powerpc/mpc55xxevb/network/smsc9218i.c | 18 ++++++++++++++---- 2 files changed, 20 insertions(+), 6 deletions(-) (limited to 'c/src/lib/libbsp/powerpc/mpc55xxevb/network') diff --git a/c/src/lib/libbsp/powerpc/mpc55xxevb/network/if_smc.c b/c/src/lib/libbsp/powerpc/mpc55xxevb/network/if_smc.c index c16dcda022..50c910bbf0 100644 --- a/c/src/lib/libbsp/powerpc/mpc55xxevb/network/if_smc.c +++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/network/if_smc.c @@ -2,13 +2,15 @@ * $Id$ */ +#include + +#ifdef HAS_SMC91111M + #include #include #include -#include - #include #include #include @@ -165,3 +167,5 @@ int rtems_smc91111_driver_attach_mpc5554(struct rtems_bsdnet_ifconfig *config) return _rtems_smc91111_driver_attach(config,&mpc5554_scmv91111_configuration); }; + +#endif /* HAS_SMC91111M */ diff --git a/c/src/lib/libbsp/powerpc/mpc55xxevb/network/smsc9218i.c b/c/src/lib/libbsp/powerpc/mpc55xxevb/network/smsc9218i.c index 902f39e744..35440e749e 100644 --- a/c/src/lib/libbsp/powerpc/mpc55xxevb/network/smsc9218i.c +++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/network/smsc9218i.c @@ -790,7 +790,10 @@ static void smsc9218i_init_receive_jobs( /* Obtain receive eDMA channel */ e->edma_receive.id = e->receive_task; - sc = mpc55xx_edma_obtain_channel(&e->edma_receive); + sc = mpc55xx_edma_obtain_channel( + &e->edma_receive, + MPC55XX_INTC_DEFAULT_PRIORITY + ); ASSERT_SC(sc); for (i = 0; i < SMSC9218I_RX_JOBS; ++i) { @@ -1341,7 +1344,10 @@ static void smsc9218i_transmit_task(void *arg) /* Obtain transmit eDMA channel */ e->edma_transmit.id = e->transmit_task; - sc = mpc55xx_edma_obtain_channel(&e->edma_transmit); + sc = mpc55xx_edma_obtain_channel( + &e->edma_transmit, + MPC55XX_INTC_DEFAULT_PRIORITY + ); ASSERT_SC(sc); /* Setup transmit eDMA descriptors */ @@ -1410,8 +1416,6 @@ static void smsc9218i_transmit_task(void *arg) SMSC9218I_PRINTF("tx: done\n"); } -cleanup: - /* Release network semaphore */ rtems_bsdnet_semaphore_release(); @@ -1523,7 +1527,9 @@ static void smsc9218i_interrupt_init( pcr.B.PA = 2; pcr.B.OBE = 0; pcr.B.IBE = 1; +#if MPC55XX_CHIP_TYPE / 10 != 551 pcr.B.DSC = 0; +#endif pcr.B.ODE = 0; pcr.B.HYS = 0; pcr.B.SRC = 3; @@ -1534,7 +1540,9 @@ static void smsc9218i_interrupt_init( /* DMA/Interrupt Request Select */ rtems_interrupt_disable(level); dirsr.R = SIU.DIRSR.R; +#if MPC55XX_CHIP_TYPE / 10 != 551 dirsr.B.DIRS0 = 0; +#endif SIU.DIRSR.R = dirsr.R; rtems_interrupt_enable(level); @@ -1607,7 +1615,9 @@ static void smsc9218i_reset_signal_init(void) pcr.B.PA = 0; pcr.B.OBE = 1; pcr.B.IBE = 0; +#if MPC55XX_CHIP_TYPE / 10 != 551 pcr.B.DSC = 0; +#endif pcr.B.ODE = 0; pcr.B.HYS = 0; pcr.B.SRC = 3; -- cgit v1.2.3