First cut at getting the pcic controller and power information for

each of the bridge chips.  Before we wrongly assumes that all cardbus
bridge chips were intel compatible step A/B.  This mostly worked, but
likely caused problems with certain cirrus logic cardbus bridges.
This commit is contained in:
Warner Losh 2001-07-01 23:41:09 +00:00
parent c799054841
commit 6428acdc74
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=79058

View file

@ -60,67 +60,98 @@ struct pcic_pci_table
int revision;
} pcic_pci_devs[] = {
{ PCI_DEVICE_ID_PCIC_CLPD6729,
"Cirrus Logic PD6729/6730 PC-Card Controller" },
"Cirrus Logic PD6729/6730 PC-Card Controller",
PCIC_PD672X, PCIC_PD_POWER },
{ PCI_DEVICE_ID_PCIC_CLPD6832,
"Cirrus Logic PD6832 PCI-CardBus Bridge" },
"Cirrus Logic PD6832 PCI-CardBus Bridge",
PCIC_PD672X, PCIC_PD_POWER },
{ PCI_DEVICE_ID_PCIC_CLPD6833,
"Cirrus Logic PD6833 PCI-CardBus Bridge" },
"Cirrus Logic PD6833 PCI-CardBus Bridge",
PCIC_PD672X, PCIC_PD_POWER },
{ PCI_DEVICE_ID_PCIC_OZ6729,
"O2micro OZ6729 PC-Card Bridge" },
"O2micro OZ6729 PC-Card Bridge",
PCIC_I82365, PCIC_AB_POWER },
{ PCI_DEVICE_ID_PCIC_OZ6730,
"O2micro OZ6730 PC-Card Bridge" },
"O2micro OZ6730 PC-Card Bridge",
PCIC_I82365, PCIC_AB_POWER },
{ PCI_DEVICE_ID_PCIC_OZ6832,
"O2micro 6832/6833 PCI-Cardbus Bridge" },
"O2micro 6832/6833 PCI-Cardbus Bridge",
PCIC_I82365, PCIC_AB_POWER },
{ PCI_DEVICE_ID_PCIC_OZ6860,
"O2micro 6860/6836 PCI-Cardbus Bridge" },
"O2micro 6860/6836 PCI-Cardbus Bridge",
PCIC_I82365, PCIC_AB_POWER },
{ PCI_DEVICE_ID_PCIC_OZ6872,
"O2micro 6812/6872 PCI-Cardbus Bridge" },
"O2micro 6812/6872 PCI-Cardbus Bridge",
PCIC_I82365, PCIC_AB_POWER },
{ PCI_DEVICE_ID_RICOH_RL5C465,
"Ricoh RL5C465 PCI-CardBus Bridge" },
"Ricoh RL5C465 PCI-CardBus Bridge",
PCIC_RF5C296, PCIC_RICOH_POWER },
{ PCI_DEVICE_ID_RICOH_RL5C475,
"Ricoh RL5C475 PCI-CardBus Bridge" },
"Ricoh RL5C475 PCI-CardBus Bridge",
PCIC_RF5C296, PCIC_RICOH_POWER },
{ PCI_DEVICE_ID_RICOH_RL5C476,
"Ricoh RL5C476 PCI-CardBus Bridge" },
"Ricoh RL5C476 PCI-CardBus Bridge",
PCIC_RF5C296, PCIC_RICOH_POWER },
{ PCI_DEVICE_ID_RICOH_RL5C477,
"Ricoh RL5C477 PCI-CardBus Bridge" },
"Ricoh RL5C477 PCI-CardBus Bridge",
PCIC_RF5C296, PCIC_RICOH_POWER },
{ PCI_DEVICE_ID_RICOH_RL5C478,
"Ricoh RL5C478 PCI-CardBus Bridge" },
"Ricoh RL5C478 PCI-CardBus Bridge",
PCIC_RF5C296, PCIC_RICOH_POWER },
{ PCI_DEVICE_ID_PCIC_TI1031,
"TI PCI-1031 PCI-PCMCIA Bridge" },
"TI PCI-1031 PCI-PCMCIA Bridge",
PCIC_I82365SL_DF, PCIC_DF_POWER },
{ PCI_DEVICE_ID_PCIC_TI1130,
"TI PCI-1130 PCI-CardBus Bridge" },
"TI PCI-1130 PCI-CardBus Bridge",
PCIC_I82365SL_DF, PCIC_DF_POWER },
{ PCI_DEVICE_ID_PCIC_TI1131,
"TI PCI-1131 PCI-CardBus Bridge" },
"TI PCI-1131 PCI-CardBus Bridge",
PCIC_I82365SL_DF, PCIC_DF_POWER },
{ PCI_DEVICE_ID_PCIC_TI1211,
"TI PCI-1211 PCI-CardBus Bridge" },
"TI PCI-1211 PCI-CardBus Bridge",
PCIC_I82365SL_DF, PCIC_DF_POWER },
{ PCI_DEVICE_ID_PCIC_TI1220,
"TI PCI-1220 PCI-CardBus Bridge" },
"TI PCI-1220 PCI-CardBus Bridge",
PCIC_I82365SL_DF, PCIC_DF_POWER },
{ PCI_DEVICE_ID_PCIC_TI1221,
"TI PCI-1221 PCI-CardBus Bridge" },
"TI PCI-1221 PCI-CardBus Bridge",
PCIC_I82365SL_DF, PCIC_DF_POWER },
{ PCI_DEVICE_ID_PCIC_TI1225,
"TI PCI-1225 PCI-CardBus Bridge" },
"TI PCI-1225 PCI-CardBus Bridge",
PCIC_I82365SL_DF, PCIC_DF_POWER },
{ PCI_DEVICE_ID_PCIC_TI1250,
"TI PCI-1250 PCI-CardBus Bridge" },
"TI PCI-1250 PCI-CardBus Bridge",
PCIC_I82365SL_DF, PCIC_DF_POWER },
{ PCI_DEVICE_ID_PCIC_TI1251,
"TI PCI-1251 PCI-CardBus Bridge" },
"TI PCI-1251 PCI-CardBus Bridge",
PCIC_I82365SL_DF, PCIC_DF_POWER },
{ PCI_DEVICE_ID_PCIC_TI1251B,
"TI PCI-1251B PCI-CardBus Bridge" },
"TI PCI-1251B PCI-CardBus Bridge",
PCIC_I82365SL_DF, PCIC_DF_POWER },
{ PCI_DEVICE_ID_PCIC_TI1410,
"TI PCI-1410 PCI-CardBus Bridge" },
"TI PCI-1410 PCI-CardBus Bridge",
PCIC_I82365SL_DF, PCIC_DF_POWER },
{ PCI_DEVICE_ID_PCIC_TI1420,
"TI PCI-1420 PCI-CardBus Bridge" },
"TI PCI-1420 PCI-CardBus Bridge",
PCIC_I82365SL_DF, PCIC_DF_POWER },
{ PCI_DEVICE_ID_PCIC_TI1450,
"TI PCI-1450 PCI-CardBus Bridge" },
"TI PCI-1450 PCI-CardBus Bridge",
PCIC_I82365SL_DF, PCIC_DF_POWER },
{ PCI_DEVICE_ID_PCIC_TI1451,
"TI PCI-1451 PCI-CardBus Bridge" },
"TI PCI-1451 PCI-CardBus Bridge",
PCIC_I82365SL_DF, PCIC_DF_POWER },
{ PCI_DEVICE_ID_PCIC_TI4451,
"TI PCI-4451 PCI-CardBus Bridge" },
"TI PCI-4451 PCI-CardBus Bridge",
PCIC_I82365SL_DF, PCIC_DF_POWER },
{ PCI_DEVICE_ID_TOSHIBA_TOPIC95,
"Toshiba ToPIC95 PCI-CardBus Bridge" },
"Toshiba ToPIC95 PCI-CardBus Bridge",
PCIC_I82365, PCIC_AB_POWER },
{ PCI_DEVICE_ID_TOSHIBA_TOPIC97,
"Toshiba ToPIC97 PCI-CardBus Bridge" },
"Toshiba ToPIC97 PCI-CardBus Bridge",
PCIC_I82365, PCIC_AB_POWER },
{ PCI_DEVICE_ID_TOSHIBA_TOPIC100,
"Toshiba ToPIC100 PCI-CardBus Bridge" },
"Toshiba ToPIC100 PCI-CardBus Bridge",
PCIC_I82365, PCIC_AB_POWER },
{ 0, NULL, 0, 0 }
};
@ -466,7 +497,6 @@ pcic_pci_attach(device_t dev)
sp->controller = itm->type;
sp->revision = itm->revision;
sc->flags = itm->flags;
sc->flags = PCIC_AB_POWER;
} else {
/* By default, assume we're a D step compatible */
sp->controller = PCIC_I82365SL_DF;