/drivers/net/wimax/ |
H A D | Makefile | 1 obj-$(CONFIG_WIMAX_I2400M) += i2400m/
|
/drivers/net/wimax/i2400m/ |
H A D | driver.c | 24 * See i2400m.h for driver documentation. This contains helpers for 44 * i2400m->bus_setup() 52 * i2400m->bus_dev_start() 60 * i2400m->bus_dev_stop() 62 * i2400m->bus_release() 66 #include "i2400m.h" 68 #include <linux/wimax/i2400m.h> 107 * For the i2400m, this is an L3L4 message, as specified in 108 * include/linux/wimax/i2400m.h, and thus prefixed with a 'struct 116 * In the i2400m, message 132 struct i2400m *i2400m = wimax_dev_to_i2400m(wimax_dev); local 181 struct i2400m *i2400m = wimax_dev_to_i2400m(wimax_dev); local 218 i2400m_check_mac_addr(struct i2400m *i2400m) argument 284 __i2400m_dev_start(struct i2400m *i2400m, enum i2400m_bri flags) argument 373 i2400m_dev_start(struct i2400m *i2400m, enum i2400m_bri bm_flags) argument 402 __i2400m_dev_stop(struct i2400m *i2400m) argument 437 i2400m_dev_stop(struct i2400m *i2400m) argument 468 struct i2400m *i2400m = local 501 i2400m_pre_reset(struct i2400m *i2400m) argument 532 i2400m_post_reset(struct i2400m *i2400m) argument 599 struct i2400m *i2400m = container_of(ws, struct i2400m, reset_ws); local 695 i2400m_dev_reset_handle(struct i2400m *i2400m, const char *reason) argument 711 struct i2400m *i2400m = container_of(ws, struct i2400m, recovery_ws); local 741 i2400m_error_recovery(struct i2400m *i2400m) argument 756 i2400m_bm_buf_alloc(struct i2400m *i2400m) argument 780 i2400m_bm_buf_free(struct i2400m *i2400m) argument 792 i2400m_init(struct i2400m *i2400m) argument 830 i2400m_reset(struct i2400m *i2400m, enum i2400m_reset_type rt) argument 859 i2400m_setup(struct i2400m *i2400m, enum i2400m_bri bm_flags) argument 964 i2400m_release(struct i2400m *i2400m) argument [all...] |
H A D | tx.c | 54 * The format for sending/receiving data to/from the i2400m is 79 * multiple of i2400m->bus_tx_block_size (as defined by the bus layer). 84 * Open: it is marked as active (i2400m->tx_msg is valid) and we 90 * length is aligned to i2400m->bus_tx_block_size (as set by the 135 * - The whole message has to be padded to i2400m->bus_tx_block_size; 234 * i2400m->bus_tx_kick() 236 * Now i2400m->bus_tx_kick() is the the bus-specific driver backend 239 * i2400m->bus_tx_kick() 249 #include "i2400m.h" 315 * i2400m 323 __i2400m_tx_tail_room(struct i2400m *i2400m) argument 434 i2400m_tx_fifo_push(struct i2400m *i2400m, size_t size, size_t padding, bool try_head) argument 505 i2400m_tx_skip_tail(struct i2400m *i2400m) argument 535 i2400m_tx_fits(struct i2400m *i2400m) argument 561 i2400m_tx_new(struct i2400m *i2400m) argument 613 i2400m_tx_close(struct i2400m *i2400m) argument 715 i2400m_tx(struct i2400m *i2400m, const void *buf, size_t buf_len, enum i2400m_pt pl_type) argument 839 i2400m_tx_msg_get(struct i2400m *i2400m, size_t *bus_size) argument 932 i2400m_tx_msg_sent(struct i2400m *i2400m) argument 965 i2400m_tx_setup(struct i2400m *i2400m) argument 1006 i2400m_tx_release(struct i2400m *i2400m) argument [all...] |
H A D | i2400m.h | 43 * The i2400m driver is split in the following two major parts: 55 * i2400m-BUSNAME.h 104 * (include/linux/wimax/i2400m.h); these can be also used by user 114 * &struct i2400m at the top. 116 * On probe, it needs to fill the i2400m members marked as [fill], as 117 * well as i2400m->wimax_dev.net_dev and call i2400m_setup(). The 118 * i2400m driver will only register with the WiMAX and network stacks; 126 * i2400m->bus_setup() 130 * i2400m->bus_dev_start() 139 * i2400m 566 struct i2400m { struct 818 i2400m_debugfs_add(struct i2400m *i2400m) argument 822 i2400m_debugfs_rm(struct i2400m *i2400m) argument 863 i2400m_get(struct i2400m *i2400m) argument 870 i2400m_put(struct i2400m *i2400m) argument 897 i2400m_dev(struct i2400m *i2400m) argument 939 i2400m_le_v1_3(struct i2400m *i2400m) argument 946 i2400m_ge_v1_4(struct i2400m *i2400m) argument [all...] |
H A D | debugfs.c | 30 #include "i2400m.h" 39 struct i2400m *i2400m = data; local 40 *val = netif_queue_stopped(i2400m->wimax_dev.net_dev); 50 const char *name, struct dentry *parent, struct i2400m *i2400m) 52 return debugfs_create_file(name, 0400, parent, i2400m, 67 struct i2400m *i2400m = filp->private_data; local 75 spin_lock_irqsave(&i2400m 49 debugfs_create_netdev_queue_stopped( const char *name, struct dentry *parent, struct i2400m *i2400m) argument 91 struct i2400m *i2400m = filp->private_data; local 121 struct i2400m *i2400m = filp->private_data; local 144 struct i2400m *i2400m = filp->private_data; local 174 struct i2400m *i2400m = data; local 185 debugfs_create_i2400m_suspend( const char *name, struct dentry *parent, struct i2400m *i2400m) argument 203 struct i2400m *i2400m = data; local 223 debugfs_create_i2400m_reset( const char *name, struct dentry *parent, struct i2400m *i2400m) argument 239 i2400m_debugfs_add(struct i2400m *i2400m) argument 368 i2400m_debugfs_rm(struct i2400m *i2400m) argument [all...] |
H A D | netdev.c | 25 * This implements an ethernet device for the i2400m. 80 #include "i2400m.h" 104 struct i2400m *i2400m = net_dev_to_i2400m(net_dev); local 105 struct device *dev = i2400m_dev(i2400m); 107 d_fnstart(3, dev, "(net_dev %p [i2400m %p])\n", net_dev, i2400m); 109 mutex_lock(&i2400m->init_mutex); 110 if (i2400m->updown) 114 mutex_unlock(&i2400m 124 struct i2400m *i2400m = net_dev_to_i2400m(net_dev); local 156 struct i2400m *i2400m = container_of(ws, struct i2400m, wake_tx_ws); local 236 i2400m_net_wake_stop(struct i2400m *i2400m) argument 275 i2400m_net_wake_tx(struct i2400m *i2400m, struct net_device *net_dev, struct sk_buff *skb) argument 328 i2400m_net_tx(struct i2400m *i2400m, struct net_device *net_dev, struct sk_buff *skb) argument 371 struct i2400m *i2400m = net_dev_to_i2400m(net_dev); local 401 struct i2400m *i2400m = net_dev_to_i2400m(net_dev); local 441 struct i2400m *i2400m = net_dev_to_i2400m(net_dev); local 487 i2400m_net_rx(struct i2400m *i2400m, struct sk_buff *skb_rx, unsigned i, const void *buf, int buf_len) argument 552 i2400m_net_erx(struct i2400m *i2400m, struct sk_buff *skb, enum i2400m_cs cs) argument 599 struct i2400m *i2400m = net_dev_to_i2400m(net_dev); local [all...] |
H A D | fw.c | 144 * i2400m->bus_bm_cmd_send() 145 * i2400m->bus_bm_wait_for_ack 161 #include "i2400m.h" 324 /* parse command line options from i2400m.barkers */ 341 "i2400m.barkers value '%s' as " 375 * barker, this function will set i2400m->barker to point to the right 384 int i2400m_is_boot_barker(struct i2400m *i2400m, argument 388 struct device *dev = i2400m_dev(i2400m); 398 if (i2400m 453 __i2400m_bm_ack_verify(struct i2400m *i2400m, int opcode, struct i2400m_bootrom_header *ack, size_t ack_size, int flags) argument 583 i2400m_bm_cmd(struct i2400m *i2400m, const struct i2400m_bootrom_header *cmd, size_t cmd_size, struct i2400m_bootrom_header *ack, size_t ack_size, int flags) argument 646 i2400m_download_chunk(struct i2400m *i2400m, const void *chunk, size_t __chunk_len, unsigned long addr, unsigned int direct, unsigned int do_csum) argument 701 i2400m_dnload_bcf(struct i2400m *i2400m, const struct i2400m_bcf_hdr *bcf, size_t bcf_len) argument 771 i2400m_boot_is_signed(struct i2400m *i2400m) argument 789 i2400m_dnload_finalize(struct i2400m *i2400m, const struct i2400m_bcf_hdr *bcf_hdr, const struct i2400m_bcf_hdr *bcf, size_t offset) argument 883 i2400m_bootrom_init(struct i2400m *i2400m, enum i2400m_bri flags) argument 1025 i2400m_read_mac_addr(struct i2400m *i2400m) argument 1073 i2400m_dnload_init_nonsigned(struct i2400m *i2400m) argument 1111 i2400m_dnload_init_signed(struct i2400m *i2400m, const struct i2400m_bcf_hdr *bcf_hdr) argument 1145 i2400m_dnload_init(struct i2400m *i2400m, const struct i2400m_bcf_hdr *bcf_hdr) argument 1187 i2400m_fw_hdr_check(struct i2400m *i2400m, const struct i2400m_bcf_hdr *bcf_hdr, size_t index, size_t offset) argument 1256 i2400m_fw_check(struct i2400m *i2400m, const void *bcf, size_t bcf_size) argument 1323 i2400m_bcf_hdr_match(struct i2400m *i2400m, const struct i2400m_bcf_hdr *bcf_hdr) argument 1340 i2400m_bcf_hdr_find(struct i2400m *i2400m) argument 1385 i2400m_fw_dnload(struct i2400m *i2400m, const struct i2400m_bcf_hdr *bcf, size_t fw_size, enum i2400m_bri flags) argument 1480 i2400m_fw_bootstrap(struct i2400m *i2400m, const struct firmware *fw, enum i2400m_bri flags) argument 1550 i2400m_dev_bootstrap(struct i2400m *i2400m, enum i2400m_bri flags) argument 1604 i2400m_fw_cache(struct i2400m *i2400m) argument 1645 i2400m_fw_uncache(struct i2400m *i2400m) argument [all...] |
H A D | rx.c | 154 #include "i2400m.h" 176 * Goes over the list of queued reports in i2400m->rx_reports and 179 * NOTE: refcounts on i2400m are not needed because we flush the 180 * workqueue this runs on (i2400m->work_queue) before destroying 181 * i2400m. 185 struct i2400m *i2400m = container_of(ws, struct i2400m, rx_report_ws); local 186 struct device *dev = i2400m_dev(i2400m); 192 spin_lock_irqsave(&i2400m 214 i2400m_report_hook_flush(struct i2400m *i2400m) argument 243 i2400m_report_hook_queue(struct i2400m *i2400m, struct sk_buff *skb_rx, const void *l3l4_hdr, size_t size) argument 286 i2400m_rx_ctl_ack(struct i2400m *i2400m, const void *payload, size_t size) argument 358 i2400m_rx_ctl(struct i2400m *i2400m, struct sk_buff *skb_rx, const void *payload, size_t size) argument 434 i2400m_rx_trace(struct i2400m *i2400m, const void *payload, size_t size) argument 505 __i2400m_roq_index(struct i2400m *i2400m, struct i2400m_roq *roq) argument 553 i2400m_roq_log_entry_print(struct i2400m *i2400m, unsigned index, unsigned e_index, struct i2400m_roq_log_entry *e) argument 588 i2400m_roq_log_add(struct i2400m *i2400m, struct i2400m_roq *roq, enum i2400m_ro_type type, unsigned ws, unsigned count, unsigned sn, unsigned nsn, unsigned new_ws) argument 617 i2400m_roq_log_dump(struct i2400m *i2400m, struct i2400m_roq *roq) argument 657 __i2400m_roq_queue(struct i2400m *i2400m, struct i2400m_roq *roq, struct sk_buff *skb, unsigned sn, unsigned nsn) argument 741 __i2400m_roq_update_ws(struct i2400m *i2400m, struct i2400m_roq *roq, unsigned sn) argument 786 i2400m_roq_reset(struct i2400m *i2400m, struct i2400m_roq *roq) argument 821 i2400m_roq_queue(struct i2400m *i2400m, struct i2400m_roq *roq, struct sk_buff * skb, unsigned lbn) argument 855 i2400m_roq_update_ws(struct i2400m *i2400m, struct i2400m_roq *roq, unsigned sn) argument 884 i2400m_roq_queue_update_ws(struct i2400m *i2400m, struct i2400m_roq *roq, struct sk_buff * skb, unsigned sn) argument 930 struct i2400m *i2400m local 980 i2400m_rx_edata(struct i2400m *i2400m, struct sk_buff *skb_rx, unsigned single_last, const void *payload, size_t size) argument 1097 i2400m_rx_payload(struct i2400m *i2400m, struct sk_buff *skb_rx, unsigned single_last, const struct i2400m_pld *pld, const void *payload) argument 1143 i2400m_rx_msg_hdr_check(struct i2400m *i2400m, const struct i2400m_msg_hdr *msg_hdr, size_t buf_size) argument 1188 i2400m_rx_pl_descr_check(struct i2400m *i2400m, const struct i2400m_pld *pld, size_t pl_itr, size_t buf_size) argument 1244 i2400m_rx(struct i2400m *i2400m, struct sk_buff *skb) argument 1311 i2400m_unknown_barker(struct i2400m *i2400m, const void *buf, size_t size) argument 1346 i2400m_rx_setup(struct i2400m *i2400m) argument 1385 i2400m_rx_release(struct i2400m *i2400m) argument [all...] |
H A D | usb-tx.c | 42 * Takes the TX messages in the i2400m's driver TX FIFO and sends them 71 #include "i2400m-usb.h" 91 struct i2400m *i2400m = &i2400mu->i2400m; local 156 (void *) tx_msg - i2400m->tx_buf, 181 struct i2400m *i2400m = &i2400mu->i2400m; local 189 spin_lock_irqsave(&i2400m 229 i2400mu_bus_tx_kick(struct i2400m *i2400m) argument 243 struct i2400m *i2400m = &i2400mu->i2400m; local 261 struct i2400m *i2400m = &i2400mu->i2400m; local [all...] |
H A D | Makefile | 2 obj-$(CONFIG_WIMAX_I2400M) += i2400m.o 3 obj-$(CONFIG_WIMAX_I2400M_USB) += i2400m-usb.o 5 i2400m-y := \ 15 i2400m-$(CONFIG_DEBUG_FS) += debugfs.o 17 i2400m-usb-y := \
|
H A D | op-rfkill.c | 35 #include "i2400m.h" 36 #include <linux/wimax/i2400m.h> 45 * Return true if the i2400m radio is in the requested wimax_rf_state state 49 int i2400m_radio_is(struct i2400m *i2400m, enum wimax_rf_state state) argument 52 return i2400m->state == I2400M_SS_RF_OFF 53 || i2400m->state == I2400M_SS_RF_SHUTDOWN; 56 return i2400m->state != I2400M_SS_RF_OFF 57 && i2400m->state != I2400M_SS_RF_SHUTDOWN; 79 * NOTE: the i2400m ha 88 struct i2400m *i2400m = wimax_dev_to_i2400m(wimax_dev); local 165 i2400m_report_tlv_rf_switches_status( struct i2400m *i2400m, const struct i2400m_tlv_rf_switches_status *rfss) argument [all...] |
H A D | control.c | 77 #include "i2400m.h" 80 #include <linux/wimax/i2400m.h> 144 * @i2400m: device instance 154 * while (tlv_itr = i2400m_tlv_buffer_walk(i2400m, buf, size, tlv_itr)) { 162 struct i2400m *i2400m, 166 struct device *dev = i2400m_dev(i2400m); 211 * @i2400m: device descriptor 225 struct i2400m *i2400m, 161 i2400m_tlv_buffer_walk( struct i2400m *i2400m, const void *tlv_buf, size_t buf_size, const struct i2400m_tlv_hdr *tlv_pos) argument 224 i2400m_tlv_find( struct i2400m *i2400m, const struct i2400m_tlv_hdr *tlv_hdr, size_t size, enum i2400m_tlv tlv_type, ssize_t tlv_size) argument 311 i2400m_report_tlv_system_state(struct i2400m *i2400m, const struct i2400m_tlv_system_state *ss) argument 387 i2400m_report_tlv_media_status(struct i2400m *i2400m, const struct i2400m_tlv_media_status *ms) argument 432 i2400m_report_state_parse_tlv(struct i2400m *i2400m, const struct i2400m_tlv_hdr *tlv, const char *tag) argument 480 i2400m_report_state_hook(struct i2400m *i2400m, const struct i2400m_l3l4_hdr *l3l4_hdr, size_t size, const char *tag) argument 513 i2400m_report_hook(struct i2400m *i2400m, const struct i2400m_l3l4_hdr *l3l4_hdr, size_t size) argument 563 i2400m_msg_ack_hook(struct i2400m *i2400m, const struct i2400m_l3l4_hdr *l3l4_hdr, size_t size) argument 598 i2400m_msg_size_check(struct i2400m *i2400m, const struct i2400m_l3l4_hdr *l3l4_hdr, size_t msg_size) argument 640 i2400m_msg_to_dev_cancel_wait(struct i2400m *i2400m, int code) argument 707 i2400m_msg_to_dev(struct i2400m *i2400m, const void *buf, size_t buf_len) argument 863 i2400m_cmd_enter_powersave(struct i2400m *i2400m) argument 927 i2400m_get_device_info(struct i2400m *i2400m) argument 1009 i2400m_firmware_check(struct i2400m *i2400m) argument 1093 i2400m_cmd_exit_idle(struct i2400m *i2400m) argument 1141 i2400m_cmd_get_state(struct i2400m *i2400m) argument 1194 i2400m_set_init_config(struct i2400m *i2400m, const struct i2400m_tlv_hdr **arg, size_t args) argument 1282 i2400m_set_idle_timeout(struct i2400m *i2400m, unsigned msecs) argument 1348 i2400m_dev_initialize(struct i2400m *i2400m) argument 1430 i2400m_dev_shutdown(struct i2400m *i2400m) argument [all...] |
H A D | usb.c | 25 * See i2400m-usb.h for a general description of this driver. 66 #include "i2400m-usb.h" 67 #include <linux/wimax/i2400m.h> 86 #define I2400MU_FW_FILE_NAME_v1_5 "i2400m-fw-usb-1.5.sbcf" 88 #define I2400MU_FW_FILE_NAME_v1_4 "i2400m-fw-usb-1.4.sbcf" 102 int i2400mu_bus_dev_start(struct i2400m *i2400m) argument 105 struct i2400mu *i2400mu = container_of(i2400m, struct i2400mu, i2400m); 108 d_fnstart(3, dev, "(i2400m 132 i2400mu_bus_dev_stop(struct i2400m *i2400m) argument 275 i2400mu_bus_reset(struct i2400m *i2400m, enum i2400m_reset_type rt) argument 345 struct i2400m *i2400m = net_dev_to_i2400m(net_dev); local 363 struct i2400m *i2400m = net_dev_to_i2400m(net_dev); local 466 struct i2400m *i2400m; local 577 struct i2400m *i2400m = &i2400mu->i2400m; local 637 struct i2400m *i2400m = &i2400mu->i2400m; local 696 struct i2400m *i2400m = &i2400mu->i2400m; local 721 struct i2400m *i2400m = &i2400mu->i2400m; local [all...] |
H A D | usb-fw.c | 77 #include "i2400m-usb.h" 175 * buffers), we copy the command to i2400m->bm_cmd_buf and send it from 181 ssize_t i2400mu_bus_bm_cmd_send(struct i2400m *i2400m, argument 186 struct device *dev = i2400m_dev(i2400m); 187 struct i2400mu *i2400mu = container_of(i2400m, struct i2400mu, i2400m); 192 d_fnstart(8, dev, "(i2400m %p cmd %p size %zu)\n", 193 i2400m, _cmd, cmd_size); 197 if (_cmd != i2400m 248 struct i2400m *i2400m = &i2400mu->i2400m; local 276 i2400mu_bus_bm_wait_for_ack(struct i2400m *i2400m, struct i2400m_bootrom_header *_ack, size_t ack_size) argument [all...] |
H A D | sysfs.c | 28 #include "i2400m.h" 47 struct i2400m *i2400m = net_dev_to_i2400m(to_net_dev(dev)); local 59 result = i2400m_set_idle_timeout(i2400m, val);
|
H A D | i2400m-usb.h | 3 * USB-specific i2400m driver definitions 41 * This driver implements the bus-specific part of the i2400m for 42 * USB. Check i2400m.h for a generic driver description. 53 * through the i2400m->bus_tx_kick() callback 67 #include "i2400m.h" 163 * struct i2400mu - descriptor for a USB connected i2400m 165 * @i2400m: bus-generic i2400m implementation; has to be first (see 166 * it's documentation in i2400m.h). 223 struct i2400m i2400 member in struct:i2400mu [all...] |
H A D | usb-rx.c | 79 * i2400m_rx() Send data to generic i2400m RX handling 88 #include "i2400m-usb.h" 319 * i2400mu_rx()). Once received, it is passed to the generic i2400m RX 335 struct i2400m *i2400m = &i2400mu->i2400m; local 337 struct net_device *net_dev = i2400m->wimax_dev.net_dev; 344 spin_lock_irqsave(&i2400m->rx_lock, flags); 347 spin_unlock_irqrestore(&i2400m->rx_lock, flags); 382 /* Deliver the message to the generic i2400m cod 420 struct i2400m *i2400m = &i2400mu->i2400m; local 433 struct i2400m *i2400m = &i2400mu->i2400m; local 452 struct i2400m *i2400m = &i2400mu->i2400m; local [all...] |
H A D | debug-levels.h | 3 * Debug levels control file for the i2400m module 27 #define D_MODULENAME i2400m
|
H A D | usb-notif.c | 60 #include "i2400m-usb.h" 87 struct i2400m *i2400m = &i2400mu->i2400m; local 89 d_fnstart(4, dev, "(i2400m %p buf %p buf_len %zu)\n", 100 ret = i2400m_is_boot_barker(i2400m, buf, buf_len); 102 ret = i2400m_dev_reset_handle(i2400m, "device rebooted"); 104 i2400m_unknown_barker(i2400m, buf, buf_len); 107 d_fnend(4, dev, "(i2400m %p buf %p buf_len %zu) = %d\n", 187 * @i2400m [all...] |