Hi Fignon,
This problem is related to the SPMSC2 being a write-once register (at least bits PDC and PPDC are write-once).
When you write:
SPMSC2_PDC = 1;
The compiler generates a read-modify-write BSET instruction that reads the whole SPMSC2 register, sets bit PDC and writes the result back into SPMSC2. Note that PPDC will be written zero, because that is the reset value for the PPDC bit.
When you attempt to modify the PPDC bit, the second write in SPMSC2 produces no effect (PDC is set and PPDC is reset).
To avoid such problems you need to write both bits in a single operation:
SPMSC2 = 0x03;
Best regards,