Lines Matching full:func
59 static void wilc_sdio_interrupt(struct sdio_func *func) in wilc_sdio_interrupt() argument
61 sdio_release_host(func); in wilc_sdio_interrupt()
62 wilc_handle_isr(sdio_get_drvdata(func)); in wilc_sdio_interrupt()
63 sdio_claim_host(func); in wilc_sdio_interrupt()
68 struct sdio_func *func = container_of(wilc->dev, struct sdio_func, dev); in wilc_sdio_cmd52() local
72 sdio_claim_host(func); in wilc_sdio_cmd52()
74 func->num = cmd->function; in wilc_sdio_cmd52()
77 sdio_writeb(func, cmd->data, cmd->address, &ret); in wilc_sdio_cmd52()
78 data = sdio_readb(func, cmd->address, &ret); in wilc_sdio_cmd52()
81 sdio_writeb(func, cmd->data, cmd->address, &ret); in wilc_sdio_cmd52()
84 data = sdio_readb(func, cmd->address, &ret); in wilc_sdio_cmd52()
88 sdio_release_host(func); in wilc_sdio_cmd52()
91 dev_err(&func->dev, "%s..failed, err(%d)\n", __func__, ret); in wilc_sdio_cmd52()
97 struct sdio_func *func = container_of(wilc->dev, struct sdio_func, dev); in wilc_sdio_cmd53() local
102 sdio_claim_host(func); in wilc_sdio_cmd53()
104 func->num = cmd->function; in wilc_sdio_cmd53()
105 func->cur_blksize = cmd->block_size; in wilc_sdio_cmd53()
123 ret = sdio_memcpy_toio(func, cmd->address, buf, size); in wilc_sdio_cmd53()
125 ret = sdio_memcpy_fromio(func, buf, cmd->address, size); in wilc_sdio_cmd53()
131 sdio_release_host(func); in wilc_sdio_cmd53()
134 dev_err(&func->dev, "%s..failed, err(%d)\n", __func__, ret); in wilc_sdio_cmd53()
139 static int wilc_sdio_probe(struct sdio_func *func, in wilc_sdio_probe() argument
158 ret = wilc_cfg80211_init(&wilc, &func->dev, WILC_HIF_SDIO, in wilc_sdio_probe()
164 struct device_node *np = func->card->dev.of_node; in wilc_sdio_probe()
173 sdio_set_drvdata(func, wilc); in wilc_sdio_probe()
175 wilc->dev = &func->dev; in wilc_sdio_probe()
177 wilc->rtc_clk = devm_clk_get_optional_enabled(&func->card->dev, "rtc"); in wilc_sdio_probe()
208 dev_info(&func->dev, "Driver Initializing success\n"); in wilc_sdio_probe()
223 static void wilc_sdio_remove(struct sdio_func *func) in wilc_sdio_remove() argument
225 struct wilc *wilc = sdio_get_drvdata(func); in wilc_sdio_remove()
239 struct sdio_func *func = dev_to_sdio_func(wilc->dev); in wilc_sdio_reset() local
248 dev_err(&func->dev, "Fail cmd 52, reset cmd ...\n"); in wilc_sdio_reset()
263 struct sdio_func *func = container_of(dev->dev, struct sdio_func, dev); in wilc_sdio_enable_interrupt() local
266 sdio_claim_host(func); in wilc_sdio_enable_interrupt()
267 ret = sdio_claim_irq(func, wilc_sdio_interrupt); in wilc_sdio_enable_interrupt()
268 sdio_release_host(func); in wilc_sdio_enable_interrupt()
271 dev_err(&func->dev, "can't claim sdio_irq, err(%d)\n", ret); in wilc_sdio_enable_interrupt()
279 struct sdio_func *func = container_of(dev->dev, struct sdio_func, dev); in wilc_sdio_disable_interrupt() local
282 sdio_claim_host(func); in wilc_sdio_disable_interrupt()
283 ret = sdio_release_irq(func); in wilc_sdio_disable_interrupt()
285 dev_err(&func->dev, "can't release sdio_irq, err(%d)\n", ret); in wilc_sdio_disable_interrupt()
286 sdio_release_host(func); in wilc_sdio_disable_interrupt()
297 struct sdio_func *func = dev_to_sdio_func(wilc->dev); in wilc_sdio_set_func0_csa_address() local
311 dev_err(&func->dev, "Failed cmd52, set %04x data...\n", in wilc_sdio_set_func0_csa_address()
320 dev_err(&func->dev, "Failed cmd52, set %04x data...\n", in wilc_sdio_set_func0_csa_address()
329 dev_err(&func->dev, "Failed cmd52, set %04x data...\n", in wilc_sdio_set_func0_csa_address()
340 struct sdio_func *func = dev_to_sdio_func(wilc->dev); in wilc_sdio_set_block_size() local
351 dev_err(&func->dev, "Failed cmd52, set %04x data...\n", in wilc_sdio_set_block_size()
360 dev_err(&func->dev, "Failed cmd52, set %04x data...\n", in wilc_sdio_set_block_size()
375 struct sdio_func *func = dev_to_sdio_func(wilc->dev); in wilc_sdio_write_reg() local
391 dev_err(&func->dev, in wilc_sdio_write_reg()
414 dev_err(&func->dev, in wilc_sdio_write_reg()
423 struct sdio_func *func = dev_to_sdio_func(wilc->dev); in wilc_sdio_write() local
432 * func 0 access in wilc_sdio_write()
438 * func 1 access in wilc_sdio_write()
462 dev_err(&func->dev, in wilc_sdio_write()
486 dev_err(&func->dev, in wilc_sdio_write()
497 struct sdio_func *func = dev_to_sdio_func(wilc->dev); in wilc_sdio_read_reg() local
510 dev_err(&func->dev, in wilc_sdio_read_reg()
534 dev_err(&func->dev, in wilc_sdio_read_reg()
546 struct sdio_func *func = dev_to_sdio_func(wilc->dev); in wilc_sdio_read() local
555 * func 0 access in wilc_sdio_read()
561 * func 1 access in wilc_sdio_read()
585 dev_err(&func->dev, in wilc_sdio_read()
609 dev_err(&func->dev, in wilc_sdio_read()
626 struct sdio_func *func = dev_to_sdio_func(wilc->dev); in wilc_sdio_deinit() local
640 dev_err(&func->dev, "Failed to disable functions interrupts\n"); in wilc_sdio_deinit()
649 dev_err(&func->dev, in wilc_sdio_deinit()
659 dev_err(&func->dev, in wilc_sdio_deinit()
668 dev_err(&func->dev, in wilc_sdio_deinit()
679 struct sdio_func *func = dev_to_sdio_func(wilc->dev); in wilc_sdio_init() local
694 dev_err(&func->dev, "Fail cmd 52, enable csa...\n"); in wilc_sdio_init()
703 dev_err(&func->dev, "Fail cmd 52, set func 0 block size...\n"); in wilc_sdio_init()
718 dev_err(&func->dev, in wilc_sdio_init()
724 * make sure func 1 is up in wilc_sdio_init()
735 dev_err(&func->dev, in wilc_sdio_init()
744 dev_err(&func->dev, "Fail func 1 is not ready...\n"); in wilc_sdio_init()
749 * func 1 is ready, set func 1 block size in wilc_sdio_init()
753 dev_err(&func->dev, "Fail set func 1 block size...\n"); in wilc_sdio_init()
758 * func 1 interrupt enable in wilc_sdio_init()
767 dev_err(&func->dev, "Fail cmd 52, set IEN register...\n"); in wilc_sdio_init()
802 struct sdio_func *func = dev_to_sdio_func(wilc->dev); in wilc_sdio_read_int() local
834 dev_err(&func->dev, "Unexpected interrupt (1) int=%lx\n", in wilc_sdio_read_int()
844 struct sdio_func *func = dev_to_sdio_func(wilc->dev); in wilc_sdio_clear_int_ext() local
874 dev_err(&func->dev, in wilc_sdio_clear_int_ext()
906 dev_err(&func->dev, in wilc_sdio_clear_int_ext()
917 struct sdio_func *func = dev_to_sdio_func(wilc->dev); in wilc_sdio_sync_ext() local
921 dev_err(&func->dev, "Too many interrupts (%d)...\n", nint); in wilc_sdio_sync_ext()
934 dev_err(&func->dev, "Failed read reg (%08x)...\n", in wilc_sdio_sync_ext()
941 dev_err(&func->dev, "Failed write reg (%08x)...\n", in wilc_sdio_sync_ext()
951 dev_err(&func->dev, "Failed read reg (%08x)...\n", in wilc_sdio_sync_ext()
960 dev_err(&func->dev, "Failed write reg (%08x)...\n", in wilc_sdio_sync_ext()
967 dev_err(&func->dev, in wilc_sdio_sync_ext()
978 dev_err(&func->dev, in wilc_sdio_sync_ext()
1010 struct sdio_func *func = dev_to_sdio_func(dev); in wilc_sdio_suspend() local
1011 struct wilc *wilc = sdio_get_drvdata(func); in wilc_sdio_suspend()
1030 return sdio_set_host_pm_flags(func, MMC_PM_KEEP_POWER); in wilc_sdio_suspend()
1035 struct sdio_func *func = dev_to_sdio_func(dev); in wilc_sdio_resume() local
1036 struct wilc *wilc = sdio_get_drvdata(func); in wilc_sdio_resume()