Hi Rich, On Wed, Sep 2, 2020 at 5:43 PM Rich Felker <dalias@xxxxxxxx> wrote: > On Wed, Sep 02, 2020 at 10:31:47AM +0200, Ulf Hansson wrote: > > On Tue, 1 Sep 2020 at 17:40, Christoph Hellwig <hch@xxxxxx> wrote: > > > On Tue, Sep 01, 2020 at 05:36:17PM +0200, Ulf Hansson wrote: > > > > > 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? > > > > > > Do you know of other non-DMA users? For SH nommu it probably worked > > > > I don't know of other non-DMA users. As I said, I wish someone could > > step in and take better care of mmc_spi - as I know it's being used a > > lot. > > > > > because SH nommu used to provide a DMA implementation that worked > > > fine for streaming maps, but was completely broken for coherent > > > allocation. And this driver appears to only use the former. > > > > Alright, so you are saying the DMA support may potentially never have > > been optional to this driver. In any case, I can remove the check in > > $subject patch, as it shouldn't matter. > > DMA support was always optional, because even on systems where DMA is > present, it doesn't necessarily mean the SPI controller uses DMA. In > particular, pure bit-banged SPI via GPIOs doesn't have DMA, but has > always worked. See my previous reply to Christoph about host->dma_dev > for my current-best understanding of what's going on here. > > > Anyway, let's see what Rich thinks of this. I am curious to see if the > > patch works on his SH boards - as I haven't been able to test it. > > I'll rebuild and retest just to confirm, but I already tested a > functionally equivalent patch that just did the #ifdef inline (rather > than moving the logic out to separate functions) and it worked fine. Hence, Tested-by? ;-) Thanks! Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds