Discussion:
radeondrm failure on amd64 but not on i386?
Andy Bradford
2018-11-16 04:15:48 UTC
Permalink
Hello,

I recently installed OpenBSD 6.4 amd64 and radeondrm fails to load
properly. I then installed OpenBSD 6.4 i386 on the same hardware (to a
USB pendrive) and it works fine. Any ideas?

dmesg for both follow:

OpenBSD 6.4 (GENERIC.MP) #364: Thu Oct 11 13:30:23 MDT 2018
***@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC.MP
real mem = 3739795456 (3566MB)
avail mem = 3617247232 (3449MB)
mpath0 at root
scsibus0 at mpath0: 256 targets
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 2.3 @ 0xf0450 (65 entries)
bios0: vendor Dell Inc. version "A04" date 04/19/2006
bios0: Dell Inc. Dell DXP051
acpi0 at bios0: rev 2
acpi0: sleep states S0 S1 S3 S4 S5
acpi0: tables DSDT FACP SSDT APIC BOOT ASF! MCFG HPET
acpi0: wakeup devices VBTN(S4) PCI0(S5) PCI4(S5) PCI2(S5) PCI3(S5) PCI1(S5) PCI5(S5) PCI6(S5) USB0(S3) USB1(S3) USB2(S3) USB3(S3)
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: Intel(R) Pentium(R) D CPU 3.00GHz, 2992.96 MHz, 0f-06-04
cpu0: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,DTES64,MWAIT,DS-CPL,VMX,EST,CNXT-ID,CX16,xTPR,PDCM,NXE,LONG,LAHF,MELTDOWN
cpu0: 2MB 64b/line 8-way L2 cache
cpu0: smt 0, core 0, package 0
mtrr: Pentium Pro MTRR support, 8 var ranges, 88 fixed ranges
cpu0: apic clock running at 199MHz
cpu0: mwait min=64, max=64
cpu1 at mainbus0: apid 1 (application processor)
cpu1: Intel(R) Pentium(R) D CPU 3.00GHz, 2992.58 MHz, 0f-06-04
cpu1: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,DTES64,MWAIT,DS-CPL,VMX,EST,CNXT-ID,CX16,xTPR,PDCM,NXE,LONG,LAHF,MELTDOWN
cpu1: 2MB 64b/line 8-way L2 cache
cpu1: smt 0, core 1, package 0
ioapic0 at mainbus0: apid 8 pa 0xfec00000, version 20, 24 pins, remapped
acpimcfg0 at acpi0
acpimcfg0: addr 0xf0000000, bus 0-63
acpimcfg0: addr 0x0, bus 0-0
acpihpet0 at acpi0: 14318179 Hz
acpiprt0 at acpi0: bus 5 (PCI4)
acpiprt1 at acpi0: bus 2 (PCI2)
acpiprt2 at acpi0: bus -1 (PCI3)
acpiprt3 at acpi0: bus 1 (PCI1)
acpiprt4 at acpi0: bus 3 (PCI5)
acpiprt5 at acpi0: bus 4 (PCI6)
acpiprt6 at acpi0: bus 0 (PCI0)
acpicpu0 at acpi0: C1(@1 halt!)
acpicpu1 at acpi0: C1(@1 halt!)
acpibtn0 at acpi0: VBTN
acpicmos0 at acpi0
pci0 at mainbus0 bus 0
pchb0 at pci0 dev 0 function 0 "Intel 82945G Host" rev 0x00
ppb0 at pci0 dev 1 function 0 "Intel 82945G PCIE" rev 0x00: msi
pci1 at ppb0 bus 1
radeondrm0 at pci1 dev 0 function 0 "ATI Radeon HD 2400 XT" rev 0x00
drm0 at radeondrm0
radeondrm0: msi
azalia0 at pci0 dev 27 function 0 "Intel 82801GB HD Audio" rev 0x01: msi
azalia0: codecs: Sigmatel STAC9220/1
audio0 at azalia0
ppb1 at pci0 dev 28 function 0 "Intel 82801GB PCIE" rev 0x01: msi
pci2 at ppb1 bus 2
ppb2 at pci0 dev 28 function 4 "Intel 82801G PCIE" rev 0x01: msi
pci3 at ppb2 bus 3
ppb3 at pci0 dev 28 function 5 "Intel 82801G PCIE" rev 0x01: msi
pci4 at ppb3 bus 4
em0 at pci4 dev 0 function 0 "Intel 82573L" rev 0x01: msi, address 00:13:72:1a:ed:5c
uhci0 at pci0 dev 29 function 0 "Intel 82801GB USB" rev 0x01: apic 8 int 21
uhci1 at pci0 dev 29 function 1 "Intel 82801GB USB" rev 0x01: apic 8 int 22
uhci2 at pci0 dev 29 function 2 "Intel 82801GB USB" rev 0x01: apic 8 int 18
uhci3 at pci0 dev 29 function 3 "Intel 82801GB USB" rev 0x01: apic 8 int 23
ehci0 at pci0 dev 29 function 7 "Intel 82801GB USB" rev 0x01: apic 8 int 21
usb0 at ehci0: USB revision 2.0
uhub0 at usb0 configuration 1 interface 0 "Intel EHCI root hub" rev 2.00/1.00 addr 1
ppb4 at pci0 dev 30 function 0 "Intel 82801BA Hub-to-PCI" rev 0xe1
pci5 at ppb4 bus 5
"AT&T/Lucent FW322 1394" rev 0x61 at pci5 dev 5 function 0 not configured
pcib0 at pci0 dev 31 function 0 "Intel 82801GH LPC" rev 0x01
pciide0 at pci0 dev 31 function 1 "Intel 82801GB IDE" rev 0x01: DMA, channel 0 configured to compatibility, channel 1 configured to compatibility
atapiscsi0 at pciide0 channel 0 drive 0
scsibus1 at atapiscsi0: 2 targets
cd0 at scsibus1 targ 0 lun 0: <SONY, DVD-ROM DDU1615, FDS2> ATAPI 5/cdrom removable
atapiscsi1 at pciide0 channel 0 drive 1
scsibus2 at atapiscsi1: 2 targets
cd1 at scsibus2 targ 0 lun 0: <PHILIPS, DVD+-RW DVD8801, 4D28> ATAPI 5/cdrom removable
cd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 2
cd1(pciide0:0:1): using PIO mode 4, Ultra-DMA mode 2
pciide0: channel 1 ignored (disabled)
ahci0 at pci0 dev 31 function 2 "Intel 82801GR AHCI" rev 0x01: msi, AHCI 1.1
ahci0: port 0: 3.0Gb/s
ahci0: PHY offline on port 1
ahci0: PHY offline on port 2
ahci0: PHY offline on port 3
scsibus3 at ahci0: 32 targets
sd0 at scsibus3 targ 0 lun 0: <ATA, ST3250824AS, 3.AD> SCSI3 0/direct fixed t10.ATA_ST3250824AS_5ND4HD0K
sd0: 238418MB, 512 bytes/sector, 488281250 sectors
ichiic0 at pci0 dev 31 function 3 "Intel 82801GB SMBus" rev 0x01: apic 8 int 17
iic0 at ichiic0
spdmem0 at iic0 addr 0x50: 1GB DDR2 SDRAM non-parity PC2-5300CL5
spdmem1 at iic0 addr 0x51: 1GB DDR2 SDRAM non-parity PC2-5300CL5
spdmem2 at iic0 addr 0x52: 1GB DDR2 SDRAM non-parity PC2-5300CL5
spdmem3 at iic0 addr 0x53: 1GB DDR2 SDRAM non-parity PC2-5300CL5
usb1 at uhci0: USB revision 1.0
uhub1 at usb1 configuration 1 interface 0 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb2 at uhci1: USB revision 1.0
uhub2 at usb2 configuration 1 interface 0 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb3 at uhci2: USB revision 1.0
uhub3 at usb3 configuration 1 interface 0 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb4 at uhci3: USB revision 1.0
uhub4 at usb4 configuration 1 interface 0 "Intel UHCI root hub" rev 1.00/1.00 addr 1
isa0 at pcib0
isadma0 at isa0
pckbc0 at isa0 port 0x60/5 irq 1 irq 12
pckbd0 at pckbc0 (kbd slot)
wskbd0 at pckbd0: console keyboard
pcppi0 at isa0 port 0x61
spkr0 at pcppi0
umass0 at uhub0 port 3 configuration 1 interface 0 "TEAC CA-200" rev 2.00/4.00 addr 2
umass0: using SCSI over Bulk-Only
scsibus4 at umass0: 2 targets, initiator 0
sd1 at scsibus4 targ 1 lun 0: <TEAC, USB HS-CF Card, 4.00> SCSI0 0/direct removable
sd2 at scsibus4 targ 1 lun 1: <TEAC, USB HS-xD/SM, 4.00> SCSI0 0/direct removable
sd3 at scsibus4 targ 1 lun 2: <TEAC, USB HS-MS Card, 4.00> SCSI0 0/direct removable
sd4 at scsibus4 targ 1 lun 3: <TEAC, USB HS-SD Card, 4.00> SCSI0 0/direct removable
uhidev0 at uhub2 port 2 configuration 1 interface 0 "Dell Dell KB216 Wired Keyboard" rev 2.00/33.08 addr 2
uhidev0: iclass 3/1
ukbd0 at uhidev0: 8 variable keys, 6 key codes
wskbd1 at ukbd0 mux 1
uhidev1 at uhub2 port 2 configuration 1 interface 1 "Dell Dell KB216 Wired Keyboard" rev 2.00/33.08 addr 2
uhidev1: iclass 3/0, 5 report ids
uhid0 at uhidev1 reportid 1: input=1, output=0, feature=0
uhid1 at uhidev1 reportid 2: input=2, output=0, feature=0
uhid2 at uhidev1 reportid 5: input=0, output=0, feature=5
uhidev2 at uhub3 port 1 configuration 1 interface 0 "PixArt Lenovo USB Optical Mouse" rev 2.00/1.00 addr 2
uhidev2: iclass 3/1
ums0 at uhidev2: 3 buttons, Z dir
wsmouse0 at ums0 mux 0
vscsi0 at root
scsibus5 at vscsi0: 256 targets
softraid0 at root
scsibus6 at softraid0: 256 targets
root on sd0a (f2a1da41453f529f.a) swap on sd0b dump on sd0b
initializing kernel modesetting (RV610 0x1002:0x94C1 0x1028:0x0D02).
drm:pid0:r600_init *ERROR* Expecting atombios for R600 GPU
drm:pid0:radeondrm_attachhook *ERROR* Fatal error during GPU init
[TTM] Memory type 2 has not been initialized
drm0 detached
radeondrm0 detached
vga1 at pci1 dev 0 function 0 "ATI Radeon HD 2400 XT" rev 0x00
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation), using wskbd0
wskbd1: connecting to wsdisplay0
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)



OpenBSD 6.4 (GENERIC.MP) #943: Thu Oct 11 13:51:32 MDT 2018
***@i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC.MP
real mem = 3756068864 (3582MB)
avail mem = 3672494080 (3502MB)
mpath0 at root
scsibus0 at mpath0: 256 targets
mainbus0 at root
bios0 at mainbus0: date 04/19/06, BIOS32 rev. 0 @ 0xffe90, SMBIOS rev. 2.3 @ 0xf0450 (65 entries)
bios0: vendor Dell Inc. version "A04" date 04/19/2006
bios0: Dell Inc. Dell DXP051
acpi0 at bios0: rev 2
acpi0: sleep states S0 S1 S3 S4 S5
acpi0: tables DSDT FACP SSDT APIC BOOT ASF! MCFG HPET
acpi0: wakeup devices VBTN(S4) PCI0(S5) PCI4(S5) PCI2(S5) PCI3(S5) PCI1(S5) PCI5(S5) PCI6(S5) USB0(S3) USB1(S3) USB2(S3) USB3(S3)
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: Intel(R) Pentium(R) D CPU 3.00GHz ("GenuineIntel" 686-class) 3 GHz, 0f-06-04
cpu0: FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,DTES64,MWAIT,DS-CPL,VMX,EST,CNXT-ID,CX16,xTPR,PDCM,NXE,LONG,LAHF,MELTDOWN
mtrr: Pentium Pro MTRR support, 8 var ranges, 88 fixed ranges
cpu0: apic clock running at 199MHz
cpu0: mwait min=64, max=64
cpu1 at mainbus0: apid 1 (application processor)
cpu1: Intel(R) Pentium(R) D CPU 3.00GHz ("GenuineIntel" 686-class) 3 GHz, 0f-06-04
cpu1: FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,DTES64,MWAIT,DS-CPL,VMX,EST,CNXT-ID,CX16,xTPR,PDCM,NXE,LONG,LAHF,MELTDOWN
ioapic0 at mainbus0: apid 8 pa 0xfec00000, version 20, 24 pins, remapped
acpimcfg0 at acpi0
acpimcfg0: addr 0xf0000000, bus 0-63
acpimcfg0: addr 0x0, bus 0-0
acpihpet0 at acpi0: 14318179 Hz
acpiprt0 at acpi0: bus 5 (PCI4)
acpiprt1 at acpi0: bus 2 (PCI2)
acpiprt2 at acpi0: bus -1 (PCI3)
acpiprt3 at acpi0: bus 1 (PCI1)
acpiprt4 at acpi0: bus 3 (PCI5)
acpiprt5 at acpi0: bus 4 (PCI6)
acpiprt6 at acpi0: bus 0 (PCI0)
acpicpu0 at acpi0: C1(@1 halt!)
acpicpu1 at acpi0: C1(@1 halt!)
acpibtn0 at acpi0: VBTN
acpicmos0 at acpi0
bios0: ROM list: 0xc0000/0xf000 0xcf000/0x2000! 0xd1000/0x3000
cpu0: Enhanced SpeedStep disabled by BIOS
pci0 at mainbus0 bus 0: configuration mode 1 (bios)
pchb0 at pci0 dev 0 function 0 "Intel 82945G Host" rev 0x00
ppb0 at pci0 dev 1 function 0 "Intel 82945G PCIE" rev 0x00: apic 8 int 16
pci1 at ppb0 bus 1
radeondrm0 at pci1 dev 0 function 0 "ATI Radeon HD 2400 XT" rev 0x00
drm0 at radeondrm0
radeondrm0: msi
azalia0 at pci0 dev 27 function 0 "Intel 82801GB HD Audio" rev 0x01: msi
azalia0: codecs: Sigmatel STAC9220/1
audio0 at azalia0
ppb1 at pci0 dev 28 function 0 "Intel 82801GB PCIE" rev 0x01: apic 8 int 16
pci2 at ppb1 bus 2
ppb2 at pci0 dev 28 function 4 "Intel 82801G PCIE" rev 0x01: apic 8 int 16
pci3 at ppb2 bus 3
ppb3 at pci0 dev 28 function 5 "Intel 82801G PCIE" rev 0x01: apic 8 int 17
pci4 at ppb3 bus 4
em0 at pci4 dev 0 function 0 "Intel 82573L" rev 0x01: msi, address 00:13:72:1a:ed:5c
uhci0 at pci0 dev 29 function 0 "Intel 82801GB USB" rev 0x01: apic 8 int 21
uhci1 at pci0 dev 29 function 1 "Intel 82801GB USB" rev 0x01: apic 8 int 22
uhci2 at pci0 dev 29 function 2 "Intel 82801GB USB" rev 0x01: apic 8 int 18
uhci3 at pci0 dev 29 function 3 "Intel 82801GB USB" rev 0x01: apic 8 int 23
ehci0 at pci0 dev 29 function 7 "Intel 82801GB USB" rev 0x01: apic 8 int 21
usb0 at ehci0: USB revision 2.0
uhub0 at usb0 configuration 1 interface 0 "Intel EHCI root hub" rev 2.00/1.00 addr 1
ppb4 at pci0 dev 30 function 0 "Intel 82801BA Hub-to-PCI" rev 0xe1
pci5 at ppb4 bus 5
"AT&T/Lucent FW322 1394" rev 0x61 at pci5 dev 5 function 0 not configured
ichpcib0 at pci0 dev 31 function 0 "Intel 82801GH LPC" rev 0x01: PM disabled
pciide0 at pci0 dev 31 function 1 "Intel 82801GB IDE" rev 0x01: DMA, channel 0 configured to compatibility, channel 1 configured to compatibility
atapiscsi0 at pciide0 channel 0 drive 0
scsibus1 at atapiscsi0: 2 targets
cd0 at scsibus1 targ 0 lun 0: <SONY, DVD-ROM DDU1615, FDS2> ATAPI 5/cdrom removable
atapiscsi1 at pciide0 channel 0 drive 1
scsibus2 at atapiscsi1: 2 targets
cd1 at scsibus2 targ 0 lun 0: <PHILIPS, DVD+-RW DVD8801, 4D28> ATAPI 5/cdrom removable
cd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 2
cd1(pciide0:0:1): using PIO mode 4, Ultra-DMA mode 2
pciide0: channel 1 ignored (disabled)
ahci0 at pci0 dev 31 function 2 "Intel 82801GR AHCI" rev 0x01: msi, AHCI 1.1
ahci0: port 0: 3.0Gb/s
ahci0: PHY offline on port 1
ahci0: PHY offline on port 2
ahci0: PHY offline on port 3
scsibus3 at ahci0: 32 targets
sd0 at scsibus3 targ 0 lun 0: <ATA, ST3250824AS, 3.AD> SCSI3 0/direct fixed t10.ATA_ST3250824AS_5ND4HD0K
sd0: 238418MB, 512 bytes/sector, 488281250 sectors
ichiic0 at pci0 dev 31 function 3 "Intel 82801GB SMBus" rev 0x01: apic 8 int 17
iic0 at ichiic0
spdmem0 at iic0 addr 0x50: 1GB DDR2 SDRAM non-parity PC2-5300CL5
spdmem1 at iic0 addr 0x51: 1GB DDR2 SDRAM non-parity PC2-5300CL5
spdmem2 at iic0 addr 0x52: 1GB DDR2 SDRAM non-parity PC2-5300CL5
spdmem3 at iic0 addr 0x53: 1GB DDR2 SDRAM non-parity PC2-5300CL5
usb1 at uhci0: USB revision 1.0
uhub1 at usb1 configuration 1 interface 0 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb2 at uhci1: USB revision 1.0
uhub2 at usb2 configuration 1 interface 0 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb3 at uhci2: USB revision 1.0
uhub3 at usb3 configuration 1 interface 0 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb4 at uhci3: USB revision 1.0
uhub4 at usb4 configuration 1 interface 0 "Intel UHCI root hub" rev 1.00/1.00 addr 1
isa0 at ichpcib0
isadma0 at isa0
pckbc0 at isa0 port 0x60/5 irq 1 irq 12
pckbd0 at pckbc0 (kbd slot)
wskbd0 at pckbd0: console keyboard
pcppi0 at isa0 port 0x61
spkr0 at pcppi0
npx0 at isa0 port 0xf0/16: reported by CPUID; using exception 16
umass0 at uhub0 port 3 configuration 1 interface 0 "TEAC CA-200" rev 2.00/4.00 addr 2
umass0: using SCSI over Bulk-Only
scsibus4 at umass0: 2 targets, initiator 0
sd1 at scsibus4 targ 1 lun 0: <TEAC, USB HS-CF Card, 4.00> SCSI0 0/direct removable
sd2 at scsibus4 targ 1 lun 1: <TEAC, USB HS-xD/SM, 4.00> SCSI0 0/direct removable
sd3 at scsibus4 targ 1 lun 2: <TEAC, USB HS-MS Card, 4.00> SCSI0 0/direct removable
sd4 at scsibus4 targ 1 lun 3: <TEAC, USB HS-SD Card, 4.00> SCSI0 0/direct removable
umass1 at uhub0 port 7 configuration 1 interface 0 "SanDisk Cruzer Dial" rev 2.10/1.00 addr 3
umass1: using SCSI over Bulk-Only
scsibus5 at umass1: 2 targets, initiator 0
sd5 at scsibus5 targ 1 lun 0: <SanDisk, Cruzer Dial, 1.00> SCSI4 0/direct removable serial.07815599450609104375
sd5: 14944MB, 512 bytes/sector, 30605312 sectors
uhidev0 at uhub2 port 2 configuration 1 interface 0 "Dell Dell KB216 Wired Keyboard" rev 2.00/33.08 addr 2
uhidev0: iclass 3/1
ukbd0 at uhidev0: 8 variable keys, 6 key codes
wskbd1 at ukbd0 mux 1
uhidev1 at uhub2 port 2 configuration 1 interface 1 "Dell Dell KB216 Wired Keyboard" rev 2.00/33.08 addr 2
uhidev1: iclass 3/0, 5 report ids
uhid0 at uhidev1 reportid 1: input=1, output=0, feature=0
uhid1 at uhidev1 reportid 2: input=2, output=0, feature=0
uhid2 at uhidev1 reportid 5: input=0, output=0, feature=5
uhidev2 at uhub3 port 1 configuration 1 interface 0 "PixArt Lenovo USB Optical Mouse" rev 2.00/1.00 addr 2
uhidev2: iclass 3/1
ums0 at uhidev2: 3 buttons, Z dir
wsmouse0 at ums0 mux 0
vscsi0 at root
scsibus6 at vscsi0: 256 targets
softraid0 at root
scsibus7 at softraid0: 256 targets
root on sd5a (4958bd885e4c2829.a) swap on sd5b dump on sd5b
initializing kernel modesetting (RV610 0x1002:0x94C1 0x1028:0x0D02).
radeondrm0: 1680x1050, 32bpp
wsdisplay0 at radeondrm0 mux 1: console (std, vt100 emulation), using wskbd0
wskbd1: connecting to wsdisplay0
wsdisplay0: screen 1-5 added (std, vt100 emulation)

Thanks,

Andy
--
TAI64 timestamp: 400000005bee4499
Jonathan Gray
2018-11-17 03:08:53 UTC
Permalink
Post by Andy Bradford
Hello,
I recently installed OpenBSD 6.4 amd64 and radeondrm fails to load
properly. I then installed OpenBSD 6.4 i386 on the same hardware (to a
USB pendrive) and it works fine. Any ideas?
There are many ways of getting an atom bios it would be helpfull to know
which method is having trouble.

Index: sys/dev/pci/drm/radeon/radeon_bios.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/drm/radeon/radeon_bios.c,v
retrieving revision 1.14
diff -u -p -r1.14 radeon_bios.c
--- sys/dev/pci/drm/radeon/radeon_bios.c 25 Aug 2018 18:42:43 -0000 1.14
+++ sys/dev/pci/drm/radeon/radeon_bios.c 17 Nov 2018 03:00:34 -0000
@@ -801,16 +801,27 @@ bool radeon_get_bios(struct radeon_devic
uint16_t tmp;

r = radeon_atrm_get_bios(rdev);
- if (r == false)
+printf("radeon_atrm_get_bios %s\n", r == true ? "true" : "false");
+ if (r == false) {
r = radeon_acpi_vfct_bios(rdev);
- if (r == false)
+printf("radeon_acpi_vfct_bios %s\n", r == true ? "true" : "false");
+ }
+ if (r == false) {
r = igp_read_bios_from_vram(rdev);
- if (r == false)
+printf("igp_read_bios_from_vram %s\n", r == true ? "true" : "false");
+ }
+ if (r == false) {
r = radeon_read_bios(rdev);
- if (r == false)
+printf("radeon_read_bios %s\n", r == true ? "true" : "false");
+ }
+ if (r == false) {
r = radeon_read_disabled_bios(rdev);
- if (r == false)
+printf("radeon_read_disabled_bios %s\n", r == true ? "true" : "false");
+ }
+ if (r == false) {
r = radeon_read_platform_bios(rdev);
+printf("radeon_read_platform_bios %s\n", r == true ? "true" : "false");
+ }
if (r == false || rdev->bios == NULL) {
DRM_ERROR("Unable to locate a BIOS ROM\n");
rdev->bios = NULL;
Andy Bradford
2018-11-19 05:47:10 UTC
Permalink
There are many ways of getting an atom bios it would be helpfull to
know which method is having trouble.
Thanks for the suggestion. Here's the additional output provided by your
patch:

radeon_atrm_get_bios false
radeon_acpi_vfct_bios false
igp_read_bios_from_vram false
radeon_read_bios false
radeon_read_disabled_bios true
drm:pid0:r600_init *ERROR* Expecting atombios for R600 GPU
drm:pid0:radeondrm_attachhook *ERROR* Fatal error during GPU init
[TTM] Memory type 2 has not been initialized
drm0 detached
radeondrm0 detached

Thanks,

Andy
--
TAI64 timestamp: 400000005bf24e83
Jonathan Gray
2018-11-19 09:42:46 UTC
Permalink
Post by Andy Bradford
There are many ways of getting an atom bios it would be helpfull to
know which method is having trouble.
Thanks for the suggestion. Here's the additional output provided by your
radeon_atrm_get_bios false
radeon_acpi_vfct_bios false
igp_read_bios_from_vram false
radeon_read_bios false
radeon_read_disabled_bios true
drm:pid0:r600_init *ERROR* Expecting atombios for R600 GPU
drm:pid0:radeondrm_attachhook *ERROR* Fatal error during GPU init
[TTM] Memory type 2 has not been initialized
drm0 detached
radeondrm0 detached
Thanks, could you also show the i386 output with the patch?
You can build an i386 kernel on amd64 if that helps.
Andy Bradford
2018-11-19 15:37:01 UTC
Permalink
Post by Jonathan Gray
Post by Andy Bradford
Thanks for the suggestion. Here's the additional output provided by your
radeon_atrm_get_bios false
radeon_acpi_vfct_bios false
igp_read_bios_from_vram false
radeon_read_bios false
radeon_read_disabled_bios true
drm:pid0:r600_init *ERROR* Expecting atombios for R600 GPU
drm:pid0:radeondrm_attachhook *ERROR* Fatal error during GPU init
[TTM] Memory type 2 has not been initialized
drm0 detached
radeondrm0 detached
Thanks, could you also show the i386 output with the patch?
The output on i386 looks pretty much the same except for the failure:

initializing kernel modesetting (RV610 0x1002:0x94C1 0x1028:0x0D02).
radeon_atrm_get_bios false
radeon_acpi_vfct_bios false
igp_read_bios_from_vram false
radeon_read_bios false
radeon_read_disabled_bios true
radeondrm0: 1680x1050, 32bpp
wsdisplay0 at radeondrm0 mux 1: console (std, vt100 emulation), using wskbd0

Thanks,

Andy
--
TAI64 timestamp: 400000005bf2d8c2
Allan Streib
2018-11-26 02:54:45 UTC
Permalink
Same issue, also on a Dell machine with ATI Radeon HD 2400 XT.

Allan

OpenBSD 6.4 (GENERIC.MP) #0: Sat Nov 17 22:15:46 CET 2018
***@syspatch-64-amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC.MP
real mem = 4141871104 (3949MB)
avail mem = 4007075840 (3821MB)
mpath0 at root
scsibus0 at mpath0: 256 targets
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 2.5 @ 0xf0450 (82 entries)
bios0: vendor Dell Inc. version "A11" date 01/21/2011
bios0: Dell Inc. OptiPlex 960
acpi0 at bios0: rev 2
acpi0: TCPA checksum error
acpi0: sleep states S0 S1 S3 S4 S5
acpi0: tables DSDT FACP SSDT APIC BOOT ASF! MCFG HPET TCPA DMAR SLIC SSDT SSDT SSDT
acpi0: wakeup devices VBTN(S4) PCI0(S5) PCI4(S5) PCI2(S5) PCI3(S5) PCI1(S5) PCI5(S5) PCI6(S5) USB0(S3) USB1(S3) USB2(S3) USB3(S3) USB4(S3) USB5(S3)
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: Intel(R) Core(TM)2 Duo CPU E8400 @ 3.00GHz, 2992.96 MHz, 06-17-0a
cpu0: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,DTES64,MWAIT,DS-CPL,VMX,SMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,SSE4.1,XSAVE,NXE,LONG,LAHF,PERF,SENSOR,MELTDOWN
cpu0: 6MB 64b/line 16-way L2 cache
cpu0: smt 0, core 0, package 0
mtrr: Pentium Pro MTRR support, 7 var ranges, 88 fixed ranges
cpu0: apic clock running at 332MHz
cpu0: mwait min=64, max=64, C-substates=0.2.2.2.2, IBE
cpu1 at mainbus0: apid 1 (application processor)
cpu1: Intel(R) Core(TM)2 Duo CPU E8400 @ 3.00GHz, 2992.51 MHz, 06-17-0a
cpu1: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,DTES64,MWAIT,DS-CPL,VMX,SMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,SSE4.1,XSAVE,NXE,LONG,LAHF,PERF,SENSOR,MELTDOWN
cpu1: 6MB 64b/line 16-way L2 cache
cpu1: smt 0, core 1, package 0
ioapic0 at mainbus0: apid 8 pa 0xfec00000, version 20, 24 pins, remapped
acpimcfg0 at acpi0
acpimcfg0: addr 0xf8000000, bus 0-63
acpihpet0 at acpi0: 14318179 Hz
acpiprt0 at acpi0: bus 4 (PCI4)
acpiprt1 at acpi0: bus 2 (PCI2)
acpiprt2 at acpi0: bus 3 (PCI3)
acpiprt3 at acpi0: bus 1 (PCI1)
acpiprt4 at acpi0: bus -1 (PCI5)
acpiprt5 at acpi0: bus -1 (PCI6)
acpiprt6 at acpi0: bus 0 (PCI0)
acpicpu0 at acpi0: C1(***@1 mwait.1), PSS
acpicpu1 at acpi0: C1(***@1 mwait.1), PSS
acpibtn0 at acpi0: VBTN
acpicmos0 at acpi0
"*pnp0c14" at acpi0 not configured
cpu0: Enhanced SpeedStep 2992 MHz: speeds: 3000, 2667, 2333, 2000 MHz
pci0 at mainbus0 bus 0
pchb0 at pci0 dev 0 function 0 "Intel Q45 Host" rev 0x03
ppb0 at pci0 dev 1 function 0 "Intel Q45 PCIE" rev 0x03: msi
pci1 at ppb0 bus 1
radeondrm0 at pci1 dev 0 function 0 "ATI Radeon HD 2400 XT" rev 0x00
drm0 at radeondrm0
radeondrm0: msi
"Intel Q45 HECI" rev 0x03 at pci0 dev 3 function 0 not configured
pciide0 at pci0 dev 3 function 2 "Intel Q45 PT IDER" rev 0x03: DMA (unsupported), channel 0 wired to native-PCI, channel 1 wired to native-PCI
pciide0: using apic 8 int 18 for native-PCI interrupt
pciide0: channel 0 ignored (not responding; disabled or no drives?)
pciide0: channel 1 ignored (not responding; disabled or no drives?)
puc0 at pci0 dev 3 function 3 "Intel Q45 KT" rev 0x03: ports: 16 com
com4 at puc0 port 0 apic 8 int 17: ns16550a, 16 byte fifo
com4: probed fifo depth: 0 bytes
em0 at pci0 dev 25 function 0 "Intel ICH10 D BM LM" rev 0x02: msi, address 00:22:19:31:bf:96
uhci0 at pci0 dev 26 function 0 "Intel 82801JD USB" rev 0x02: apic 8 int 16
uhci1 at pci0 dev 26 function 1 "Intel 82801JD USB" rev 0x02: apic 8 int 17
uhci2 at pci0 dev 26 function 2 "Intel 82801JD USB" rev 0x02: apic 8 int 22
ehci0 at pci0 dev 26 function 7 "Intel 82801JD USB" rev 0x02: apic 8 int 22
usb0 at ehci0: USB revision 2.0
uhub0 at usb0 configuration 1 interface 0 "Intel EHCI root hub" rev 2.00/1.00 addr 1
azalia0 at pci0 dev 27 function 0 "Intel 82801JD HD Audio" rev 0x02: msi
azalia0: codecs: Analog Devices AD1984A
audio0 at azalia0
ppb1 at pci0 dev 28 function 0 "Intel 82801JD PCIE" rev 0x02: msi
pci2 at ppb1 bus 2
ppb2 at pci0 dev 28 function 1 "Intel 82801JD PCIE" rev 0x02: msi
pci3 at ppb2 bus 3
uhci3 at pci0 dev 29 function 0 "Intel 82801JD USB" rev 0x02: apic 8 int 23
uhci4 at pci0 dev 29 function 1 "Intel 82801JD USB" rev 0x02: apic 8 int 17
uhci5 at pci0 dev 29 function 2 "Intel 82801JD USB" rev 0x02: apic 8 int 18
ehci1 at pci0 dev 29 function 7 "Intel 82801JD USB" rev 0x02: apic 8 int 23
usb1 at ehci1: USB revision 2.0
uhub1 at usb1 configuration 1 interface 0 "Intel EHCI root hub" rev 2.00/1.00 addr 1
ppb3 at pci0 dev 30 function 0 "Intel 82801BA Hub-to-PCI" rev 0xa2
pci4 at ppb3 bus 4
pcib0 at pci0 dev 31 function 0 "Intel 82801JDO LPC" rev 0x02
ahci0 at pci0 dev 31 function 2 "Intel 82801JD AHCI" rev 0x02: msi, AHCI 1.2
ahci0: port 0: 3.0Gb/s
ahci0: port 1: 1.5Gb/s
ahci0: PHY offline on port 2
scsibus1 at ahci0: 32 targets
sd0 at scsibus1 targ 0 lun 0: <ATA, Crucial_CT960M50, MU02> SCSI3 0/direct fixed naa.500a0751094531c8
sd0: 915715MB, 512 bytes/sector, 1875385008 sectors, thin
cd0 at scsibus1 targ 1 lun 0: <PLDS, DVD+-RW DS-8A3S, HD13> ATAPI 5/cdrom removable
ichiic0 at pci0 dev 31 function 3 "Intel 82801JD SMBus" rev 0x02: apic 8 int 18
iic0 at ichiic0
spdmem0 at iic0 addr 0x50: 1GB DDR2 SDRAM non-parity PC2-6400CL6
spdmem1 at iic0 addr 0x51: 1GB DDR2 SDRAM non-parity PC2-6400CL6
spdmem2 at iic0 addr 0x52: 1GB DDR2 SDRAM non-parity PC2-6400CL6
spdmem3 at iic0 addr 0x53: 1GB DDR2 SDRAM non-parity PC2-6400CL6
usb2 at uhci0: USB revision 1.0
uhub2 at usb2 configuration 1 interface 0 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb3 at uhci1: USB revision 1.0
uhub3 at usb3 configuration 1 interface 0 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb4 at uhci2: USB revision 1.0
uhub4 at usb4 configuration 1 interface 0 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb5 at uhci3: USB revision 1.0
uhub5 at usb5 configuration 1 interface 0 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb6 at uhci4: USB revision 1.0
uhub6 at usb6 configuration 1 interface 0 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb7 at uhci5: USB revision 1.0
uhub7 at usb7 configuration 1 interface 0 "Intel UHCI root hub" rev 1.00/1.00 addr 1
isa0 at pcib0
isadma0 at isa0
com0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
pckbc0 at isa0 port 0x60/5 irq 1 irq 12
pckbd0 at pckbc0 (kbd slot)
wskbd0 at pckbd0: console keyboard
pcppi0 at isa0 port 0x61
spkr0 at pcppi0
lpt0 at isa0 port 0x378/4 irq 7
vmm0 at mainbus0: VMX (using slow L1TF mitigation)
uhub8 at uhub0 port 4 configuration 1 interface 0 "Apple Computer product 0x911d" rev 2.00/0.01 addr 2
uhidev0 at uhub8 port 3 configuration 1 interface 0 "Apple Computer Apple Cinema Display" rev 1.00/1.35 addr 3
uhidev0: iclass 3/0, 228 report ids
uhid0 at uhidev0 reportid 2: input=0, output=0, feature=255
uhid1 at uhidev0 reportid 16: input=0, output=0, feature=2
uhid2 at uhidev0 reportid 214: input=0, output=0, feature=2
uhid3 at uhidev0 reportid 228: input=2, output=0, feature=0
umass0 at uhub1 port 2 configuration 1 interface 0 "TEAC CA-200" rev 2.00/4.12 addr 2
umass0: using SCSI over Bulk-Only
scsibus2 at umass0: 2 targets, initiator 0
sd1 at scsibus2 targ 1 lun 0: <TEAC, USB HS-CF Card, 4.12> SCSI0 0/direct removable
sd2 at scsibus2 targ 1 lun 1: <TEAC, USB HS-xD/SM, 4.12> SCSI0 0/direct removable
sd3 at scsibus2 targ 1 lun 2: <TEAC, USB HS-MS Card, 4.12> SCSI0 0/direct removable
sd4 at scsibus2 targ 1 lun 3: <TEAC, USB HS-SD Card, 4.12> SCSI0 0/direct removable
vscsi0 at root
scsibus3 at vscsi0: 256 targets
softraid0 at root
scsibus4 at softraid0: 256 targets
root on sd0a (96e16b16f9328e34.a) swap on sd0b dump on sd0b
initializing kernel modesetting (RV610 0x1002:0x94C1 0x1028:0x0D02).
drm:pid0:r600_init *ERROR* Expecting atombios for R600 GPU
drm:pid0:radeondrm_attachhook *ERROR* Fatal error during GPU init
[TTM] Memory type 2 has not been initialized
drm0 detached
radeondrm0 detached
vga1 at pci1 dev 0 function 0 "ATI Radeon HD 2400 XT" rev 0x00
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation), using wskbd0
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
uhub9 at uhub8 port 2 configuration 1 interface 0 "Apple, Inc. Keyboard Hub" rev 2.00/96.15 addr 4
uhidev1 at uhub9 port 2 configuration 1 interface 0 "Apple, Inc Apple Keyboard" rev 2.00/0.69 addr 5
uhidev1: iclass 3/1
ukbd0 at uhidev1: 8 variable keys, 5 key codes, country code 33
wskbd1 at ukbd0 mux 1
wskbd1: connecting to wsdisplay0
uhidev2 at uhub9 port 2 configuration 1 interface 1 "Apple, Inc Apple Keyboard" rev 2.00/0.69 addr 5
uhidev2: iclass 3/0
uhid4 at uhidev2: input=1, output=0, feature=0
uhidev3 at uhub9 port 3 configuration 1 interface 0 "Primax Electronics Apple Optical USB Mouse" rev 1.10/1.10 addr 6
uhidev3: iclass 3/1
ums0 at uhidev3: 4 buttons, Z and W dir
wsmouse0 at ums0 mux 0
Andy Bradford
2018-11-26 06:10:41 UTC
Permalink
Post by Allan Streib
Same issue, also on a Dell machine with ATI Radeon HD 2400 XT.
After Jonathan suggested adding some printf debug statements, I
continued to do so and was able to see that the rdev->bios variable that
is being inspected at lines 834--840 in radeon_bios.c has neither ATOM
nor MOTA in the string at that address for amd64, but has ATOM for i386:

tmp = rdev->bios_header_start + 4;
if (!memcmp(rdev->bios + tmp, "ATOM", 4) ||
!memcmp(rdev->bios + tmp, "MOTA", 4)) {
rdev->is_atom_bios = true;
} else {
rdev->is_atom_bios = false;
}

I suppose additional debug might involve writing the entire contents of
rdev->bios to a file and then hexdump it?

Andy
--
TAI64 timestamp: 400000005bfb8e86
Allan Streib
2018-11-27 20:51:57 UTC
Permalink
Post by Andy Bradford
After Jonathan suggested adding some printf debug statements, I
continued to do so and was able to see that the rdev->bios variable that
is being inspected at lines 834--840 in radeon_bios.c has neither ATOM
tmp = rdev->bios_header_start + 4;
if (!memcmp(rdev->bios + tmp, "ATOM", 4) ||
!memcmp(rdev->bios + tmp, "MOTA", 4)) {
rdev->is_atom_bios = true;
} else {
rdev->is_atom_bios = false;
}
I suppose additional debug might involve writing the entire contents of
rdev->bios to a file and then hexdump it?
The issue was also reported here, with no follups but more debug info:

https://marc.info/?l=openbsd-bugs&m=153398230416756&w=2

Allan
Andy Bradford
2018-11-28 15:20:01 UTC
Permalink
Post by Allan Streib
https://marc.info/?l=openbsd-bugs&m=153398230416756&w=2
That seems to be an identical problem, but definitely with more debug
info.

In my system, the card is also in a PCIe slot.

By the way, it is possible to workaround the problem to some extent by
just adding to sysctl.conf:

machdep.allowaperture=2

X will then start up, but it won't be using the firmware.

Andy
--
TAI64 timestamp: 400000005bfeb246
Jonathan Gray
2018-11-26 06:18:12 UTC
Permalink
Post by Andy Bradford
Post by Jonathan Gray
Post by Andy Bradford
Thanks for the suggestion. Here's the additional output provided by your
radeon_atrm_get_bios false
radeon_acpi_vfct_bios false
igp_read_bios_from_vram false
radeon_read_bios false
radeon_read_disabled_bios true
drm:pid0:r600_init *ERROR* Expecting atombios for R600 GPU
drm:pid0:radeondrm_attachhook *ERROR* Fatal error during GPU init
[TTM] Memory type 2 has not been initialized
drm0 detached
radeondrm0 detached
Thanks, could you also show the i386 output with the patch?
initializing kernel modesetting (RV610 0x1002:0x94C1 0x1028:0x0D02).
radeon_atrm_get_bios false
radeon_acpi_vfct_bios false
igp_read_bios_from_vram false
radeon_read_bios false
radeon_read_disabled_bios true
radeondrm0: 1680x1050, 32bpp
wsdisplay0 at radeondrm0 mux 1: console (std, vt100 emulation), using wskbd0
r600_read_disabled_bios is just doing register reads/writes it isn't
clear to me why that would be different between amd64 and i386.
Loading...