MACH64: Caught signal 11 (Segmentation fault)

Morgan Wesström xorg at xn--wesstrm-f1a.se
Wed Apr 19 19:08:48 UTC 2023


On 2023-04-18 23:06, Alex Deucher wrote:
> Make sure the PCI register BAR is properly mapped in the ddx.  Those old ddxes required direct access to the hardware in the X server.
> 
> Alex
> 

Thank you for replying, Alex. My knowledge of hardware on this level is rather limited and I humbly ask for some help understanding exactly what I need to do. Do I need to hardcode the video cards memory and I/O regions into the driver itself somewhere and recompile or do I need to add them to the Xorg.conf? Or do I need to tell the kernel somehow, when it loads, to configure the card in some special way?

I tried adding the following lines to Xorg.conf after looking in the output from lspci and dmesg but there was no difference in behaviour.

	MemBase     0xfd000000
	IOBase      0x2000

I'm most likely misunderstanding what I need to do because since lspci and dmesg can extract such info from the system itself I would assume the driver could too.

Here is the output from lspci -vv:

01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Rage Mobility AGP 2x Series (rev 64) (prog-if 00 [VGA controller])
	Subsystem: Fujitsu Limited. Rage Mobility AGP 2x Series
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR- FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 66 (2000ns min), Cache Line Size: 32 bytes
	Interrupt: pin A routed to IRQ 9
	Region 0: Memory at fd000000 (32-bit, non-prefetchable) [size=16M]
	Region 1: I/O ports at 2000 [size=256]
	Region 2: Memory at fc100000 (32-bit, non-prefetchable) [size=4K]
	Expansion ROM at 000c0000 [virtual] [disabled] [size=128K]
	Capabilities: [50] AGP version 1.0
		Status: RQ=256 Iso- ArqSz=0 Cal=0 SBA+ ITACoh- GART64- HTrans- 64bit- FW- AGP3- Rate=x1,x2
		Command: RQ=1 ArqSz=0 Cal=0 SBA- AGP- GART64- 64bit- FW- Rate=<none>
	Capabilities: [5c] Power Management version 1
		Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
		Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
	Kernel driver in use: atyfb
	Kernel modules: atyfb

And the video related lines from dmesg:

[    0.936593] pci_bus 0000:01: extended config space not accessible
[    0.936998] pci 0000:01:00.0: [1002:4c4d] type 00 class 0x030000
[    0.937119] pci 0000:01:00.0: reg 0x10: [mem 0xfd000000-0xfdffffff]
[    0.937213] pci 0000:01:00.0: reg 0x14: [io  0x2000-0x20ff]
[    0.937306] pci 0000:01:00.0: reg 0x18: [mem 0xfc100000-0xfc100fff]
[    0.937422] pci 0000:01:00.0: reg 0x30: [mem 0x00000000-0x0001ffff pref]
[    0.937577] pci 0000:01:00.0: Video device with shadowed ROM at [mem 0x000c0000-0x000dffff]
[    0.937724] pci 0000:01:00.0: supports D1 D2
[    0.979622] pci 0000:01:00.0: vgaarb: setting as boot VGA device
[    0.979722] pci 0000:01:00.0: vgaarb: bridge control possible
[    0.979795] pci 0000:01:00.0: vgaarb: VGA device added: decodes=io+mem,owns=io+mem,locks=none
[    0.979893] vgaarb: loaded
[    1.345963] pci 0000:00:01.0: PCI bridge to [bus 01]
[    1.346040] pci 0000:00:01.0:   bridge window [io  0x2000-0x2fff]
[    1.346123] pci 0000:00:01.0:   bridge window [mem 0xfc100000-0xfdffffff]
[    1.347203] pci_bus 0000:01: resource 0 [io  0x2000-0x2fff]
[    1.347280] pci_bus 0000:01: resource 1 [mem 0xfc100000-0xfdffffff]
[    1.451734] agpgart-intel 0000:00:00.0: Intel 440BX Chipset
[    1.458124] agpgart-intel 0000:00:00.0: AGP aperture is 64M @ 0xe0000000
[  153.358059] atyfb 0000:01:00.0: vgaarb: deactivate vga console
[  153.360579] Console: switching to colour dummy device 80x25
[  153.366184] ACPI: \_SB_.LNKB: Enabled at IRQ 9
[  153.366255] atyfb: using auxiliary register aperture
[  153.367078] atyfb: 3D RAGE Mobility P/M (Mach64 LM, AGP 2x) [0x4c4d rev 0x64]
[  153.367121] atyfb: Mach64 BIOS is located at c0000, mapped at cca40000.
[  153.367136] atyfb: BIOS frequency table:
[  153.367143] atyfb: PCLK_min_freq 984, PCLK_max_freq 23600, ref_freq 2950, ref_divider 64
[  153.367158] atyfb: MCLK_pwd 4200, MCLK_max_freq 8300, XCLK_max_freq 12500, SCLK_freq 5000
[  153.367173] atyfb: BIOS contains driver information table.
[  153.367186] atyfb: colour active matrix monitor detected: LG LP141XA
[  153.367199] atyfb:        id=1, 1024x768 pixels, 262144 colours (LT mode)
[  153.367215] atyfb:        supports refresh rates [60], default 60 Hz
[  153.367231] atyfb:        LCD CRTC parameters: 65.40  1024 1048 1184 1344  768 770 776 806
[  153.367253] atyfb:                           : 15384 160 1024 24 136 30 768 2 6
[  153.367312] atyfb: 4M SDRAM (2:1) (32-bit), 29.498928 MHz XTAL, 236 MHz PLL, 83 Mhz MCLK, 63 MHz XCLK
[  153.385617] fbcon: ATY Mach64 (fb0) is primary device
[  153.459847] Console: switching to colour frame buffer device 128x48
[  153.466662] atyfb: fb0: ATY Mach64 frame buffer device on PCI

Please let me know if you need any other info and thank you again for helping me. :)

/Morgan


More information about the xorg-driver-ati mailing list