@@ -205,14 +205,36 @@ #ifndef CONFIG_SUNDANCE_MMIO
#define USE_IO_OPS 1
#endif
+enum cfg_version {
+ SUNDANCE_CFG_0 = 0x00,
+ SUNDANCE_CFG_1,
+ SUNDANCE_CFG_2,
+ SUNDANCE_CFG_3,
+ SUNDANCE_CFG_4,
+ SUNDANCE_CFG_5,
+ SUNDANCE_CFG_6
+};
+
+static const struct {
+ unsigned int phy;
+} sundance_cfg_info[] = {
+ [SUNDANCE_CFG_0] = { 1 },
+ [SUNDANCE_CFG_1] = { 1 },
+ [SUNDANCE_CFG_2] = { 1 },
+ [SUNDANCE_CFG_3] = { 1 },
+ [SUNDANCE_CFG_4] = { 1 },
+ [SUNDANCE_CFG_5] = { 1 },
+ [SUNDANCE_CFG_6] = { 0 }
+};
+
static const struct pci_device_id sundance_pci_tbl[] = {
- { 0x1186, 0x1002, 0x1186, 0x1002, 0, 0, 0 },
- { 0x1186, 0x1002, 0x1186, 0x1003, 0, 0, 1 },
- { 0x1186, 0x1002, 0x1186, 0x1012, 0, 0, 2 },
- { 0x1186, 0x1002, 0x1186, 0x1040, 0, 0, 3 },
- { 0x1186, 0x1002, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 4 },
- { 0x13F0, 0x0201, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 5 },
- { 0x13F0, 0x0200, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 6 },
+ { 0x1186, 0x1002, 0x1186, 0x1002, 0, 0, SUNDANCE_CFG_0 },
+ { 0x1186, 0x1002, 0x1186, 0x1003, 0, 0, SUNDANCE_CFG_1 },
+ { 0x1186, 0x1002, 0x1186, 0x1012, 0, 0, SUNDANCE_CFG_2 },
+ { 0x1186, 0x1002, 0x1186, 0x1040, 0, 0, SUNDANCE_CFG_3 },
+ { 0x1186, 0x1002, PCI_ANY_ID, PCI_ANY_ID, 0, 0, SUNDANCE_CFG_4 },
+ { 0x13F0, 0x0201, PCI_ANY_ID, PCI_ANY_ID, 0, 0, SUNDANCE_CFG_5 },
+ { 0x13F0, 0x0200, PCI_ANY_ID, PCI_ANY_ID, 0, 0, SUNDANCE_CFG_6 },
{ }
};
MODULE_DEVICE_TABLE(pci, sundance_pci_tbl);