Re: [PATCH V9 3/5] i2c: tegra: Add DMA support

From: Dmitry Osipenko
Date: Tue Feb 05 2019 - 01:21:39 EST


05.02.2019 4:37, Sowjanya Komatineni ÐÐÑÐÑ:
>> 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
>

Thank you very much for keeping up with the new versions! The v10 is reviewed now. It is very close to final, but there is one new fatal bug there that leaves FIFO control register unconfigured in a case of error. I also pointed at some other minor cases that could be improved, please see my replies.