cf2abc64b0
The PCI IDE Programming Interface byte (PCI spec §3.1.1) encodes per-channel mode: bit 0 = primary native, bit 2 = secondary native. The previous code panicked on native-mode channels and also had a bug checking bit 0 for both channels (secondary should check bit 2). Native mode now reads I/O and control bases from PCI BARs (BAR0/1 for primary, BAR2/3 for secondary) instead of hardcoded legacy ports. Interrupt line comes from legacy_interrupt_line when available.