wilc 160 drivers/staging/wilc1000/wilc_hif.c if (!msg->vif || !msg->vif->wilc || !msg->vif->wilc->hif_workqueue) wilc 163 drivers/staging/wilc1000/wilc_hif.c if (!queue_work(msg->vif->wilc->hif_workqueue, &msg->work)) wilc 183 drivers/staging/wilc1000/wilc_hif.c static struct wilc_vif *wilc_get_vif_from_idx(struct wilc *wilc, int idx) wilc 190 drivers/staging/wilc1000/wilc_hif.c return wilc->vif[index]; wilc 1561 drivers/staging/wilc1000/wilc_hif.c struct wilc *wilc = vif->wilc; wilc 1571 drivers/staging/wilc1000/wilc_hif.c if (wilc->clients_count == 0) wilc 1572 drivers/staging/wilc1000/wilc_hif.c mutex_init(&wilc->deinit_lock); wilc 1585 drivers/staging/wilc1000/wilc_hif.c wilc->clients_count++; wilc 1600 drivers/staging/wilc1000/wilc_hif.c mutex_lock(&vif->wilc->deinit_lock); wilc 1617 drivers/staging/wilc1000/wilc_hif.c vif->wilc->clients_count--; wilc 1618 drivers/staging/wilc1000/wilc_hif.c mutex_unlock(&vif->wilc->deinit_lock); wilc 1622 drivers/staging/wilc1000/wilc_hif.c void wilc_network_info_received(struct wilc *wilc, u8 *buffer, u32 length) wilc 1631 drivers/staging/wilc1000/wilc_hif.c vif = wilc_get_vif_from_idx(wilc, id); wilc 1663 drivers/staging/wilc1000/wilc_hif.c void wilc_gnrl_async_info_received(struct wilc *wilc, u8 *buffer, u32 length) wilc 1671 drivers/staging/wilc1000/wilc_hif.c mutex_lock(&wilc->deinit_lock); wilc 1674 drivers/staging/wilc1000/wilc_hif.c vif = wilc_get_vif_from_idx(wilc, id); wilc 1676 drivers/staging/wilc1000/wilc_hif.c mutex_unlock(&wilc->deinit_lock); wilc 1683 drivers/staging/wilc1000/wilc_hif.c mutex_unlock(&wilc->deinit_lock); wilc 1689 drivers/staging/wilc1000/wilc_hif.c mutex_unlock(&wilc->deinit_lock); wilc 1695 drivers/staging/wilc1000/wilc_hif.c mutex_unlock(&wilc->deinit_lock); wilc 1706 drivers/staging/wilc1000/wilc_hif.c mutex_unlock(&wilc->deinit_lock); wilc 1709 drivers/staging/wilc1000/wilc_hif.c void wilc_scan_complete_received(struct wilc *wilc, u8 *buffer, u32 length) wilc 1717 drivers/staging/wilc1000/wilc_hif.c vif = wilc_get_vif_from_idx(wilc, id); wilc 148 drivers/staging/wilc1000/wilc_hif.h struct wilc; wilc 228 drivers/staging/wilc1000/wilc_hif.h void wilc_scan_complete_received(struct wilc *wilc, u8 *buffer, u32 length); wilc 229 drivers/staging/wilc1000/wilc_hif.h void wilc_network_info_received(struct wilc *wilc, u8 *buffer, u32 length); wilc 230 drivers/staging/wilc1000/wilc_hif.h void wilc_gnrl_async_info_received(struct wilc *wilc, u8 *buffer, u32 length); wilc 217 drivers/staging/wilc1000/wilc_mon.c struct net_device *wilc_wfi_init_mon_interface(struct wilc *wl, wilc 250 drivers/staging/wilc1000/wilc_mon.c void wilc_wfi_deinit_mon_interface(struct wilc *wl, bool rtnl_locked) wilc 22 drivers/staging/wilc1000/wilc_netdev.c struct wilc *wilc = vif->wilc; wilc 24 drivers/staging/wilc1000/wilc_netdev.c if (wilc->close) { wilc 35 drivers/staging/wilc1000/wilc_netdev.c struct wilc *wilc = vif->wilc; wilc 37 drivers/staging/wilc1000/wilc_netdev.c if (wilc->close) { wilc 42 drivers/staging/wilc1000/wilc_netdev.c wilc_handle_isr(wilc); wilc 51 drivers/staging/wilc1000/wilc_netdev.c struct wilc *wl = vif->wilc; wilc 77 drivers/staging/wilc1000/wilc_netdev.c struct wilc *wilc = vif->wilc; wilc 80 drivers/staging/wilc1000/wilc_netdev.c if (wilc->dev_irq_num) wilc 81 drivers/staging/wilc1000/wilc_netdev.c free_irq(wilc->dev_irq_num, wilc); wilc 84 drivers/staging/wilc1000/wilc_netdev.c void wilc_mac_indicate(struct wilc *wilc) wilc 88 drivers/staging/wilc1000/wilc_netdev.c wilc_wlan_cfg_get_val(wilc, WID_STATUS, &status, 1); wilc 89 drivers/staging/wilc1000/wilc_netdev.c if (wilc->mac_status == WILC_MAC_STATUS_INIT) { wilc 90 drivers/staging/wilc1000/wilc_netdev.c wilc->mac_status = status; wilc 91 drivers/staging/wilc1000/wilc_netdev.c complete(&wilc->sync_event); wilc 93 drivers/staging/wilc1000/wilc_netdev.c wilc->mac_status = status; wilc 97 drivers/staging/wilc1000/wilc_netdev.c static struct net_device *get_if_handler(struct wilc *wilc, u8 *mac_header) wilc 106 drivers/staging/wilc1000/wilc_netdev.c mutex_lock(&wilc->vif_mutex); wilc 107 drivers/staging/wilc1000/wilc_netdev.c for (i = 0; i < wilc->vif_num; i++) { wilc 108 drivers/staging/wilc1000/wilc_netdev.c if (wilc->vif[i]->mode == WILC_STATION_MODE) wilc 110 drivers/staging/wilc1000/wilc_netdev.c wilc->vif[i]->bssid)) { wilc 111 drivers/staging/wilc1000/wilc_netdev.c ndev = wilc->vif[i]->ndev; wilc 114 drivers/staging/wilc1000/wilc_netdev.c if (wilc->vif[i]->mode == WILC_AP_MODE) wilc 116 drivers/staging/wilc1000/wilc_netdev.c wilc->vif[i]->bssid)) { wilc 117 drivers/staging/wilc1000/wilc_netdev.c ndev = wilc->vif[i]->ndev; wilc 122 drivers/staging/wilc1000/wilc_netdev.c mutex_unlock(&wilc->vif_mutex); wilc 138 drivers/staging/wilc1000/wilc_netdev.c int wilc_wlan_get_num_conn_ifcs(struct wilc *wilc) wilc 143 drivers/staging/wilc1000/wilc_netdev.c for (i = 0; i < wilc->vif_num; i++) wilc 144 drivers/staging/wilc1000/wilc_netdev.c if (!is_zero_ether_addr(wilc->vif[i]->bssid)) wilc 154 drivers/staging/wilc1000/wilc_netdev.c struct wilc *wl = vp; wilc 189 drivers/staging/wilc1000/wilc_netdev.c struct wilc *wilc = vif->wilc; wilc 194 drivers/staging/wilc1000/wilc_netdev.c chip_id = wilc_get_chipid(wilc, false); wilc 203 drivers/staging/wilc1000/wilc_netdev.c if (request_firmware(&wilc_firmware, firmware, wilc->dev) != 0) { wilc 208 drivers/staging/wilc1000/wilc_netdev.c wilc->firmware = wilc_firmware; wilc 218 drivers/staging/wilc1000/wilc_netdev.c struct wilc *wilc = vif->wilc; wilc 221 drivers/staging/wilc1000/wilc_netdev.c ret = wilc_wlan_start(wilc); wilc 225 drivers/staging/wilc1000/wilc_netdev.c if (!wait_for_completion_timeout(&wilc->sync_event, wilc 235 drivers/staging/wilc1000/wilc_netdev.c struct wilc *wilc = vif->wilc; wilc 238 drivers/staging/wilc1000/wilc_netdev.c if (!wilc->firmware) { wilc 243 drivers/staging/wilc1000/wilc_netdev.c ret = wilc_wlan_firmware_download(wilc, wilc->firmware->data, wilc 244 drivers/staging/wilc1000/wilc_netdev.c wilc->firmware->size); wilc 248 drivers/staging/wilc1000/wilc_netdev.c release_firmware(wilc->firmware); wilc 249 drivers/staging/wilc1000/wilc_netdev.c wilc->firmware = NULL; wilc 430 drivers/staging/wilc1000/wilc_netdev.c struct wilc *wilc = vif->wilc; wilc 432 drivers/staging/wilc1000/wilc_netdev.c mutex_destroy(&wilc->hif_cs); wilc 433 drivers/staging/wilc1000/wilc_netdev.c mutex_destroy(&wilc->rxq_cs); wilc 434 drivers/staging/wilc1000/wilc_netdev.c mutex_destroy(&wilc->cfg_cmd_lock); wilc 435 drivers/staging/wilc1000/wilc_netdev.c mutex_destroy(&wilc->txq_add_to_head_cs); wilc 436 drivers/staging/wilc1000/wilc_netdev.c mutex_destroy(&wilc->vif_mutex); wilc 442 drivers/staging/wilc1000/wilc_netdev.c struct wilc *wl = vif->wilc; wilc 457 drivers/staging/wilc1000/wilc_netdev.c struct wilc *wl = vif->wilc; wilc 493 drivers/staging/wilc1000/wilc_netdev.c struct wilc *wilc = vif->wilc; wilc 495 drivers/staging/wilc1000/wilc_netdev.c wilc->txq_thread = kthread_run(wilc_txq_task, (void *)wilc, wilc 497 drivers/staging/wilc1000/wilc_netdev.c if (IS_ERR(wilc->txq_thread)) { wilc 499 drivers/staging/wilc1000/wilc_netdev.c wilc->close = 0; wilc 500 drivers/staging/wilc1000/wilc_netdev.c return PTR_ERR(wilc->txq_thread); wilc 502 drivers/staging/wilc1000/wilc_netdev.c wait_for_completion(&wilc->txq_thread_started); wilc 510 drivers/staging/wilc1000/wilc_netdev.c struct wilc *wl = vif->wilc; wilc 607 drivers/staging/wilc1000/wilc_netdev.c struct wilc *wl = vif->wilc; wilc 714 drivers/staging/wilc1000/wilc_netdev.c struct wilc *wilc = vif->wilc; wilc 743 drivers/staging/wilc1000/wilc_netdev.c mutex_lock(&wilc->vif_mutex); wilc 744 drivers/staging/wilc1000/wilc_netdev.c for (i = 0; i < wilc->vif_num; i++) { wilc 745 drivers/staging/wilc1000/wilc_netdev.c if (wilc->vif[i]->mac_opened) wilc 746 drivers/staging/wilc1000/wilc_netdev.c netif_stop_queue(wilc->vif[i]->ndev); wilc 748 drivers/staging/wilc1000/wilc_netdev.c mutex_unlock(&wilc->vif_mutex); wilc 757 drivers/staging/wilc1000/wilc_netdev.c struct wilc *wl = vif->wilc; wilc 783 drivers/staging/wilc1000/wilc_netdev.c void wilc_frmw_to_host(struct wilc *wilc, u8 *buff, u32 size, wilc 793 drivers/staging/wilc1000/wilc_netdev.c if (!wilc) wilc 796 drivers/staging/wilc1000/wilc_netdev.c wilc_netdev = get_if_handler(wilc, buff); wilc 824 drivers/staging/wilc1000/wilc_netdev.c void wilc_wfi_mgmt_rx(struct wilc *wilc, u8 *buff, u32 size) wilc 829 drivers/staging/wilc1000/wilc_netdev.c mutex_lock(&wilc->vif_mutex); wilc 830 drivers/staging/wilc1000/wilc_netdev.c for (i = 0; i < wilc->vif_num; i++) { wilc 833 drivers/staging/wilc1000/wilc_netdev.c vif = netdev_priv(wilc->vif[i]->ndev); wilc 841 drivers/staging/wilc1000/wilc_netdev.c wilc_wfi_monitor_rx(wilc->monitor_dev, buff, size); wilc 845 drivers/staging/wilc1000/wilc_netdev.c mutex_unlock(&wilc->vif_mutex); wilc 857 drivers/staging/wilc1000/wilc_netdev.c void wilc_netdev_cleanup(struct wilc *wilc) wilc 861 drivers/staging/wilc1000/wilc_netdev.c if (!wilc) wilc 864 drivers/staging/wilc1000/wilc_netdev.c if (wilc->firmware) { wilc 865 drivers/staging/wilc1000/wilc_netdev.c release_firmware(wilc->firmware); wilc 866 drivers/staging/wilc1000/wilc_netdev.c wilc->firmware = NULL; wilc 869 drivers/staging/wilc1000/wilc_netdev.c for (i = 0; i < wilc->vif_num; i++) { wilc 870 drivers/staging/wilc1000/wilc_netdev.c if (wilc->vif[i] && wilc->vif[i]->ndev) wilc 871 drivers/staging/wilc1000/wilc_netdev.c unregister_netdev(wilc->vif[i]->ndev); wilc 874 drivers/staging/wilc1000/wilc_netdev.c wilc_wfi_deinit_mon_interface(wilc, false); wilc 875 drivers/staging/wilc1000/wilc_netdev.c flush_workqueue(wilc->hif_workqueue); wilc 876 drivers/staging/wilc1000/wilc_netdev.c destroy_workqueue(wilc->hif_workqueue); wilc 877 drivers/staging/wilc1000/wilc_netdev.c wilc_wlan_cfg_deinit(wilc); wilc 878 drivers/staging/wilc1000/wilc_netdev.c kfree(wilc->bus_data); wilc 879 drivers/staging/wilc1000/wilc_netdev.c wiphy_unregister(wilc->wiphy); wilc 880 drivers/staging/wilc1000/wilc_netdev.c wiphy_free(wilc->wiphy); wilc 884 drivers/staging/wilc1000/wilc_netdev.c struct wilc_vif *wilc_netdev_ifc_init(struct wilc *wl, const char *name, wilc 899 drivers/staging/wilc1000/wilc_netdev.c vif->wilc = wl; wilc 924 drivers/staging/wilc1000/wilc_netdev.c vif->wilc->vif[wl->vif_num] = vif; wilc 63 drivers/staging/wilc1000/wilc_sdio.c static int wilc_sdio_cmd52(struct wilc *wilc, struct sdio_cmd52 *cmd) wilc 65 drivers/staging/wilc1000/wilc_sdio.c struct sdio_func *func = container_of(wilc->dev, struct sdio_func, dev); wilc 92 drivers/staging/wilc1000/wilc_sdio.c static int wilc_sdio_cmd53(struct wilc *wilc, struct sdio_cmd53 *cmd) wilc 94 drivers/staging/wilc1000/wilc_sdio.c struct sdio_func *func = container_of(wilc->dev, struct sdio_func, dev); wilc 125 drivers/staging/wilc1000/wilc_sdio.c struct wilc *wilc; wilc 144 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_cfg80211_init(&wilc, &func->dev, WILC_HIF_SDIO, wilc 150 drivers/staging/wilc1000/wilc_sdio.c sdio_set_drvdata(func, wilc); wilc 151 drivers/staging/wilc1000/wilc_sdio.c wilc->bus_data = sdio_priv; wilc 152 drivers/staging/wilc1000/wilc_sdio.c wilc->dev = &func->dev; wilc 153 drivers/staging/wilc1000/wilc_sdio.c wilc->gpio_irq = gpio; wilc 155 drivers/staging/wilc1000/wilc_sdio.c wilc->rtc_clk = devm_clk_get(&func->card->dev, "rtc_clk"); wilc 156 drivers/staging/wilc1000/wilc_sdio.c if (PTR_ERR_OR_ZERO(wilc->rtc_clk) == -EPROBE_DEFER) wilc 158 drivers/staging/wilc1000/wilc_sdio.c else if (!IS_ERR(wilc->rtc_clk)) wilc 159 drivers/staging/wilc1000/wilc_sdio.c clk_prepare_enable(wilc->rtc_clk); wilc 167 drivers/staging/wilc1000/wilc_sdio.c struct wilc *wilc = sdio_get_drvdata(func); wilc 170 drivers/staging/wilc1000/wilc_sdio.c if (wilc->gpio_irq) wilc 171 drivers/staging/wilc1000/wilc_sdio.c gpiod_put(wilc->gpio_irq); wilc 173 drivers/staging/wilc1000/wilc_sdio.c if (!IS_ERR(wilc->rtc_clk)) wilc 174 drivers/staging/wilc1000/wilc_sdio.c clk_disable_unprepare(wilc->rtc_clk); wilc 176 drivers/staging/wilc1000/wilc_sdio.c wilc_netdev_cleanup(wilc); wilc 179 drivers/staging/wilc1000/wilc_sdio.c static int wilc_sdio_reset(struct wilc *wilc) wilc 183 drivers/staging/wilc1000/wilc_sdio.c struct sdio_func *func = dev_to_sdio_func(wilc->dev); wilc 190 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd52(wilc, &cmd); wilc 201 drivers/staging/wilc1000/wilc_sdio.c struct wilc *wilc = sdio_get_drvdata(func); wilc 205 drivers/staging/wilc1000/wilc_sdio.c chip_wakeup(wilc); wilc 207 drivers/staging/wilc1000/wilc_sdio.c if (!IS_ERR(wilc->rtc_clk)) wilc 208 drivers/staging/wilc1000/wilc_sdio.c clk_disable_unprepare(wilc->rtc_clk); wilc 210 drivers/staging/wilc1000/wilc_sdio.c if (wilc->suspend_event) { wilc 211 drivers/staging/wilc1000/wilc_sdio.c host_sleep_notify(wilc); wilc 212 drivers/staging/wilc1000/wilc_sdio.c chip_allow_sleep(wilc); wilc 215 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_reset(wilc); wilc 225 drivers/staging/wilc1000/wilc_sdio.c static int wilc_sdio_enable_interrupt(struct wilc *dev) wilc 241 drivers/staging/wilc1000/wilc_sdio.c static void wilc_sdio_disable_interrupt(struct wilc *dev) wilc 259 drivers/staging/wilc1000/wilc_sdio.c static int wilc_sdio_set_func0_csa_address(struct wilc *wilc, u32 adr) wilc 261 drivers/staging/wilc1000/wilc_sdio.c struct sdio_func *func = dev_to_sdio_func(wilc->dev); wilc 273 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd52(wilc, &cmd); wilc 281 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd52(wilc, &cmd); wilc 289 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd52(wilc, &cmd); wilc 300 drivers/staging/wilc1000/wilc_sdio.c static int wilc_sdio_set_func0_block_size(struct wilc *wilc, u32 block_size) wilc 302 drivers/staging/wilc1000/wilc_sdio.c struct sdio_func *func = dev_to_sdio_func(wilc->dev); wilc 311 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd52(wilc, &cmd); wilc 319 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd52(wilc, &cmd); wilc 336 drivers/staging/wilc1000/wilc_sdio.c static int wilc_sdio_set_func1_block_size(struct wilc *wilc, u32 block_size) wilc 338 drivers/staging/wilc1000/wilc_sdio.c struct sdio_func *func = dev_to_sdio_func(wilc->dev); wilc 347 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd52(wilc, &cmd); wilc 354 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd52(wilc, &cmd); wilc 370 drivers/staging/wilc1000/wilc_sdio.c static int wilc_sdio_write_reg(struct wilc *wilc, u32 addr, u32 data) wilc 372 drivers/staging/wilc1000/wilc_sdio.c struct sdio_func *func = dev_to_sdio_func(wilc->dev); wilc 373 drivers/staging/wilc1000/wilc_sdio.c struct wilc_sdio *sdio_priv = wilc->bus_data; wilc 386 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd52(wilc, &cmd); wilc 398 drivers/staging/wilc1000/wilc_sdio.c if (!wilc_sdio_set_func0_csa_address(wilc, addr)) wilc 409 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd53(wilc, &cmd); wilc 424 drivers/staging/wilc1000/wilc_sdio.c static int wilc_sdio_write(struct wilc *wilc, u32 addr, u8 *buf, u32 size) wilc 426 drivers/staging/wilc1000/wilc_sdio.c struct sdio_func *func = dev_to_sdio_func(wilc->dev); wilc 427 drivers/staging/wilc1000/wilc_sdio.c struct wilc_sdio *sdio_priv = wilc->bus_data; wilc 473 drivers/staging/wilc1000/wilc_sdio.c if (!wilc_sdio_set_func0_csa_address(wilc, addr)) wilc 476 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd53(wilc, &cmd); wilc 496 drivers/staging/wilc1000/wilc_sdio.c if (!wilc_sdio_set_func0_csa_address(wilc, addr)) wilc 499 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd53(wilc, &cmd); wilc 514 drivers/staging/wilc1000/wilc_sdio.c static int wilc_sdio_read_reg(struct wilc *wilc, u32 addr, u32 *data) wilc 516 drivers/staging/wilc1000/wilc_sdio.c struct sdio_func *func = dev_to_sdio_func(wilc->dev); wilc 517 drivers/staging/wilc1000/wilc_sdio.c struct wilc_sdio *sdio_priv = wilc->bus_data; wilc 527 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd52(wilc, &cmd); wilc 537 drivers/staging/wilc1000/wilc_sdio.c if (!wilc_sdio_set_func0_csa_address(wilc, addr)) wilc 549 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd53(wilc, &cmd); wilc 566 drivers/staging/wilc1000/wilc_sdio.c static int wilc_sdio_read(struct wilc *wilc, u32 addr, u8 *buf, u32 size) wilc 568 drivers/staging/wilc1000/wilc_sdio.c struct sdio_func *func = dev_to_sdio_func(wilc->dev); wilc 569 drivers/staging/wilc1000/wilc_sdio.c struct wilc_sdio *sdio_priv = wilc->bus_data; wilc 615 drivers/staging/wilc1000/wilc_sdio.c if (!wilc_sdio_set_func0_csa_address(wilc, addr)) wilc 618 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd53(wilc, &cmd); wilc 638 drivers/staging/wilc1000/wilc_sdio.c if (!wilc_sdio_set_func0_csa_address(wilc, addr)) wilc 641 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd53(wilc, &cmd); wilc 662 drivers/staging/wilc1000/wilc_sdio.c static int wilc_sdio_deinit(struct wilc *wilc) wilc 667 drivers/staging/wilc1000/wilc_sdio.c static int wilc_sdio_init(struct wilc *wilc, bool resume) wilc 669 drivers/staging/wilc1000/wilc_sdio.c struct sdio_func *func = dev_to_sdio_func(wilc->dev); wilc 670 drivers/staging/wilc1000/wilc_sdio.c struct wilc_sdio *sdio_priv = wilc->bus_data; wilc 676 drivers/staging/wilc1000/wilc_sdio.c sdio_priv->irq_gpio = wilc->dev_irq_num; wilc 686 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd52(wilc, &cmd); wilc 695 drivers/staging/wilc1000/wilc_sdio.c if (!wilc_sdio_set_func0_block_size(wilc, WILC_SDIO_BLOCK_SIZE)) { wilc 709 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd52(wilc, &cmd); wilc 726 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd52(wilc, &cmd); wilc 744 drivers/staging/wilc1000/wilc_sdio.c if (!wilc_sdio_set_func1_block_size(wilc, WILC_SDIO_BLOCK_SIZE)) { wilc 757 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd52(wilc, &cmd); wilc 767 drivers/staging/wilc1000/wilc_sdio.c if (!wilc_sdio_read_reg(wilc, 0x1000, &chipid)) { wilc 787 drivers/staging/wilc1000/wilc_sdio.c static int wilc_sdio_read_size(struct wilc *wilc, u32 *size) wilc 800 drivers/staging/wilc1000/wilc_sdio.c wilc_sdio_cmd52(wilc, &cmd); wilc 805 drivers/staging/wilc1000/wilc_sdio.c wilc_sdio_cmd52(wilc, &cmd); wilc 812 drivers/staging/wilc1000/wilc_sdio.c static int wilc_sdio_read_int(struct wilc *wilc, u32 *int_status) wilc 814 drivers/staging/wilc1000/wilc_sdio.c struct sdio_func *func = dev_to_sdio_func(wilc->dev); wilc 815 drivers/staging/wilc1000/wilc_sdio.c struct wilc_sdio *sdio_priv = wilc->bus_data; wilc 819 drivers/staging/wilc1000/wilc_sdio.c wilc_sdio_read_size(wilc, &tmp); wilc 831 drivers/staging/wilc1000/wilc_sdio.c wilc_sdio_cmd52(wilc, &cmd); wilc 861 drivers/staging/wilc1000/wilc_sdio.c wilc_sdio_cmd52(wilc, &cmd); wilc 871 drivers/staging/wilc1000/wilc_sdio.c static int wilc_sdio_clear_int_ext(struct wilc *wilc, u32 val) wilc 873 drivers/staging/wilc1000/wilc_sdio.c struct sdio_func *func = dev_to_sdio_func(wilc->dev); wilc 874 drivers/staging/wilc1000/wilc_sdio.c struct wilc_sdio *sdio_priv = wilc->bus_data; wilc 907 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd52(wilc, &cmd); wilc 940 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd52(wilc, &cmd); wilc 983 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_cmd52(wilc, &cmd); wilc 996 drivers/staging/wilc1000/wilc_sdio.c static int wilc_sdio_sync_ext(struct wilc *wilc, int nint) wilc 998 drivers/staging/wilc1000/wilc_sdio.c struct sdio_func *func = dev_to_sdio_func(wilc->dev); wilc 999 drivers/staging/wilc1000/wilc_sdio.c struct wilc_sdio *sdio_priv = wilc->bus_data; wilc 1017 drivers/staging/wilc1000/wilc_sdio.c if (!wilc_sdio_read_reg(wilc, WILC_MISC, ®)) { wilc 1023 drivers/staging/wilc1000/wilc_sdio.c if (!wilc_sdio_write_reg(wilc, WILC_MISC, reg)) { wilc 1035 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_read_reg(wilc, WILC_PIN_MUX_0, ®); wilc 1042 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_write_reg(wilc, WILC_PIN_MUX_0, reg); wilc 1052 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_read_reg(wilc, WILC_INTR_ENABLE, ®); wilc 1061 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_write_reg(wilc, WILC_INTR_ENABLE, reg); wilc 1068 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_read_reg(wilc, WILC_INTR2_ENABLE, ®); wilc 1079 drivers/staging/wilc1000/wilc_sdio.c ret = wilc_sdio_read_reg(wilc, WILC_INTR2_ENABLE, ®); wilc 1112 drivers/staging/wilc1000/wilc_sdio.c struct wilc *wilc = sdio_get_drvdata(func); wilc 1116 drivers/staging/wilc1000/wilc_sdio.c chip_wakeup(wilc); wilc 1117 drivers/staging/wilc1000/wilc_sdio.c wilc_sdio_init(wilc, true); wilc 1119 drivers/staging/wilc1000/wilc_sdio.c if (wilc->suspend_event) wilc 1120 drivers/staging/wilc1000/wilc_sdio.c host_wakeup_notify(wilc); wilc 1122 drivers/staging/wilc1000/wilc_sdio.c chip_allow_sleep(wilc); wilc 108 drivers/staging/wilc1000/wilc_spi.c struct wilc *wilc; wilc 124 drivers/staging/wilc1000/wilc_spi.c ret = wilc_cfg80211_init(&wilc, &spi->dev, WILC_HIF_SPI, &wilc_hif_spi); wilc 130 drivers/staging/wilc1000/wilc_spi.c spi_set_drvdata(spi, wilc); wilc 131 drivers/staging/wilc1000/wilc_spi.c wilc->dev = &spi->dev; wilc 132 drivers/staging/wilc1000/wilc_spi.c wilc->bus_data = spi_priv; wilc 133 drivers/staging/wilc1000/wilc_spi.c wilc->gpio_irq = gpio; wilc 140 drivers/staging/wilc1000/wilc_spi.c struct wilc *wilc = spi_get_drvdata(spi); wilc 143 drivers/staging/wilc1000/wilc_spi.c if (wilc->gpio_irq) wilc 144 drivers/staging/wilc1000/wilc_spi.c gpiod_put(wilc->gpio_irq); wilc 145 drivers/staging/wilc1000/wilc_spi.c wilc_netdev_cleanup(wilc); wilc 166 drivers/staging/wilc1000/wilc_spi.c static int wilc_spi_tx(struct wilc *wilc, u8 *b, u32 len) wilc 168 drivers/staging/wilc1000/wilc_spi.c struct spi_device *spi = to_spi_device(wilc->dev); wilc 207 drivers/staging/wilc1000/wilc_spi.c static int wilc_spi_rx(struct wilc *wilc, u8 *rb, u32 rlen) wilc 209 drivers/staging/wilc1000/wilc_spi.c struct spi_device *spi = to_spi_device(wilc->dev); wilc 247 drivers/staging/wilc1000/wilc_spi.c static int wilc_spi_tx_rx(struct wilc *wilc, u8 *wb, u8 *rb, u32 rlen) wilc 249 drivers/staging/wilc1000/wilc_spi.c struct spi_device *spi = to_spi_device(wilc->dev); wilc 282 drivers/staging/wilc1000/wilc_spi.c static int spi_cmd_complete(struct wilc *wilc, u8 cmd, u32 adr, u8 *b, u32 sz, wilc 285 drivers/staging/wilc1000/wilc_spi.c struct spi_device *spi = to_spi_device(wilc->dev); wilc 286 drivers/staging/wilc1000/wilc_spi.c struct wilc_spi *spi_priv = wilc->bus_data; wilc 424 drivers/staging/wilc1000/wilc_spi.c if (wilc_spi_tx_rx(wilc, wb, rb, len2)) { wilc 530 drivers/staging/wilc1000/wilc_spi.c if (wilc_spi_rx(wilc, &b[ix], nbytes)) { wilc 539 drivers/staging/wilc1000/wilc_spi.c if (!spi_priv->crc_off && wilc_spi_rx(wilc, crc, 2)) { wilc 571 drivers/staging/wilc1000/wilc_spi.c if (wilc_spi_rx(wilc, &rsp, 1)) { wilc 587 drivers/staging/wilc1000/wilc_spi.c if (wilc_spi_rx(wilc, &b[ix], nbytes)) { wilc 597 drivers/staging/wilc1000/wilc_spi.c if (!spi_priv->crc_off && wilc_spi_rx(wilc, crc, 2)) { wilc 611 drivers/staging/wilc1000/wilc_spi.c static int spi_data_write(struct wilc *wilc, u8 *b, u32 sz) wilc 613 drivers/staging/wilc1000/wilc_spi.c struct spi_device *spi = to_spi_device(wilc->dev); wilc 614 drivers/staging/wilc1000/wilc_spi.c struct wilc_spi *spi_priv = wilc->bus_data; wilc 641 drivers/staging/wilc1000/wilc_spi.c if (wilc_spi_tx(wilc, &cmd, 1)) { wilc 651 drivers/staging/wilc1000/wilc_spi.c if (wilc_spi_tx(wilc, &b[ix], nbytes)) { wilc 662 drivers/staging/wilc1000/wilc_spi.c if (wilc_spi_tx(wilc, crc, 2)) { wilc 685 drivers/staging/wilc1000/wilc_spi.c static int spi_internal_write(struct wilc *wilc, u32 adr, u32 dat) wilc 687 drivers/staging/wilc1000/wilc_spi.c struct spi_device *spi = to_spi_device(wilc->dev); wilc 691 drivers/staging/wilc1000/wilc_spi.c result = spi_cmd_complete(wilc, CMD_INTERNAL_WRITE, adr, (u8 *)&dat, 4, wilc 699 drivers/staging/wilc1000/wilc_spi.c static int spi_internal_read(struct wilc *wilc, u32 adr, u32 *data) wilc 701 drivers/staging/wilc1000/wilc_spi.c struct spi_device *spi = to_spi_device(wilc->dev); wilc 704 drivers/staging/wilc1000/wilc_spi.c result = spi_cmd_complete(wilc, CMD_INTERNAL_READ, adr, (u8 *)data, 4, wilc 722 drivers/staging/wilc1000/wilc_spi.c static int wilc_spi_write_reg(struct wilc *wilc, u32 addr, u32 data) wilc 724 drivers/staging/wilc1000/wilc_spi.c struct spi_device *spi = to_spi_device(wilc->dev); wilc 736 drivers/staging/wilc1000/wilc_spi.c result = spi_cmd_complete(wilc, cmd, addr, (u8 *)&data, 4, clockless); wilc 743 drivers/staging/wilc1000/wilc_spi.c static int wilc_spi_write(struct wilc *wilc, u32 addr, u8 *buf, u32 size) wilc 745 drivers/staging/wilc1000/wilc_spi.c struct spi_device *spi = to_spi_device(wilc->dev); wilc 754 drivers/staging/wilc1000/wilc_spi.c result = spi_cmd_complete(wilc, CMD_DMA_EXT_WRITE, addr, NULL, size, 0); wilc 764 drivers/staging/wilc1000/wilc_spi.c result = spi_data_write(wilc, buf, size); wilc 771 drivers/staging/wilc1000/wilc_spi.c static int wilc_spi_read_reg(struct wilc *wilc, u32 addr, u32 *data) wilc 773 drivers/staging/wilc1000/wilc_spi.c struct spi_device *spi = to_spi_device(wilc->dev); wilc 784 drivers/staging/wilc1000/wilc_spi.c result = spi_cmd_complete(wilc, cmd, addr, (u8 *)data, 4, clockless); wilc 795 drivers/staging/wilc1000/wilc_spi.c static int wilc_spi_read(struct wilc *wilc, u32 addr, u8 *buf, u32 size) wilc 797 drivers/staging/wilc1000/wilc_spi.c struct spi_device *spi = to_spi_device(wilc->dev); wilc 803 drivers/staging/wilc1000/wilc_spi.c result = spi_cmd_complete(wilc, CMD_DMA_EXT_READ, addr, buf, size, 0); wilc 818 drivers/staging/wilc1000/wilc_spi.c static int wilc_spi_deinit(struct wilc *wilc) wilc 826 drivers/staging/wilc1000/wilc_spi.c static int wilc_spi_init(struct wilc *wilc, bool resume) wilc 828 drivers/staging/wilc1000/wilc_spi.c struct spi_device *spi = to_spi_device(wilc->dev); wilc 829 drivers/staging/wilc1000/wilc_spi.c struct wilc_spi *spi_priv = wilc->bus_data; wilc 835 drivers/staging/wilc1000/wilc_spi.c if (!wilc_spi_read_reg(wilc, 0x1000, &chipid)) { wilc 851 drivers/staging/wilc1000/wilc_spi.c if (!spi_internal_read(wilc, WILC_SPI_PROTOCOL_OFFSET, ®)) { wilc 859 drivers/staging/wilc1000/wilc_spi.c if (!spi_internal_read(wilc, WILC_SPI_PROTOCOL_OFFSET, ®)) { wilc 872 drivers/staging/wilc1000/wilc_spi.c if (!spi_internal_write(wilc, WILC_SPI_PROTOCOL_OFFSET, reg)) { wilc 884 drivers/staging/wilc1000/wilc_spi.c if (!wilc_spi_read_reg(wilc, 0x1000, &chipid)) { wilc 896 drivers/staging/wilc1000/wilc_spi.c static int wilc_spi_read_size(struct wilc *wilc, u32 *size) wilc 898 drivers/staging/wilc1000/wilc_spi.c struct spi_device *spi = to_spi_device(wilc->dev); wilc 899 drivers/staging/wilc1000/wilc_spi.c struct wilc_spi *spi_priv = wilc->bus_data; wilc 903 drivers/staging/wilc1000/wilc_spi.c ret = spi_internal_read(wilc, 0xe840 - WILC_SPI_REG_BASE, wilc 910 drivers/staging/wilc1000/wilc_spi.c ret = wilc_spi_read_reg(wilc, WILC_VMM_TO_HOST_SIZE, wilc 924 drivers/staging/wilc1000/wilc_spi.c static int wilc_spi_read_int(struct wilc *wilc, u32 *int_status) wilc 926 drivers/staging/wilc1000/wilc_spi.c struct spi_device *spi = to_spi_device(wilc->dev); wilc 927 drivers/staging/wilc1000/wilc_spi.c struct wilc_spi *spi_priv = wilc->bus_data; wilc 938 drivers/staging/wilc1000/wilc_spi.c return spi_internal_read(wilc, 0xe840 - WILC_SPI_REG_BASE, wilc 940 drivers/staging/wilc1000/wilc_spi.c ret = wilc_spi_read_reg(wilc, WILC_VMM_TO_HOST_SIZE, &byte_cnt); wilc 950 drivers/staging/wilc1000/wilc_spi.c wilc_spi_read_reg(wilc, 0x1a90, &irq_flags); wilc 954 drivers/staging/wilc1000/wilc_spi.c wilc_spi_read_reg(wilc, 0x1a94, &irq_flags); wilc 975 drivers/staging/wilc1000/wilc_spi.c static int wilc_spi_clear_int_ext(struct wilc *wilc, u32 val) wilc 977 drivers/staging/wilc1000/wilc_spi.c struct spi_device *spi = to_spi_device(wilc->dev); wilc 978 drivers/staging/wilc1000/wilc_spi.c struct wilc_spi *spi_priv = wilc->bus_data; wilc 984 drivers/staging/wilc1000/wilc_spi.c return spi_internal_write(wilc, 0xe844 - WILC_SPI_REG_BASE, wilc 999 drivers/staging/wilc1000/wilc_spi.c ret = wilc_spi_write_reg(wilc, wilc 1028 drivers/staging/wilc1000/wilc_spi.c ret = wilc_spi_write_reg(wilc, WILC_VMM_TBL_CTL, tbl_ctl); wilc 1038 drivers/staging/wilc1000/wilc_spi.c ret = wilc_spi_write_reg(wilc, WILC_VMM_CORE_CTL, 1); wilc 1048 drivers/staging/wilc1000/wilc_spi.c static int wilc_spi_sync_ext(struct wilc *wilc, int nint) wilc 1050 drivers/staging/wilc1000/wilc_spi.c struct spi_device *spi = to_spi_device(wilc->dev); wilc 1051 drivers/staging/wilc1000/wilc_spi.c struct wilc_spi *spi_priv = wilc->bus_data; wilc 1065 drivers/staging/wilc1000/wilc_spi.c ret = wilc_spi_read_reg(wilc, WILC_PIN_MUX_0, ®); wilc 1072 drivers/staging/wilc1000/wilc_spi.c ret = wilc_spi_write_reg(wilc, WILC_PIN_MUX_0, reg); wilc 1082 drivers/staging/wilc1000/wilc_spi.c ret = wilc_spi_read_reg(wilc, WILC_INTR_ENABLE, ®); wilc 1092 drivers/staging/wilc1000/wilc_spi.c ret = wilc_spi_write_reg(wilc, WILC_INTR_ENABLE, reg); wilc 1099 drivers/staging/wilc1000/wilc_spi.c ret = wilc_spi_read_reg(wilc, WILC_INTR2_ENABLE, ®); wilc 1109 drivers/staging/wilc1000/wilc_spi.c ret = wilc_spi_read_reg(wilc, WILC_INTR2_ENABLE, ®); wilc 137 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c struct wilc *wl = vif->wilc; wilc 189 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c static struct wilc_vif *wilc_get_wl_to_vif(struct wilc *wl) wilc 203 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c struct wilc *wl = wiphy_priv(wiphy); wilc 383 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c vif->wilc->op_ch = ch; wilc 385 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c vif->wilc->sta_ch = ch; wilc 401 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c vif->wilc->sta_ch = WILC_INVALID_CHANNEL; wilc 424 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c struct wilc *wilc = vif->wilc; wilc 429 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c if (!wilc) wilc 432 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c if (wilc->close) { wilc 439 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c wilc->sta_ch = WILC_INVALID_CHANNEL; wilc 623 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c struct wilc *wl = wiphy_priv(wiphy); wilc 755 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c struct wilc_vif *wilc_get_interface(struct wilc *wl) wilc 775 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c struct wilc *wl = wiphy_priv(wiphy); wilc 1015 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c vif->wilc->sta_ch); wilc 1024 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c struct wilc *wl = vif->wilc; wilc 1137 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c vif->wilc->op_ch = chan->hw_value; wilc 1200 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c vif->wilc->sta_ch); wilc 1259 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c vif->wilc->op_ch = chan->hw_value; wilc 1270 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c vif->wilc->op_ch = chan->hw_value; wilc 1336 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c struct wilc *wl = wiphy_priv(wiphy); wilc 1405 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c struct wilc *wl = wiphy_priv(wiphy); wilc 1566 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c static int wilc_get_vif_from_type(struct wilc *wl, int type) wilc 1588 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c struct wilc *wl = wiphy_priv(wiphy); wilc 1655 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c struct wilc *wl = wiphy_priv(wiphy); wilc 1688 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c struct wilc *wl = wiphy_priv(wiphy); wilc 1705 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c struct wilc *wl = wiphy_priv(wiphy); wilc 1742 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c struct wilc *wl = vif->wilc; wilc 1798 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c static void wlan_init_locks(struct wilc *wl) wilc 1814 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c int wilc_cfg80211_init(struct wilc **wilc, struct device *dev, int io_type, wilc 1817 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c struct wilc *wl; wilc 1829 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c *wilc = wl; wilc 1865 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c struct wilc *wilc_create_wiphy(struct device *dev) wilc 1868 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c struct wilc *wl; wilc 1947 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c flush_workqueue(vif->wilc->hif_workqueue); wilc 12 drivers/staging/wilc1000/wilc_wfi_cfgoperations.h int wilc_cfg80211_init(struct wilc **wilc, struct device *dev, int io_type, wilc 14 drivers/staging/wilc1000/wilc_wfi_cfgoperations.h struct wilc *wilc_create_wiphy(struct device *dev); wilc 18 drivers/staging/wilc1000/wilc_wfi_cfgoperations.h struct wilc_vif *wilc_netdev_interface(struct wilc *wl, const char *name, wilc 20 drivers/staging/wilc1000/wilc_wfi_cfgoperations.h void wilc_wfi_deinit_mon_interface(struct wilc *wl, bool rtnl_locked); wilc 21 drivers/staging/wilc1000/wilc_wfi_cfgoperations.h struct net_device *wilc_wfi_init_mon_interface(struct wilc *wl, wilc 26 drivers/staging/wilc1000/wilc_wfi_cfgoperations.h struct wilc_vif *wilc_get_interface(struct wilc *wl); wilc 200 drivers/staging/wilc1000/wilc_wfi_netdevice.h struct wilc *wilc; wilc 285 drivers/staging/wilc1000/wilc_wfi_netdevice.h void wilc_frmw_to_host(struct wilc *wilc, u8 *buff, u32 size, u32 pkt_offset); wilc 286 drivers/staging/wilc1000/wilc_wfi_netdevice.h void wilc_mac_indicate(struct wilc *wilc); wilc 287 drivers/staging/wilc1000/wilc_wfi_netdevice.h void wilc_netdev_cleanup(struct wilc *wilc); wilc 288 drivers/staging/wilc1000/wilc_wfi_netdevice.h void wilc_wfi_mgmt_rx(struct wilc *wilc, u8 *buff, u32 size); wilc 290 drivers/staging/wilc1000/wilc_wfi_netdevice.h struct wilc_vif *wilc_netdev_ifc_init(struct wilc *wl, const char *name, wilc 17 drivers/staging/wilc1000/wilc_wlan.c static inline void acquire_bus(struct wilc *wilc, enum bus_acquire acquire) wilc 19 drivers/staging/wilc1000/wilc_wlan.c mutex_lock(&wilc->hif_cs); wilc 21 drivers/staging/wilc1000/wilc_wlan.c chip_wakeup(wilc); wilc 24 drivers/staging/wilc1000/wilc_wlan.c static inline void release_bus(struct wilc *wilc, enum bus_release release) wilc 27 drivers/staging/wilc1000/wilc_wlan.c chip_allow_sleep(wilc); wilc 28 drivers/staging/wilc1000/wilc_wlan.c mutex_unlock(&wilc->hif_cs); wilc 31 drivers/staging/wilc1000/wilc_wlan.c static void wilc_wlan_txq_remove(struct wilc *wilc, struct txq_entry_t *tqe) wilc 34 drivers/staging/wilc1000/wilc_wlan.c wilc->txq_entries -= 1; wilc 43 drivers/staging/wilc1000/wilc_wlan.c struct wilc *wilc = vif->wilc; wilc 45 drivers/staging/wilc1000/wilc_wlan.c spin_lock_irqsave(&wilc->txq_spinlock, flags); wilc 47 drivers/staging/wilc1000/wilc_wlan.c if (!list_empty(&wilc->txq_head.list)) { wilc 48 drivers/staging/wilc1000/wilc_wlan.c tqe = list_first_entry(&wilc->txq_head.list, struct txq_entry_t, wilc 51 drivers/staging/wilc1000/wilc_wlan.c wilc->txq_entries -= 1; wilc 53 drivers/staging/wilc1000/wilc_wlan.c spin_unlock_irqrestore(&wilc->txq_spinlock, flags); wilc 62 drivers/staging/wilc1000/wilc_wlan.c struct wilc *wilc = vif->wilc; wilc 64 drivers/staging/wilc1000/wilc_wlan.c spin_lock_irqsave(&wilc->txq_spinlock, flags); wilc 66 drivers/staging/wilc1000/wilc_wlan.c list_add_tail(&tqe->list, &wilc->txq_head.list); wilc 67 drivers/staging/wilc1000/wilc_wlan.c wilc->txq_entries += 1; wilc 69 drivers/staging/wilc1000/wilc_wlan.c spin_unlock_irqrestore(&wilc->txq_spinlock, flags); wilc 71 drivers/staging/wilc1000/wilc_wlan.c complete(&wilc->txq_event); wilc 78 drivers/staging/wilc1000/wilc_wlan.c struct wilc *wilc = vif->wilc; wilc 80 drivers/staging/wilc1000/wilc_wlan.c mutex_lock(&wilc->txq_add_to_head_cs); wilc 82 drivers/staging/wilc1000/wilc_wlan.c spin_lock_irqsave(&wilc->txq_spinlock, flags); wilc 84 drivers/staging/wilc1000/wilc_wlan.c list_add(&tqe->list, &wilc->txq_head.list); wilc 85 drivers/staging/wilc1000/wilc_wlan.c wilc->txq_entries += 1; wilc 87 drivers/staging/wilc1000/wilc_wlan.c spin_unlock_irqrestore(&wilc->txq_spinlock, flags); wilc 88 drivers/staging/wilc1000/wilc_wlan.c mutex_unlock(&wilc->txq_add_to_head_cs); wilc 89 drivers/staging/wilc1000/wilc_wlan.c complete(&wilc->txq_event); wilc 140 drivers/staging/wilc1000/wilc_wlan.c struct wilc *wilc = vif->wilc; wilc 146 drivers/staging/wilc1000/wilc_wlan.c spin_lock_irqsave(&wilc->txq_spinlock, flags); wilc 182 drivers/staging/wilc1000/wilc_wlan.c spin_unlock_irqrestore(&wilc->txq_spinlock, flags); wilc 188 drivers/staging/wilc1000/wilc_wlan.c struct wilc *wilc = vif->wilc; wilc 194 drivers/staging/wilc1000/wilc_wlan.c spin_lock_irqsave(&wilc->txq_spinlock, flags); wilc 215 drivers/staging/wilc1000/wilc_wlan.c wilc_wlan_txq_remove(wilc, tqe); wilc 233 drivers/staging/wilc1000/wilc_wlan.c spin_unlock_irqrestore(&wilc->txq_spinlock, flags); wilc 236 drivers/staging/wilc1000/wilc_wlan.c wait_for_completion_timeout(&wilc->txq_event, wilc 251 drivers/staging/wilc1000/wilc_wlan.c struct wilc *wilc = vif->wilc; wilc 254 drivers/staging/wilc1000/wilc_wlan.c if (wilc->quit) { wilc 256 drivers/staging/wilc1000/wilc_wlan.c complete(&wilc->cfg_event); wilc 283 drivers/staging/wilc1000/wilc_wlan.c struct wilc *wilc; wilc 285 drivers/staging/wilc1000/wilc_wlan.c wilc = vif->wilc; wilc 287 drivers/staging/wilc1000/wilc_wlan.c if (wilc->quit) wilc 305 drivers/staging/wilc1000/wilc_wlan.c return wilc->txq_entries; wilc 314 drivers/staging/wilc1000/wilc_wlan.c struct wilc *wilc; wilc 316 drivers/staging/wilc1000/wilc_wlan.c wilc = vif->wilc; wilc 318 drivers/staging/wilc1000/wilc_wlan.c if (wilc->quit) wilc 336 drivers/staging/wilc1000/wilc_wlan.c static struct txq_entry_t *wilc_wlan_txq_get_first(struct wilc *wilc) wilc 341 drivers/staging/wilc1000/wilc_wlan.c spin_lock_irqsave(&wilc->txq_spinlock, flags); wilc 343 drivers/staging/wilc1000/wilc_wlan.c if (!list_empty(&wilc->txq_head.list)) wilc 344 drivers/staging/wilc1000/wilc_wlan.c tqe = list_first_entry(&wilc->txq_head.list, struct txq_entry_t, wilc 347 drivers/staging/wilc1000/wilc_wlan.c spin_unlock_irqrestore(&wilc->txq_spinlock, flags); wilc 352 drivers/staging/wilc1000/wilc_wlan.c static struct txq_entry_t *wilc_wlan_txq_get_next(struct wilc *wilc, wilc 357 drivers/staging/wilc1000/wilc_wlan.c spin_lock_irqsave(&wilc->txq_spinlock, flags); wilc 359 drivers/staging/wilc1000/wilc_wlan.c if (!list_is_last(&tqe->list, &wilc->txq_head.list)) wilc 363 drivers/staging/wilc1000/wilc_wlan.c spin_unlock_irqrestore(&wilc->txq_spinlock, flags); wilc 368 drivers/staging/wilc1000/wilc_wlan.c static void wilc_wlan_rxq_add(struct wilc *wilc, struct rxq_entry_t *rqe) wilc 370 drivers/staging/wilc1000/wilc_wlan.c if (wilc->quit) wilc 373 drivers/staging/wilc1000/wilc_wlan.c mutex_lock(&wilc->rxq_cs); wilc 374 drivers/staging/wilc1000/wilc_wlan.c list_add_tail(&rqe->list, &wilc->rxq_head.list); wilc 375 drivers/staging/wilc1000/wilc_wlan.c mutex_unlock(&wilc->rxq_cs); wilc 378 drivers/staging/wilc1000/wilc_wlan.c static struct rxq_entry_t *wilc_wlan_rxq_remove(struct wilc *wilc) wilc 382 drivers/staging/wilc1000/wilc_wlan.c mutex_lock(&wilc->rxq_cs); wilc 383 drivers/staging/wilc1000/wilc_wlan.c if (!list_empty(&wilc->rxq_head.list)) { wilc 384 drivers/staging/wilc1000/wilc_wlan.c rqe = list_first_entry(&wilc->rxq_head.list, struct rxq_entry_t, wilc 388 drivers/staging/wilc1000/wilc_wlan.c mutex_unlock(&wilc->rxq_cs); wilc 392 drivers/staging/wilc1000/wilc_wlan.c void chip_allow_sleep(struct wilc *wilc) wilc 396 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_read_reg(wilc, 0xf0, ®); wilc 398 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_write_reg(wilc, 0xf0, reg & ~BIT(0)); wilc 399 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_write_reg(wilc, 0xfa, 0); wilc 403 drivers/staging/wilc1000/wilc_wlan.c void chip_wakeup(struct wilc *wilc) wilc 407 drivers/staging/wilc1000/wilc_wlan.c if ((wilc->io_type & 0x1) == WILC_HIF_SPI) { wilc 409 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_read_reg(wilc, 1, ®); wilc 410 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_write_reg(wilc, 1, reg | BIT(1)); wilc 411 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_write_reg(wilc, 1, reg & ~BIT(1)); wilc 415 drivers/staging/wilc1000/wilc_wlan.c wilc_get_chipid(wilc, true); wilc 416 drivers/staging/wilc1000/wilc_wlan.c } while (wilc_get_chipid(wilc, true) == 0); wilc 417 drivers/staging/wilc1000/wilc_wlan.c } while (wilc_get_chipid(wilc, true) == 0); wilc 418 drivers/staging/wilc1000/wilc_wlan.c } else if ((wilc->io_type & 0x1) == WILC_HIF_SDIO) { wilc 419 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_write_reg(wilc, 0xfa, 1); wilc 421 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_read_reg(wilc, 0xf0, ®); wilc 423 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_write_reg(wilc, 0xf0, wilc 425 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_read_reg(wilc, 0xf1, wilc 431 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_read_reg(wilc, 0xf1, wilc 435 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_write_reg(wilc, 0xf0, wilc 441 drivers/staging/wilc1000/wilc_wlan.c if (wilc->chip_ps_state == WILC_CHIP_SLEEPING_MANUAL) { wilc 442 drivers/staging/wilc1000/wilc_wlan.c if (wilc_get_chipid(wilc, false) < 0x1002b0) { wilc 445 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_read_reg(wilc, 0x1e1c, &val32); wilc 447 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_write_reg(wilc, 0x1e1c, val32); wilc 449 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_read_reg(wilc, 0x1e9c, &val32); wilc 451 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_write_reg(wilc, 0x1e9c, val32); wilc 454 drivers/staging/wilc1000/wilc_wlan.c wilc->chip_ps_state = WILC_CHIP_WAKEDUP; wilc 458 drivers/staging/wilc1000/wilc_wlan.c void host_wakeup_notify(struct wilc *wilc) wilc 460 drivers/staging/wilc1000/wilc_wlan.c acquire_bus(wilc, WILC_BUS_ACQUIRE_ONLY); wilc 461 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_write_reg(wilc, 0x10b0, 1); wilc 462 drivers/staging/wilc1000/wilc_wlan.c release_bus(wilc, WILC_BUS_RELEASE_ONLY); wilc 466 drivers/staging/wilc1000/wilc_wlan.c void host_sleep_notify(struct wilc *wilc) wilc 468 drivers/staging/wilc1000/wilc_wlan.c acquire_bus(wilc, WILC_BUS_ACQUIRE_ONLY); wilc 469 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_write_reg(wilc, 0x10ac, 1); wilc 470 drivers/staging/wilc1000/wilc_wlan.c release_bus(wilc, WILC_BUS_RELEASE_ONLY); wilc 474 drivers/staging/wilc1000/wilc_wlan.c int wilc_wlan_handle_txq(struct wilc *wilc, u32 *txq_count) wilc 487 drivers/staging/wilc1000/wilc_wlan.c u8 *txb = wilc->tx_buffer; wilc 491 drivers/staging/wilc1000/wilc_wlan.c if (wilc->quit) wilc 494 drivers/staging/wilc1000/wilc_wlan.c mutex_lock(&wilc->txq_add_to_head_cs); wilc 495 drivers/staging/wilc1000/wilc_wlan.c tqe = wilc_wlan_txq_get_first(wilc); wilc 528 drivers/staging/wilc1000/wilc_wlan.c tqe = wilc_wlan_txq_get_next(wilc, tqe); wilc 538 drivers/staging/wilc1000/wilc_wlan.c acquire_bus(wilc, WILC_BUS_ACQUIRE_AND_WAKEUP); wilc 540 drivers/staging/wilc1000/wilc_wlan.c func = wilc->hif_func; wilc 542 drivers/staging/wilc1000/wilc_wlan.c ret = func->hif_read_reg(wilc, WILC_HOST_TX_CTRL, ®); wilc 552 drivers/staging/wilc1000/wilc_wlan.c ret = func->hif_write_reg(wilc, WILC_HOST_TX_CTRL, 0); wilc 555 drivers/staging/wilc1000/wilc_wlan.c } while (!wilc->quit); wilc 562 drivers/staging/wilc1000/wilc_wlan.c ret = func->hif_block_tx(wilc, wilc 569 drivers/staging/wilc1000/wilc_wlan.c ret = func->hif_write_reg(wilc, WILC_HOST_VMM_CTL, 0x2); wilc 574 drivers/staging/wilc1000/wilc_wlan.c ret = func->hif_read_reg(wilc, WILC_HOST_VMM_CTL, ®); wilc 583 drivers/staging/wilc1000/wilc_wlan.c ret = func->hif_write_reg(wilc, WILC_HOST_VMM_CTL, 0x0); wilc 591 drivers/staging/wilc1000/wilc_wlan.c ret = func->hif_read_reg(wilc, WILC_HOST_TX_CTRL, ®); wilc 595 drivers/staging/wilc1000/wilc_wlan.c ret = func->hif_write_reg(wilc, WILC_HOST_TX_CTRL, reg); wilc 611 drivers/staging/wilc1000/wilc_wlan.c release_bus(wilc, WILC_BUS_RELEASE_ALLOW_SLEEP); wilc 663 drivers/staging/wilc1000/wilc_wlan.c acquire_bus(wilc, WILC_BUS_ACQUIRE_AND_WAKEUP); wilc 665 drivers/staging/wilc1000/wilc_wlan.c ret = func->hif_clear_int_ext(wilc, ENABLE_TX_VMM); wilc 669 drivers/staging/wilc1000/wilc_wlan.c ret = func->hif_block_tx_ext(wilc, 0, txb, offset); wilc 672 drivers/staging/wilc1000/wilc_wlan.c release_bus(wilc, WILC_BUS_RELEASE_ALLOW_SLEEP); wilc 675 drivers/staging/wilc1000/wilc_wlan.c mutex_unlock(&wilc->txq_add_to_head_cs); wilc 677 drivers/staging/wilc1000/wilc_wlan.c *txq_count = wilc->txq_entries; wilc 681 drivers/staging/wilc1000/wilc_wlan.c static void wilc_wlan_handle_rx_buff(struct wilc *wilc, u8 *buffer, int size) wilc 703 drivers/staging/wilc1000/wilc_wlan.c wilc_wfi_mgmt_rx(wilc, buff_ptr, pkt_len); wilc 707 drivers/staging/wilc1000/wilc_wlan.c wilc_frmw_to_host(wilc, buff_ptr, wilc 715 drivers/staging/wilc1000/wilc_wlan.c wilc_wlan_cfg_indicate_rx(wilc, buff_ptr, wilc 719 drivers/staging/wilc1000/wilc_wlan.c if (wilc->cfg_seq_no == rsp.seq_no) wilc 720 drivers/staging/wilc1000/wilc_wlan.c complete(&wilc->cfg_event); wilc 722 drivers/staging/wilc1000/wilc_wlan.c wilc_mac_indicate(wilc); wilc 732 drivers/staging/wilc1000/wilc_wlan.c static void wilc_wlan_handle_rxq(struct wilc *wilc) wilc 739 drivers/staging/wilc1000/wilc_wlan.c if (wilc->quit) { wilc 740 drivers/staging/wilc1000/wilc_wlan.c complete(&wilc->cfg_event); wilc 743 drivers/staging/wilc1000/wilc_wlan.c rqe = wilc_wlan_rxq_remove(wilc); wilc 749 drivers/staging/wilc1000/wilc_wlan.c wilc_wlan_handle_rx_buff(wilc, buffer, size); wilc 755 drivers/staging/wilc1000/wilc_wlan.c static void wilc_unknown_isr_ext(struct wilc *wilc) wilc 757 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_clear_int_ext(wilc, 0); wilc 760 drivers/staging/wilc1000/wilc_wlan.c static void wilc_wlan_handle_isr_ext(struct wilc *wilc, u32 int_status) wilc 762 drivers/staging/wilc1000/wilc_wlan.c u32 offset = wilc->rx_buffer_offset; wilc 772 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_read_size(wilc, &size); wilc 783 drivers/staging/wilc1000/wilc_wlan.c buffer = &wilc->rx_buffer[offset]; wilc 785 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_clear_int_ext(wilc, DATA_INT_CLR | ENABLE_RX_VMM); wilc 786 drivers/staging/wilc1000/wilc_wlan.c ret = wilc->hif_func->hif_block_rx_ext(wilc, 0, buffer, size); wilc 791 drivers/staging/wilc1000/wilc_wlan.c wilc->rx_buffer_offset = offset; wilc 798 drivers/staging/wilc1000/wilc_wlan.c wilc_wlan_rxq_add(wilc, rqe); wilc 799 drivers/staging/wilc1000/wilc_wlan.c wilc_wlan_handle_rxq(wilc); wilc 802 drivers/staging/wilc1000/wilc_wlan.c void wilc_handle_isr(struct wilc *wilc) wilc 806 drivers/staging/wilc1000/wilc_wlan.c acquire_bus(wilc, WILC_BUS_ACQUIRE_AND_WAKEUP); wilc 807 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_read_int(wilc, &int_status); wilc 810 drivers/staging/wilc1000/wilc_wlan.c wilc_wlan_handle_isr_ext(wilc, int_status); wilc 813 drivers/staging/wilc1000/wilc_wlan.c wilc_unknown_isr_ext(wilc); wilc 815 drivers/staging/wilc1000/wilc_wlan.c release_bus(wilc, WILC_BUS_RELEASE_ALLOW_SLEEP); wilc 819 drivers/staging/wilc1000/wilc_wlan.c int wilc_wlan_firmware_download(struct wilc *wilc, const u8 *buffer, wilc 837 drivers/staging/wilc1000/wilc_wlan.c acquire_bus(wilc, WILC_BUS_ACQUIRE_ONLY); wilc 846 drivers/staging/wilc1000/wilc_wlan.c ret = wilc->hif_func->hif_block_tx(wilc, addr, wilc 855 drivers/staging/wilc1000/wilc_wlan.c release_bus(wilc, WILC_BUS_RELEASE_ONLY); wilc 870 drivers/staging/wilc1000/wilc_wlan.c int wilc_wlan_start(struct wilc *wilc) wilc 876 drivers/staging/wilc1000/wilc_wlan.c if (wilc->io_type == WILC_HIF_SDIO) { wilc 879 drivers/staging/wilc1000/wilc_wlan.c } else if (wilc->io_type == WILC_HIF_SPI) { wilc 882 drivers/staging/wilc1000/wilc_wlan.c acquire_bus(wilc, WILC_BUS_ACQUIRE_ONLY); wilc 883 drivers/staging/wilc1000/wilc_wlan.c ret = wilc->hif_func->hif_write_reg(wilc, WILC_VMM_CORE_CFG, reg); wilc 885 drivers/staging/wilc1000/wilc_wlan.c release_bus(wilc, WILC_BUS_RELEASE_ONLY); wilc 889 drivers/staging/wilc1000/wilc_wlan.c if (wilc->io_type == WILC_HIF_SDIO && wilc->dev_irq_num) wilc 915 drivers/staging/wilc1000/wilc_wlan.c ret = wilc->hif_func->hif_write_reg(wilc, WILC_GP_REG_1, reg); wilc 917 drivers/staging/wilc1000/wilc_wlan.c release_bus(wilc, WILC_BUS_RELEASE_ONLY); wilc 921 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_sync_ext(wilc, NUM_INT_EXT); wilc 923 drivers/staging/wilc1000/wilc_wlan.c ret = wilc->hif_func->hif_read_reg(wilc, 0x1000, &chipid); wilc 925 drivers/staging/wilc1000/wilc_wlan.c release_bus(wilc, WILC_BUS_RELEASE_ONLY); wilc 929 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_read_reg(wilc, WILC_GLB_RESET_0, ®); wilc 932 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_write_reg(wilc, WILC_GLB_RESET_0, reg); wilc 933 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_read_reg(wilc, WILC_GLB_RESET_0, ®); wilc 937 drivers/staging/wilc1000/wilc_wlan.c ret = wilc->hif_func->hif_write_reg(wilc, WILC_GLB_RESET_0, reg); wilc 938 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_read_reg(wilc, WILC_GLB_RESET_0, ®); wilc 939 drivers/staging/wilc1000/wilc_wlan.c release_bus(wilc, WILC_BUS_RELEASE_ONLY); wilc 944 drivers/staging/wilc1000/wilc_wlan.c int wilc_wlan_stop(struct wilc *wilc, struct wilc_vif *vif) wilc 949 drivers/staging/wilc1000/wilc_wlan.c acquire_bus(wilc, WILC_BUS_ACQUIRE_AND_WAKEUP); wilc 951 drivers/staging/wilc1000/wilc_wlan.c ret = wilc->hif_func->hif_read_reg(wilc, WILC_GP_REG_0, ®); wilc 954 drivers/staging/wilc1000/wilc_wlan.c release_bus(wilc, WILC_BUS_RELEASE_ALLOW_SLEEP); wilc 958 drivers/staging/wilc1000/wilc_wlan.c ret = wilc->hif_func->hif_write_reg(wilc, WILC_GP_REG_0, wilc 962 drivers/staging/wilc1000/wilc_wlan.c release_bus(wilc, WILC_BUS_RELEASE_ALLOW_SLEEP); wilc 966 drivers/staging/wilc1000/wilc_wlan.c ret = wilc->hif_func->hif_read_reg(wilc, WILC_FW_HOST_COMM, ®); wilc 969 drivers/staging/wilc1000/wilc_wlan.c release_bus(wilc, WILC_BUS_RELEASE_ALLOW_SLEEP); wilc 974 drivers/staging/wilc1000/wilc_wlan.c ret = wilc->hif_func->hif_write_reg(wilc, WILC_FW_HOST_COMM, reg); wilc 977 drivers/staging/wilc1000/wilc_wlan.c release_bus(wilc, WILC_BUS_RELEASE_ALLOW_SLEEP); wilc 981 drivers/staging/wilc1000/wilc_wlan.c release_bus(wilc, WILC_BUS_RELEASE_ALLOW_SLEEP); wilc 991 drivers/staging/wilc1000/wilc_wlan.c struct wilc *wilc = vif->wilc; wilc 993 drivers/staging/wilc1000/wilc_wlan.c wilc->quit = 1; wilc 1004 drivers/staging/wilc1000/wilc_wlan.c rqe = wilc_wlan_rxq_remove(wilc); wilc 1010 drivers/staging/wilc1000/wilc_wlan.c kfree(wilc->rx_buffer); wilc 1011 drivers/staging/wilc1000/wilc_wlan.c wilc->rx_buffer = NULL; wilc 1012 drivers/staging/wilc1000/wilc_wlan.c kfree(wilc->tx_buffer); wilc 1013 drivers/staging/wilc1000/wilc_wlan.c wilc->tx_buffer = NULL; wilc 1014 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_deinit(NULL); wilc 1020 drivers/staging/wilc1000/wilc_wlan.c struct wilc *wilc = vif->wilc; wilc 1021 drivers/staging/wilc1000/wilc_wlan.c struct wilc_cfg_frame *cfg = &wilc->cfg_frame; wilc 1022 drivers/staging/wilc1000/wilc_wlan.c int t_len = wilc->cfg_frame_offset + sizeof(struct wilc_cfg_cmd_hdr); wilc 1029 drivers/staging/wilc1000/wilc_wlan.c cfg->hdr.seq_no = wilc->cfg_seq_no % 256; wilc 1032 drivers/staging/wilc1000/wilc_wlan.c wilc->cfg_seq_no = cfg->hdr.seq_no; wilc 1045 drivers/staging/wilc1000/wilc_wlan.c struct wilc *wilc = vif->wilc; wilc 1047 drivers/staging/wilc1000/wilc_wlan.c mutex_lock(&wilc->cfg_cmd_lock); wilc 1050 drivers/staging/wilc1000/wilc_wlan.c wilc->cfg_frame_offset = 0; wilc 1052 drivers/staging/wilc1000/wilc_wlan.c offset = wilc->cfg_frame_offset; wilc 1053 drivers/staging/wilc1000/wilc_wlan.c ret_size = wilc_wlan_cfg_set_wid(wilc->cfg_frame.frame, offset, wilc 1056 drivers/staging/wilc1000/wilc_wlan.c wilc->cfg_frame_offset = offset; wilc 1059 drivers/staging/wilc1000/wilc_wlan.c mutex_unlock(&wilc->cfg_cmd_lock); wilc 1063 drivers/staging/wilc1000/wilc_wlan.c netdev_dbg(vif->ndev, "%s: seqno[%d]\n", __func__, wilc->cfg_seq_no); wilc 1068 drivers/staging/wilc1000/wilc_wlan.c if (!wait_for_completion_timeout(&wilc->cfg_event, wilc 1074 drivers/staging/wilc1000/wilc_wlan.c wilc->cfg_frame_offset = 0; wilc 1075 drivers/staging/wilc1000/wilc_wlan.c wilc->cfg_seq_no += 1; wilc 1076 drivers/staging/wilc1000/wilc_wlan.c mutex_unlock(&wilc->cfg_cmd_lock); wilc 1086 drivers/staging/wilc1000/wilc_wlan.c struct wilc *wilc = vif->wilc; wilc 1088 drivers/staging/wilc1000/wilc_wlan.c mutex_lock(&wilc->cfg_cmd_lock); wilc 1091 drivers/staging/wilc1000/wilc_wlan.c wilc->cfg_frame_offset = 0; wilc 1093 drivers/staging/wilc1000/wilc_wlan.c offset = wilc->cfg_frame_offset; wilc 1094 drivers/staging/wilc1000/wilc_wlan.c ret_size = wilc_wlan_cfg_get_wid(wilc->cfg_frame.frame, offset, wid); wilc 1096 drivers/staging/wilc1000/wilc_wlan.c wilc->cfg_frame_offset = offset; wilc 1099 drivers/staging/wilc1000/wilc_wlan.c mutex_unlock(&wilc->cfg_cmd_lock); wilc 1106 drivers/staging/wilc1000/wilc_wlan.c if (!wait_for_completion_timeout(&wilc->cfg_event, wilc 1111 drivers/staging/wilc1000/wilc_wlan.c wilc->cfg_frame_offset = 0; wilc 1112 drivers/staging/wilc1000/wilc_wlan.c wilc->cfg_seq_no += 1; wilc 1113 drivers/staging/wilc1000/wilc_wlan.c mutex_unlock(&wilc->cfg_cmd_lock); wilc 1136 drivers/staging/wilc1000/wilc_wlan.c wids[i].size = wilc_wlan_cfg_get_val(vif->wilc, wilc 1163 drivers/staging/wilc1000/wilc_wlan.c struct wilc *wilc = vif->wilc; wilc 1165 drivers/staging/wilc1000/wilc_wlan.c acquire_bus(wilc, WILC_BUS_ACQUIRE_ONLY); wilc 1167 drivers/staging/wilc1000/wilc_wlan.c chipid = wilc_get_chipid(wilc, true); wilc 1170 drivers/staging/wilc1000/wilc_wlan.c ret = wilc->hif_func->hif_read_reg(wilc, 0x1118, ®); wilc 1176 drivers/staging/wilc1000/wilc_wlan.c ret = wilc->hif_func->hif_write_reg(wilc, 0x1118, reg); wilc 1181 drivers/staging/wilc1000/wilc_wlan.c ret = wilc->hif_func->hif_write_reg(wilc, 0xc0000, 0x71); wilc 1189 drivers/staging/wilc1000/wilc_wlan.c release_bus(wilc, WILC_BUS_RELEASE_ONLY); wilc 1194 drivers/staging/wilc1000/wilc_wlan.c u32 wilc_get_chipid(struct wilc *wilc, bool update) wilc 1201 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_read_reg(wilc, 0x1000, &tempchipid); wilc 1202 drivers/staging/wilc1000/wilc_wlan.c wilc->hif_func->hif_read_reg(wilc, 0x13f4, &rfrevid); wilc 1226 drivers/staging/wilc1000/wilc_wlan.c struct wilc *wilc; wilc 1228 drivers/staging/wilc1000/wilc_wlan.c wilc = vif->wilc; wilc 1230 drivers/staging/wilc1000/wilc_wlan.c wilc->quit = 0; wilc 1232 drivers/staging/wilc1000/wilc_wlan.c if (!wilc->hif_func->hif_init(wilc, false)) { wilc 1237 drivers/staging/wilc1000/wilc_wlan.c if (!wilc->tx_buffer) wilc 1238 drivers/staging/wilc1000/wilc_wlan.c wilc->tx_buffer = kmalloc(WILC_TX_BUFF_SIZE, GFP_KERNEL); wilc 1240 drivers/staging/wilc1000/wilc_wlan.c if (!wilc->tx_buffer) { wilc 1245 drivers/staging/wilc1000/wilc_wlan.c if (!wilc->rx_buffer) wilc 1246 drivers/staging/wilc1000/wilc_wlan.c wilc->rx_buffer = kmalloc(WILC_RX_BUFF_SIZE, GFP_KERNEL); wilc 1248 drivers/staging/wilc1000/wilc_wlan.c if (!wilc->rx_buffer) { wilc 1262 drivers/staging/wilc1000/wilc_wlan.c kfree(wilc->rx_buffer); wilc 1263 drivers/staging/wilc1000/wilc_wlan.c wilc->rx_buffer = NULL; wilc 1264 drivers/staging/wilc1000/wilc_wlan.c kfree(wilc->tx_buffer); wilc 1265 drivers/staging/wilc1000/wilc_wlan.c wilc->tx_buffer = NULL; wilc 229 drivers/staging/wilc1000/wilc_wlan.h struct wilc; wilc 231 drivers/staging/wilc1000/wilc_wlan.h int (*hif_init)(struct wilc *wilc, bool resume); wilc 232 drivers/staging/wilc1000/wilc_wlan.h int (*hif_deinit)(struct wilc *wilc); wilc 233 drivers/staging/wilc1000/wilc_wlan.h int (*hif_read_reg)(struct wilc *wilc, u32 addr, u32 *data); wilc 234 drivers/staging/wilc1000/wilc_wlan.h int (*hif_write_reg)(struct wilc *wilc, u32 addr, u32 data); wilc 235 drivers/staging/wilc1000/wilc_wlan.h int (*hif_block_rx)(struct wilc *wilc, u32 addr, u8 *buf, u32 size); wilc 236 drivers/staging/wilc1000/wilc_wlan.h int (*hif_block_tx)(struct wilc *wilc, u32 addr, u8 *buf, u32 size); wilc 237 drivers/staging/wilc1000/wilc_wlan.h int (*hif_read_int)(struct wilc *wilc, u32 *int_status); wilc 238 drivers/staging/wilc1000/wilc_wlan.h int (*hif_clear_int_ext)(struct wilc *wilc, u32 val); wilc 239 drivers/staging/wilc1000/wilc_wlan.h int (*hif_read_size)(struct wilc *wilc, u32 *size); wilc 240 drivers/staging/wilc1000/wilc_wlan.h int (*hif_block_tx_ext)(struct wilc *wilc, u32 addr, u8 *buf, u32 size); wilc 241 drivers/staging/wilc1000/wilc_wlan.h int (*hif_block_rx_ext)(struct wilc *wilc, u32 addr, u8 *buf, u32 size); wilc 242 drivers/staging/wilc1000/wilc_wlan.h int (*hif_sync_ext)(struct wilc *wilc, int nint); wilc 243 drivers/staging/wilc1000/wilc_wlan.h int (*enable_interrupt)(struct wilc *nic); wilc 244 drivers/staging/wilc1000/wilc_wlan.h void (*disable_interrupt)(struct wilc *nic); wilc 272 drivers/staging/wilc1000/wilc_wlan.h struct wilc; wilc 275 drivers/staging/wilc1000/wilc_wlan.h int wilc_wlan_firmware_download(struct wilc *wilc, const u8 *buffer, wilc 277 drivers/staging/wilc1000/wilc_wlan.h int wilc_wlan_start(struct wilc *wilc); wilc 278 drivers/staging/wilc1000/wilc_wlan.h int wilc_wlan_stop(struct wilc *wilc, struct wilc_vif *vif); wilc 282 drivers/staging/wilc1000/wilc_wlan.h int wilc_wlan_handle_txq(struct wilc *wl, u32 *txq_count); wilc 283 drivers/staging/wilc1000/wilc_wlan.h void wilc_handle_isr(struct wilc *wilc); wilc 292 drivers/staging/wilc1000/wilc_wlan.h int wilc_wlan_get_num_conn_ifcs(struct wilc *wilc); wilc 296 drivers/staging/wilc1000/wilc_wlan.h void host_wakeup_notify(struct wilc *wilc); wilc 297 drivers/staging/wilc1000/wilc_wlan.h void host_sleep_notify(struct wilc *wilc); wilc 298 drivers/staging/wilc1000/wilc_wlan.h void chip_allow_sleep(struct wilc *wilc); wilc 299 drivers/staging/wilc1000/wilc_wlan.h void chip_wakeup(struct wilc *wilc); wilc 303 drivers/staging/wilc1000/wilc_wlan.h u32 wilc_get_chipid(struct wilc *wilc, bool update); wilc 131 drivers/staging/wilc1000/wilc_wlan_cfg.c static void wilc_wlan_parse_response_frame(struct wilc *wl, u8 *info, int size) wilc 210 drivers/staging/wilc1000/wilc_wlan_cfg.c static void wilc_wlan_parse_info_frame(struct wilc *wl, u8 *info) wilc 285 drivers/staging/wilc1000/wilc_wlan_cfg.c int wilc_wlan_cfg_get_val(struct wilc *wl, u16 wid, u8 *buffer, wilc 351 drivers/staging/wilc1000/wilc_wlan_cfg.c void wilc_wlan_cfg_indicate_rx(struct wilc *wilc, u8 *frame, int size, wilc 372 drivers/staging/wilc1000/wilc_wlan_cfg.c wilc_wlan_parse_response_frame(wilc, frame, size); wilc 378 drivers/staging/wilc1000/wilc_wlan_cfg.c wilc_wlan_parse_info_frame(wilc, frame); wilc 382 drivers/staging/wilc1000/wilc_wlan_cfg.c wilc_gnrl_async_info_received(wilc, frame - 4, size + 4); wilc 386 drivers/staging/wilc1000/wilc_wlan_cfg.c wilc_network_info_received(wilc, frame - 4, size + 4); wilc 390 drivers/staging/wilc1000/wilc_wlan_cfg.c wilc_scan_complete_received(wilc, frame - 4, size + 4); wilc 399 drivers/staging/wilc1000/wilc_wlan_cfg.c int wilc_wlan_cfg_init(struct wilc *wl) wilc 450 drivers/staging/wilc1000/wilc_wlan_cfg.c void wilc_wlan_cfg_deinit(struct wilc *wl) wilc 44 drivers/staging/wilc1000/wilc_wlan_cfg.h struct wilc; wilc 47 drivers/staging/wilc1000/wilc_wlan_cfg.h int wilc_wlan_cfg_get_val(struct wilc *wl, u16 wid, u8 *buffer, wilc 49 drivers/staging/wilc1000/wilc_wlan_cfg.h void wilc_wlan_cfg_indicate_rx(struct wilc *wilc, u8 *frame, int size, wilc 51 drivers/staging/wilc1000/wilc_wlan_cfg.h int wilc_wlan_cfg_init(struct wilc *wl); wilc 52 drivers/staging/wilc1000/wilc_wlan_cfg.h void wilc_wlan_cfg_deinit(struct wilc *wl);