Lines Matching defs:func

77 	struct sdio_func *func;
95 sdio_claim_host(smsdev->func);
98 while (size >= smsdev->func->cur_blksize) {
99 ret = sdio_memcpy_toio(smsdev->func, SMSSDIO_DATA,
100 buffer, smsdev->func->cur_blksize);
104 buffer += smsdev->func->cur_blksize;
105 size -= smsdev->func->cur_blksize;
109 ret = sdio_memcpy_toio(smsdev->func, SMSSDIO_DATA,
114 sdio_release_host(smsdev->func);
123 static void smssdio_interrupt(struct sdio_func *func)
132 smsdev = sdio_get_drvdata(func);
138 (void)sdio_readb(func, SMSSDIO_INT, &ret);
151 ret = sdio_memcpy_fromio(smsdev->func,
167 if (hdr->msg_length > smsdev->func->cur_blksize)
168 size = hdr->msg_length - smsdev->func->cur_blksize;
186 BUG_ON(smsdev->func->cur_blksize != SMSSDIO_BLOCK_SIZE);
191 ret = sdio_memcpy_fromio(smsdev->func,
210 ret = sdio_memcpy_fromio(smsdev->func,
212 smsdev->func->cur_blksize);
220 buffer += smsdev->func->cur_blksize;
221 if (size > smsdev->func->cur_blksize)
222 size -= smsdev->func->cur_blksize;
236 static int smssdio_probe(struct sdio_func *func,
251 smsdev->func = func;
255 params.device = &func->dev;
261 "sdio\\%s", sdio_func_id(func));
283 sdio_claim_host(func);
285 ret = sdio_enable_func(func);
289 ret = sdio_set_block_size(func, SMSSDIO_BLOCK_SIZE);
293 ret = sdio_claim_irq(func, smssdio_interrupt);
297 sdio_set_drvdata(func, smsdev);
299 sdio_release_host(func);
308 sdio_claim_host(func);
309 sdio_release_irq(func);
311 sdio_disable_func(func);
313 sdio_release_host(func);
321 static void smssdio_remove(struct sdio_func *func)
325 smsdev = sdio_get_drvdata(func);
333 sdio_claim_host(func);
334 sdio_release_irq(func);
335 sdio_disable_func(func);
336 sdio_release_host(func);