mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-16 10:20:30 +00:00
Add another ID for the SiI3112a SATA chip as used on the Adaptec 1210SA.
RAID support is still in the works, so for now just normal ATA ops. Sponsored by: Matt Douhan(www.fruitsalad.org)
This commit is contained in:
parent
df63f1d988
commit
a127b17621
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=119883
sys/dev/ata
@ -1561,12 +1561,13 @@ ata_sii_ident(device_t dev)
|
||||
struct ata_pci_controller *ctlr = device_get_softc(dev);
|
||||
struct ata_chip_id *idx;
|
||||
static struct ata_chip_id ids[] =
|
||||
{{ ATA_SII3112, 0x00, SIIMEMIO, 0, ATA_SA150, "SiI 3112" },
|
||||
{ ATA_SII0680, 0x00, SIIMEMIO, SIISETCLK, ATA_UDMA6, "SiI 0680" },
|
||||
{ ATA_CMD649, 0x00, 0, SIIINTR, ATA_UDMA5, "CMD 649" },
|
||||
{ ATA_CMD648, 0x00, 0, SIIINTR, ATA_UDMA4, "CMD 648" },
|
||||
{ ATA_CMD646, 0x07, 0, 0, ATA_UDMA2, "CMD 646U2" },
|
||||
{ ATA_CMD646, 0x00, 0, 0, ATA_WDMA2, "CMD 646" },
|
||||
{{ ATA_SII3112, 0x00, SIIMEMIO, 0, ATA_SA150, "SiI 3112" },
|
||||
{ ATA_SII3112_1, 0x00, SIIMEMIO, 0, ATA_SA150, "SiI 3112" },
|
||||
{ ATA_SII0680, 0x00, SIIMEMIO, SIISETCLK, ATA_UDMA6, "SiI 0680" },
|
||||
{ ATA_CMD649, 0x00, 0, SIIINTR, ATA_UDMA5, "CMD 649" },
|
||||
{ ATA_CMD648, 0x00, 0, SIIINTR, ATA_UDMA4, "CMD 648" },
|
||||
{ ATA_CMD646, 0x07, 0, 0, ATA_UDMA2, "CMD 646U2" },
|
||||
{ ATA_CMD646, 0x00, 0, 0, ATA_WDMA2, "CMD 646" },
|
||||
{ 0, 0, 0, 0, 0, 0}};
|
||||
char buffer[64];
|
||||
|
||||
@ -1606,11 +1607,15 @@ ata_sii_chipinit(device_t dev)
|
||||
if (ctlr->chip->cfg2 & SIISETCLK) {
|
||||
if ((pci_read_config(dev, 0x8a, 1) & 0x30) != 0x10)
|
||||
pci_write_config(dev, 0x8a,
|
||||
(pci_read_config(dev, 0x8a, 1) & 0x0F)|0x10,1);
|
||||
(pci_read_config(dev, 0x8a, 1) & 0xcf)|0x10,1);
|
||||
if ((pci_read_config(dev, 0x8a, 1) & 0x30) != 0x10)
|
||||
device_printf(dev, "%s could not set ATA133 clock\n",
|
||||
ctlr->chip->text);
|
||||
}
|
||||
|
||||
/* enable interrupt as BIOS might not */
|
||||
pci_write_config(dev, 0x8a, (pci_read_config(dev, 0x8a, 1) & 0x3f), 1);
|
||||
|
||||
ctlr->allocate = ata_sii_mio_allocate;
|
||||
ctlr->setmode = ata_sii_setmode;
|
||||
}
|
||||
|
@ -160,6 +160,7 @@ struct ata_pci_controller {
|
||||
#define ATA_SILICON_IMAGE_ID 0x1095
|
||||
#define ATA_SII0680 0x06801095
|
||||
#define ATA_SII3112 0x31121095
|
||||
#define ATA_SII3112_1 0x02401095
|
||||
#define ATA_CMD646 0x06461095
|
||||
#define ATA_CMD648 0x06481095
|
||||
#define ATA_CMD649 0x06491095
|
||||
|
Loading…
Reference in New Issue
Block a user