On Fri, Feb 05, 2021 at 02:42:23PM +0100, Takashi Iwai wrote: > On Fri, 05 Feb 2021 14:13:02 +0100, > Andrew Lunn wrote: > > > > Hi Takashi > > > > > Indeed, looks so. In most cases, this doesn't matter since both point > > > to the same device object. In some cases like xhci-plat HCD, they > > > differ. And sysdev might be a better choice from the consistency > > > POV. > > > > > > But this brought an interesting question, too. eg. USB chipidea > > > HCD uses platform devices for both controller and sysdev, and I > > > couldn't find any DMA mask setup. So, no matter what to use, the uwc > > > driver would be broken on this... Maybe it's just not covered. > > > > Did you do a git bisect to see what actually broke it? "1161db6776bd: > > media: usb: pwc: Don't use coherent DMA buffers for ISO transfer" > > introduced the code, not the regression. If we understand the > > regression, that might give us the answer about chipidea. > > It's the recent DMA core change, the commit f959dcd6ddfd ("dma-direct: > Fix potential NULL pointer dereference"). But basically it's a right > fix, and the driver hitting this "regression" has been already broken > but casually worked without setting a proper DMA mask. So for the chipidea, it also just 'casually worked'. But now it probably does not. But that is a separate chipidea issue. None of my ARM systems use the chipidea IP core, so i cannot test anything. Andrew