Other Parts Discussed in Thread: C2000WARE
I saw in the TRM that a reset has to be done by first putting the module in init state through the INIT bit of the CAN_CTL register and then setting the SWR bit of that same register.
In the C2000Ware code base, I can see that the write of the SWR bit is surrounded by EALLOW/EDIS calls while the register is not stated as EALLOW protected (which seems to be true as the write of Init bit is not surrounded in a similar way) nor is the field stated to be.
Is that EALLOW/EDIS surrounding really required ? (in which case, TRM would need to be updated for this processor and the other embedding this same CAN peripheral).