This fixes multiple error handling sequences. First, when component_add()
fails in probe, the requested dma channels should be released. Then,
in remove, the clean up sequence should be reverse order, thus, call
component_del() before dma channel release. Last, the all dma channels
should be release without checking the active flag, then use
dmaengine_terminate_sync() as dmaengine_terminate_all() is deprecated.