[PATCH v2] nouveau: fix OpenFirmware support

Laurent Vivier laurent at vivier.eu
Wed Oct 14 08:20:29 PDT 2015



Le 14/10/2015 16:52, Ilia Mirkin a écrit :
> On Wed, Oct 14, 2015 at 10:20 AM, Olaf Hering <olaf at aepfle.de> wrote:
>> On Sun, Oct 11, Laurent Vivier wrote:
>>
>>> On PowerMac G5 (and I think on all OpenFirmware platforms), nvbios_pcirTp()
>>> returns NULL. But in fact the OpenFirmware has given us the size
>>> we can store in image->size.
>>
>>> CC: imirkin at alum.mit.edu
>>> Signed-off-by: Laurent Vivier <laurent at vivier.eu>
>>
>> Tested-by: Olaf Hering <olaf at aepfle.de>
>>
>> Broken since a while already...
>> https://lists.ozlabs.org/pipermail/linuxppc-dev/2015-March/126737.html
> 
> FTR, looks like my version is upstream now:
> https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=25d295882a1adfcdaaad85369289677b87c7c8f0
> 
> I agree that my of_size thing was a bit of a hack, if you want to redo
> it by removing of_size/of_read from shadowof.c and copying it in at
> init time (also a hack, IMHO), I certainly wouldn't object. As before,
> it's Ben's call though.

It's nice to have a fix upstream.

I'll send a patch to remove the of_size.

Rereading your patch and mine, I think we don't need no_pcir, we can do
instead:

	if (!nvbios_rd16(bios, base + 0x18)) {
		/* no PCIr */
                image.base = 0;
                image.type = 0;
                image.size = bios->size;
                image.last = 1;
	} else {
		if (!shadow_fetch(bios, mthd, offset + 0x1000)) {

...
What is you opinion ?

Laurent



More information about the dri-devel mailing list