Lines Matching refs:pdata
42 void __init cw1200_sdio_set_platform_data(struct cw1200_platform_data_sdio *pdata) in cw1200_sdio_set_platform_data() argument
44 global_plat_data = pdata; in cw1200_sdio_set_platform_data()
50 const struct cw1200_platform_data_sdio *pdata; member
139 ret = enable_irq_wake(self->pdata->irq); in cw1200_request_irq()
144 ret = request_threaded_irq(self->pdata->irq, cw1200_gpio_hardirq, in cw1200_request_irq()
163 if (self->pdata->irq) in cw1200_sdio_irq_subscribe()
178 if (self->pdata->irq) { in cw1200_sdio_irq_unsubscribe()
179 disable_irq_wake(self->pdata->irq); in cw1200_sdio_irq_unsubscribe()
180 free_irq(self->pdata->irq, self); in cw1200_sdio_irq_unsubscribe()
189 static int cw1200_sdio_off(const struct cw1200_platform_data_sdio *pdata) in cw1200_sdio_off() argument
191 if (pdata->reset) { in cw1200_sdio_off()
192 gpio_set_value(pdata->reset, 0); in cw1200_sdio_off()
194 gpio_free(pdata->reset); in cw1200_sdio_off()
197 if (pdata->power_ctrl) in cw1200_sdio_off()
198 pdata->power_ctrl(pdata, false); in cw1200_sdio_off()
199 if (pdata->clk_ctrl) in cw1200_sdio_off()
200 pdata->clk_ctrl(pdata, false); in cw1200_sdio_off()
205 static int cw1200_sdio_on(const struct cw1200_platform_data_sdio *pdata) in cw1200_sdio_on() argument
208 if (pdata->reset) { in cw1200_sdio_on()
209 gpio_request(pdata->reset, "cw1200_wlan_reset"); in cw1200_sdio_on()
210 gpio_direction_output(pdata->reset, 0); in cw1200_sdio_on()
212 if (pdata->powerup) { in cw1200_sdio_on()
213 gpio_request(pdata->powerup, "cw1200_wlan_powerup"); in cw1200_sdio_on()
214 gpio_direction_output(pdata->powerup, 0); in cw1200_sdio_on()
216 if (pdata->reset || pdata->powerup) in cw1200_sdio_on()
220 if (pdata->power_ctrl) { in cw1200_sdio_on()
221 if (pdata->power_ctrl(pdata, true)) { in cw1200_sdio_on()
228 if (pdata->clk_ctrl) { in cw1200_sdio_on()
229 if (pdata->clk_ctrl(pdata, true)) { in cw1200_sdio_on()
237 if (pdata->powerup) { in cw1200_sdio_on()
238 gpio_set_value(pdata->powerup, 1); in cw1200_sdio_on()
242 if (pdata->reset) { in cw1200_sdio_on()
243 gpio_set_value(pdata->reset, 1); in cw1200_sdio_on()
251 if (self->pdata->no_nptb) in cw1200_sdio_align_size()
263 if (self->pdata->irq) in cw1200_sdio_pm()
264 ret = irq_set_irq_wake(self->pdata->irq, suspend); in cw1200_sdio_pm()
298 self->pdata = global_plat_data; /* FIXME */ in cw1200_sdio_probe()
309 self->pdata->ref_clk, in cw1200_sdio_probe()
310 self->pdata->macaddr, in cw1200_sdio_probe()
311 self->pdata->sdd_file, in cw1200_sdio_probe()
312 self->pdata->have_5ghz); in cw1200_sdio_probe()
390 const struct cw1200_platform_data_sdio *pdata; in cw1200_sdio_init() local
394 pdata = global_plat_data; in cw1200_sdio_init()
396 if (cw1200_sdio_on(pdata)) { in cw1200_sdio_init()
408 cw1200_sdio_off(pdata); in cw1200_sdio_init()
415 const struct cw1200_platform_data_sdio *pdata; in cw1200_sdio_exit() local
418 pdata = global_plat_data; in cw1200_sdio_exit()
420 cw1200_sdio_off(pdata); in cw1200_sdio_exit()