On 12.05.2021 16:35, Henri Hennebert wrote:
It would be fine if you can test the driver with dev.rtsx.0.inversion=1 in
loader.conf and see it it solve the problem.
the output of
sysctl dev.rtsx and
kenv | grep smbios.system
would be useful
BTW is a dummy card inserted in the SD slot?
Thank for your time
My T540p:
(1) rtsx in the kernel, enabled in BIOS, no settings in loader.conf, EMPTY
SLOT — panic on boot, typically WITHOUT rtsx in stack trace.
(2) rtsx in the kernel, enabled in BIOS, no settings in loader.conf, SD CARD
IN THE SLOT — no panic on boot, but WiFi card detected
too late for startup scripts to run wpa_supplicant properly.
(3) rtsx in the kernel, enabled in BIOS, "dev.rtsx.0.inversion=1", SD CARD IN
THE SLOT — no panic on boot, but WiFi card detected
too late for startup scripts to run wpa_supplicant properly. And card
reporting is inverted related to real deal: rtsx0
reports "Card present" when I remove card and vice versa.
(4) rtsx in the kernel, disabled in BIOS — device not found, everything (but SD
reader) boots & works (as expected!)
(5) rtsx in the kernel, enabled in BIOS, "dev.rtsx.0.inversion=1", EMPTY SLOT — boots, but prints
out "timeout for CMD8/55/1" for very long time and *console*is*not*accessible* till "no
compatible cards found on bus".
ALSO (!) wifi card is found only AFTER all these timeouts, when startup
scripts are FAILED to attach to wireless network (!!!).
ALSO (!) it says "Card Absent" when I *INSERT* card after boot, and "Card present"
(+ a lot of timeouts again) when I *REMOVE* card, looks like this "inversion" is wrong for my
hardware.
So, it boots, but practically unusable.
(6) rtsx in the kernel, enabled in BIOS, "dev.rtsx.0.inversion=1", SD CARD IN
THE SLOT
(7) rtsx is loaded as module after boot (manually, from console), enabled in
BIOS, no setting in loader.conf — looks to work properly.
Card could be mounted, read/write, it works.
(9) rtsx is loaded as module after boot (manually, from console), enabled in BIOS,
"dev.rtsx.0.inversion=1" — don't panic, but thinks wrong about card state (Card
Present/Absent is inverted, as instructed).
My theory: rtsx detect/attach code has some race conditions / incompatibilities for multi-core
boot when card is not present, and it thrash kernel memory and/or block something on boot.
"inversion" removes this bad behavior due to waiting for card commands (as with
"inversion" it thinks card is here and try to access it).
Firts, thank you for your exhaustive testing! Your analysis seems pertinent
for me.
What seems strange: case (1) and (3) follow the same path in the driver but (1)
produce a panic.
Indeed. But boot panics is not 100%, it is about 95%, and I've tested each
case only one time...
See (2), (3) and (4) — when rtsx doesn't cause panic on boot, it still mangle
other devices detection & initialization.
booting in case (2) can you show the output of
pciconf -lvbc
hostb0@pci0:0:0:0: class=0x060000 rev=0x06 hdr=0x00 vendor=0x8086
device=0x0c04 subvendor=0x17aa subdevice=0x2210
vendor = 'Intel Corporation'
device = 'Xeon E3-1200 v3/4th Gen Core Processor DRAM Controller'
class = bridge
subclass = HOST-PCI
cap 09[e0] = vendor (length 12) Intel cap 0 version 1
pcib1@pci0:0:1:0: class=0x060400 rev=0x06 hdr=0x01 vendor=0x8086
device=0x0c01 subvendor=0x17aa subdevice=0x2210
vendor = 'Intel Corporation'
device = 'Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16
Controller'
class = bridge
subclass = PCI-PCI
cap 0d[88] = PCI Bridge subvendor=0x17aa subdevice=0x2210
cap 01[80] = powerspec 3 supports D0 D3 current D0
cap 05[90] = MSI supports 1 message
cap 10[a0] = PCI-Express 2 root port max data 256(256)
max read 128
link x8(x8) speed 2.5(8.0) ASPM L0s/L1(L0s/L1)
slot 1 power limit 75000 mW
ecap 0002[100] = VC 1 max VC0
ecap 0005[140] = Root Complex Link Declaration 1
ecap 0019[d94] = PCIe Sec 1 lane errors 0xfe
vgapci1@pci0:0:2:0: class=0x030000 rev=0x06 hdr=0x00 vendor=0x8086
device=0x0416 subvendor=0x17aa subdevice=0x221e
vendor = 'Intel Corporation'
device = '4th Gen Core Processor Integrated Graphics Controller'
class = display
subclass = VGA
bar [10] = type Memory, range 64, base 0xf3000000, size 4194304, enabled
bar [18] = type Prefetchable Memory, range 64, base 0xc0000000, size
536870912, enabled
bar [20] = type I/O Port, range 32, base 0x5000, size 64, enabled
cap 05[90] = MSI supports 1 message enabled with 1 message
cap 01[d0] = powerspec 2 supports D0 D3 current D0
cap 13[a4] = PCI Advanced Features: FLR TP
hdac0@pci0:0:3:0: class=0x040300 rev=0x06 hdr=0x00 vendor=0x8086
device=0x0c0c subvendor=0x17aa subdevice=0x2210
vendor = 'Intel Corporation'
device = 'Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller'
class = multimedia
subclass = HDA
bar [10] = type Memory, range 64, base 0xf4630000, size 16384, enabled
cap 01[50] = powerspec 2 supports D0 D3 current D0
cap 05[60] = MSI supports 1 message enabled with 1 message
cap 10[70] = PCI-Express 1 root endpoint max data 128(128) FLR NS
max read 128
xhci0@pci0:0:20:0: class=0x0c0330 rev=0x04 hdr=0x00 vendor=0x8086
device=0x8c31 subvendor=0x17aa subdevice=0x2210
vendor = 'Intel Corporation'
device = '8 Series/C220 Series Chipset Family USB xHCI'
class = serial bus
subclass = USB
bar [10] = type Memory, range 64, base 0xf4620000, size 65536, enabled
cap 01[70] = powerspec 2 supports D0 D3 current D0
cap 05[80] = MSI supports 8 messages, 64 bit enabled with 1 message
none0@pci0:0:22:0: class=0x078000 rev=0x04 hdr=0x00 vendor=0x8086
device=0x8c3a subvendor=0x17aa subdevice=0x2210
vendor = 'Intel Corporation'
device = '8 Series/C220 Series Chipset Family MEI Controller'
class = simple comms
bar [10] = type Memory, range 64, base 0xf4639000, size 16, enabled
cap 01[50] = powerspec 3 supports D0 D3 current D0
cap 05[8c] = MSI supports 1 message, 64 bit
em0@pci0:0:25:0: class=0x020000 rev=0x04 hdr=0x00 vendor=0x8086
device=0x153a subvendor=0x17aa subdevice=0x2210
vendor = 'Intel Corporation'
device = 'Ethernet Connection I217-LM'
class = network
subclass = ethernet
bar [10] = type Memory, range 32, base 0xf4600000, size 131072, enabled
bar [14] = type Memory, range 32, base 0xf463f000, size 4096, enabled
bar [18] = type I/O Port, range 32, base 0x5080, size 32, enabled
cap 01[c8] = powerspec 2 supports D0 D3 current D0
cap 05[d0] = MSI supports 1 message, 64 bit enabled with 1 message
cap 13[e0] = PCI Advanced Features: FLR TP
ehci0@pci0:0:26:0: class=0x0c0320 rev=0x04 hdr=0x00 vendor=0x8086
device=0x8c2d subvendor=0x17aa subdevice=0x2210
vendor = 'Intel Corporation'
device = '8 Series/C220 Series Chipset Family USB EHCI'
class = serial bus
subclass = USB
bar [10] = type Memory, range 32, base 0xf463e000, size 1024, enabled
cap 01[50] = powerspec 2 supports D0 D3 current D0
cap 0a[58] = EHCI Debug Port at offset 0xa0 in map 0x14
cap 13[98] = PCI Advanced Features: FLR TP
hdac1@pci0:0:27:0: class=0x040300 rev=0x04 hdr=0x00 vendor=0x8086
device=0x8c20 subvendor=0x17aa subdevice=0x2210
vendor = 'Intel Corporation'
device = '8 Series/C220 Series Chipset High Definition Audio Controller'
class = multimedia
subclass = HDA
bar [10] = type Memory, range 64, base 0xf4634000, size 16384, enabled
cap 01[50] = powerspec 2 supports D0 D3 current D0
cap 05[60] = MSI supports 1 message, 64 bit enabled with 1 message
cap 10[70] = PCI-Express 1 root endpoint max data 128(128) FLR
max read 128
ecap 0002[100] = VC 1 max VC1
pcib2@pci0:0:28:0: class=0x060400 rev=0xd4 hdr=0x01 vendor=0x8086
device=0x8c10 subvendor=0x17aa subdevice=0x2210
vendor = 'Intel Corporation'
device = '8 Series/C220 Series Chipset Family PCI Express Root Port'
class = bridge
subclass = PCI-PCI
cap 10[40] = PCI-Express 2 root port max data 128(128)
max read 128
link x1(x1) speed 2.5(5.0) ASPM L0s/L1(L0s/L1)
slot 0 power limit 100 mW
cap 05[80] = MSI supports 1 message
cap 0d[90] = PCI Bridge subvendor=0x17aa subdevice=0x2210
cap 01[a0] = powerspec 3 supports D0 D3 current D0
pcib3@pci0:0:28:1: class=0x060400 rev=0xd4 hdr=0x01 vendor=0x8086
device=0x8c12 subvendor=0x17aa subdevice=0x2210
vendor = 'Intel Corporation'
device = '8 Series/C220 Series Chipset Family PCI Express Root Port'
class = bridge
subclass = PCI-PCI
cap 10[40] = PCI-Express 2 root port max data 128(128)
max read 128
link x1(x1) speed 2.5(5.0) ASPM L1(L0s/L1)
slot 1 power limit 100 mW
cap 05[80] = MSI supports 1 message
cap 0d[90] = PCI Bridge subvendor=0x17aa subdevice=0x2210
cap 01[a0] = powerspec 3 supports D0 D3 current D0
pcib4@pci0:0:28:2: class=0x060400 rev=0xd4 hdr=0x01 vendor=0x8086
device=0x8c14 subvendor=0x17aa subdevice=0x2210
vendor = 'Intel Corporation'
device = '8 Series/C220 Series Chipset Family PCI Express Root Port'
class = bridge
subclass = PCI-PCI
cap 10[40] = PCI-Express 2 root port max data 128(128)
max read 128
link x0(x1) speed 0.0(5.0) ASPM L0s/L1(L0s/L1)
slot 2 power limit 100 mW HotPlug(empty) surprise
cap 05[80] = MSI supports 1 message enabled with 1 message
cap 0d[90] = PCI Bridge subvendor=0x17aa subdevice=0x2210
cap 01[a0] = powerspec 3 supports D0 D3 current D0
ehci1@pci0:0:29:0: class=0x0c0320 rev=0x04 hdr=0x00 vendor=0x8086
device=0x8c26 subvendor=0x17aa subdevice=0x2210
vendor = 'Intel Corporation'
device = '8 Series/C220 Series Chipset Family USB EHCI'
class = serial bus
subclass = USB
bar [10] = type Memory, range 32, base 0xf463d000, size 1024, enabled
cap 01[50] = powerspec 2 supports D0 D3 current D0
cap 0a[58] = EHCI Debug Port at offset 0xa0 in map 0x14
cap 13[98] = PCI Advanced Features: FLR TP
isab0@pci0:0:31:0: class=0x060100 rev=0x04 hdr=0x00 vendor=0x8086
device=0x8c4f subvendor=0x17aa subdevice=0x2210
vendor = 'Intel Corporation'
device = 'QM87 Express LPC Controller'
class = bridge
subclass = PCI-ISA
cap 09[e0] = vendor (length 12) Intel cap 1 version 0
features: AMT, 4 PCI-e x1 slots
ahci0@pci0:0:31:2: class=0x010601 rev=0x04 hdr=0x00 vendor=0x8086
device=0x8c03 subvendor=0x17aa subdevice=0x2210
vendor = 'Intel Corporation'
device = '8 Series/C220 Series Chipset Family 6-port SATA Controller 1
[AHCI mode]'
class = mass storage
subclass = SATA
bar [10] = type I/O Port, range 32, base 0x50a8, size 8, enabled
bar [14] = type I/O Port, range 32, base 0x50b4, size 4, enabled
bar [18] = type I/O Port, range 32, base 0x50a0, size 8, enabled
bar [1c] = type I/O Port, range 32, base 0x50b0, size 4, enabled
bar [20] = type I/O Port, range 32, base 0x5060, size 32, enabled
bar [24] = type Memory, range 32, base 0xf463c000, size 2048, enabled
cap 05[80] = MSI supports 1 message enabled with 1 message
cap 01[70] = powerspec 3 supports D0 D3 current D0
cap 12[a8] = SATA Index-Data Pair
ichsmb0@pci0:0:31:3: class=0x0c0500 rev=0x04 hdr=0x00 vendor=0x8086
device=0x8c22 subvendor=0x17aa subdevice=0x2210
vendor = 'Intel Corporation'
device = '8 Series/C220 Series Chipset Family SMBus Controller'
class = serial bus
subclass = SMBus
bar [10] = type Memory, range 64, base 0xf4638000, size 256, enabled
bar [20] = type I/O Port, range 32, base 0xefa0, size 32, enabled
vgapci0@pci0:1:0:0: class=0x030000 rev=0xa1 hdr=0x00 vendor=0x10de
device=0x1290 subvendor=0x17aa subdevice=0x221e
vendor = 'NVIDIA Corporation'
device = 'GK208M [GeForce GT 730M]'
class = display
subclass = VGA
bar [10] = type Memory, range 32, base 0xf2000000, size 16777216, enabled
bar [14] = type Prefetchable Memory, range 64, base 0xe0000000, size
268435456, enabled
bar [1c] = type Prefetchable Memory, range 64, base 0xf0000000, size
33554432, enabled
bar [24] = type I/O Port, range 32, base 0x4000, size 128, enabled
cap 01[60] = powerspec 3 supports D0 D3 current D0
cap 05[68] = MSI supports 1 message, 64 bit
cap 10[78] = PCI-Express 2 endpoint max data 256(256) RO NS
max read 512
link x8(x8) speed 2.5(8.0) ASPM L0s/L1(L0s/L1) ClockPM disabled
ecap 0002[100] = VC 1 max VC0
ecap 0004[128] = Power Budgeting 1
ecap 000b[600] = Vendor [1] ID 0001 Rev 1 Length 36
ecap 0019[900] = PCIe Sec 1 lane errors 0
rtsx0@pci0:3:0:0: class=0xff0000 rev=0x01 hdr=0x00 vendor=0x10ec
device=0x5227 subvendor=0x17aa subdevice=0x2210
vendor = 'Realtek Semiconductor Co., Ltd.'
device = 'RTS5227 PCI Express Card Reader'
bar [10] = type Memory, range 32, base 0xf4500000, size 4096, enabled
cap 01[40] = powerspec 3 supports D0 D1 D2 D3 current D0
cap 05[50] = MSI supports 1 message, 64 bit enabled with 1 message
cap 10[70] = PCI-Express 2 endpoint max data 128(128) RO
max read 512
link x1(x1) speed 2.5(2.5) ASPM disabled(L0s/L1) ClockPM
enabled
ecap 0001[100] = AER 2 0 fatal 0 non-fatal 1 corrected
ecap 0003[140] = Serial 1 00000001004ce000
ecap 0018[150] = LTR 1
ecap 001e[158] = L1 PM Substates 1
iwm0@pci0:4:0:0: class=0x028000 rev=0x6b hdr=0x00 vendor=0x8086
device=0x08b2 subvendor=0x8086 subdevice=0xc262
vendor = 'Intel Corporation'
device = 'Wireless 7260'
class = network
bar [10] = type Memory, range 64, base 0xf4400000, size 8192, enabled
cap 01[c8] = powerspec 3 supports D0 D3 current D0
cap 05[d0] = MSI supports 1 message, 64 bit enabled with 1 message
cap 10[40] = PCI-Express 2 endpoint max data 128(128) FLR RO NS
max read 128
link x1(x1) speed 2.5(2.5) ASPM L1(L0s/L1) ClockPM enabled
ecap 0001[100] = AER 1 0 fatal 0 non-fatal 0 corrected
ecap 0003[140] = Serial 1 7c7a91ffff988046
ecap 0018[14c] = LTR 1
ecap 000b[154] = Vendor [1] ID cafe Rev 1 Length 20
and
vmstat -i
interrupt total rate
irq1: atkbd0 278 3
irq9: acpi0 232 3
irq16: ehci0 171 2
irq23: ehci1 226 3
cpu0:timer 3636 43
cpu1:timer 2033 24
cpu2:timer 1839 22
cpu3:timer 1610 19
cpu4:timer 2363 28
cpu5:timer 3004 36
cpu6:timer 2990 36
cpu7:timer 2894 34
irq32: hdac0 6 0
irq33: xhci0 109175 1299
irq35: hdac1 45 1
irq36: rtsx0 359 4
irq38: ahci0 3098 37
irq39: iwm0 550 7
irq40: vgapci1 82 1
Total 134591 1602
--
// Lev Serebryakov
_______________________________________________
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"