MVME2100 locks up during interrupt setup

Till Straumann strauman at slac.stanford.edu
Thu Jul 28 19:34:23 UTC 2005


openpic_init() does poll indefinitely

while ( openpic_read() & OPENPIC_ACTIVITY )
   /* wait until openpic idle */ ;

Either you experience a hardware problem or a
caching/volatility bug. Disassembly helps finding
the latter...

HTH
T.


On Thursday 28 July 2005 10:45 am, Eric Norum wrote:
> To try and track down the location of the problems I'm seeing on the
> MVME2100 (RTEMS CVS version) I added some printf() calls to the BSP
> startup code:
>     printk("OpenPIC timer frequency is ");
>      if (timerfreq)
>      printk("%d Hz\n", timerfreq);
>      else
>      printk("not set\n");
>
>      if ( main_pic )
>      {
>          /* Initialize timer interrupts */
>          for (i = 0; i < OPENPIC_NUM_TIMERS; i++) {
>              /* Disabled, Priority 0 */
> printk("openpic_inittimer(%d, 0, OPENPIC_VEC_TIMER+%d)\n", i, i);
>              openpic_inittimer(i, 0, OPENPIC_VEC_TIMER+i);
>              /* No processor */
> printk("openpic_maptimer(%d, 0)\n", i);
>              openpic_maptimer(i, 0);
>          }
> printk("Done openpic_init/map\n");
>
>          /* Initialize IPI interrupts */
>          for (i = 0; i < OPENPIC_NUM_IPI; i++) {
>              /* Disabled, Priority 0 */
>              openpic_initipi(i, 0, OPENPIC_VEC_IPI+i);
>          }
>
>
>
> What I see is:
> Now booting...
> -----------------------------------------
> Welcome to rtems-4.6.99.1(PowerPC/PowerPC 603e/mvme2100) on MVME 2100
> -----------------------------------------
> pci : Configuring interrupt routing for 'MVME 2100'
> pci : Device 0:00 routed to interrupt_line 16
> pci : Device 0:0D routed to interrupt_line 23
> pci : Device 0:0E routed to interrupt_line 17
> WARNING: unable to allocate page table, keeping DBAT0
> WARNING: unable to setup page tables VME bridge must share PCI space
> OpenPIC Version ? (2 CPUs and 290 IRQ sources) at 0x0003FFFF
> OpenPIC Vendor 120 (Unknown), Device 168 (Unknown), Stepping 129
> OpenPIC timer frequency is 25274488 Hz
> openpic_inittimer(0, 0, OPENPIC_VEC_TIMER+0)
> openpic_maptimer(0, 0)
> openpic_inittimer(1, 0, OPENPIC_VEC_TIMER+1)
> openpic_maptimer(1, 0)
> openpic_inittimer(2, 0, OPENPIC_VEC_TIMER+2)
>
>
>
>
> So it appears that the call to openpic_inittimer(2, 0,
> OPENPIC_VEC_TIMER+2) is where things are locking up.
> Suggestions?
> It's been a while since I used the MVME2100 BSP so it's not clear to
> me when the problem was introduced.



More information about the users mailing list