MVME5500 not working with RTEMS 4.7 (CVS)

Eric Norum norume at aps.anl.gov
Thu Jul 28 18:59:22 UTC 2005


After discussing this with Kate Feng I have committed these changes.
Thanks!

(Now if only I could get the MVME2100 BSP working again ......)

On Jul 27, 2005, at 3:09 PM, Phillip Sorensen wrote:

>> Can you get this patch to Eric Norum so he can review and commit it?
>> Thanks.
>>
>
> In the end I needed to change three files to get the MVME5500 board  
> working.  I have attached the patch from my tree.
>
> 1. c/src/lib/libbsp/powerpc/mvme5500/startup/bspstart.c
>
> I added the Cpu_table.exceptions_in_RAM = TRUE; before the  
> initialize_exceptions() call since the exception handler address  
> routine know uses it.
>
>
> 2. c/src/lib/libbsp/powerpc/shared/clock/p_clock.c
>
> I removed the comments preventing the clockIrqData structure from  
> being initialized.
>
>
> c/src/lib/lipcpu/powerpc/mpc6xx/clock/c_clock.c
>
> Added the & to the assembly call in the clockIsq routine as shown  
> in PR#773.
>
>
> Phil Sorensen
> Index: c/src/lib/libbsp/powerpc/mvme5500/startup/bspstart.c
> ===================================================================
> RCS file: /usr1/CVS/rtems/c/src/lib/libbsp/powerpc/mvme5500/startup/ 
> bspstart.c,v
> retrieving revision 1.10
> diff -u -r1.10 bspstart.c
> --- c/src/lib/libbsp/powerpc/mvme5500/startup/bspstart.c    4 May  
> 2005 19:30:09 -0000    1.10
> +++ c/src/lib/libbsp/powerpc/mvme5500/startup/bspstart.c    27 Jul  
> 2005 19:35:18 -0000
> @@ -406,7 +406,9 @@
>    /*
>     * Initialize default raw exception hanlders. See vectors/ 
> vectors_init.c
>     */
> +  Cpu_table.exceptions_in_RAM = TRUE;
>    initialize_exceptions();
> +
>    /*
>     * Init MMU block address translation to enable hardware
>     * access
> Index: c/src/lib/libbsp/powerpc/shared/clock/p_clock.c
> ===================================================================
> RCS file: /usr1/CVS/rtems/c/src/lib/libbsp/powerpc/shared/clock/ 
> p_clock.c,v
> retrieving revision 1.7
> diff -u -r1.7 p_clock.c
> --- c/src/lib/libbsp/powerpc/shared/clock/p_clock.c    17 May 2005  
> 15:06:22 -0000    1.7
> +++ c/src/lib/libbsp/powerpc/shared/clock/p_clock.c    27 Jul 2005  
> 19:35:18 -0000
> @@ -18,15 +18,13 @@
>  #include <bsp/irq.h>
>  #include <libcpu/c_clock.h>
>
> -static rtems_irq_connect_data clockIrqData;
> -/*
> - = {BSP_DECREMENTER,
> +static rtems_irq_connect_data clockIrqData = {BSP_DECREMENTER,
>                            clockIsr,
>                                                NULL,
>                            (rtems_irq_enable)clockOn,
>                            (rtems_irq_disable)clockOff,
>                            (rtems_irq_is_enabled) clockIsOn};
> -*/
> +
>  int BSP_disconnect_clock_handler (void)
>  {
>    return BSP_remove_rtems_irq_handler (&clockIrqData);
> Index: c/src/lib/libcpu/powerpc/mpc6xx/clock/c_clock.c
> ===================================================================
> RCS file: /usr1/CVS/rtems/c/src/lib/libcpu/powerpc/mpc6xx/clock/ 
> c_clock.c,v
> retrieving revision 1.13
> diff -u -r1.13 c_clock.c
> --- c/src/lib/libcpu/powerpc/mpc6xx/clock/c_clock.c    15 Apr 2005  
> 18:30:11 -0000    1.13
> +++ c/src/lib/libcpu/powerpc/mpc6xx/clock/c_clock.c    27 Jul 2005  
> 19:35:20 -0000
> @@ -81,7 +81,7 @@
>     *  The driver has seen another tick.
>     */
>    do {
> -    asm volatile ("mfdec %0; add %0, %0, %1; mtdec % 
> 0":"=r"(decr):"r"(Clock_Decrementer_value));
> +    asm volatile ("mfdec %0; add %0, %0, %1; mtdec % 
> 0":"=&r"(decr):"r"(Clock_Decrementer_value));
>
>      Clock_driver_ticks += 1;
>
>

-- 
Eric Norum <norume at aps.anl.gov>
Advanced Photon Source
Argonne National Laboratory
(630) 252-4793





More information about the users mailing list