> I know that APB DMA driver enables flow control based on the channels spec, but still won't hurt to explicitly show that channels are flow-controlled. Ideally APB DMA driver should respect the device_fc field. > > dma_sconfig.device_fc = true; Dmitry, Thanks for all feedback. Sent updated patch V10 which has all below V9 feedback changes. - Added explicit flow control settings to dma slave config and error check so need to move releasing of dma resources to separate function as I am using it multiple places (when dma slave config failed, on tegra drive remove, tegra_i2c_init_dma). As a part of this, moved error handling also inside init_dma as you suggested in earlier feedback. - Added apbdma hw support flag to now allow Tegra186 and later use APBDMA driver. - Updated to register tegra_i2c_driver from module level rather than subsys level. - Fixed timeout for bus clear to 50ms (10ms is enough but considering slaves responding slow). Also added adapter timeout to 6s considering worst case transfer rate. - other minor fixes. Please review. - Sowjanya