[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3ed1ccfe-d7ca-11b9-17b3-303d1ae1bb0f@lwfinger.net>
Date: Mon, 10 Jun 2019 13:44:48 -0500
From: Larry Finger <Larry.Finger@...inger.net>
To: Benjamin Herrenschmidt <benh@...nel.crashing.org>,
Aaro Koskinen <aaro.koskinen@....fi>,
Christoph Hellwig <hch@....de>,
Christian Zigotzky <chzigotzky@...osoft.de>,
Michael Ellerman <mpe@...erman.id.au>
Cc: linuxppc-dev@...ts.ozlabs.org, linux-wireless@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [BISECTED REGRESSION] b43legacy broken on G4 PowerBook
On 6/7/19 11:21 PM, Benjamin Herrenschmidt wrote:
>
>> Please try the attached patch. I'm not really pleased with it and I will
>> continue to determine why the fallback to a 30-bit mask fails, but at least this
>> one works for me.
>
> Your patch only makes sense if the device is indeed capable of
> addressing 31-bits.
>
> So either the driver is buggy and asks for a too small mask in which
> case your patch is ok, or it's not and you're just going to cause all
> sort of interesting random problems including possible memory
> corruption.
Of course the driver may be buggy, but it asks for the correct mask.
This particular device is not capable of handling 32-bit DMA. The driver detects
the 32-bit failure and falls back to 30 bits. It works on x86, and did on PPC32
until 5.1. As Christoph said, it should always be possible to use fewer bits
than the maximum.
Similar devices that are new enough to use b43 rather than b43legacy work with
new kernels; however, they have and use 32-bit DMA.
Larry
Powered by blists - more mailing lists