> LGTM. > Though I would expect that call back optional, so, it means that I2C > core, perhaps, may put some generic one as a stub. Right, stupid me. After some many variations, I missed to add one condition to this version. It should have been something like the following: > > - ret = adap->algo->master_xfer(adap, msgs, num); > > + if (in_atomic() || irqs_disabled()) if (adap->algo->master_xfer_irqless && (in_atomic() || irqs_disabled())) > > + ret = adap->algo->master_xfer_irqless(adap, msgs, num); > > + else > > + ret = adap->algo->master_xfer(adap, msgs, num); > > + > > if (ret != -EAGAIN) > > break;
Attachment:
signature.asc
Description: PGP signature