aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/isdn/hisax/teles_cs.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/isdn/hisax/teles_cs.c')
-rw-r--r--drivers/isdn/hisax/teles_cs.c62
1 files changed, 0 insertions, 62 deletions
diff --git a/drivers/isdn/hisax/teles_cs.c b/drivers/isdn/hisax/teles_cs.c
index 82f09b864846..282a4467ef19 100644
--- a/drivers/isdn/hisax/teles_cs.c
+++ b/drivers/isdn/hisax/teles_cs.c
@@ -44,26 +44,8 @@ MODULE_LICENSE("GPL");
44static int protocol = 2; /* EURO-ISDN Default */ 44static int protocol = 2; /* EURO-ISDN Default */
45module_param(protocol, int, 0); 45module_param(protocol, int, 0);
46 46
47/*====================================================================*/
48
49/*
50 The event() function is this driver's Card Services event handler.
51 It will be called by Card Services when an appropriate card status
52 event is received. The config() and release() entry points are
53 used to configure or release a socket, in response to card insertion
54 and ejection events. They are invoked from the teles_cs event
55 handler.
56*/
57
58static int teles_cs_config(struct pcmcia_device *link) __devinit ; 47static int teles_cs_config(struct pcmcia_device *link) __devinit ;
59static void teles_cs_release(struct pcmcia_device *link); 48static void teles_cs_release(struct pcmcia_device *link);
60
61/*
62 The attach() and detach() entry points are used to create and destroy
63 "instances" of the driver, where each instance represents everything
64 needed to manage one actual PCMCIA card.
65*/
66
67static void teles_detach(struct pcmcia_device *p_dev) __devexit ; 49static void teles_detach(struct pcmcia_device *p_dev) __devexit ;
68 50
69typedef struct local_info_t { 51typedef struct local_info_t {
@@ -72,18 +54,6 @@ typedef struct local_info_t {
72 int cardnr; 54 int cardnr;
73} local_info_t; 55} local_info_t;
74 56
75/*======================================================================
76
77 teles_attach() creates an "instance" of the driver, allocatingx
78 local data structures for one device. The device is registered
79 with Card Services.
80
81 The dev_link structure is initialized, but we don't actually
82 configure the card at this point -- we wait until we receive a
83 card insertion event.
84
85======================================================================*/
86
87static int __devinit teles_probe(struct pcmcia_device *link) 57static int __devinit teles_probe(struct pcmcia_device *link)
88{ 58{
89 local_info_t *local; 59 local_info_t *local;
@@ -98,27 +68,11 @@ static int __devinit teles_probe(struct pcmcia_device *link)
98 local->p_dev = link; 68 local->p_dev = link;
99 link->priv = local; 69 link->priv = local;
100 70
101 /*
102 General socket configuration defaults can go here. In this
103 client, we assume very little, and rely on the CIS for almost
104 everything. In most clients, many details (i.e., number, sizes,
105 and attributes of IO windows) are fixed by the nature of the
106 device, and can be hard-wired here.
107 */
108 link->config_flags |= CONF_ENABLE_IRQ | CONF_AUTO_SET_IO; 71 link->config_flags |= CONF_ENABLE_IRQ | CONF_AUTO_SET_IO;
109 72
110 return teles_cs_config(link); 73 return teles_cs_config(link);
111} /* teles_attach */ 74} /* teles_attach */
112 75
113/*======================================================================
114
115 This deletes a driver "instance". The device is de-registered
116 with Card Services. If it has been released, all local data
117 structures are freed. Otherwise, the structures will be freed
118 when the device is released.
119
120======================================================================*/
121
122static void __devexit teles_detach(struct pcmcia_device *link) 76static void __devexit teles_detach(struct pcmcia_device *link)
123{ 77{
124 local_info_t *info = link->priv; 78 local_info_t *info = link->priv;
@@ -131,14 +85,6 @@ static void __devexit teles_detach(struct pcmcia_device *link)
131 kfree(info); 85 kfree(info);
132} /* teles_detach */ 86} /* teles_detach */
133 87
134/*======================================================================
135
136 teles_cs_config() is scheduled to run after a CARD_INSERTION event
137 is received, to configure the PCMCIA socket, and to make the
138 device available to the system.
139
140======================================================================*/
141
142static int teles_cs_configcheck(struct pcmcia_device *p_dev, void *priv_data) 88static int teles_cs_configcheck(struct pcmcia_device *p_dev, void *priv_data)
143{ 89{
144 int j; 90 int j;
@@ -204,14 +150,6 @@ cs_failed:
204 return -ENODEV; 150 return -ENODEV;
205} /* teles_cs_config */ 151} /* teles_cs_config */
206 152
207/*======================================================================
208
209 After a card is removed, teles_cs_release() will unregister the net
210 device, and release the PCMCIA configuration. If the device is
211 still open, this will be postponed until it is closed.
212
213======================================================================*/
214
215static void teles_cs_release(struct pcmcia_device *link) 153static void teles_cs_release(struct pcmcia_device *link)
216{ 154{
217 local_info_t *local = link->priv; 155 local_info_t *local = link->priv;