Bug 10591 - nouveau Dma Queue Hang on FreeBSD
Summary: nouveau Dma Queue Hang on FreeBSD
Status: RESOLVED FIXED
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/nouveau (show other bugs)
Version: 7.2 (2007.02)
Hardware: x86 (IA32) FreeBSD
: medium normal
Assignee: Nouveau Project
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-04-10 00:59 UTC by Alexander Eichner
Modified: 2009-08-08 08:12 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
the Xorg log (43.00 KB, text/x-log)
2007-04-10 01:00 UTC, Alexander Eichner
no flags Details
the kernel log (24.97 KB, text/x-log)
2007-04-10 01:01 UTC, Alexander Eichner
no flags Details
the patch to make nouveau compiling under FreeBSD (8.94 KB, text/x-diff)
2007-04-10 01:01 UTC, Alexander Eichner
no flags Details
nouveau BSD patch (9.65 KB, patch)
2007-04-21 15:39 UTC, Alexander Eichner
no flags Details | Splinter Review

Description Alexander Eichner 2007-04-10 00:59:58 UTC
I tried to get nouveau working on FreeBSD. When I start X (Xorg 7.2) I get a Dma Queue Hang.
The kernel, the Xorg log and the patch to get nouveau compiling under FreeBSD are attached.

lspci output from linux:
00:00.0 Host bridge: VIA Technologies, Inc. VT8377 [KT400/KT600 AGP] Host Bridge (rev 80)
        Subsystem: ASRock Incorporation K7VT6 motherboard
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR- <PERR-
        Latency: 8
        Region 0: Memory at e0000000 (32-bit, prefetchable) [size=64M]
        Capabilities: [80] AGP version 3.5
                Status: RQ=32 Iso- ArqSz=0 Cal=2 SBA+ ITACoh- GART64- HTrans- 64bit- FW- AGP3+ Rate=x4,x8
                Command: RQ=1 ArqSz=0 Cal=2 SBA+ AGP+ GART64- 64bit- FW- Rate=x8
        Capabilities: [c0] Power Management version 2
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

01:00.0 VGA compatible controller: nVidia Corporation NV36.4 [GeForce FX 5700VE] (rev a1) (prog-if 00 [VGA])
        Subsystem: Micro-Star International Co., Ltd. Unknown device 9573
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 248 (1250ns min, 250ns max)
        Interrupt: pin A routed to IRQ 11
        Region 0: Memory at de000000 (32-bit, non-prefetchable) [size=16M]
        Region 1: Memory at c0000000 (32-bit, prefetchable) [size=256M]
        [virtual] Expansion ROM at dfee0000 [disabled] [size=128K]
        Capabilities: [60] Power Management version 2
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-
        Capabilities: [44] AGP version 3.0
                Status: RQ=32 Iso- ArqSz=0 Cal=3 SBA+ ITACoh- GART64- HTrans- 64bit- FW+ AGP3+ Rate=x4,x8
                Command: RQ=32 ArqSz=0 Cal=0 SBA+ AGP+ GART64- 64bit- FW- Rate=x8
Comment 1 Alexander Eichner 2007-04-10 01:00:26 UTC
Created attachment 9543 [details]
the Xorg log
Comment 2 Alexander Eichner 2007-04-10 01:01:02 UTC
Created attachment 9544 [details]
the kernel log
Comment 3 Alexander Eichner 2007-04-10 01:01:52 UTC
Created attachment 9545 [details]
the patch to make nouveau compiling under FreeBSD
Comment 4 Stephane Marchesin 2007-04-20 15:26:17 UTC
(In reply to comment #3)
> Created an attachment (id=9545) [details]
> the patch to make nouveau compiling under FreeBSD
> 

Ok, I'd like to merge it, even if it doesn't work yet.

There's just one thing : could you please make the pci read functions drm_* functions (and live in the drm_ files) instead of nouveau_ ones ?
Comment 5 Alexander Eichner 2007-04-21 15:39:13 UTC
Created attachment 9681 [details] [review]
nouveau BSD patch

as requested i moved the function to read from pci config space into drmP.h and renamed it to drm_pci_config_read.
Secondly I corrected the use_* variables in BSD nouveau_drv.c to match the ones in linux-core nouveau_drv.c
At last i added the missing bits for NetBSD and OpenBSD but i couldn't test them so it is possible that they are broken.
Comment 6 Stephane Marchesin 2007-05-01 14:41:58 UTC
Reassigning bugs to the list.
Comment 7 Maarten Maathuis 2008-02-01 11:17:28 UTC
Should this bug be closed (the patch is obviously much too old)?
Comment 8 Pekka Paalanen 2009-08-08 08:12:54 UTC
< rnoland> pq: i've done all of that and a lot more...

So closing this ancient entry as fixed.


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.