aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorDaniel Ritz <daniel.ritz@gmx.ch>2005-08-22 01:29:26 -0400
committerDominik Brodowski <linux@dominikbrodowski.net>2005-09-26 07:09:20 -0400
commit8c3520d4eb3b1bbf2e45fbae8dcfb8db06d5e775 (patch)
treedf9b4f49e8f9ffa34657776be458fbd124b2e87b /include
parent8ddec7460d2f5db3ac35812c03676b1473d1d668 (diff)
[PATCH] yenta: auto-tune EnE bridges for CardBus cards
Echo Audio cardbus products are known to be incompatible with EnE bridges. in order to maybe solve the problem a EnE specific test bit has to be set, another cleared...but other setups have a good chance to break when just forcing the bits. so do the whole thingy automatically. The patch adds a hook in cb_alloc() that allows special tuning for the different chipsets. for ene just match the Echo products and set/clear the test bits, defaults to do the same thing as w/o the patch to not break working setups. Signed-off-by: Daniel Ritz <daniel.ritz@gmx.ch> Cc: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Diffstat (limited to 'include')
-rw-r--r--include/linux/pci_ids.h5
-rw-r--r--include/pcmcia/ss.h9
2 files changed, 13 insertions, 1 deletions
diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h
index b86a4b77007e..92efb2c767f9 100644
--- a/include/linux/pci_ids.h
+++ b/include/linux/pci_ids.h
@@ -2187,7 +2187,12 @@
2187#define PCI_DEVICE_ID_ENE_1211 0x1211 2187#define PCI_DEVICE_ID_ENE_1211 0x1211
2188#define PCI_DEVICE_ID_ENE_1225 0x1225 2188#define PCI_DEVICE_ID_ENE_1225 0x1225
2189#define PCI_DEVICE_ID_ENE_1410 0x1410 2189#define PCI_DEVICE_ID_ENE_1410 0x1410
2190#define PCI_DEVICE_ID_ENE_710 0x1411
2191#define PCI_DEVICE_ID_ENE_712 0x1412
2190#define PCI_DEVICE_ID_ENE_1420 0x1420 2192#define PCI_DEVICE_ID_ENE_1420 0x1420
2193#define PCI_DEVICE_ID_ENE_720 0x1421
2194#define PCI_DEVICE_ID_ENE_722 0x1422
2195
2191#define PCI_VENDOR_ID_CHELSIO 0x1425 2196#define PCI_VENDOR_ID_CHELSIO 0x1425
2192 2197
2193#define PCI_VENDOR_ID_MIPS 0x153f 2198#define PCI_VENDOR_ID_MIPS 0x153f
diff --git a/include/pcmcia/ss.h b/include/pcmcia/ss.h
index 0f7aacc33fe9..c8592c7e8eaa 100644
--- a/include/pcmcia/ss.h
+++ b/include/pcmcia/ss.h
@@ -21,6 +21,9 @@
21#include <pcmcia/cs_types.h> 21#include <pcmcia/cs_types.h>
22#include <pcmcia/cs.h> 22#include <pcmcia/cs.h>
23#include <pcmcia/bulkmem.h> 23#include <pcmcia/bulkmem.h>
24#ifdef CONFIG_CARDBUS
25#include <linux/pci.h>
26#endif
24 27
25/* Definitions for card status flags for GetStatus */ 28/* Definitions for card status flags for GetStatus */
26#define SS_WRPROT 0x0001 29#define SS_WRPROT 0x0001
@@ -233,7 +236,11 @@ struct pcmcia_socket {
233 236
234 /* so is power hook */ 237 /* so is power hook */
235 int (*power_hook)(struct pcmcia_socket *sock, int operation); 238 int (*power_hook)(struct pcmcia_socket *sock, int operation);
236 239#ifdef CONFIG_CARDBUS
240 /* allows tuning the CB bridge before loading driver for the CB card */
241 void (*tune_bridge)(struct pcmcia_socket *sock, struct pci_bus *bus);
242#endif
243
237 /* state thread */ 244 /* state thread */
238 struct semaphore skt_sem; /* protects socket h/w state */ 245 struct semaphore skt_sem; /* protects socket h/w state */
239 246