Lines Matching refs:func

44 	struct sdio_func *func;  member
51 return wl_sdio->func; in wl_to_func()
54 static void wl1251_sdio_interrupt(struct sdio_func *func) in wl1251_sdio_interrupt() argument
56 struct wl1251 *wl = sdio_get_drvdata(func); in wl1251_sdio_interrupt()
75 struct sdio_func *func = wl_to_func(wl); in wl1251_sdio_read() local
77 sdio_claim_host(func); in wl1251_sdio_read()
78 ret = sdio_memcpy_fromio(func, buf, addr, len); in wl1251_sdio_read()
81 sdio_release_host(func); in wl1251_sdio_read()
88 struct sdio_func *func = wl_to_func(wl); in wl1251_sdio_write() local
90 sdio_claim_host(func); in wl1251_sdio_write()
91 ret = sdio_memcpy_toio(func, addr, buf, len); in wl1251_sdio_write()
94 sdio_release_host(func); in wl1251_sdio_write()
101 struct sdio_func *func = wl_sdio->func; in wl1251_sdio_read_elp() local
109 sdio_claim_host(func); in wl1251_sdio_read_elp()
110 *val = sdio_writeb_readb(func, wl_sdio->elp_val, addr, &ret); in wl1251_sdio_read_elp()
111 sdio_release_host(func); in wl1251_sdio_read_elp()
121 struct sdio_func *func = wl_sdio->func; in wl1251_sdio_write_elp() local
123 sdio_claim_host(func); in wl1251_sdio_write_elp()
124 sdio_writeb(func, val, addr, &ret); in wl1251_sdio_write_elp()
125 sdio_release_host(func); in wl1251_sdio_write_elp()
139 struct sdio_func *func = wl_to_func(wl); in wl1251_sdio_enable_irq() local
141 sdio_claim_host(func); in wl1251_sdio_enable_irq()
142 sdio_claim_irq(func, wl1251_sdio_interrupt); in wl1251_sdio_enable_irq()
143 sdio_release_host(func); in wl1251_sdio_enable_irq()
148 struct sdio_func *func = wl_to_func(wl); in wl1251_sdio_disable_irq() local
150 sdio_claim_host(func); in wl1251_sdio_disable_irq()
151 sdio_release_irq(func); in wl1251_sdio_disable_irq()
152 sdio_release_host(func); in wl1251_sdio_disable_irq()
177 struct sdio_func *func = wl_to_func(wl); in wl1251_sdio_set_power() local
190 ret = pm_runtime_get_sync(&func->dev); in wl1251_sdio_set_power()
192 pm_runtime_put_sync(&func->dev); in wl1251_sdio_set_power()
196 sdio_claim_host(func); in wl1251_sdio_set_power()
197 sdio_enable_func(func); in wl1251_sdio_set_power()
198 sdio_release_host(func); in wl1251_sdio_set_power()
200 sdio_claim_host(func); in wl1251_sdio_set_power()
201 sdio_disable_func(func); in wl1251_sdio_set_power()
202 sdio_release_host(func); in wl1251_sdio_set_power()
204 ret = pm_runtime_put_sync(&func->dev); in wl1251_sdio_set_power()
225 static int wl1251_sdio_probe(struct sdio_func *func, in wl1251_sdio_probe() argument
246 sdio_claim_host(func); in wl1251_sdio_probe()
247 ret = sdio_enable_func(func); in wl1251_sdio_probe()
251 sdio_set_block_size(func, 512); in wl1251_sdio_probe()
252 sdio_release_host(func); in wl1251_sdio_probe()
254 SET_IEEE80211_DEV(hw, &func->dev); in wl1251_sdio_probe()
255 wl_sdio->func = func; in wl1251_sdio_probe()
267 ret = devm_gpio_request(&func->dev, wl->power_gpio, in wl1251_sdio_probe()
300 sdio_set_drvdata(func, wl); in wl1251_sdio_probe()
303 pm_runtime_put_noidle(&func->dev); in wl1251_sdio_probe()
311 sdio_claim_host(func); in wl1251_sdio_probe()
312 sdio_disable_func(func); in wl1251_sdio_probe()
314 sdio_release_host(func); in wl1251_sdio_probe()
321 static void wl1251_sdio_remove(struct sdio_func *func) in wl1251_sdio_remove() argument
323 struct wl1251 *wl = sdio_get_drvdata(func); in wl1251_sdio_remove()
327 pm_runtime_get_noresume(&func->dev); in wl1251_sdio_remove()
334 sdio_claim_host(func); in wl1251_sdio_remove()
335 sdio_release_irq(func); in wl1251_sdio_remove()
336 sdio_disable_func(func); in wl1251_sdio_remove()
337 sdio_release_host(func); in wl1251_sdio_remove()