On Tue, 1 Sep 2020 at 17:06, Christoph Hellwig <hch@xxxxxx> wrote: > > On Tue, Sep 01, 2020 at 05:04:38PM +0200, Ulf Hansson wrote: > > +#ifdef CONFIG_HAS_DMA > > +static int mmc_spi_dma_alloc(struct mmc_spi_host *host) > > +{ > > + struct spi_device *spi = host->spi; > > + struct device *dev; > > + > > + if (!spi->master->dev.parent->dma_mask) > > + return 0; > > I still don't think this makes sense, as the dma_mask should always > be non-NULL here. If that is the case, I wonder how the driver could even have worked without DMA. Because in the existing code, host->dma_dev gets assigned to spi->master->dev.parent->dma_mask - which seems to turn on the DMA usage in the driver. What am I missing? Kind regards Uffe