> > Note that the I2C drives uses subsys_initcall() for historic reasons, > > while the DMA driver uses module_init(). This is hard to revert without > > introducing potential regressions on older boards. So, the I2C DMA > > support needs to handle deferred probe definately. I am with Laurent, I > > don't see any other way, but I'd be glad to be enlightened... > > While I believe that requesting the channel at transfer time is the good > solution, I think we should still try to move to module initcalls where > possible. The risk of regressions is real so proper testing is needed. My > question is, have you tried it ? I would need to test all boards using this driver to not fail booting. Usually I2C drivers are moved to subsys_initcall because they need access to something critical (PMIC, GPIOs...) early. I don't see a sane way to do that testing. Other than that, even if we move to module_init, we reduce the chance of getting a deferred probe, but we do not eliminate it...
Attachment:
signature.asc
Description: Digital signature