[haiku-bugs] Re: [Haiku] #16778: Problem with SDHC
- From: "Haiku" <trac@xxxxxxxxxxxx>
- To: undisclosed-recipients: ;
- Date: Sun, 02 May 2021 08:52:16 -0000
#16778: Problem with SDHC
-------------------------------+------------------------
Reporter: AlienSoldier | Owner: pulkomandy
Type: bug | Status: new
Priority: high | Milestone: R1/beta3
Component: Drivers/Disk/MMC | Version: R1/beta2
Resolution: | Keywords:
Blocked By: | Blocking:
Platform: All |
-------------------------------+------------------------
Comment (by pulkomandy):
Replying to [comment:22 korli]:
ACPICA tries to update io-apic routing for this device but fails (I
don't know what to do with this):
KERN: failed to update interrupt_line for PCI 6:4 mask 1
This has a function mask of 1 (function 0, mask = 1 << 0), but I'm
interested in function 4 (mask 10 = 1 << 4).
Here is a larger extract of the log with all the functions provided by
this device:
{{{
KERN: PCI: [dom 0, bus 6] bus 6, device 4, function 0: vendor 104c,
device 8031, revision 00
KERN: PCI: class_base 06, class_function 07, class_api 00
KERN: PCI: vendor 104c: Texas Instruments
KERN: PCI: device 8031: PCIxx21/PCIxx11/PCIx515 PC Card Controller
KERN: PCI: info: Bridge (CardBus bridge)
KERN: PCI: line_size 08, latency 40, header_type 82, BIST 00
KERN: PCI: subsystem_id ff00, subsystem_vendor_id 1179
KERN: PCI: primary_bus 06, secondary_bus 07, subordinate_bus 07,
secondary_latency 24
KERN: PCI: bridge_control 0344, secondary_status 0200
KERN: PCI: memory_base_upper32 00000000, memory_base 00000000
KERN: PCI: memory_limit_upper32 00000000, memory_limit 00000000
KERN: PCI: io_base_upper32 00000000, io_base 00000000
KERN: PCI: io_limit_upper32 00000000, io_limit 00000000
KERN: PCI: Capabilities: PM
KERN: PCI: [dom 0, bus 6] bus 6, device 4, function 2: vendor 104c,
device 8032, revision 00
KERN: PCI: class_base 0c, class_function 00, class_api 10
KERN: PCI: vendor 104c: Texas Instruments
KERN: PCI: device 8032: OHCI Compliant IEEE 1394 Host Controller
KERN: PCI: info: Serial bus controller (FireWire (IEEE 1394), OHCI)
KERN: PCI: line_size 08, latency 20, header_type 80, BIST 00
KERN: PCI: ROM base host 00000000, pci 00000000, size 00000000
KERN: PCI: cardbus_CIS 00000000, subsystem_id ff00, subsystem_vendor_id
1179
KERN: PCI: interrupt_line 0b, interrupt_pin 03, min_grant 02,
max_latency 04
KERN: PCI: base reg 0: host bc006800, pci bc006800, size 00000800, flags
00
KERN: PCI: base reg 1: host bc000000, pci bc000000, size 00004000, flags
00
KERN: PCI: base reg 2: host 00000000, pci 00000000, size 00000000, flags
00
KERN: PCI: base reg 3: host 00000000, pci 00000000, size 00000000, flags
00
KERN: PCI: base reg 4: host 00000000, pci 00000000, size 00000000,
fKERN: lags 00
KERN: PCI: base reg 5: host 00000000, pci 00000000, size 00000000, flags
00
KERN: PCI: Capabilities: PM
KERN: PCI: [dom 0, bus 6] bus 6, device 4, function 3: vendor 104c,
device 8033, revision 00
KERN: PCI: class_base 01, class_function 80, class_api 00
KERN: PCI: vendor 104c: Texas Instruments
KERN: PCI: device 8033: PCIxx21/PCIxx11 Flash Media Controller
KERN: PCI: info: Mass storage controller
KERN: PCI: line_size 08, latency 39, header_type 80, BIST 00
KERN: PCI: ROM base host 00000000, pci 00000000, size 00000000
KERN: PCI: cardbus_CIS 00000000, subsystem_id ff05, subsystem_vendor_id
1179
KERN: PCI: interrupt_line 0a, interrupt_pin 02, min_grant 07,
max_latency 04
KERN: PCI: base reg 0: host bc004000, pci bc004000, size 00002000, flags
00
KERN: PCI: base reg 1: host 00000000, pci 00000000, size 00000000, flags
00
KERN: PCI: base reg 2: host 00000000, pci 00000000, size 00000000, flags
00
KERN: PCI: base reg 3: host 00000000, pci 00000000, size 00000000,
flags 00
KERN: PCI: base reg 4: host 00000000, pci 00000000, size 00000000, flags
00
KERN: PCI: base reg 5: host 00000000, pci 00000000, size 00000000, flags
00
KERN: PCI: Capabilities: PM
KERN: PCI: [dom 0, bus 6] bus 6, device 4, function 4: vendor 104c,
device 8034, revision 00
KERN: PCI: class_base 08, class_function 05, class_api 00
KERN: PCI: vendor 104c: Texas Instruments
KERN: PCI: device 8034: PCIxx21/PCIxx11 SD Host Controller
KERN: PCI: info: Generic system peripheral (SD Host controller)
KERN: PCI: line_size 08, latency 39, header_type 80, BIST 00
KERN: PCI: ROM base host 00000000, pci 00000000, size 00000000
KERN: PCI: cardbus_CIS 00000000, subsystem_id ff05, subsystem_vendor_id
1179
KERN: PCI: interrupt_line 0a, interrupt_pin 04, min_grant 07,
max_latency 04
KERN: PCI: base reg 0: host bc009400, pci bc009400, size 00000100, flags
00
KERN: PCI: base reg 1: host bc009000, pci bc009000, size 00000100, flags
00
KERN: PCI: base reg 2: host bc006400, pci bc006400, size 00000100, flags
00
KERN: PCI: base reg 3: host 00000000, pci 00000000, size 00000000, flags
00
KERN: PCI: base reg 4: host 00000000, pci 00000000, size 00000000, flags
00
KERN: PCI: base reg 5: host 00000000, pci 00000000, size 00000000, flags
00
KERN: PCI: Capabilities: PM
}}}
Function 0 (which corresponds to mask = 1) does not seem to have an
interrupt attached to it at this point. Functions 3 and 4 have one
interrupt each (not the same one).
And the interrupt table is this:
{{{
KERN: address 0x4ffff; pin 0; GSI 16; pci 6:4 pin 1 func mask 1; bios irq:
10; gsi 16; config 0x06
KERN: address 0x4ffff; pin 1; GSI 17; pci 6:4 pin 2 func mask 8; bios irq:
10; gsi 17; config 0x06
KERN: address 0x4ffff; pin 2; GSI 18; pci 6:4 pin 3 func mask 4; bios irq:
11; gsi 18; config 0x06
KERN: address 0x4ffff; pin 3; GSI 19; pci 6:4 pin 4 func mask 10; bios
irq: 10; gsi 19; config 0x06
}}}
Now I don't understand why function 0 (mask 1) has an interrupt listed
here, while in the previous part of the log, it didn't. But I'm not very
familiar with PCI, is that expected?
--
Ticket URL: <
https://dev.haiku-os.org/ticket/16778#comment:25>
Haiku <
https://dev.haiku-os.org>
The Haiku operating system.
Other related posts: