On Wed, Apr 10, 2019 at 02:05:38PM +0000, Flavio Suligoi wrote: > Hi Mark, > > While this isn't going to hurt anything and might actually help so it's > > fine doesn't this also suggest that there's an issue with deferred probe > > going on as well? > I think that the problem could be related to how the DMA channel is requested. > At the moment the function used are: > pxa2xx_spi_dma_setup --> dma_request_slave_channel_compat --> > --> __dma_request_slave_channel_compat --> dma_request_slave_channel --> > --> dma_request_chan > Actually the final function "dma_request_chan" return > the channel number or "-EPROBE_DEFER" if it's not ready. > But this information ("-EPROBE_DEFER") is lost in the penultimate function > "dma_request_slave_channel", which return only the chann, if all is ok, or > NULL, in case of errors. > So the deferral mechanism is not used. Right, yes - that analysis seems correct. The interfaces seem a bit weird here but fixing them looks like the most complete and robust fix.
Attachment:
signature.asc
Description: PGP signature