/linux/drivers/net/wireless/microchip/wilc1000/ |
H A D | wlan.c | 15 static inline void acquire_bus(struct wilc *wilc, enum bus_acquire acquire) in acquire_bus() argument 17 mutex_lock(&wilc->hif_cs); in acquire_bus() 18 if (acquire == WILC_BUS_ACQUIRE_AND_WAKEUP && wilc->power_save_mode) in acquire_bus() 19 chip_wakeup(wilc); in acquire_bus() 22 static inline void release_bus(struct wilc *wilc, enum bus_release release) in release_bus() argument 24 if (release == WILC_BUS_RELEASE_ALLOW_SLEEP && wilc->power_save_mode) in release_bus() 25 chip_allow_sleep(wilc); in release_bus() 26 mutex_unlock(&wilc->hif_cs); in release_bus() 29 static void wilc_wlan_txq_remove(struct wilc *wilc, u8 q_num, in wilc_wlan_txq_remove() argument 33 wilc->txq_entries -= 1; in wilc_wlan_txq_remove() [all …]
|
H A D | sdio.c | 27 static int wilc_sdio_init(struct wilc *wilc, bool resume); 28 static int wilc_sdio_deinit(struct wilc *wilc); 66 static int wilc_sdio_cmd52(struct wilc *wilc, struct sdio_cmd52 *cmd) in wilc_sdio_cmd52() argument 68 struct sdio_func *func = container_of(wilc->dev, struct sdio_func, dev); in wilc_sdio_cmd52() 95 static int wilc_sdio_cmd53(struct wilc *wilc, struct sdio_cmd53 *cmd) in wilc_sdio_cmd53() argument 97 struct sdio_func *func = container_of(wilc->dev, struct sdio_func, dev); in wilc_sdio_cmd53() 99 struct wilc_sdio *sdio_priv = wilc->bus_data; in wilc_sdio_cmd53() 144 struct wilc *wilc; in wilc_sdio_probe() local 158 ret = wilc_cfg80211_init(&wilc, &func->dev, WILC_HIF_SDIO, in wilc_sdio_probe() 168 wilc->dev_irq_num = irq_num; in wilc_sdio_probe() [all …]
|
H A D | netdev.c | 28 struct wilc *wilc = user_data; in isr_uh_routine() local 30 if (wilc->close) { in isr_uh_routine() 39 struct wilc *wilc = userdata; in isr_bh_routine() local 41 if (wilc->close) { in isr_bh_routine() 46 wilc_handle_isr(wilc); in isr_bh_routine() 54 struct wilc *wl = vif->wilc; in init_irq() 73 struct wilc *wilc = vif->wilc; in deinit_irq() local 76 if (wilc->dev_irq_num) in deinit_irq() 77 free_irq(wilc->dev_irq_num, wilc); in deinit_irq() 80 void wilc_mac_indicate(struct wilc *wilc) in wilc_mac_indicate() argument [all …]
|
H A D | spi.c | 35 * For CMD_SINGLE_READ and CMD_INTERNAL_READ, WILC may insert one or 57 static int wilc_spi_reset(struct wilc *wilc); 58 static int wilc_spi_configure_bus_protocol(struct wilc *wilc); 59 static int wilc_validate_chipid(struct wilc *wilc); 163 static int wilc_parse_gpios(struct wilc *wilc) in wilc_parse_gpios() argument 165 struct spi_device *spi = to_spi_device(wilc->dev); in wilc_parse_gpios() 166 struct wilc_spi *spi_priv = wilc->bus_data; in wilc_parse_gpios() 188 static void wilc_wlan_power(struct wilc *wilc, bool on) in wilc_wlan_power() argument 190 struct wilc_spi *spi_priv = wilc->bus_data; in wilc_wlan_power() 211 struct wilc *wilc; in wilc_bus_probe() local [all …]
|
H A D | wlan.h | 364 struct wilc; 366 int (*hif_init)(struct wilc *wilc, bool resume); 367 int (*hif_deinit)(struct wilc *wilc); 368 int (*hif_read_reg)(struct wilc *wilc, u32 addr, u32 *data); 369 int (*hif_write_reg)(struct wilc *wilc, u32 addr, u32 data); 370 int (*hif_block_rx)(struct wilc *wilc, u32 addr, u8 *buf, u32 size); 371 int (*hif_block_tx)(struct wilc *wilc, u32 addr, u8 *buf, u32 size); 372 int (*hif_read_int)(struct wilc *wilc, u32 *int_status); 373 int (*hif_clear_int_ext)(struct wilc *wilc, u32 val); 374 int (*hif_read_size)(struct wilc *wilc, u32 *size); [all …]
|
H A D | cfg80211.h | 11 int wilc_cfg80211_init(struct wilc **wilc, struct device *dev, int io_type, 13 struct wilc *wilc_create_wiphy(struct device *dev); 17 void wilc_wfi_deinit_mon_interface(struct wilc *wl, bool rtnl_locked); 18 struct net_device *wilc_wfi_init_mon_interface(struct wilc *wl, 24 struct wilc_vif *wilc_get_wl_to_vif(struct wilc *wl); 25 void wlan_deinit_locks(struct wilc *wilc);
|
H A D | netdev.h | 35 struct wilc *_w = w; \ 185 struct wilc *wilc; member 208 struct wilc { struct 296 void wilc_frmw_to_host(struct wilc *wilc, u8 *buff, u32 size, u32 pkt_offset); argument 297 void wilc_mac_indicate(struct wilc *wilc); 298 void wilc_netdev_cleanup(struct wilc *wilc); 299 void wilc_wfi_mgmt_rx(struct wilc *wilc, u8 *buff, u32 size, bool is_auth); 302 struct wilc_vif *wilc_netdev_ifc_init(struct wilc *wl, const char *name,
|
H A D | cfg80211.c | 168 struct wilc *wl = vif->wilc; in cfg_connect_result() 222 struct wilc_vif *wilc_get_wl_to_vif(struct wilc *wl) in wilc_get_wl_to_vif() 236 struct wilc *wl = wiphy_priv(wiphy); in set_channel() 404 vif->wilc->op_ch = ch; in connect() 406 vif->wilc->sta_ch = ch; in connect() 428 vif->wilc->sta_ch = WILC_INVALID_CHANNEL; in connect() 452 struct wilc *wilc = vif->wilc; in disconnect() local 457 if (!wilc) in disconnect() 460 if (wilc->close) { in disconnect() 467 wilc->sta_ch = WILC_INVALID_CHANNEL; in disconnect() [all …]
|
H A D | wlan_cfg.h | 44 struct wilc; 47 int wilc_wlan_cfg_get_val(struct wilc *wl, u16 wid, u8 *buffer, 49 void wilc_wlan_cfg_indicate_rx(struct wilc *wilc, u8 *frame, int size, 51 int wilc_wlan_cfg_init(struct wilc *wl); 52 void wilc_wlan_cfg_deinit(struct wilc *wl);
|
H A D | wlan_cfg.c | 138 static void wilc_wlan_parse_response_frame(struct wilc *wl, u8 *info, int size) in wilc_wlan_parse_response_frame() 198 static void wilc_wlan_parse_info_frame(struct wilc *wl, u8 *info) in wilc_wlan_parse_info_frame() 269 int wilc_wlan_cfg_get_val(struct wilc *wl, u16 wid, u8 *buffer, in wilc_wlan_cfg_get_val() 317 void wilc_wlan_cfg_indicate_rx(struct wilc *wilc, u8 *frame, int size, in wilc_wlan_cfg_indicate_rx() argument 331 wilc_wlan_parse_response_frame(wilc, frame, size); in wilc_wlan_cfg_indicate_rx() 337 wilc_wlan_parse_info_frame(wilc, frame); in wilc_wlan_cfg_indicate_rx() 341 wilc_gnrl_async_info_received(wilc, frame - 4, size + 4); in wilc_wlan_cfg_indicate_rx() 345 wilc_network_info_received(wilc, frame - 4, size + 4); in wilc_wlan_cfg_indicate_rx() 349 wilc_scan_complete_received(wilc, frame - 4, size + 4); in wilc_wlan_cfg_indicate_rx() 358 int wilc_wlan_cfg_init(struct wilc *wl) in wilc_wlan_cfg_init() [all …]
|
H A D | hif.h | 132 struct wilc; 211 void wilc_scan_complete_received(struct wilc *wilc, u8 *buffer, u32 length); 212 void wilc_network_info_received(struct wilc *wilc, u8 *buffer, u32 length); 213 void wilc_gnrl_async_info_received(struct wilc *wilc, u8 *buffer, u32 length);
|
H A D | hif.c | 79 if (!msg->vif || !msg->vif->wilc || !msg->vif->wilc->hif_workqueue) in wilc_enqueue_work() 82 if (!queue_work(msg->vif->wilc->hif_workqueue, &msg->work)) in wilc_enqueue_work() 89 * special purpose in wilc device, so we add 1 to the index to starts from 1. 97 /* We need to minus 1 from idx which is from wilc device to get real index 98 * of wilc->vif[], because we add 1 when pass to wilc device in the function 102 static struct wilc_vif *wilc_get_vif_from_idx(struct wilc *wilc, int idx) in wilc_get_vif_from_idx() argument 110 wilc_for_each_vif(wilc, vif) { in wilc_get_vif_from_idx() 1550 mutex_lock(&vif->wilc->deinit_lock); in wilc_deinit() 1567 mutex_unlock(&vif->wilc->deinit_lock); in wilc_deinit() 1571 void wilc_network_info_received(struct wilc *wilc, u8 *buffer, u32 length) in wilc_network_info_received() argument [all …]
|
H A D | mon.c | 37 /* Get WILC header */ in wilc_wfi_monitor_rx() 217 struct net_device *wilc_wfi_init_mon_interface(struct wilc *wl, in wilc_wfi_init_mon_interface() 248 void wilc_wfi_deinit_mon_interface(struct wilc *wl, bool rtnl_locked) in wilc_wfi_deinit_mon_interface()
|
/linux/Documentation/devicetree/bindings/net/wireless/ |
H A D | microchip,wilc1000.yaml | 7 title: Microchip WILC wireless 15 describes the binding to connect wilc devices.
|
/linux/arch/arm/boot/dts/microchip/ |
H A D | at91-sama5d27_wlsom1.dtsi | 386 wilc: wifi@0 { label
|