Thread (9 messages) flat view 9 messages, 5 authors, 2019-03-11

Re: [PATCH] net: mvpp2: avoid bouncing buffers

From: Christoph Hellwig <hch@infradead.org>
Date: 2018-08-20 06:23:40
Also in: lkml

On Sun, Aug 19, 2018 at 07:55:05PM -0700, David Miller wrote:
From: Brian Brooks <redacted>
Date: Sun, 19 Aug 2018 21:47:30 -0500
quoted
@@ -5126,6 +5126,12 @@ static int mvpp2_probe(struct platform_device *pdev)
 	}
 
 	if (priv->hw_version == MVPP22) {
+		/* Platform code may have set dev->dma_mask to point
+		 * to dev->coherent_dma_mask, but we want to ensure
+		 * they take different values due to comment below.
+		 */
+		pdev->dev.dma_mask = &priv->dma_mask;
The platform code might be doing this exactly because it cannot support
different coherent and streaming DMA masks.

Well, in any case, the platform code is doing it for a reason and
overriding this in a "driver" of all places seems totally
inappropriate and at best a layering violation.

I would rather you fix this in a way that involves well defined APIs
that set the DMA masks or whatever to the values that you need, rather
than going behind the platform code's back and changing the DMA mask
pointer like this.
Agreed.  What platform do you see this issue on?
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help