XHCI test sending noop command
All checks were successful
Build ISO image / build-and-deploy (push) Successful in 3m12s
Build documentation / build-and-deploy (push) Successful in 3m13s

This commit is contained in:
2026-03-22 23:09:21 +01:00
parent 5cdeb87393
commit b35fc5545c
11 changed files with 360 additions and 31 deletions

View File

@@ -124,10 +124,10 @@ bool pci_ide_init (struct proc* proc, struct reschedule_ctx* rctx, struct pci_in
} else {
irqs_support = true;
if (!pci_msi_init (pci_info.bus, pci_info.slot, pci_info.func, IDE_DRIVE_PRIM,
if (!pci_msi_init (pci_info.bus, pci_info.slot, pci_info.func, INTR_IDE_DRIVE_PRIM,
thiscpu->lapic_id)) {
ioapic_route_irq (IDE_DRIVE_PRIM, 14, 0, thiscpu->lapic_id);
ioapic_route_irq (IDE_DRIVE_SCND, 15, 0, thiscpu->lapic_id);
ioapic_route_irq (INTR_IDE_DRIVE_PRIM, 14, 0, thiscpu->lapic_id);
ioapic_route_irq (INTR_IDE_DRIVE_SCND, 15, 0, thiscpu->lapic_id);
DEBUG ("Fallback to IOAPIC interrupt routing\n");
}
}
@@ -136,7 +136,8 @@ bool pci_ide_init (struct proc* proc, struct reschedule_ctx* rctx, struct pci_in
DEBUG ("scmd=%x, sctrl=%x\n", scmd, sctrl);
DEBUG ("IRQ support=%d\n", irqs_support);
uint16_t channels[2][3] = {{pcmd, pctrl, IDE_DRIVE_PRIM}, {scmd, sctrl, IDE_DRIVE_SCND}};
uint16_t channels[2][3] = {{pcmd, pctrl, INTR_IDE_DRIVE_PRIM},
{scmd, sctrl, INTR_IDE_DRIVE_SCND}};
for (size_t i = 0; i < lengthof (channels); i++) {
uint16_t cmd = channels[i][0];