I'm trying to enable and disable interrupts on my MCF5282.  I'm doing:
 
void
interrupt_enable()
{
 printf("interrupt enable\n");
 asm {
  move.l #0x00002000,d0
  move.w d0,SR
 }
}
void
interrupt_disable()
{
 printf("interrupt disable\n");
 asm {
  move.l #0x00002700,d0
  move.w d0,SR
 }
}
 
When I call these functions manually, everything is OK.  However, when I go into an interrupt (from the FEC) and attempt to disable further interrupts, I call the disable function but interrupts never stop.
Does anyone know what is happening here?