On Wed, 22 Mar 2017, Manuel Bouyer wrote:
On Wed, Mar 22, 2017 at 08:54:21AM +0100, Martin Husemann wrote:On Wed, Mar 22, 2017 at 04:35:21PM +0900, Masanobu SAITOH wrote:So what should we do? A) modify pci_mapreg_map(). Stop setting BUS_SPACE_MAP_PREFETCHABLE by defalut when prefetchable bit is set. If a driver really know the whole area of the BAR is prefetchable, set BUS_SPACE_MAP_PREFETCHABLE in the 4th argument(busflags) of pci_mapreg_map(). pci_mapreg_map() check for both the 4th argument and the prefetchable bit, it sets BUS_SPACE_MAP_PREFETCHABLE only when both bits are set.[..]I prefer A.This gets my vote too.Same here.
I'm no expert in this area, but this option makes the most sense to me, too.
+------------------+--------------------------+------------------------+ | Paul Goyette | PGP Key fingerprint: | E-mail addresses: | | (Retired) | FA29 0E3B 35AF E8AE 6651 | paul at whooppee.com | | Kernel Developer | 0786 F758 55DE 53BA 7731 | pgoyette at netbsd.org | +------------------+--------------------------+------------------------+