Lines Matching refs:func
31 struct sdio_func *func; member
38 return wl_sdio->func; in wl_to_func()
41 static void wl1251_sdio_interrupt(struct sdio_func *func) in wl1251_sdio_interrupt() argument
43 struct wl1251 *wl = sdio_get_drvdata(func); in wl1251_sdio_interrupt()
62 struct sdio_func *func = wl_to_func(wl); in wl1251_sdio_read() local
64 sdio_claim_host(func); in wl1251_sdio_read()
65 ret = sdio_memcpy_fromio(func, buf, addr, len); in wl1251_sdio_read()
68 sdio_release_host(func); in wl1251_sdio_read()
75 struct sdio_func *func = wl_to_func(wl); in wl1251_sdio_write() local
77 sdio_claim_host(func); in wl1251_sdio_write()
78 ret = sdio_memcpy_toio(func, addr, buf, len); in wl1251_sdio_write()
81 sdio_release_host(func); in wl1251_sdio_write()
88 struct sdio_func *func = wl_sdio->func; in wl1251_sdio_read_elp() local
96 sdio_claim_host(func); in wl1251_sdio_read_elp()
97 *val = sdio_writeb_readb(func, wl_sdio->elp_val, addr, &ret); in wl1251_sdio_read_elp()
98 sdio_release_host(func); in wl1251_sdio_read_elp()
108 struct sdio_func *func = wl_sdio->func; in wl1251_sdio_write_elp() local
110 sdio_claim_host(func); in wl1251_sdio_write_elp()
111 sdio_writeb(func, val, addr, &ret); in wl1251_sdio_write_elp()
112 sdio_release_host(func); in wl1251_sdio_write_elp()
126 struct sdio_func *func = wl_to_func(wl); in wl1251_sdio_enable_irq() local
128 sdio_claim_host(func); in wl1251_sdio_enable_irq()
129 sdio_claim_irq(func, wl1251_sdio_interrupt); in wl1251_sdio_enable_irq()
130 sdio_release_host(func); in wl1251_sdio_enable_irq()
135 struct sdio_func *func = wl_to_func(wl); in wl1251_sdio_disable_irq() local
137 sdio_claim_host(func); in wl1251_sdio_disable_irq()
138 sdio_release_irq(func); in wl1251_sdio_disable_irq()
139 sdio_release_host(func); in wl1251_sdio_disable_irq()
164 struct sdio_func *func = wl_to_func(wl); in wl1251_sdio_set_power() local
177 ret = pm_runtime_get_sync(&func->dev); in wl1251_sdio_set_power()
179 pm_runtime_put_sync(&func->dev); in wl1251_sdio_set_power()
183 sdio_claim_host(func); in wl1251_sdio_set_power()
184 sdio_enable_func(func); in wl1251_sdio_set_power()
185 sdio_release_host(func); in wl1251_sdio_set_power()
187 sdio_claim_host(func); in wl1251_sdio_set_power()
188 sdio_disable_func(func); in wl1251_sdio_set_power()
189 sdio_release_host(func); in wl1251_sdio_set_power()
191 ret = pm_runtime_put_sync(&func->dev); in wl1251_sdio_set_power()
212 static int wl1251_sdio_probe(struct sdio_func *func, in wl1251_sdio_probe() argument
233 sdio_claim_host(func); in wl1251_sdio_probe()
234 ret = sdio_enable_func(func); in wl1251_sdio_probe()
238 sdio_set_block_size(func, 512); in wl1251_sdio_probe()
239 sdio_release_host(func); in wl1251_sdio_probe()
241 SET_IEEE80211_DEV(hw, &func->dev); in wl1251_sdio_probe()
242 wl_sdio->func = func; in wl1251_sdio_probe()
254 ret = devm_gpio_request(&func->dev, wl->power_gpio, in wl1251_sdio_probe()
287 sdio_set_drvdata(func, wl); in wl1251_sdio_probe()
290 pm_runtime_put_noidle(&func->dev); in wl1251_sdio_probe()
298 sdio_claim_host(func); in wl1251_sdio_probe()
299 sdio_disable_func(func); in wl1251_sdio_probe()
301 sdio_release_host(func); in wl1251_sdio_probe()
308 static void wl1251_sdio_remove(struct sdio_func *func) in wl1251_sdio_remove() argument
310 struct wl1251 *wl = sdio_get_drvdata(func); in wl1251_sdio_remove()
314 pm_runtime_get_noresume(&func->dev); in wl1251_sdio_remove()
321 sdio_claim_host(func); in wl1251_sdio_remove()
322 sdio_release_irq(func); in wl1251_sdio_remove()
323 sdio_disable_func(func); in wl1251_sdio_remove()
324 sdio_release_host(func); in wl1251_sdio_remove()