Hi
I am using QDMA to perform memory copies in a C6455 (and eventually a C6457). This memory copy function is used, amongst other things, to help implement a memory read request supported by the application's debugging interface. I have found that if I 'accidentally' read unmapped memory, eg, the memory directly below chip-select 2, the transfer controller detects a bus error and essentially kills the EDMA3 peripheral and requires a power-on/system reset to recover.
I have implemented an interrupt handler to catch and clear this error condition but cannot work out how to abort/reset the affected transfer controller; even when I have cleared the error flag the transfer controller remains in the active state, effectively preventing any further transfers on that controller. Whilst such an error should not normally occur I would like to make my code robust enough to be able to recover from this error condition. Unfortunately the documentation does not appear to cover what steps should be taken to recover from transfer controller errors beyond explaining how to clear the error event flag. There appear to be a lot of status registers associated with the transfer controller, so I can see that a transfer is (not) in progress, but no obvious controller reset/transfer abort mechanism. Can you help?
Regards
Tim