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. --- .../libbsp/powerpc/mpc55xxevb/clock/clock-config.c | 25 +++++++--------------- 1 file changed, 8 insertions(+), 17 deletions(-) (limited to 'c/src/lib/libbsp/powerpc/mpc55xxevb/clock') diff --git a/c/src/lib/libbsp/powerpc/mpc55xxevb/clock/clock-config.c b/c/src/lib/libbsp/powerpc/mpc55xxevb/clock/clock-config.c index b3dc3bddab..0d1561880f 100644 --- a/c/src/lib/libbsp/powerpc/mpc55xxevb/clock/clock-config.c +++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/clock/clock-config.c @@ -49,7 +49,7 @@ static void mpc55xx_clock_handler_install( rtems_isr_entry isr, rtems_status_code sc = RTEMS_SUCCESSFUL; sc = mpc55xx_interrupt_handler_install( - MPC55XX_IRQ_EMIOS_GET_REQUEST( MPC55XX_CLOCK_EMIOS_CHANNEL), + MPC55XX_IRQ_EMIOS( MPC55XX_CLOCK_EMIOS_CHANNEL), "clock", RTEMS_INTERRUPT_UNIQUE, MPC55XX_INTC_MIN_PRIORITY, @@ -96,26 +96,17 @@ static void mpc55xx_clock_initialize( void) csr.B.FLAG = 1; regs->CSR.R = csr.R; + /* Set internal counter start value */ + regs->CCNTR.R = 1; + /* Set timer period */ regs->CADR.R = (uint32_t) interval - 1; - /* Set unused registers */ - regs->CBDR.R = 0; - regs->CCNTR.R = 0; -#if MPC55XX_CHIP_TYPE != 5554 - /* This is reserved on the MPC5554. - */ - regs->ALTCADR.R = 0; -#endif - /* Set control register */ - /* The mode change, made by Thomas for GW_LCFM support, breaks interrupts - * on the MPC5554. - */ -#if MPC55XX_CHIP_TYPE == 5554 - ccr.B.MODE = MPC55XX_EMIOS_MODE_MC_UP_INT_CLK; -#else +#if MPC55XX_CHIP_TYPE / 10 == 551 ccr.B.MODE = MPC55XX_EMIOS_MODE_MCB_UP_INT_CLK; +#else + ccr.B.MODE = MPC55XX_EMIOS_MODE_MC_UP_INT_CLK; #endif ccr.B.UCPREN = 1; ccr.B.FEN = 1; @@ -135,7 +126,7 @@ static void mpc55xx_clock_cleanup( void) /* Remove interrupt handler */ sc = rtems_interrupt_handler_remove( - MPC55XX_IRQ_EMIOS_GET_REQUEST( MPC55XX_CLOCK_EMIOS_CHANNEL), + MPC55XX_IRQ_EMIOS( MPC55XX_CLOCK_EMIOS_CHANNEL), (rtems_interrupt_handler) Clock_isr, NULL ); -- cgit v1.2.3