Bug 55449

Summary: [NV15] Problems identifying card on PPC big endian
Product: xorg Reporter: Dmitry Eremin-Solenikov <dbaryshkov>
Component: Driver/nouveauAssignee: Nouveau Project <nouveau>
Status: RESOLVED INVALID QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium    
Version: unspecified   
Hardware: PowerPC   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Dmitry Eremin-Solenikov 2012-09-29 12:28:28 UTC
I'm trying to bootstrap nouveau on the NV15 (Geforce 2 GTS / Asus V7700 TVR) card on my PowerPC board. System hangs early if the driver is made builtin into the kernel. I tried building the  driver as module and here is the log:


nouveau 0000:f0:10.0: enabling device (0000 -> 0002)
nouveau 0000:f0:10.0: enabling bus mastering
[drm] nouveau 0000:f0:10.0: Detected an NV30 generation card (0xa3005001)
[drm] nouveau 0000:f0:10.0: Unable to get the OF node
[drm] nouveau 0000:f0:10.0: Checking PRAMIN for VBIOS
[drm] nouveau 0000:f0:10.0: ... BIOS signature not found
[drm] nouveau 0000:f0:10.0: Checking PROM for VBIOS
[drm] nouveau 0000:f0:10.0: ... appears to be valid
[drm] nouveau 0000:f0:10.0: Using VBIOS from PROM
[drm] nouveau 0000:f0:10.0: BMP BIOS found
[drm] nouveau 0000:f0:10.0: BMP version 5.6
[drm] nouveau 0000:f0:10.0: Bios version 02.15.01.14
[drm] nouveau 0000:f0:10.0: No useful DCB data in VBIOS
[drm] nouveau 0000:f0:10.0: MXM: no VBIOS data, nothing to do
[drm] nouveau 0000:f0:10.0: Adaptor not initialised, running VBIOS init tables.
[drm] nouveau 0000:f0:10.0: PTIMER: unknown input clock freq
[TTM] Zone  kernel: Available graphics memory: 501592 kiB
[TTM] Initializing pool allocator
[TTM] Initializing DMA pool allocator
[drm] nouveau 0000:f0:10.0: Detected 0MiB VRAM (SDRAM)
[drm] nouveau 0000:f0:10.0: 128 MiB GART (aperture)
[drm:drm_mm_takedown] *ERROR* Memory manager not clean. Delaying takedown
[drm:drm_mm_takedown] *ERROR* Memory manager not clean. Delaying takedown
[TTM] Finalizing pool allocator
[TTM] Finalizing DMA pool allocator
[TTM] Zone  kernel: Used memory at exit: 9 kiB
nouveau: probe of 0000:f0:10.0 failed with error -22


System information: PowerPC 970FX, Linux v3.6-rc7. AGP GART support is disabled as AGP is not working properly on this system.
Comment 1 Ilia Mirkin 2013-08-19 15:59:55 UTC
OK, so the fundamental problem is that it's being detected as a NV30 card instead of NV15 due to a lack of byteswapping when reading in the the PMC.ID register (which should have come out as 0x015000a3). Once that goes wrong, all bets are off.

I know that another user was pretty close to getting a NV4x card to work (benh, the ppc maintainer), which would largely go through the same init paths (at least as far as mmio reads/writes are concerned). Could you test a more recent kernel (like 3.10 or 3.11) and see if this particular issue is still there?
Comment 2 Ilia Mirkin 2013-09-21 17:39:06 UTC
No retest in a month, closing as invalid.

Note that NV15 did not have built-in big endian support for at least some stuff, not sure if nouveau handles that. But at least I thought that for basic MMIO stuff, it was supposed to work...

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.