Promise SX6000 IRQ assignment
I am having trouble getting a Promise SX6000 working with
Hyperthreading enabled and APIC.
Hardware:
- Supermicro P4SC8/P4SCI Motherboard (Intel E7210) (Bios Rev. 1.0C)
- Intel Pentium 4 2.8ghz processor with Hyperthreading
- Promise Sx6000 RAID Controller (Firmware 1.20.0.27)
Software:
- Linux Kernel 2.4.26 (Based on Redhat 9 .config with SMP enabled)
- Redhat 9.0 distribution
- Promise SX6000 Driver (compiled from source 1.34.0.1)
If I disable Hyperthreading in the BIOS Setup or boot with noapic
then the card is assigned to IRQ 9 and everything works fine.
However, if I enable Hyperthreading then Linux tries to
assign IRQ 16 to the card I get a time out.
QUESTION: Is there a way to
tell linux not to assign an IRQ above 15 to the card?
QUESTION: I have compiled the Promise driver from scratch,
Is there a way to modify the request_irq call to insure that
a particular interrupt get's assigned?
... normal kernel messages ....
RAMDISK: Compressed image found at block 0
Freeing initrd memory: 94k freed
VFS: Mounted root (ext2 filesystem)
Red Hat nash version 3.4.42 starting
Loading pti_st.o module
Found PTI SuperTrak at mbase: 0xe8000000, irq 16.
scsi0 : PROMISE SuperTrak SX6000 Driver
Vendor: PTI Model: SuperTrak Rev:
Type: Direct-Access ANSI SCSI revision: 02
Attached scsi disk sda at scsi0, channel 0, id 0, lun 0
SCSI device sda: 316406016 512-byte hdwr sectors (162000 MB)
Partition check:
sda:scsi : aborting command due to timeout : pid 10, scsi0, channel
0, id 0,
lun 0 Read (10) 00 00 00 00 00 00 00 08 00
|