The probe function of the atmel-quadspi driver got quite convoluted, especially since the addition of SAMA7G5 support, that was forward-ported from an older vendor kernel. To alleivate this - and similar problems in the future - an effort was made to migrate as many functions as possible, to their devm_ managed counterparts. The few functions, which did not yet have a devm_ variant, are added in patch 1 and 2 of this series. Patch 3 and 4 then use these APIs to simplify and fix the probe() function. Bence Csókás (4): dma: Add devm_dma_request_chan() pm: runtime: Add new devm functions spi: atmel-quadspi: Use `devm_dma_request_chan()` spi: atmel-quadspi: Fix unbalanced pm_runtime by using devm_ API drivers/base/power/runtime.c | 36 ++++++++++++++++++++++++++++++++++++ drivers/dma/dmaengine.c | 30 ++++++++++++++++++++++++++++++ drivers/spi/atmel-quadspi.c | 62 ++++++++++++++++---------------------------------------------- include/linux/dmaengine.h | 7 +++++++ include/linux/pm_runtime.h | 4 ++++ 5 files changed, 93 insertions(+), 46 deletions(-) -- 2.48.1