I have a problem using the MPIC on the P4080.
I cant unmask the internal interrupt 1.
When I do the following:
const uint32_t MPIC_IIVPR1 = 0x40000 + 0x10200 + 32*1;
uint32_t value = (8<<(31-15)) | (1) & ~(1 << 31);
cout << "value=" << hex << value << "\n\r";
*((uint32_t *)(CCSRBAR + MPIC_IIVPR1)) = value;
cout << "MPIC_IIVPR1=" << *((uint32_t *)(CCSRBAR + MPIC_IIVPR1)) << "\n\r";
I get as output
That means the interrupt is masked (P4080RM.pdf p. 1699). Why does this happen and what do I have to do to unmask it?
And am I right that if a watchdog interrupt in a core appears, the corresponding bit in the MPIC_WSRSR0 (Watchdog status register) should be set? What else do I have to do to see watchdog interrupt in other cores?
Thanks in advance.