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
Created attachment 9543 [details] the Xorg log
Created attachment 9544 [details] the kernel log
Created attachment 9545 [details] the patch to make nouveau compiling under FreeBSD
(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 ?
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.
Reassigning bugs to the list.
Should this bug be closed (the patch is obviously much too old)?
< 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.