diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2011-08-31 16:03:10 +0000 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2011-08-31 16:03:10 +0000 |
commit | 9e7758b2774cd3410d3f2477181e8a62a89399ce (patch) | |
tree | ada101a509e3178e33cbaa17c469699b4e7d4b89 /c/src/lib/libbsp/powerpc/mpc55xxevb/network | |
parent | 2011-08-31 Sebastian Huber <sebastian.huber@embedded-brains.de> (diff) | |
download | rtems-9e7758b2774cd3410d3f2477181e8a62a89399ce.tar.bz2 |
2011-08-31 Sebastian Huber <sebastian.huber@embedded-brains.de>
* 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.
Diffstat (limited to 'c/src/lib/libbsp/powerpc/mpc55xxevb/network')
-rw-r--r-- | c/src/lib/libbsp/powerpc/mpc55xxevb/network/if_smc.c | 8 | ||||
-rw-r--r-- | c/src/lib/libbsp/powerpc/mpc55xxevb/network/smsc9218i.c | 18 |
2 files changed, 20 insertions, 6 deletions
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 <bsp.h> + +#ifdef HAS_SMC91111M + #include <mpc55xx/mpc55xx.h> #include <mpc55xx/regs.h> #include <rtems.h> -#include <bsp.h> - #include <bsp/irq.h> #include <rtems/bspIo.h> #include <libcpu/powerpc-utility.h> @@ -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; |