Messages in this thread | | | Date | Tue, 30 Dec 2003 18:51:38 -0500 | From | Jeff Garzik <> | Subject | Re: [PATCH] adaptec 1210sa |
| |
Mickael Marchand wrote: > --- /usr/src/linux-2.6.0/drivers/scsi/sata_sil.c 2003-12-21 13:30:58.000000000 +0100 > +++ linux-2.6.0/drivers/scsi/sata_sil.c 2003-12-22 02:46:32.000000000 +0100 > @@ -276,6 +276,16 @@ > goto err_out_regions; > } > > + //let's have fun > + u8 v; > + pci_read_config_byte(pdev, 0x8a, &v); > + int mask = 0x3f; //clear 6 and 7 bits > + if (v & ~mask) { > + printk("Reenabling interrupts because Adaptec's BIOS disables them\n" ); > + v &= mask; > + pci_write_config_byte(pdev, 0x8a, v); > + } > + > memset(probe_ent, 0, sizeof(*probe_ent)); > INIT_LIST_HEAD(&probe_ent->node); > probe_ent->pdev = pdev;
Actually, ignore that last question. The SII docs indicate these bits are present in the standard SII 3112 chip, so the driver should just make sure to do this unconditionally.
Bart, the above applies to siimage.c as well. The following are equal: * PCI config reg 0x8a (byte), bits 6/7 * PCI config reg 0x88 (dword), bits 22/23 * MMIO offset 0x48 (dword), bits 22/23
The lower bit masks IDE0 interrupts, and the higher bit masks IDE1 interrupts.
Jeff
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |