diff options
author | Dominik Brodowski <linux@dominikbrodowski.net> | 2009-10-24 09:55:39 -0400 |
---|---|---|
committer | Dominik Brodowski <linux@dominikbrodowski.net> | 2009-11-09 02:30:05 -0500 |
commit | 9b44de2015ff4a2ed1d56efedfcc72b917d356a6 (patch) | |
tree | 63460e0cf95d4bbea0111d153247c3298ac4ff3d /drivers/usb/host/sl811_cs.c | |
parent | 7c5af6ffd69bb2bb3c86b374153627529d67598c (diff) |
pcmcia: use dynamic debug infrastructure, deprecate CS_CHECK (misc drivers)
Convert PCMCIA drivers to use the dynamic debug infrastructure, instead of
requiring manual settings of PCMCIA_DEBUG.
Also, remove all usages of the CS_CHECK macro and replace them with proper
Linux style calling and return value checking. The extra error reporting may
be dropped, as the PCMCIA core already complains about any (non-driver-author)
errors.
CC: linux-mtd@lists.infradead.org
CC: linux-usb@vger.kernel.org
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Diffstat (limited to 'drivers/usb/host/sl811_cs.c')
-rw-r--r-- | drivers/usb/host/sl811_cs.c | 46 |
1 files changed, 13 insertions, 33 deletions
diff --git a/drivers/usb/host/sl811_cs.c b/drivers/usb/host/sl811_cs.c index 516848dd9b4..46077420dea 100644 --- a/drivers/usb/host/sl811_cs.c +++ b/drivers/usb/host/sl811_cs.c | |||
@@ -37,28 +37,8 @@ MODULE_LICENSE("GPL"); | |||
37 | /* MACROS */ | 37 | /* MACROS */ |
38 | /*====================================================================*/ | 38 | /*====================================================================*/ |
39 | 39 | ||
40 | #if defined(DEBUG) || defined(PCMCIA_DEBUG) | ||
41 | |||
42 | static int pc_debug = 0; | ||
43 | module_param(pc_debug, int, 0644); | ||
44 | |||
45 | #define DBG(n, args...) if (pc_debug>(n)) printk(KERN_DEBUG "sl811_cs: " args) | ||
46 | |||
47 | #else | ||
48 | #define DBG(n, args...) do{}while(0) | ||
49 | #endif /* no debugging */ | ||
50 | |||
51 | #define INFO(args...) printk(KERN_INFO "sl811_cs: " args) | 40 | #define INFO(args...) printk(KERN_INFO "sl811_cs: " args) |
52 | 41 | ||
53 | #define INT_MODULE_PARM(n, v) static int n = v; module_param(n, int, 0444) | ||
54 | |||
55 | #define CS_CHECK(fn, ret) \ | ||
56 | do { \ | ||
57 | last_fn = (fn); \ | ||
58 | if ((last_ret = (ret)) != 0) \ | ||
59 | goto cs_failed; \ | ||
60 | } while (0) | ||
61 | |||
62 | /*====================================================================*/ | 42 | /*====================================================================*/ |
63 | /* VARIABLES */ | 43 | /* VARIABLES */ |
64 | /*====================================================================*/ | 44 | /*====================================================================*/ |
@@ -76,7 +56,7 @@ static void sl811_cs_release(struct pcmcia_device * link); | |||
76 | 56 | ||
77 | static void release_platform_dev(struct device * dev) | 57 | static void release_platform_dev(struct device * dev) |
78 | { | 58 | { |
79 | DBG(0, "sl811_cs platform_dev release\n"); | 59 | dev_dbg(dev, "sl811_cs platform_dev release\n"); |
80 | dev->parent = NULL; | 60 | dev->parent = NULL; |
81 | } | 61 | } |
82 | 62 | ||
@@ -140,7 +120,7 @@ static int sl811_hc_init(struct device *parent, resource_size_t base_addr, | |||
140 | 120 | ||
141 | static void sl811_cs_detach(struct pcmcia_device *link) | 121 | static void sl811_cs_detach(struct pcmcia_device *link) |
142 | { | 122 | { |
143 | DBG(0, "sl811_cs_detach(0x%p)\n", link); | 123 | dev_dbg(&link->dev, "sl811_cs_detach\n"); |
144 | 124 | ||
145 | sl811_cs_release(link); | 125 | sl811_cs_release(link); |
146 | 126 | ||
@@ -150,7 +130,7 @@ static void sl811_cs_detach(struct pcmcia_device *link) | |||
150 | 130 | ||
151 | static void sl811_cs_release(struct pcmcia_device * link) | 131 | static void sl811_cs_release(struct pcmcia_device * link) |
152 | { | 132 | { |
153 | DBG(0, "sl811_cs_release(0x%p)\n", link); | 133 | dev_dbg(&link->dev, "sl811_cs_release\n"); |
154 | 134 | ||
155 | pcmcia_disable_device(link); | 135 | pcmcia_disable_device(link); |
156 | platform_device_unregister(&platform_dev); | 136 | platform_device_unregister(&platform_dev); |
@@ -207,9 +187,9 @@ static int sl811_cs_config(struct pcmcia_device *link) | |||
207 | { | 187 | { |
208 | struct device *parent = &handle_to_dev(link); | 188 | struct device *parent = &handle_to_dev(link); |
209 | local_info_t *dev = link->priv; | 189 | local_info_t *dev = link->priv; |
210 | int last_fn, last_ret; | 190 | int ret; |
211 | 191 | ||
212 | DBG(0, "sl811_cs_config(0x%p)\n", link); | 192 | dev_dbg(&link->dev, "sl811_cs_config\n"); |
213 | 193 | ||
214 | if (pcmcia_loop_config(link, sl811_cs_config_check, NULL)) | 194 | if (pcmcia_loop_config(link, sl811_cs_config_check, NULL)) |
215 | goto failed; | 195 | goto failed; |
@@ -217,14 +197,16 @@ static int sl811_cs_config(struct pcmcia_device *link) | |||
217 | /* require an IRQ and two registers */ | 197 | /* require an IRQ and two registers */ |
218 | if (!link->io.NumPorts1 || link->io.NumPorts1 < 2) | 198 | if (!link->io.NumPorts1 || link->io.NumPorts1 < 2) |
219 | goto failed; | 199 | goto failed; |
220 | if (link->conf.Attributes & CONF_ENABLE_IRQ) | 200 | if (link->conf.Attributes & CONF_ENABLE_IRQ) { |
221 | CS_CHECK(RequestIRQ, | 201 | ret = pcmcia_request_irq(link, &link->irq); |
222 | pcmcia_request_irq(link, &link->irq)); | 202 | if (ret) |
223 | else | 203 | goto failed; |
204 | } else | ||
224 | goto failed; | 205 | goto failed; |
225 | 206 | ||
226 | CS_CHECK(RequestConfiguration, | 207 | ret = pcmcia_request_configuration(link, &link->conf); |
227 | pcmcia_request_configuration(link, &link->conf)); | 208 | if (ret) |
209 | goto failed; | ||
228 | 210 | ||
229 | sprintf(dev->node.dev_name, driver_name); | 211 | sprintf(dev->node.dev_name, driver_name); |
230 | dev->node.major = dev->node.minor = 0; | 212 | dev->node.major = dev->node.minor = 0; |
@@ -241,8 +223,6 @@ static int sl811_cs_config(struct pcmcia_device *link) | |||
241 | 223 | ||
242 | if (sl811_hc_init(parent, link->io.BasePort1, link->irq.AssignedIRQ) | 224 | if (sl811_hc_init(parent, link->io.BasePort1, link->irq.AssignedIRQ) |
243 | < 0) { | 225 | < 0) { |
244 | cs_failed: | ||
245 | cs_error(link, last_fn, last_ret); | ||
246 | failed: | 226 | failed: |
247 | printk(KERN_WARNING "sl811_cs_config failed\n"); | 227 | printk(KERN_WARNING "sl811_cs_config failed\n"); |
248 | sl811_cs_release(link); | 228 | sl811_cs_release(link); |