i2400m 162 drivers/net/wimax/i2400m/control.c struct i2400m *i2400m, i2400m 166 drivers/net/wimax/i2400m/control.c struct device *dev = i2400m_dev(i2400m); i2400m 225 drivers/net/wimax/i2400m/control.c struct i2400m *i2400m, i2400m 230 drivers/net/wimax/i2400m/control.c struct device *dev = i2400m_dev(i2400m); i2400m 232 drivers/net/wimax/i2400m/control.c while ((tlv = i2400m_tlv_buffer_walk(i2400m, tlv_hdr, size, tlv))) { i2400m 311 drivers/net/wimax/i2400m/control.c void i2400m_report_tlv_system_state(struct i2400m *i2400m, i2400m 314 drivers/net/wimax/i2400m/control.c struct device *dev = i2400m_dev(i2400m); i2400m 315 drivers/net/wimax/i2400m/control.c struct wimax_dev *wimax_dev = &i2400m->wimax_dev; i2400m 318 drivers/net/wimax/i2400m/control.c d_fnstart(3, dev, "(i2400m %p ss %p [%u])\n", i2400m, ss, i2400m_state); i2400m 320 drivers/net/wimax/i2400m/control.c if (i2400m->state != i2400m_state) { i2400m 321 drivers/net/wimax/i2400m/control.c i2400m->state = i2400m_state; i2400m 322 drivers/net/wimax/i2400m/control.c wake_up_all(&i2400m->state_wq); i2400m 365 drivers/net/wimax/i2400m/control.c i2400m_reset(i2400m, I2400M_RT_WARM); i2400m 369 drivers/net/wimax/i2400m/control.c i2400m, ss, i2400m_state); i2400m 388 drivers/net/wimax/i2400m/control.c void i2400m_report_tlv_media_status(struct i2400m *i2400m, i2400m 391 drivers/net/wimax/i2400m/control.c struct device *dev = i2400m_dev(i2400m); i2400m 392 drivers/net/wimax/i2400m/control.c struct wimax_dev *wimax_dev = &i2400m->wimax_dev; i2400m 396 drivers/net/wimax/i2400m/control.c d_fnstart(3, dev, "(i2400m %p ms %p [%u])\n", i2400m, ms, status); i2400m 418 drivers/net/wimax/i2400m/control.c i2400m, ms, status); i2400m 433 drivers/net/wimax/i2400m/control.c void i2400m_report_state_parse_tlv(struct i2400m *i2400m, i2400m 437 drivers/net/wimax/i2400m/control.c struct device *dev = i2400m_dev(i2400m); i2400m 448 drivers/net/wimax/i2400m/control.c i2400m_report_tlv_system_state(i2400m, ss); i2400m 457 drivers/net/wimax/i2400m/control.c i2400m_report_tlv_rf_switches_status(i2400m, rfss); i2400m 463 drivers/net/wimax/i2400m/control.c i2400m_report_tlv_media_status(i2400m, ms); i2400m 481 drivers/net/wimax/i2400m/control.c void i2400m_report_state_hook(struct i2400m *i2400m, i2400m 485 drivers/net/wimax/i2400m/control.c struct device *dev = i2400m_dev(i2400m); i2400m 490 drivers/net/wimax/i2400m/control.c i2400m, l3l4_hdr, size, tag); i2400m 493 drivers/net/wimax/i2400m/control.c while ((tlv = i2400m_tlv_buffer_walk(i2400m, &l3l4_hdr->pl, i2400m 495 drivers/net/wimax/i2400m/control.c i2400m_report_state_parse_tlv(i2400m, tlv, tag); i2400m 497 drivers/net/wimax/i2400m/control.c i2400m, l3l4_hdr, size, tag); i2400m 514 drivers/net/wimax/i2400m/control.c void i2400m_report_hook(struct i2400m *i2400m, i2400m 517 drivers/net/wimax/i2400m/control.c struct device *dev = i2400m_dev(i2400m); i2400m 521 drivers/net/wimax/i2400m/control.c i2400m, l3l4_hdr, size); i2400m 527 drivers/net/wimax/i2400m/control.c i2400m_report_state_hook(i2400m, i2400m 541 drivers/net/wimax/i2400m/control.c i2400m_cmd_enter_powersave(i2400m); i2400m 547 drivers/net/wimax/i2400m/control.c i2400m, l3l4_hdr, size); i2400m 564 drivers/net/wimax/i2400m/control.c static void i2400m_msg_ack_hook(struct i2400m *i2400m, i2400m 569 drivers/net/wimax/i2400m/control.c struct device *dev = i2400m_dev(i2400m); i2400m 598 drivers/net/wimax/i2400m/control.c int i2400m_msg_size_check(struct i2400m *i2400m, i2400m 603 drivers/net/wimax/i2400m/control.c struct device *dev = i2400m_dev(i2400m); i2400m 606 drivers/net/wimax/i2400m/control.c i2400m, l3l4_hdr, msg_size); i2400m 625 drivers/net/wimax/i2400m/control.c i2400m, l3l4_hdr, msg_size, result); i2400m 640 drivers/net/wimax/i2400m/control.c void i2400m_msg_to_dev_cancel_wait(struct i2400m *i2400m, int code) i2400m 645 drivers/net/wimax/i2400m/control.c spin_lock_irqsave(&i2400m->rx_lock, flags); i2400m 646 drivers/net/wimax/i2400m/control.c ack_skb = i2400m->ack_skb; i2400m 649 drivers/net/wimax/i2400m/control.c i2400m->ack_skb = ERR_PTR(code); i2400m 650 drivers/net/wimax/i2400m/control.c spin_unlock_irqrestore(&i2400m->rx_lock, flags); i2400m 707 drivers/net/wimax/i2400m/control.c struct sk_buff *i2400m_msg_to_dev(struct i2400m *i2400m, i2400m 711 drivers/net/wimax/i2400m/control.c struct device *dev = i2400m_dev(i2400m); i2400m 721 drivers/net/wimax/i2400m/control.c i2400m, buf, buf_len); i2400m 724 drivers/net/wimax/i2400m/control.c if (i2400m->boot_mode) i2400m 729 drivers/net/wimax/i2400m/control.c result = i2400m_msg_size_check(i2400m, msg_l3l4_hdr, buf_len); i2400m 739 drivers/net/wimax/i2400m/control.c mutex_lock(&i2400m->msg_mutex); i2400m 740 drivers/net/wimax/i2400m/control.c spin_lock_irqsave(&i2400m->rx_lock, flags); i2400m 741 drivers/net/wimax/i2400m/control.c i2400m->ack_skb = ERR_PTR(-EINPROGRESS); i2400m 742 drivers/net/wimax/i2400m/control.c spin_unlock_irqrestore(&i2400m->rx_lock, flags); i2400m 743 drivers/net/wimax/i2400m/control.c init_completion(&i2400m->msg_completion); i2400m 744 drivers/net/wimax/i2400m/control.c result = i2400m_tx(i2400m, buf, buf_len, I2400M_PT_CTRL); i2400m 762 drivers/net/wimax/i2400m/control.c if (unlikely(i2400m->trace_msg_from_user)) i2400m 763 drivers/net/wimax/i2400m/control.c wimax_msg(&i2400m->wimax_dev, "echo", buf, buf_len, GFP_KERNEL); i2400m 769 drivers/net/wimax/i2400m/control.c &i2400m->msg_completion, ack_timeout); i2400m 774 drivers/net/wimax/i2400m/control.c i2400m_msg_to_dev_cancel_wait(i2400m, result); i2400m 779 drivers/net/wimax/i2400m/control.c i2400m_msg_to_dev_cancel_wait(i2400m, result); i2400m 785 drivers/net/wimax/i2400m/control.c spin_lock_irqsave(&i2400m->rx_lock, flags); i2400m 786 drivers/net/wimax/i2400m/control.c ack_skb = i2400m->ack_skb; i2400m 791 drivers/net/wimax/i2400m/control.c i2400m->ack_skb = NULL; i2400m 792 drivers/net/wimax/i2400m/control.c spin_unlock_irqrestore(&i2400m->rx_lock, flags); i2400m 798 drivers/net/wimax/i2400m/control.c if (unlikely(i2400m->trace_msg_from_user)) i2400m 799 drivers/net/wimax/i2400m/control.c wimax_msg(&i2400m->wimax_dev, "echo", i2400m 801 drivers/net/wimax/i2400m/control.c result = i2400m_msg_size_check(i2400m, ack_l3l4_hdr, ack_len); i2400m 813 drivers/net/wimax/i2400m/control.c i2400m_msg_ack_hook(i2400m, ack_l3l4_hdr, ack_len); i2400m 814 drivers/net/wimax/i2400m/control.c mutex_unlock(&i2400m->msg_mutex); i2400m 816 drivers/net/wimax/i2400m/control.c i2400m, buf, buf_len, ack_skb); i2400m 825 drivers/net/wimax/i2400m/control.c mutex_unlock(&i2400m->msg_mutex); i2400m 828 drivers/net/wimax/i2400m/control.c i2400m, buf, buf_len, result); i2400m 863 drivers/net/wimax/i2400m/control.c int i2400m_cmd_enter_powersave(struct i2400m *i2400m) i2400m 866 drivers/net/wimax/i2400m/control.c struct device *dev = i2400m_dev(i2400m); i2400m 882 drivers/net/wimax/i2400m/control.c ack_skb = i2400m_msg_to_dev(i2400m, cmd, sizeof(*cmd)); i2400m 927 drivers/net/wimax/i2400m/control.c struct sk_buff *i2400m_get_device_info(struct i2400m *i2400m) i2400m 930 drivers/net/wimax/i2400m/control.c struct device *dev = i2400m_dev(i2400m); i2400m 947 drivers/net/wimax/i2400m/control.c ack_skb = i2400m_msg_to_dev(i2400m, cmd, sizeof(*cmd)); i2400m 961 drivers/net/wimax/i2400m/control.c tlv = i2400m_tlv_find(i2400m, ack->pl, ack_len - sizeof(*ack), i2400m 1009 drivers/net/wimax/i2400m/control.c int i2400m_firmware_check(struct i2400m *i2400m) i2400m 1012 drivers/net/wimax/i2400m/control.c struct device *dev = i2400m_dev(i2400m); i2400m 1030 drivers/net/wimax/i2400m/control.c ack_skb = i2400m_msg_to_dev(i2400m, cmd, sizeof(*cmd)); i2400m 1045 drivers/net/wimax/i2400m/control.c tlv = i2400m_tlv_find(i2400m, ack->pl, ack_len - sizeof(*ack), i2400m 1068 drivers/net/wimax/i2400m/control.c i2400m->fw_version = major << 16 | minor; i2400m 1093 drivers/net/wimax/i2400m/control.c int i2400m_cmd_exit_idle(struct i2400m *i2400m) i2400m 1096 drivers/net/wimax/i2400m/control.c struct device *dev = i2400m_dev(i2400m); i2400m 1109 drivers/net/wimax/i2400m/control.c ack_skb = i2400m_msg_to_dev(i2400m, cmd, sizeof(*cmd)); i2400m 1141 drivers/net/wimax/i2400m/control.c static int i2400m_cmd_get_state(struct i2400m *i2400m) i2400m 1144 drivers/net/wimax/i2400m/control.c struct device *dev = i2400m_dev(i2400m); i2400m 1159 drivers/net/wimax/i2400m/control.c ack_skb = i2400m_msg_to_dev(i2400m, cmd, sizeof(*cmd)); i2400m 1173 drivers/net/wimax/i2400m/control.c i2400m_report_state_hook(i2400m, ack, ack_len - sizeof(*ack), i2400m 1194 drivers/net/wimax/i2400m/control.c static int i2400m_set_init_config(struct i2400m *i2400m, i2400m 1199 drivers/net/wimax/i2400m/control.c struct device *dev = i2400m_dev(i2400m); i2400m 1207 drivers/net/wimax/i2400m/control.c d_fnstart(3, dev, "(i2400m %p arg %p args %zu)\n", i2400m, arg, args); i2400m 1240 drivers/net/wimax/i2400m/control.c ack_skb = i2400m_msg_to_dev(i2400m, buf, sizeof(*cmd) + argsize); i2400m 1259 drivers/net/wimax/i2400m/control.c i2400m, arg, args, result); i2400m 1282 drivers/net/wimax/i2400m/control.c int i2400m_set_idle_timeout(struct i2400m *i2400m, unsigned msecs) i2400m 1285 drivers/net/wimax/i2400m/control.c struct device *dev = i2400m_dev(i2400m); i2400m 1296 drivers/net/wimax/i2400m/control.c if (i2400m_le_v1_3(i2400m)) i2400m 1311 drivers/net/wimax/i2400m/control.c ack_skb = i2400m_msg_to_dev(i2400m, cmd, sizeof(*cmd)); i2400m 1348 drivers/net/wimax/i2400m/control.c int i2400m_dev_initialize(struct i2400m *i2400m) i2400m 1351 drivers/net/wimax/i2400m/control.c struct device *dev = i2400m_dev(i2400m); i2400m 1359 drivers/net/wimax/i2400m/control.c d_fnstart(3, dev, "(i2400m %p)\n", i2400m); i2400m 1364 drivers/net/wimax/i2400m/control.c if (i2400m_le_v1_3(i2400m)) { i2400m 1381 drivers/net/wimax/i2400m/control.c if (i2400m_ge_v1_4(i2400m)) { i2400m 1392 drivers/net/wimax/i2400m/control.c if (i2400m->rx_reorder) { i2400m 1401 drivers/net/wimax/i2400m/control.c result = i2400m_set_init_config(i2400m, args, argc); i2400m 1411 drivers/net/wimax/i2400m/control.c result = i2400m_cmd_get_state(i2400m); i2400m 1415 drivers/net/wimax/i2400m/control.c d_fnend(3, dev, "(i2400m %p) = %d\n", i2400m, result); i2400m 1430 drivers/net/wimax/i2400m/control.c void i2400m_dev_shutdown(struct i2400m *i2400m) i2400m 1432 drivers/net/wimax/i2400m/control.c struct device *dev = i2400m_dev(i2400m); i2400m 1434 drivers/net/wimax/i2400m/control.c d_fnstart(3, dev, "(i2400m %p)\n", i2400m); i2400m 1435 drivers/net/wimax/i2400m/control.c d_fnend(3, dev, "(i2400m %p) = void\n", i2400m); i2400m 13 drivers/net/wimax/i2400m/debug-levels.h #define D_MODULENAME i2400m i2400m 25 drivers/net/wimax/i2400m/debugfs.c struct i2400m *i2400m = data; i2400m 26 drivers/net/wimax/i2400m/debugfs.c *val = netif_queue_stopped(i2400m->wimax_dev.net_dev); i2400m 44 drivers/net/wimax/i2400m/debugfs.c struct i2400m *i2400m = filp->private_data; i2400m 52 drivers/net/wimax/i2400m/debugfs.c spin_lock_irqsave(&i2400m->rx_lock, flags); i2400m 54 drivers/net/wimax/i2400m/debugfs.c i2400m->rx_pl_num, i2400m->rx_pl_min, i2400m 55 drivers/net/wimax/i2400m/debugfs.c i2400m->rx_pl_max, i2400m->rx_num, i2400m 56 drivers/net/wimax/i2400m/debugfs.c i2400m->rx_size_acc, i2400m 57 drivers/net/wimax/i2400m/debugfs.c i2400m->rx_size_min, i2400m->rx_size_max); i2400m 58 drivers/net/wimax/i2400m/debugfs.c spin_unlock_irqrestore(&i2400m->rx_lock, flags); i2400m 68 drivers/net/wimax/i2400m/debugfs.c struct i2400m *i2400m = filp->private_data; i2400m 71 drivers/net/wimax/i2400m/debugfs.c spin_lock_irqsave(&i2400m->rx_lock, flags); i2400m 72 drivers/net/wimax/i2400m/debugfs.c i2400m->rx_pl_num = 0; i2400m 73 drivers/net/wimax/i2400m/debugfs.c i2400m->rx_pl_max = 0; i2400m 74 drivers/net/wimax/i2400m/debugfs.c i2400m->rx_pl_min = UINT_MAX; i2400m 75 drivers/net/wimax/i2400m/debugfs.c i2400m->rx_num = 0; i2400m 76 drivers/net/wimax/i2400m/debugfs.c i2400m->rx_size_acc = 0; i2400m 77 drivers/net/wimax/i2400m/debugfs.c i2400m->rx_size_min = UINT_MAX; i2400m 78 drivers/net/wimax/i2400m/debugfs.c i2400m->rx_size_max = 0; i2400m 79 drivers/net/wimax/i2400m/debugfs.c spin_unlock_irqrestore(&i2400m->rx_lock, flags); i2400m 98 drivers/net/wimax/i2400m/debugfs.c struct i2400m *i2400m = filp->private_data; i2400m 106 drivers/net/wimax/i2400m/debugfs.c spin_lock_irqsave(&i2400m->tx_lock, flags); i2400m 108 drivers/net/wimax/i2400m/debugfs.c i2400m->tx_pl_num, i2400m->tx_pl_min, i2400m 109 drivers/net/wimax/i2400m/debugfs.c i2400m->tx_pl_max, i2400m->tx_num, i2400m 110 drivers/net/wimax/i2400m/debugfs.c i2400m->tx_size_acc, i2400m 111 drivers/net/wimax/i2400m/debugfs.c i2400m->tx_size_min, i2400m->tx_size_max); i2400m 112 drivers/net/wimax/i2400m/debugfs.c spin_unlock_irqrestore(&i2400m->tx_lock, flags); i2400m 121 drivers/net/wimax/i2400m/debugfs.c struct i2400m *i2400m = filp->private_data; i2400m 124 drivers/net/wimax/i2400m/debugfs.c spin_lock_irqsave(&i2400m->tx_lock, flags); i2400m 125 drivers/net/wimax/i2400m/debugfs.c i2400m->tx_pl_num = 0; i2400m 126 drivers/net/wimax/i2400m/debugfs.c i2400m->tx_pl_max = 0; i2400m 127 drivers/net/wimax/i2400m/debugfs.c i2400m->tx_pl_min = UINT_MAX; i2400m 128 drivers/net/wimax/i2400m/debugfs.c i2400m->tx_num = 0; i2400m 129 drivers/net/wimax/i2400m/debugfs.c i2400m->tx_size_acc = 0; i2400m 130 drivers/net/wimax/i2400m/debugfs.c i2400m->tx_size_min = UINT_MAX; i2400m 131 drivers/net/wimax/i2400m/debugfs.c i2400m->tx_size_max = 0; i2400m 132 drivers/net/wimax/i2400m/debugfs.c spin_unlock_irqrestore(&i2400m->tx_lock, flags); i2400m 151 drivers/net/wimax/i2400m/debugfs.c struct i2400m *i2400m = data; i2400m 152 drivers/net/wimax/i2400m/debugfs.c result = i2400m_cmd_enter_powersave(i2400m); i2400m 171 drivers/net/wimax/i2400m/debugfs.c struct i2400m *i2400m = data; i2400m 177 drivers/net/wimax/i2400m/debugfs.c result = i2400m_reset(i2400m, rt); i2400m 190 drivers/net/wimax/i2400m/debugfs.c void i2400m_debugfs_add(struct i2400m *i2400m) i2400m 192 drivers/net/wimax/i2400m/debugfs.c struct dentry *dentry = i2400m->wimax_dev.debugfs_dentry; i2400m 195 drivers/net/wimax/i2400m/debugfs.c i2400m->debugfs_dentry = dentry; i2400m 206 drivers/net/wimax/i2400m/debugfs.c debugfs_create_size_t("tx_in", 0400, dentry, &i2400m->tx_in); i2400m 207 drivers/net/wimax/i2400m/debugfs.c debugfs_create_size_t("tx_out", 0400, dentry, &i2400m->tx_out); i2400m 208 drivers/net/wimax/i2400m/debugfs.c debugfs_create_u32("state", 0600, dentry, &i2400m->state); i2400m 233 drivers/net/wimax/i2400m/debugfs.c &i2400m->trace_msg_from_user); i2400m 235 drivers/net/wimax/i2400m/debugfs.c debugfs_create_file("netdev_queue_stopped", 0400, dentry, i2400m, i2400m 238 drivers/net/wimax/i2400m/debugfs.c debugfs_create_file("rx_stats", 0600, dentry, i2400m, i2400m 241 drivers/net/wimax/i2400m/debugfs.c debugfs_create_file("tx_stats", 0600, dentry, i2400m, i2400m 244 drivers/net/wimax/i2400m/debugfs.c debugfs_create_file("suspend", 0200, dentry, i2400m, i2400m 247 drivers/net/wimax/i2400m/debugfs.c debugfs_create_file("reset", 0200, dentry, i2400m, &fops_i2400m_reset); i2400m 250 drivers/net/wimax/i2400m/debugfs.c void i2400m_debugfs_rm(struct i2400m *i2400m) i2400m 252 drivers/net/wimax/i2400m/debugfs.c debugfs_remove_recursive(i2400m->debugfs_dentry); i2400m 117 drivers/net/wimax/i2400m/driver.c struct i2400m *i2400m = wimax_dev_to_i2400m(wimax_dev); i2400m 118 drivers/net/wimax/i2400m/driver.c struct device *dev = i2400m_dev(i2400m); i2400m 122 drivers/net/wimax/i2400m/driver.c "msg_len %zu genl_info %p)\n", wimax_dev, i2400m, i2400m 124 drivers/net/wimax/i2400m/driver.c ack_skb = i2400m_msg_to_dev(i2400m, msg_buf, msg_len); i2400m 128 drivers/net/wimax/i2400m/driver.c result = wimax_msg_send(&i2400m->wimax_dev, ack_skb); i2400m 131 drivers/net/wimax/i2400m/driver.c "genl_info %p) = %d\n", wimax_dev, i2400m, msg_buf, msg_len, i2400m 166 drivers/net/wimax/i2400m/driver.c struct i2400m *i2400m = wimax_dev_to_i2400m(wimax_dev); i2400m 167 drivers/net/wimax/i2400m/driver.c struct device *dev = i2400m_dev(i2400m); i2400m 174 drivers/net/wimax/i2400m/driver.c mutex_lock(&i2400m->init_mutex); i2400m 175 drivers/net/wimax/i2400m/driver.c i2400m->reset_ctx = &ctx; i2400m 176 drivers/net/wimax/i2400m/driver.c mutex_unlock(&i2400m->init_mutex); i2400m 177 drivers/net/wimax/i2400m/driver.c result = i2400m_reset(i2400m, I2400M_RT_WARM); i2400m 186 drivers/net/wimax/i2400m/driver.c mutex_lock(&i2400m->init_mutex); i2400m 187 drivers/net/wimax/i2400m/driver.c i2400m->reset_ctx = NULL; i2400m 188 drivers/net/wimax/i2400m/driver.c mutex_unlock(&i2400m->init_mutex); i2400m 203 drivers/net/wimax/i2400m/driver.c int i2400m_check_mac_addr(struct i2400m *i2400m) i2400m 206 drivers/net/wimax/i2400m/driver.c struct device *dev = i2400m_dev(i2400m); i2400m 209 drivers/net/wimax/i2400m/driver.c struct net_device *net_dev = i2400m->wimax_dev.net_dev; i2400m 211 drivers/net/wimax/i2400m/driver.c d_fnstart(3, dev, "(i2400m %p)\n", i2400m); i2400m 212 drivers/net/wimax/i2400m/driver.c skb = i2400m_get_device_info(i2400m); i2400m 244 drivers/net/wimax/i2400m/driver.c d_fnend(3, dev, "(i2400m %p) = %d\n", i2400m, result); i2400m 269 drivers/net/wimax/i2400m/driver.c int __i2400m_dev_start(struct i2400m *i2400m, enum i2400m_bri flags) i2400m 272 drivers/net/wimax/i2400m/driver.c struct wimax_dev *wimax_dev = &i2400m->wimax_dev; i2400m 274 drivers/net/wimax/i2400m/driver.c struct device *dev = i2400m_dev(i2400m); i2400m 275 drivers/net/wimax/i2400m/driver.c int times = i2400m->bus_bm_retries; i2400m 277 drivers/net/wimax/i2400m/driver.c d_fnstart(3, dev, "(i2400m %p)\n", i2400m); i2400m 279 drivers/net/wimax/i2400m/driver.c result = i2400m_dev_bootstrap(i2400m, flags); i2400m 284 drivers/net/wimax/i2400m/driver.c result = i2400m_tx_setup(i2400m); i2400m 287 drivers/net/wimax/i2400m/driver.c result = i2400m_rx_setup(i2400m); i2400m 290 drivers/net/wimax/i2400m/driver.c i2400m->work_queue = create_singlethread_workqueue(wimax_dev->name); i2400m 291 drivers/net/wimax/i2400m/driver.c if (i2400m->work_queue == NULL) { i2400m 296 drivers/net/wimax/i2400m/driver.c if (i2400m->bus_dev_start) { i2400m 297 drivers/net/wimax/i2400m/driver.c result = i2400m->bus_dev_start(i2400m); i2400m 301 drivers/net/wimax/i2400m/driver.c i2400m->ready = 1; i2400m 304 drivers/net/wimax/i2400m/driver.c queue_work(i2400m->work_queue, &i2400m->rx_report_ws); i2400m 305 drivers/net/wimax/i2400m/driver.c result = i2400m_firmware_check(i2400m); /* fw versions ok? */ i2400m 309 drivers/net/wimax/i2400m/driver.c result = i2400m_check_mac_addr(i2400m); i2400m 312 drivers/net/wimax/i2400m/driver.c result = i2400m_dev_initialize(i2400m); i2400m 321 drivers/net/wimax/i2400m/driver.c atomic_dec(&i2400m->error_recovery); i2400m 328 drivers/net/wimax/i2400m/driver.c net_dev, i2400m, result); i2400m 334 drivers/net/wimax/i2400m/driver.c i2400m->ready = 0; i2400m 336 drivers/net/wimax/i2400m/driver.c flush_workqueue(i2400m->work_queue); i2400m 337 drivers/net/wimax/i2400m/driver.c if (i2400m->bus_dev_stop) i2400m 338 drivers/net/wimax/i2400m/driver.c i2400m->bus_dev_stop(i2400m); i2400m 340 drivers/net/wimax/i2400m/driver.c destroy_workqueue(i2400m->work_queue); i2400m 342 drivers/net/wimax/i2400m/driver.c i2400m_rx_release(i2400m); i2400m 344 drivers/net/wimax/i2400m/driver.c i2400m_tx_release(i2400m); i2400m 352 drivers/net/wimax/i2400m/driver.c net_dev, i2400m, result); i2400m 358 drivers/net/wimax/i2400m/driver.c int i2400m_dev_start(struct i2400m *i2400m, enum i2400m_bri bm_flags) i2400m 361 drivers/net/wimax/i2400m/driver.c mutex_lock(&i2400m->init_mutex); /* Well, start the device */ i2400m 362 drivers/net/wimax/i2400m/driver.c if (i2400m->updown == 0) { i2400m 363 drivers/net/wimax/i2400m/driver.c result = __i2400m_dev_start(i2400m, bm_flags); i2400m 365 drivers/net/wimax/i2400m/driver.c i2400m->updown = 1; i2400m 366 drivers/net/wimax/i2400m/driver.c i2400m->alive = 1; i2400m 370 drivers/net/wimax/i2400m/driver.c mutex_unlock(&i2400m->init_mutex); i2400m 387 drivers/net/wimax/i2400m/driver.c void __i2400m_dev_stop(struct i2400m *i2400m) i2400m 389 drivers/net/wimax/i2400m/driver.c struct wimax_dev *wimax_dev = &i2400m->wimax_dev; i2400m 390 drivers/net/wimax/i2400m/driver.c struct device *dev = i2400m_dev(i2400m); i2400m 392 drivers/net/wimax/i2400m/driver.c d_fnstart(3, dev, "(i2400m %p)\n", i2400m); i2400m 394 drivers/net/wimax/i2400m/driver.c i2400m_msg_to_dev_cancel_wait(i2400m, -EL3RST); i2400m 395 drivers/net/wimax/i2400m/driver.c complete(&i2400m->msg_completion); i2400m 396 drivers/net/wimax/i2400m/driver.c i2400m_net_wake_stop(i2400m); i2400m 397 drivers/net/wimax/i2400m/driver.c i2400m_dev_shutdown(i2400m); i2400m 402 drivers/net/wimax/i2400m/driver.c i2400m->ready = 0; /* nobody can queue work anymore */ i2400m 404 drivers/net/wimax/i2400m/driver.c flush_workqueue(i2400m->work_queue); i2400m 406 drivers/net/wimax/i2400m/driver.c if (i2400m->bus_dev_stop) i2400m 407 drivers/net/wimax/i2400m/driver.c i2400m->bus_dev_stop(i2400m); i2400m 408 drivers/net/wimax/i2400m/driver.c destroy_workqueue(i2400m->work_queue); i2400m 409 drivers/net/wimax/i2400m/driver.c i2400m_rx_release(i2400m); i2400m 410 drivers/net/wimax/i2400m/driver.c i2400m_tx_release(i2400m); i2400m 412 drivers/net/wimax/i2400m/driver.c d_fnend(3, dev, "(i2400m %p) = 0\n", i2400m); i2400m 422 drivers/net/wimax/i2400m/driver.c void i2400m_dev_stop(struct i2400m *i2400m) i2400m 424 drivers/net/wimax/i2400m/driver.c mutex_lock(&i2400m->init_mutex); i2400m 425 drivers/net/wimax/i2400m/driver.c if (i2400m->updown) { i2400m 426 drivers/net/wimax/i2400m/driver.c __i2400m_dev_stop(i2400m); i2400m 427 drivers/net/wimax/i2400m/driver.c i2400m->updown = 0; i2400m 428 drivers/net/wimax/i2400m/driver.c i2400m->alive = 0; i2400m 431 drivers/net/wimax/i2400m/driver.c mutex_unlock(&i2400m->init_mutex); i2400m 453 drivers/net/wimax/i2400m/driver.c struct i2400m *i2400m = i2400m 454 drivers/net/wimax/i2400m/driver.c container_of(notifier, struct i2400m, pm_notifier); i2400m 455 drivers/net/wimax/i2400m/driver.c struct device *dev = i2400m_dev(i2400m); i2400m 457 drivers/net/wimax/i2400m/driver.c d_fnstart(3, dev, "(i2400m %p pm_event %lx)\n", i2400m, pm_event); i2400m 461 drivers/net/wimax/i2400m/driver.c i2400m_fw_cache(i2400m); i2400m 468 drivers/net/wimax/i2400m/driver.c i2400m_fw_uncache(i2400m); i2400m 475 drivers/net/wimax/i2400m/driver.c d_fnend(3, dev, "(i2400m %p pm_event %lx) = void\n", i2400m, pm_event); i2400m 486 drivers/net/wimax/i2400m/driver.c int i2400m_pre_reset(struct i2400m *i2400m) i2400m 488 drivers/net/wimax/i2400m/driver.c struct device *dev = i2400m_dev(i2400m); i2400m 490 drivers/net/wimax/i2400m/driver.c d_fnstart(3, dev, "(i2400m %p)\n", i2400m); i2400m 493 drivers/net/wimax/i2400m/driver.c mutex_lock(&i2400m->init_mutex); i2400m 494 drivers/net/wimax/i2400m/driver.c if (i2400m->updown) { i2400m 495 drivers/net/wimax/i2400m/driver.c netif_tx_disable(i2400m->wimax_dev.net_dev); i2400m 496 drivers/net/wimax/i2400m/driver.c __i2400m_dev_stop(i2400m); i2400m 500 drivers/net/wimax/i2400m/driver.c mutex_unlock(&i2400m->init_mutex); i2400m 501 drivers/net/wimax/i2400m/driver.c if (i2400m->bus_release) i2400m 502 drivers/net/wimax/i2400m/driver.c i2400m->bus_release(i2400m); i2400m 503 drivers/net/wimax/i2400m/driver.c d_fnend(3, dev, "(i2400m %p) = 0\n", i2400m); i2400m 517 drivers/net/wimax/i2400m/driver.c int i2400m_post_reset(struct i2400m *i2400m) i2400m 520 drivers/net/wimax/i2400m/driver.c struct device *dev = i2400m_dev(i2400m); i2400m 522 drivers/net/wimax/i2400m/driver.c d_fnstart(3, dev, "(i2400m %p)\n", i2400m); i2400m 524 drivers/net/wimax/i2400m/driver.c if (i2400m->bus_setup) { i2400m 525 drivers/net/wimax/i2400m/driver.c result = i2400m->bus_setup(i2400m); i2400m 532 drivers/net/wimax/i2400m/driver.c mutex_lock(&i2400m->init_mutex); i2400m 533 drivers/net/wimax/i2400m/driver.c if (i2400m->updown) { i2400m 535 drivers/net/wimax/i2400m/driver.c i2400m, I2400M_BRI_SOFT | I2400M_BRI_MAC_REINIT); i2400m 539 drivers/net/wimax/i2400m/driver.c mutex_unlock(&i2400m->init_mutex); i2400m 540 drivers/net/wimax/i2400m/driver.c d_fnend(3, dev, "(i2400m %p) = %d\n", i2400m, result); i2400m 544 drivers/net/wimax/i2400m/driver.c if (i2400m->bus_release) i2400m 545 drivers/net/wimax/i2400m/driver.c i2400m->bus_release(i2400m); i2400m 548 drivers/net/wimax/i2400m/driver.c i2400m->updown = 0; i2400m 550 drivers/net/wimax/i2400m/driver.c mutex_unlock(&i2400m->init_mutex); i2400m 552 drivers/net/wimax/i2400m/driver.c d_fnend(3, dev, "(i2400m %p) = %d\n", i2400m, result); i2400m 584 drivers/net/wimax/i2400m/driver.c struct i2400m *i2400m = container_of(ws, struct i2400m, reset_ws); i2400m 585 drivers/net/wimax/i2400m/driver.c const char *reason = i2400m->reset_reason; i2400m 586 drivers/net/wimax/i2400m/driver.c struct device *dev = i2400m_dev(i2400m); i2400m 587 drivers/net/wimax/i2400m/driver.c struct i2400m_reset_ctx *ctx = i2400m->reset_ctx; i2400m 590 drivers/net/wimax/i2400m/driver.c d_fnstart(3, dev, "(ws %p i2400m %p reason %s)\n", ws, i2400m, reason); i2400m 592 drivers/net/wimax/i2400m/driver.c i2400m->boot_mode = 1; i2400m 596 drivers/net/wimax/i2400m/driver.c if (mutex_trylock(&i2400m->init_mutex) == 0) { i2400m 601 drivers/net/wimax/i2400m/driver.c i2400m_msg_to_dev_cancel_wait(i2400m, -EL3RST); i2400m 602 drivers/net/wimax/i2400m/driver.c complete(&i2400m->msg_completion); i2400m 608 drivers/net/wimax/i2400m/driver.c if (i2400m->updown) { i2400m 609 drivers/net/wimax/i2400m/driver.c __i2400m_dev_stop(i2400m); i2400m 610 drivers/net/wimax/i2400m/driver.c i2400m->updown = 0; i2400m 614 drivers/net/wimax/i2400m/driver.c if (i2400m->alive) { i2400m 615 drivers/net/wimax/i2400m/driver.c result = __i2400m_dev_start(i2400m, i2400m 621 drivers/net/wimax/i2400m/driver.c if (atomic_read(&i2400m->bus_reset_retries) i2400m 630 drivers/net/wimax/i2400m/driver.c if (i2400m->reset_ctx) { i2400m 634 drivers/net/wimax/i2400m/driver.c mutex_unlock(&i2400m->init_mutex); i2400m 644 drivers/net/wimax/i2400m/driver.c i2400m->boot_mode = 0; i2400m 647 drivers/net/wimax/i2400m/driver.c atomic_inc(&i2400m->bus_reset_retries); i2400m 649 drivers/net/wimax/i2400m/driver.c result = i2400m_reset(i2400m, I2400M_RT_BUS); i2400m 654 drivers/net/wimax/i2400m/driver.c if (i2400m->alive) { i2400m 657 drivers/net/wimax/i2400m/driver.c i2400m->updown = 1; i2400m 659 drivers/net/wimax/i2400m/driver.c atomic_set(&i2400m->bus_reset_retries, 0); i2400m 664 drivers/net/wimax/i2400m/driver.c ws, i2400m, reason); i2400m 680 drivers/net/wimax/i2400m/driver.c int i2400m_dev_reset_handle(struct i2400m *i2400m, const char *reason) i2400m 682 drivers/net/wimax/i2400m/driver.c i2400m->reset_reason = reason; i2400m 683 drivers/net/wimax/i2400m/driver.c return schedule_work(&i2400m->reset_ws); i2400m 696 drivers/net/wimax/i2400m/driver.c struct i2400m *i2400m = container_of(ws, struct i2400m, recovery_ws); i2400m 698 drivers/net/wimax/i2400m/driver.c i2400m_reset(i2400m, I2400M_RT_BUS); i2400m 726 drivers/net/wimax/i2400m/driver.c void i2400m_error_recovery(struct i2400m *i2400m) i2400m 728 drivers/net/wimax/i2400m/driver.c if (atomic_add_return(1, &i2400m->error_recovery) == 1) i2400m 729 drivers/net/wimax/i2400m/driver.c schedule_work(&i2400m->recovery_ws); i2400m 731 drivers/net/wimax/i2400m/driver.c atomic_dec(&i2400m->error_recovery); i2400m 741 drivers/net/wimax/i2400m/driver.c int i2400m_bm_buf_alloc(struct i2400m *i2400m) i2400m 746 drivers/net/wimax/i2400m/driver.c i2400m->bm_cmd_buf = kzalloc(I2400M_BM_CMD_BUF_SIZE, GFP_KERNEL); i2400m 747 drivers/net/wimax/i2400m/driver.c if (i2400m->bm_cmd_buf == NULL) i2400m 749 drivers/net/wimax/i2400m/driver.c i2400m->bm_ack_buf = kzalloc(I2400M_BM_ACK_BUF_SIZE, GFP_KERNEL); i2400m 750 drivers/net/wimax/i2400m/driver.c if (i2400m->bm_ack_buf == NULL) i2400m 755 drivers/net/wimax/i2400m/driver.c kfree(i2400m->bm_cmd_buf); i2400m 765 drivers/net/wimax/i2400m/driver.c void i2400m_bm_buf_free(struct i2400m *i2400m) i2400m 767 drivers/net/wimax/i2400m/driver.c kfree(i2400m->bm_ack_buf); i2400m 768 drivers/net/wimax/i2400m/driver.c kfree(i2400m->bm_cmd_buf); i2400m 777 drivers/net/wimax/i2400m/driver.c void i2400m_init(struct i2400m *i2400m) i2400m 779 drivers/net/wimax/i2400m/driver.c wimax_dev_init(&i2400m->wimax_dev); i2400m 781 drivers/net/wimax/i2400m/driver.c i2400m->boot_mode = 1; i2400m 782 drivers/net/wimax/i2400m/driver.c i2400m->rx_reorder = 1; i2400m 783 drivers/net/wimax/i2400m/driver.c init_waitqueue_head(&i2400m->state_wq); i2400m 785 drivers/net/wimax/i2400m/driver.c spin_lock_init(&i2400m->tx_lock); i2400m 786 drivers/net/wimax/i2400m/driver.c i2400m->tx_pl_min = UINT_MAX; i2400m 787 drivers/net/wimax/i2400m/driver.c i2400m->tx_size_min = UINT_MAX; i2400m 789 drivers/net/wimax/i2400m/driver.c spin_lock_init(&i2400m->rx_lock); i2400m 790 drivers/net/wimax/i2400m/driver.c i2400m->rx_pl_min = UINT_MAX; i2400m 791 drivers/net/wimax/i2400m/driver.c i2400m->rx_size_min = UINT_MAX; i2400m 792 drivers/net/wimax/i2400m/driver.c INIT_LIST_HEAD(&i2400m->rx_reports); i2400m 793 drivers/net/wimax/i2400m/driver.c INIT_WORK(&i2400m->rx_report_ws, i2400m_report_hook_work); i2400m 795 drivers/net/wimax/i2400m/driver.c mutex_init(&i2400m->msg_mutex); i2400m 796 drivers/net/wimax/i2400m/driver.c init_completion(&i2400m->msg_completion); i2400m 798 drivers/net/wimax/i2400m/driver.c mutex_init(&i2400m->init_mutex); i2400m 801 drivers/net/wimax/i2400m/driver.c INIT_WORK(&i2400m->reset_ws, __i2400m_dev_reset_handle); i2400m 802 drivers/net/wimax/i2400m/driver.c INIT_WORK(&i2400m->recovery_ws, __i2400m_error_recovery); i2400m 804 drivers/net/wimax/i2400m/driver.c atomic_set(&i2400m->bus_reset_retries, 0); i2400m 806 drivers/net/wimax/i2400m/driver.c i2400m->alive = 0; i2400m 810 drivers/net/wimax/i2400m/driver.c atomic_set(&i2400m->error_recovery, 1); i2400m 815 drivers/net/wimax/i2400m/driver.c int i2400m_reset(struct i2400m *i2400m, enum i2400m_reset_type rt) i2400m 817 drivers/net/wimax/i2400m/driver.c struct net_device *net_dev = i2400m->wimax_dev.net_dev; i2400m 828 drivers/net/wimax/i2400m/driver.c return i2400m->bus_reset(i2400m, rt); i2400m 844 drivers/net/wimax/i2400m/driver.c int i2400m_setup(struct i2400m *i2400m, enum i2400m_bri bm_flags) i2400m 847 drivers/net/wimax/i2400m/driver.c struct device *dev = i2400m_dev(i2400m); i2400m 848 drivers/net/wimax/i2400m/driver.c struct wimax_dev *wimax_dev = &i2400m->wimax_dev; i2400m 849 drivers/net/wimax/i2400m/driver.c struct net_device *net_dev = i2400m->wimax_dev.net_dev; i2400m 851 drivers/net/wimax/i2400m/driver.c d_fnstart(3, dev, "(i2400m %p)\n", i2400m); i2400m 856 drivers/net/wimax/i2400m/driver.c result = i2400m_bm_buf_alloc(i2400m); i2400m 862 drivers/net/wimax/i2400m/driver.c if (i2400m->bus_setup) { i2400m 863 drivers/net/wimax/i2400m/driver.c result = i2400m->bus_setup(i2400m); i2400m 871 drivers/net/wimax/i2400m/driver.c result = i2400m_bootrom_init(i2400m, bm_flags); i2400m 877 drivers/net/wimax/i2400m/driver.c result = i2400m_read_mac_addr(i2400m); i2400m 880 drivers/net/wimax/i2400m/driver.c eth_random_addr(i2400m->src_mac_addr); i2400m 882 drivers/net/wimax/i2400m/driver.c i2400m->pm_notifier.notifier_call = i2400m_pm_notifier; i2400m 883 drivers/net/wimax/i2400m/driver.c register_pm_notifier(&i2400m->pm_notifier); i2400m 893 drivers/net/wimax/i2400m/driver.c i2400m->wimax_dev.op_msg_from_user = i2400m_op_msg_from_user; i2400m 894 drivers/net/wimax/i2400m/driver.c i2400m->wimax_dev.op_rfkill_sw_toggle = i2400m_op_rfkill_sw_toggle; i2400m 895 drivers/net/wimax/i2400m/driver.c i2400m->wimax_dev.op_reset = i2400m_op_reset; i2400m 897 drivers/net/wimax/i2400m/driver.c result = wimax_dev_add(&i2400m->wimax_dev, net_dev); i2400m 908 drivers/net/wimax/i2400m/driver.c i2400m_debugfs_add(i2400m); i2400m 910 drivers/net/wimax/i2400m/driver.c result = i2400m_dev_start(i2400m, bm_flags); i2400m 913 drivers/net/wimax/i2400m/driver.c d_fnend(3, dev, "(i2400m %p) = %d\n", i2400m, result); i2400m 917 drivers/net/wimax/i2400m/driver.c i2400m_debugfs_rm(i2400m); i2400m 918 drivers/net/wimax/i2400m/driver.c sysfs_remove_group(&i2400m->wimax_dev.net_dev->dev.kobj, i2400m 921 drivers/net/wimax/i2400m/driver.c wimax_dev_rm(&i2400m->wimax_dev); i2400m 925 drivers/net/wimax/i2400m/driver.c unregister_pm_notifier(&i2400m->pm_notifier); i2400m 928 drivers/net/wimax/i2400m/driver.c if (i2400m->bus_release) i2400m 929 drivers/net/wimax/i2400m/driver.c i2400m->bus_release(i2400m); i2400m 931 drivers/net/wimax/i2400m/driver.c i2400m_bm_buf_free(i2400m); i2400m 933 drivers/net/wimax/i2400m/driver.c d_fnend(3, dev, "(i2400m %p) = %d\n", i2400m, result); i2400m 944 drivers/net/wimax/i2400m/driver.c void i2400m_release(struct i2400m *i2400m) i2400m 946 drivers/net/wimax/i2400m/driver.c struct device *dev = i2400m_dev(i2400m); i2400m 948 drivers/net/wimax/i2400m/driver.c d_fnstart(3, dev, "(i2400m %p)\n", i2400m); i2400m 949 drivers/net/wimax/i2400m/driver.c netif_stop_queue(i2400m->wimax_dev.net_dev); i2400m 951 drivers/net/wimax/i2400m/driver.c i2400m_dev_stop(i2400m); i2400m 953 drivers/net/wimax/i2400m/driver.c cancel_work_sync(&i2400m->reset_ws); i2400m 954 drivers/net/wimax/i2400m/driver.c cancel_work_sync(&i2400m->recovery_ws); i2400m 956 drivers/net/wimax/i2400m/driver.c i2400m_debugfs_rm(i2400m); i2400m 957 drivers/net/wimax/i2400m/driver.c sysfs_remove_group(&i2400m->wimax_dev.net_dev->dev.kobj, i2400m 959 drivers/net/wimax/i2400m/driver.c wimax_dev_rm(&i2400m->wimax_dev); i2400m 960 drivers/net/wimax/i2400m/driver.c unregister_netdev(i2400m->wimax_dev.net_dev); i2400m 961 drivers/net/wimax/i2400m/driver.c unregister_pm_notifier(&i2400m->pm_notifier); i2400m 962 drivers/net/wimax/i2400m/driver.c if (i2400m->bus_release) i2400m 963 drivers/net/wimax/i2400m/driver.c i2400m->bus_release(i2400m); i2400m 964 drivers/net/wimax/i2400m/driver.c i2400m_bm_buf_free(i2400m); i2400m 965 drivers/net/wimax/i2400m/driver.c d_fnend(3, dev, "(i2400m %p) = void\n", i2400m); i2400m 386 drivers/net/wimax/i2400m/fw.c int i2400m_is_boot_barker(struct i2400m *i2400m, i2400m 390 drivers/net/wimax/i2400m/fw.c struct device *dev = i2400m_dev(i2400m); i2400m 400 drivers/net/wimax/i2400m/fw.c if (i2400m->barker && i2400m 401 drivers/net/wimax/i2400m/fw.c !memcmp(buf, i2400m->barker, sizeof(i2400m->barker->data))) i2400m 410 drivers/net/wimax/i2400m/fw.c if (i2400m->barker == NULL) { i2400m 411 drivers/net/wimax/i2400m/fw.c i2400m->barker = barker; i2400m 415 drivers/net/wimax/i2400m/fw.c i2400m->sboot = 0; i2400m 417 drivers/net/wimax/i2400m/fw.c i2400m->sboot = 1; i2400m 418 drivers/net/wimax/i2400m/fw.c } else if (i2400m->barker != barker) { i2400m 422 drivers/net/wimax/i2400m/fw.c le32_to_cpu(i2400m->barker->data[0]), i2400m 450 drivers/net/wimax/i2400m/fw.c ssize_t __i2400m_bm_ack_verify(struct i2400m *i2400m, int opcode, i2400m 455 drivers/net/wimax/i2400m/fw.c struct device *dev = i2400m_dev(i2400m); i2400m 458 drivers/net/wimax/i2400m/fw.c i2400m, opcode, ack, ack_size); i2400m 466 drivers/net/wimax/i2400m/fw.c result = i2400m_is_boot_barker(i2400m, ack, ack_size); i2400m 529 drivers/net/wimax/i2400m/fw.c i2400m, opcode, ack, ack_size, (int) result); i2400m 580 drivers/net/wimax/i2400m/fw.c ssize_t i2400m_bm_cmd(struct i2400m *i2400m, i2400m 586 drivers/net/wimax/i2400m/fw.c struct device *dev = i2400m_dev(i2400m); i2400m 590 drivers/net/wimax/i2400m/fw.c i2400m, cmd, cmd_size, ack, ack_size); i2400m 592 drivers/net/wimax/i2400m/fw.c BUG_ON(i2400m->boot_mode == 0); i2400m 595 drivers/net/wimax/i2400m/fw.c result = i2400m->bus_bm_cmd_send(i2400m, cmd, cmd_size, flags); i2400m 608 drivers/net/wimax/i2400m/fw.c result = i2400m->bus_bm_wait_for_ack(i2400m, ack, ack_size); i2400m 617 drivers/net/wimax/i2400m/fw.c result = __i2400m_bm_ack_verify(i2400m, opcode, ack, ack_size, flags); i2400m 628 drivers/net/wimax/i2400m/fw.c i2400m, cmd, cmd_size, ack, ack_size, (int) result); i2400m 643 drivers/net/wimax/i2400m/fw.c static int i2400m_download_chunk(struct i2400m *i2400m, const void *chunk, i2400m 649 drivers/net/wimax/i2400m/fw.c struct device *dev = i2400m_dev(i2400m); i2400m 657 drivers/net/wimax/i2400m/fw.c "direct %u do_csum %u)\n", i2400m, chunk, __chunk_len, i2400m 659 drivers/net/wimax/i2400m/fw.c buf = i2400m->bm_cmd_buf; i2400m 668 drivers/net/wimax/i2400m/fw.c ret = i2400m_bm_cmd(i2400m, &buf->cmd, sizeof(buf->cmd) + chunk_len, i2400m 673 drivers/net/wimax/i2400m/fw.c "direct %u do_csum %u) = %d\n", i2400m, chunk, __chunk_len, i2400m 698 drivers/net/wimax/i2400m/fw.c ssize_t i2400m_dnload_bcf(struct i2400m *i2400m, i2400m 702 drivers/net/wimax/i2400m/fw.c struct device *dev = i2400m_dev(i2400m); i2400m 711 drivers/net/wimax/i2400m/fw.c i2400m, bcf, bcf_len); i2400m 737 drivers/net/wimax/i2400m/fw.c i2400m->fw_name, section, i2400m 743 drivers/net/wimax/i2400m/fw.c ret = i2400m_bm_cmd(i2400m, bh, section_size, i2400m 747 drivers/net/wimax/i2400m/fw.c "failed %d\n", i2400m->fw_name, section, i2400m 758 drivers/net/wimax/i2400m/fw.c i2400m, bcf, bcf_len, (int) ret); i2400m 768 drivers/net/wimax/i2400m/fw.c unsigned i2400m_boot_is_signed(struct i2400m *i2400m) i2400m 770 drivers/net/wimax/i2400m/fw.c return likely(i2400m->sboot); i2400m 786 drivers/net/wimax/i2400m/fw.c int i2400m_dnload_finalize(struct i2400m *i2400m, i2400m 791 drivers/net/wimax/i2400m/fw.c struct device *dev = i2400m_dev(i2400m); i2400m 801 drivers/net/wimax/i2400m/fw.c if (i2400m_boot_is_signed(i2400m) == 0) { i2400m 805 drivers/net/wimax/i2400m/fw.c cmd_buf = i2400m->bm_cmd_buf; i2400m 811 drivers/net/wimax/i2400m/fw.c ret = i2400m_bm_cmd(i2400m, cmd, sizeof(*cmd), i2400m 816 drivers/net/wimax/i2400m/fw.c cmd_buf = i2400m->bm_cmd_buf; i2400m 827 drivers/net/wimax/i2400m/fw.c ret = i2400m_bm_cmd(i2400m, &cmd_buf->cmd, i2400m 880 drivers/net/wimax/i2400m/fw.c int i2400m_bootrom_init(struct i2400m *i2400m, enum i2400m_bri flags) i2400m 883 drivers/net/wimax/i2400m/fw.c struct device *dev = i2400m_dev(i2400m); i2400m 886 drivers/net/wimax/i2400m/fw.c int count = i2400m->bus_bm_retries; i2400m 893 drivers/net/wimax/i2400m/fw.c d_fnstart(4, dev, "(i2400m %p flags 0x%08x)\n", i2400m, flags); i2400m 895 drivers/net/wimax/i2400m/fw.c cmd = i2400m->bm_cmd_buf; i2400m 905 drivers/net/wimax/i2400m/fw.c i2400m_reset(i2400m, I2400M_RT_WARM); i2400m 906 drivers/net/wimax/i2400m/fw.c result = i2400m_bm_cmd(i2400m, NULL, 0, &ack, sizeof(ack), i2400m 928 drivers/net/wimax/i2400m/fw.c if (i2400m->barker != NULL) { i2400m 931 drivers/net/wimax/i2400m/fw.c le32_to_cpu(i2400m->barker->data[0])); i2400m 937 drivers/net/wimax/i2400m/fw.c result = i2400m_bm_cmd(i2400m, cmd, sizeof(*cmd), i2400m 968 drivers/net/wimax/i2400m/fw.c memcpy(cmd, i2400m->barker->data, sizeof(i2400m->barker->data)); i2400m 969 drivers/net/wimax/i2400m/fw.c result = i2400m_bm_cmd(i2400m, cmd, sizeof(*cmd), i2400m 1003 drivers/net/wimax/i2400m/fw.c i2400m, flags, result); i2400m 1022 drivers/net/wimax/i2400m/fw.c int i2400m_read_mac_addr(struct i2400m *i2400m) i2400m 1025 drivers/net/wimax/i2400m/fw.c struct device *dev = i2400m_dev(i2400m); i2400m 1026 drivers/net/wimax/i2400m/fw.c struct net_device *net_dev = i2400m->wimax_dev.net_dev; i2400m 1033 drivers/net/wimax/i2400m/fw.c d_fnstart(5, dev, "(i2400m %p)\n", i2400m); i2400m 1034 drivers/net/wimax/i2400m/fw.c cmd = i2400m->bm_cmd_buf; i2400m 1038 drivers/net/wimax/i2400m/fw.c result = i2400m_bm_cmd(i2400m, cmd, sizeof(*cmd), i2400m 1045 drivers/net/wimax/i2400m/fw.c if (i2400m->bus_bm_mac_addr_impaired == 1) { i2400m 1057 drivers/net/wimax/i2400m/fw.c d_fnend(5, dev, "(i2400m %p) = %d\n", i2400m, result); i2400m 1070 drivers/net/wimax/i2400m/fw.c int i2400m_dnload_init_nonsigned(struct i2400m *i2400m) i2400m 1074 drivers/net/wimax/i2400m/fw.c struct device *dev = i2400m_dev(i2400m); i2400m 1075 drivers/net/wimax/i2400m/fw.c d_fnstart(5, dev, "(i2400m %p)\n", i2400m); i2400m 1076 drivers/net/wimax/i2400m/fw.c if (i2400m->bus_bm_pokes_table) { i2400m 1077 drivers/net/wimax/i2400m/fw.c while (i2400m->bus_bm_pokes_table[i].address) { i2400m 1079 drivers/net/wimax/i2400m/fw.c i2400m, i2400m 1080 drivers/net/wimax/i2400m/fw.c &i2400m->bus_bm_pokes_table[i].data, i2400m 1081 drivers/net/wimax/i2400m/fw.c sizeof(i2400m->bus_bm_pokes_table[i].data), i2400m 1082 drivers/net/wimax/i2400m/fw.c i2400m->bus_bm_pokes_table[i].address, 1, 1); i2400m 1088 drivers/net/wimax/i2400m/fw.c d_fnend(5, dev, "(i2400m %p) = %d\n", i2400m, ret); i2400m 1108 drivers/net/wimax/i2400m/fw.c int i2400m_dnload_init_signed(struct i2400m *i2400m, i2400m 1112 drivers/net/wimax/i2400m/fw.c struct device *dev = i2400m_dev(i2400m); i2400m 1119 drivers/net/wimax/i2400m/fw.c d_fnstart(5, dev, "(i2400m %p bcf_hdr %p)\n", i2400m, bcf_hdr); i2400m 1120 drivers/net/wimax/i2400m/fw.c cmd_buf = i2400m->bm_cmd_buf; i2400m 1126 drivers/net/wimax/i2400m/fw.c ret = i2400m_bm_cmd(i2400m, &cmd_buf->cmd, sizeof(*cmd_buf), i2400m 1130 drivers/net/wimax/i2400m/fw.c d_fnend(5, dev, "(i2400m %p bcf_hdr %p) = %d\n", i2400m, bcf_hdr, ret); i2400m 1142 drivers/net/wimax/i2400m/fw.c int i2400m_dnload_init(struct i2400m *i2400m, i2400m 1146 drivers/net/wimax/i2400m/fw.c struct device *dev = i2400m_dev(i2400m); i2400m 1148 drivers/net/wimax/i2400m/fw.c if (i2400m_boot_is_signed(i2400m)) { i2400m 1150 drivers/net/wimax/i2400m/fw.c result = i2400m_dnload_init_signed(i2400m, bcf_hdr); i2400m 1156 drivers/net/wimax/i2400m/fw.c i2400m->fw_name, result); i2400m 1160 drivers/net/wimax/i2400m/fw.c result = i2400m_dnload_init_nonsigned(i2400m); i2400m 1166 drivers/net/wimax/i2400m/fw.c i2400m->fw_name, result); i2400m 1184 drivers/net/wimax/i2400m/fw.c int i2400m_fw_hdr_check(struct i2400m *i2400m, i2400m 1188 drivers/net/wimax/i2400m/fw.c struct device *dev = i2400m_dev(i2400m); i2400m 1205 drivers/net/wimax/i2400m/fw.c i2400m->fw_name, index, offset, i2400m 1213 drivers/net/wimax/i2400m/fw.c i2400m->fw_name, index, offset, i2400m 1221 drivers/net/wimax/i2400m/fw.c i2400m->fw_name, index, offset, i2400m 1229 drivers/net/wimax/i2400m/fw.c i2400m->fw_name, index, offset, module_vendor); i2400m 1236 drivers/net/wimax/i2400m/fw.c i2400m->fw_name, index, offset, date); i2400m 1253 drivers/net/wimax/i2400m/fw.c int i2400m_fw_check(struct i2400m *i2400m, const void *bcf, size_t bcf_size) i2400m 1256 drivers/net/wimax/i2400m/fw.c struct device *dev = i2400m_dev(i2400m); i2400m 1272 drivers/net/wimax/i2400m/fw.c i2400m->fw_name, leftover, offset); i2400m 1285 drivers/net/wimax/i2400m/fw.c result = i2400m_fw_hdr_check(i2400m, bcf_hdr, headers, offset); i2400m 1293 drivers/net/wimax/i2400m/fw.c (void **) &i2400m->fw_hdrs, &slots, i2400m 1294 drivers/net/wimax/i2400m/fw.c sizeof(i2400m->fw_hdrs[0]), i2400m 1299 drivers/net/wimax/i2400m/fw.c i2400m->fw_hdrs[used_slots] = bcf_hdr; i2400m 1304 drivers/net/wimax/i2400m/fw.c i2400m->fw_name); i2400m 1320 drivers/net/wimax/i2400m/fw.c unsigned i2400m_bcf_hdr_match(struct i2400m *i2400m, i2400m 1323 drivers/net/wimax/i2400m/fw.c u32 barker = le32_to_cpu(i2400m->barker->data[0]) i2400m 1337 drivers/net/wimax/i2400m/fw.c const struct i2400m_bcf_hdr *i2400m_bcf_hdr_find(struct i2400m *i2400m) i2400m 1339 drivers/net/wimax/i2400m/fw.c struct device *dev = i2400m_dev(i2400m); i2400m 1342 drivers/net/wimax/i2400m/fw.c u32 barker = le32_to_cpu(i2400m->barker->data[0]); i2400m 1346 drivers/net/wimax/i2400m/fw.c bcf_hdr = i2400m->fw_hdrs[0]; i2400m 1351 drivers/net/wimax/i2400m/fw.c for (bcf_itr = i2400m->fw_hdrs; *bcf_itr != NULL; bcf_itr++, i++) { i2400m 1353 drivers/net/wimax/i2400m/fw.c if (i2400m_bcf_hdr_match(i2400m, bcf_hdr)) { i2400m 1382 drivers/net/wimax/i2400m/fw.c int i2400m_fw_dnload(struct i2400m *i2400m, const struct i2400m_bcf_hdr *bcf, i2400m 1386 drivers/net/wimax/i2400m/fw.c struct device *dev = i2400m_dev(i2400m); i2400m 1387 drivers/net/wimax/i2400m/fw.c int count = i2400m->bus_bm_retries; i2400m 1392 drivers/net/wimax/i2400m/fw.c i2400m, bcf, fw_size); i2400m 1393 drivers/net/wimax/i2400m/fw.c i2400m->boot_mode = 1; i2400m 1402 drivers/net/wimax/i2400m/fw.c ret = i2400m_bootrom_init(i2400m, flags); i2400m 1420 drivers/net/wimax/i2400m/fw.c bcf_hdr = i2400m_bcf_hdr_find(i2400m); i2400m 1424 drivers/net/wimax/i2400m/fw.c ret = i2400m_dnload_init(i2400m, bcf_hdr); i2400m 1436 drivers/net/wimax/i2400m/fw.c ret = i2400m_dnload_bcf(i2400m, bcf, bcf_size); i2400m 1441 drivers/net/wimax/i2400m/fw.c i2400m->fw_name, ret); i2400m 1445 drivers/net/wimax/i2400m/fw.c ret = i2400m_dnload_finalize(i2400m, bcf_hdr, bcf, ret); i2400m 1451 drivers/net/wimax/i2400m/fw.c i2400m->fw_name, ret); i2400m 1456 drivers/net/wimax/i2400m/fw.c i2400m->fw_name); i2400m 1457 drivers/net/wimax/i2400m/fw.c i2400m->boot_mode = 0; i2400m 1466 drivers/net/wimax/i2400m/fw.c i2400m, bcf, fw_size, ret); i2400m 1477 drivers/net/wimax/i2400m/fw.c int i2400m_fw_bootstrap(struct i2400m *i2400m, const struct firmware *fw, i2400m 1481 drivers/net/wimax/i2400m/fw.c struct device *dev = i2400m_dev(i2400m); i2400m 1484 drivers/net/wimax/i2400m/fw.c d_fnstart(5, dev, "(i2400m %p)\n", i2400m); i2400m 1486 drivers/net/wimax/i2400m/fw.c ret = i2400m_fw_check(i2400m, bcf, fw->size); i2400m 1488 drivers/net/wimax/i2400m/fw.c ret = i2400m_fw_dnload(i2400m, bcf, fw->size, flags); i2400m 1491 drivers/net/wimax/i2400m/fw.c i2400m->fw_name, ret); i2400m 1492 drivers/net/wimax/i2400m/fw.c kfree(i2400m->fw_hdrs); i2400m 1493 drivers/net/wimax/i2400m/fw.c i2400m->fw_hdrs = NULL; i2400m 1494 drivers/net/wimax/i2400m/fw.c d_fnend(5, dev, "(i2400m %p) = %d\n", i2400m, ret); i2400m 1547 drivers/net/wimax/i2400m/fw.c int i2400m_dev_bootstrap(struct i2400m *i2400m, enum i2400m_bri flags) i2400m 1550 drivers/net/wimax/i2400m/fw.c struct device *dev = i2400m_dev(i2400m); i2400m 1555 drivers/net/wimax/i2400m/fw.c d_fnstart(5, dev, "(i2400m %p)\n", i2400m); i2400m 1558 drivers/net/wimax/i2400m/fw.c spin_lock(&i2400m->rx_lock); i2400m 1559 drivers/net/wimax/i2400m/fw.c i2400m_fw = i2400m_fw_get(i2400m->fw_cached); i2400m 1560 drivers/net/wimax/i2400m/fw.c spin_unlock(&i2400m->rx_lock); i2400m 1566 drivers/net/wimax/i2400m/fw.c i2400m->fw_name); i2400m 1567 drivers/net/wimax/i2400m/fw.c ret = i2400m_fw_bootstrap(i2400m, i2400m_fw->fw, flags); i2400m 1574 drivers/net/wimax/i2400m/fw.c fw_name = i2400m->bus_fw_names[itr]; i2400m 1586 drivers/net/wimax/i2400m/fw.c i2400m->fw_name = fw_name; i2400m 1587 drivers/net/wimax/i2400m/fw.c ret = i2400m_fw_bootstrap(i2400m, fw, flags); i2400m 1591 drivers/net/wimax/i2400m/fw.c i2400m->fw_name = NULL; i2400m 1594 drivers/net/wimax/i2400m/fw.c d_fnend(5, dev, "(i2400m %p) = %d\n", i2400m, ret); i2400m 1600 drivers/net/wimax/i2400m/fw.c void i2400m_fw_cache(struct i2400m *i2400m) i2400m 1604 drivers/net/wimax/i2400m/fw.c struct device *dev = i2400m_dev(i2400m); i2400m 1607 drivers/net/wimax/i2400m/fw.c spin_lock(&i2400m->rx_lock); i2400m 1608 drivers/net/wimax/i2400m/fw.c i2400m_fw = i2400m->fw_cached; i2400m 1609 drivers/net/wimax/i2400m/fw.c spin_unlock(&i2400m->rx_lock); i2400m 1616 drivers/net/wimax/i2400m/fw.c if (i2400m->fw_name == NULL) { i2400m 1626 drivers/net/wimax/i2400m/fw.c result = request_firmware(&i2400m_fw->fw, i2400m->fw_name, dev); i2400m 1629 drivers/net/wimax/i2400m/fw.c i2400m->fw_name, result); i2400m 1633 drivers/net/wimax/i2400m/fw.c dev_info(dev, "firmware %s: cached\n", i2400m->fw_name); i2400m 1635 drivers/net/wimax/i2400m/fw.c spin_lock(&i2400m->rx_lock); i2400m 1636 drivers/net/wimax/i2400m/fw.c i2400m->fw_cached = i2400m_fw; i2400m 1637 drivers/net/wimax/i2400m/fw.c spin_unlock(&i2400m->rx_lock); i2400m 1641 drivers/net/wimax/i2400m/fw.c void i2400m_fw_uncache(struct i2400m *i2400m) i2400m 1645 drivers/net/wimax/i2400m/fw.c spin_lock(&i2400m->rx_lock); i2400m 1646 drivers/net/wimax/i2400m/fw.c i2400m_fw = i2400m->fw_cached; i2400m 1647 drivers/net/wimax/i2400m/fw.c i2400m->fw_cached = NULL; i2400m 1648 drivers/net/wimax/i2400m/fw.c spin_unlock(&i2400m->rx_lock); i2400m 223 drivers/net/wimax/i2400m/i2400m-usb.h struct i2400m i2400m; /* FIRST! See doc */ i2400m 249 drivers/net/wimax/i2400m/i2400m-usb.h i2400m_init(&i2400mu->i2400m); i2400m 268 drivers/net/wimax/i2400m/i2400m-usb.h void i2400mu_bus_tx_kick(struct i2400m *); i2400m 270 drivers/net/wimax/i2400m/i2400m-usb.h ssize_t i2400mu_bus_bm_cmd_send(struct i2400m *, i2400m 273 drivers/net/wimax/i2400m/i2400m-usb.h ssize_t i2400mu_bus_bm_wait_for_ack(struct i2400m *, i2400m 584 drivers/net/wimax/i2400m/i2400m.h int (*bus_setup)(struct i2400m *); i2400m 585 drivers/net/wimax/i2400m/i2400m.h int (*bus_dev_start)(struct i2400m *); i2400m 586 drivers/net/wimax/i2400m/i2400m.h void (*bus_dev_stop)(struct i2400m *); i2400m 587 drivers/net/wimax/i2400m/i2400m.h void (*bus_release)(struct i2400m *); i2400m 588 drivers/net/wimax/i2400m/i2400m.h void (*bus_tx_kick)(struct i2400m *); i2400m 589 drivers/net/wimax/i2400m/i2400m.h int (*bus_reset)(struct i2400m *, enum i2400m_reset_type); i2400m 590 drivers/net/wimax/i2400m/i2400m.h ssize_t (*bus_bm_cmd_send)(struct i2400m *, i2400m 593 drivers/net/wimax/i2400m/i2400m.h ssize_t (*bus_bm_wait_for_ack)(struct i2400m *, i2400m 666 drivers/net/wimax/i2400m/i2400m.h struct i2400m *wimax_dev_to_i2400m(struct wimax_dev *wimax_dev) i2400m 668 drivers/net/wimax/i2400m/i2400m.h return container_of(wimax_dev, struct i2400m, wimax_dev); i2400m 672 drivers/net/wimax/i2400m/i2400m.h struct i2400m *net_dev_to_i2400m(struct net_device *net_dev) i2400m 714 drivers/net/wimax/i2400m/i2400m.h int i2400m_dev_bootstrap(struct i2400m *, enum i2400m_bri); i2400m 715 drivers/net/wimax/i2400m/i2400m.h int i2400m_read_mac_addr(struct i2400m *); i2400m 716 drivers/net/wimax/i2400m/i2400m.h int i2400m_bootrom_init(struct i2400m *, enum i2400m_bri); i2400m 717 drivers/net/wimax/i2400m/i2400m.h int i2400m_is_boot_barker(struct i2400m *, const void *, size_t); i2400m 724 drivers/net/wimax/i2400m/i2400m.h void i2400m_unknown_barker(struct i2400m *, const void *, size_t); i2400m 792 drivers/net/wimax/i2400m/i2400m.h void i2400m_init(struct i2400m *); i2400m 793 drivers/net/wimax/i2400m/i2400m.h int i2400m_reset(struct i2400m *, enum i2400m_reset_type); i2400m 797 drivers/net/wimax/i2400m/i2400m.h int i2400m_tx_setup(struct i2400m *); i2400m 799 drivers/net/wimax/i2400m/i2400m.h void i2400m_tx_release(struct i2400m *); i2400m 801 drivers/net/wimax/i2400m/i2400m.h int i2400m_rx_setup(struct i2400m *); i2400m 802 drivers/net/wimax/i2400m/i2400m.h void i2400m_rx_release(struct i2400m *); i2400m 804 drivers/net/wimax/i2400m/i2400m.h void i2400m_fw_cache(struct i2400m *); i2400m 805 drivers/net/wimax/i2400m/i2400m.h void i2400m_fw_uncache(struct i2400m *); i2400m 807 drivers/net/wimax/i2400m/i2400m.h void i2400m_net_rx(struct i2400m *, struct sk_buff *, unsigned, const void *, i2400m 809 drivers/net/wimax/i2400m/i2400m.h void i2400m_net_erx(struct i2400m *, struct sk_buff *, enum i2400m_cs); i2400m 810 drivers/net/wimax/i2400m/i2400m.h void i2400m_net_wake_stop(struct i2400m *); i2400m 812 drivers/net/wimax/i2400m/i2400m.h int i2400m_tx(struct i2400m *, const void *, size_t, enum i2400m_pt); i2400m 815 drivers/net/wimax/i2400m/i2400m.h void i2400m_debugfs_add(struct i2400m *); i2400m 816 drivers/net/wimax/i2400m/i2400m.h void i2400m_debugfs_rm(struct i2400m *); i2400m 818 drivers/net/wimax/i2400m/i2400m.h static inline void i2400m_debugfs_add(struct i2400m *i2400m) {} i2400m 819 drivers/net/wimax/i2400m/i2400m.h static inline void i2400m_debugfs_rm(struct i2400m *i2400m) {} i2400m 823 drivers/net/wimax/i2400m/i2400m.h int i2400m_dev_initialize(struct i2400m *); i2400m 824 drivers/net/wimax/i2400m/i2400m.h void i2400m_dev_shutdown(struct i2400m *); i2400m 860 drivers/net/wimax/i2400m/i2400m.h struct i2400m *i2400m_get(struct i2400m *i2400m) i2400m 862 drivers/net/wimax/i2400m/i2400m.h dev_hold(i2400m->wimax_dev.net_dev); i2400m 863 drivers/net/wimax/i2400m/i2400m.h return i2400m; i2400m 867 drivers/net/wimax/i2400m/i2400m.h void i2400m_put(struct i2400m *i2400m) i2400m 869 drivers/net/wimax/i2400m/i2400m.h dev_put(i2400m->wimax_dev.net_dev); i2400m 872 drivers/net/wimax/i2400m/i2400m.h int i2400m_dev_reset_handle(struct i2400m *, const char *); i2400m 873 drivers/net/wimax/i2400m/i2400m.h int i2400m_pre_reset(struct i2400m *); i2400m 874 drivers/net/wimax/i2400m/i2400m.h int i2400m_post_reset(struct i2400m *); i2400m 875 drivers/net/wimax/i2400m/i2400m.h void i2400m_error_recovery(struct i2400m *); i2400m 881 drivers/net/wimax/i2400m/i2400m.h int i2400m_setup(struct i2400m *, enum i2400m_bri bm_flags); i2400m 882 drivers/net/wimax/i2400m/i2400m.h void i2400m_release(struct i2400m *); i2400m 884 drivers/net/wimax/i2400m/i2400m.h int i2400m_rx(struct i2400m *, struct sk_buff *); i2400m 885 drivers/net/wimax/i2400m/i2400m.h struct i2400m_msg_hdr *i2400m_tx_msg_get(struct i2400m *, size_t *); i2400m 886 drivers/net/wimax/i2400m/i2400m.h void i2400m_tx_msg_sent(struct i2400m *); i2400m 894 drivers/net/wimax/i2400m/i2400m.h struct device *i2400m_dev(struct i2400m *i2400m) i2400m 896 drivers/net/wimax/i2400m/i2400m.h return i2400m->wimax_dev.net_dev->dev.parent; i2400m 900 drivers/net/wimax/i2400m/i2400m.h int i2400m_msg_size_check(struct i2400m *, const struct i2400m_l3l4_hdr *, i2400m 902 drivers/net/wimax/i2400m/i2400m.h struct sk_buff *i2400m_msg_to_dev(struct i2400m *, const void *, size_t); i2400m 903 drivers/net/wimax/i2400m/i2400m.h void i2400m_msg_to_dev_cancel_wait(struct i2400m *, int); i2400m 904 drivers/net/wimax/i2400m/i2400m.h void i2400m_report_hook(struct i2400m *, const struct i2400m_l3l4_hdr *, i2400m 907 drivers/net/wimax/i2400m/i2400m.h int i2400m_cmd_enter_powersave(struct i2400m *); i2400m 908 drivers/net/wimax/i2400m/i2400m.h int i2400m_cmd_exit_idle(struct i2400m *); i2400m 909 drivers/net/wimax/i2400m/i2400m.h struct sk_buff *i2400m_get_device_info(struct i2400m *); i2400m 910 drivers/net/wimax/i2400m/i2400m.h int i2400m_firmware_check(struct i2400m *); i2400m 911 drivers/net/wimax/i2400m/i2400m.h int i2400m_set_idle_timeout(struct i2400m *, unsigned); i2400m 920 drivers/net/wimax/i2400m/i2400m.h void i2400m_report_tlv_rf_switches_status(struct i2400m *, i2400m 936 drivers/net/wimax/i2400m/i2400m.h unsigned i2400m_le_v1_3(struct i2400m *i2400m) i2400m 939 drivers/net/wimax/i2400m/i2400m.h return i2400m->fw_version <= 0x00090001; i2400m 943 drivers/net/wimax/i2400m/i2400m.h unsigned i2400m_ge_v1_4(struct i2400m *i2400m) i2400m 946 drivers/net/wimax/i2400m/i2400m.h return i2400m->fw_version >= 0x00090002; i2400m 89 drivers/net/wimax/i2400m/netdev.c struct i2400m *i2400m = net_dev_to_i2400m(net_dev); i2400m 90 drivers/net/wimax/i2400m/netdev.c struct device *dev = i2400m_dev(i2400m); i2400m 92 drivers/net/wimax/i2400m/netdev.c d_fnstart(3, dev, "(net_dev %p [i2400m %p])\n", net_dev, i2400m); i2400m 94 drivers/net/wimax/i2400m/netdev.c mutex_lock(&i2400m->init_mutex); i2400m 95 drivers/net/wimax/i2400m/netdev.c if (i2400m->updown) i2400m 99 drivers/net/wimax/i2400m/netdev.c mutex_unlock(&i2400m->init_mutex); i2400m 101 drivers/net/wimax/i2400m/netdev.c net_dev, i2400m, result); i2400m 109 drivers/net/wimax/i2400m/netdev.c struct i2400m *i2400m = net_dev_to_i2400m(net_dev); i2400m 110 drivers/net/wimax/i2400m/netdev.c struct device *dev = i2400m_dev(i2400m); i2400m 112 drivers/net/wimax/i2400m/netdev.c d_fnstart(3, dev, "(net_dev %p [i2400m %p])\n", net_dev, i2400m); i2400m 113 drivers/net/wimax/i2400m/netdev.c i2400m_net_wake_stop(i2400m); i2400m 114 drivers/net/wimax/i2400m/netdev.c d_fnend(3, dev, "(net_dev %p [i2400m %p]) = 0\n", net_dev, i2400m); i2400m 141 drivers/net/wimax/i2400m/netdev.c struct i2400m *i2400m = container_of(ws, struct i2400m, wake_tx_ws); i2400m 142 drivers/net/wimax/i2400m/netdev.c struct net_device *net_dev = i2400m->wimax_dev.net_dev; i2400m 143 drivers/net/wimax/i2400m/netdev.c struct device *dev = i2400m_dev(i2400m); i2400m 147 drivers/net/wimax/i2400m/netdev.c spin_lock_irqsave(&i2400m->tx_lock, flags); i2400m 148 drivers/net/wimax/i2400m/netdev.c skb = i2400m->wake_tx_skb; i2400m 149 drivers/net/wimax/i2400m/netdev.c i2400m->wake_tx_skb = NULL; i2400m 150 drivers/net/wimax/i2400m/netdev.c spin_unlock_irqrestore(&i2400m->tx_lock, flags); i2400m 152 drivers/net/wimax/i2400m/netdev.c d_fnstart(3, dev, "(ws %p i2400m %p skb %p)\n", ws, i2400m, skb); i2400m 163 drivers/net/wimax/i2400m/netdev.c result = i2400m_cmd_exit_idle(i2400m); i2400m 169 drivers/net/wimax/i2400m/netdev.c i2400m_reset(i2400m, I2400M_RT_BUS); i2400m 172 drivers/net/wimax/i2400m/netdev.c result = wait_event_timeout(i2400m->state_wq, i2400m 173 drivers/net/wimax/i2400m/netdev.c i2400m->state != I2400M_SS_IDLE, i2400m 180 drivers/net/wimax/i2400m/netdev.c i2400m_reset(i2400m, I2400M_RT_BUS); i2400m 184 drivers/net/wimax/i2400m/netdev.c result = i2400m_tx(i2400m, skb->data, skb->len, I2400M_PT_DATA); i2400m 190 drivers/net/wimax/i2400m/netdev.c i2400m_put(i2400m); i2400m 192 drivers/net/wimax/i2400m/netdev.c ws, i2400m, skb, result); i2400m 221 drivers/net/wimax/i2400m/netdev.c void i2400m_net_wake_stop(struct i2400m *i2400m) i2400m 223 drivers/net/wimax/i2400m/netdev.c struct device *dev = i2400m_dev(i2400m); i2400m 227 drivers/net/wimax/i2400m/netdev.c d_fnstart(3, dev, "(i2400m %p)\n", i2400m); i2400m 232 drivers/net/wimax/i2400m/netdev.c cancel_work_sync(&i2400m->wake_tx_ws); i2400m 234 drivers/net/wimax/i2400m/netdev.c spin_lock_irqsave(&i2400m->tx_lock, flags); i2400m 235 drivers/net/wimax/i2400m/netdev.c wake_tx_skb = i2400m->wake_tx_skb; i2400m 236 drivers/net/wimax/i2400m/netdev.c i2400m->wake_tx_skb = NULL; i2400m 237 drivers/net/wimax/i2400m/netdev.c spin_unlock_irqrestore(&i2400m->tx_lock, flags); i2400m 240 drivers/net/wimax/i2400m/netdev.c i2400m_put(i2400m); i2400m 244 drivers/net/wimax/i2400m/netdev.c d_fnend(3, dev, "(i2400m %p) = void\n", i2400m); i2400m 260 drivers/net/wimax/i2400m/netdev.c int i2400m_net_wake_tx(struct i2400m *i2400m, struct net_device *net_dev, i2400m 264 drivers/net/wimax/i2400m/netdev.c struct device *dev = i2400m_dev(i2400m); i2400m 278 drivers/net/wimax/i2400m/netdev.c spin_lock_irqsave(&i2400m->tx_lock, flags); i2400m 279 drivers/net/wimax/i2400m/netdev.c if (!i2400m->wake_tx_skb) { i2400m 281 drivers/net/wimax/i2400m/netdev.c i2400m_get(i2400m); i2400m 282 drivers/net/wimax/i2400m/netdev.c i2400m->wake_tx_skb = skb_get(skb); /* transfer ref count */ i2400m 284 drivers/net/wimax/i2400m/netdev.c result = schedule_work(&i2400m->wake_tx_ws); i2400m 287 drivers/net/wimax/i2400m/netdev.c spin_unlock_irqrestore(&i2400m->tx_lock, flags); i2400m 313 drivers/net/wimax/i2400m/netdev.c int i2400m_net_tx(struct i2400m *i2400m, struct net_device *net_dev, i2400m 317 drivers/net/wimax/i2400m/netdev.c struct device *dev = i2400m_dev(i2400m); i2400m 320 drivers/net/wimax/i2400m/netdev.c i2400m, net_dev, skb); i2400m 327 drivers/net/wimax/i2400m/netdev.c result = i2400m_tx(i2400m, skb->data, skb->len, I2400M_PT_DATA); i2400m 329 drivers/net/wimax/i2400m/netdev.c i2400m, net_dev, skb, result); i2400m 356 drivers/net/wimax/i2400m/netdev.c struct i2400m *i2400m = net_dev_to_i2400m(net_dev); i2400m 357 drivers/net/wimax/i2400m/netdev.c struct device *dev = i2400m_dev(i2400m); i2400m 365 drivers/net/wimax/i2400m/netdev.c if (i2400m->state == I2400M_SS_IDLE) i2400m 366 drivers/net/wimax/i2400m/netdev.c result = i2400m_net_wake_tx(i2400m, net_dev, skb); i2400m 368 drivers/net/wimax/i2400m/netdev.c result = i2400m_net_tx(i2400m, net_dev, skb); i2400m 407 drivers/net/wimax/i2400m/netdev.c struct i2400m *i2400m = net_dev_to_i2400m(net_dev); i2400m 411 drivers/net/wimax/i2400m/netdev.c memcpy(eth_hdr->h_source, i2400m->src_mac_addr, i2400m 453 drivers/net/wimax/i2400m/netdev.c void i2400m_net_rx(struct i2400m *i2400m, struct sk_buff *skb_rx, i2400m 456 drivers/net/wimax/i2400m/netdev.c struct net_device *net_dev = i2400m->wimax_dev.net_dev; i2400m 457 drivers/net/wimax/i2400m/netdev.c struct device *dev = i2400m_dev(i2400m); i2400m 461 drivers/net/wimax/i2400m/netdev.c i2400m, buf, buf_len); i2400m 478 drivers/net/wimax/i2400m/netdev.c i2400m_rx_fake_eth_header(i2400m->wimax_dev.net_dev, i2400m 482 drivers/net/wimax/i2400m/netdev.c skb->dev = i2400m->wimax_dev.net_dev; i2400m 492 drivers/net/wimax/i2400m/netdev.c i2400m, buf, buf_len); i2400m 518 drivers/net/wimax/i2400m/netdev.c void i2400m_net_erx(struct i2400m *i2400m, struct sk_buff *skb, i2400m 521 drivers/net/wimax/i2400m/netdev.c struct net_device *net_dev = i2400m->wimax_dev.net_dev; i2400m 522 drivers/net/wimax/i2400m/netdev.c struct device *dev = i2400m_dev(i2400m); i2400m 525 drivers/net/wimax/i2400m/netdev.c i2400m, skb, skb->len, cs); i2400m 529 drivers/net/wimax/i2400m/netdev.c i2400m_rx_fake_eth_header(i2400m->wimax_dev.net_dev, i2400m 533 drivers/net/wimax/i2400m/netdev.c skb->dev = i2400m->wimax_dev.net_dev; i2400m 549 drivers/net/wimax/i2400m/netdev.c i2400m, skb, skb->len, cs); i2400m 562 drivers/net/wimax/i2400m/netdev.c struct i2400m *i2400m = net_dev_to_i2400m(net_dev); i2400m 565 drivers/net/wimax/i2400m/netdev.c strlcpy(info->fw_version, i2400m->fw_name ? : "", i2400m 34 drivers/net/wimax/i2400m/op-rfkill.c int i2400m_radio_is(struct i2400m *i2400m, enum wimax_rf_state state) i2400m 37 drivers/net/wimax/i2400m/op-rfkill.c return i2400m->state == I2400M_SS_RF_OFF i2400m 38 drivers/net/wimax/i2400m/op-rfkill.c || i2400m->state == I2400M_SS_RF_SHUTDOWN; i2400m 41 drivers/net/wimax/i2400m/op-rfkill.c return i2400m->state != I2400M_SS_RF_OFF i2400m 42 drivers/net/wimax/i2400m/op-rfkill.c && i2400m->state != I2400M_SS_RF_SHUTDOWN; i2400m 73 drivers/net/wimax/i2400m/op-rfkill.c struct i2400m *i2400m = wimax_dev_to_i2400m(wimax_dev); i2400m 74 drivers/net/wimax/i2400m/op-rfkill.c struct device *dev = i2400m_dev(i2400m); i2400m 104 drivers/net/wimax/i2400m/op-rfkill.c ack_skb = i2400m_msg_to_dev(i2400m, cmd, sizeof(*cmd)); i2400m 121 drivers/net/wimax/i2400m/op-rfkill.c i2400m->state_wq, i2400m_radio_is(i2400m, state), i2400m 152 drivers/net/wimax/i2400m/op-rfkill.c struct i2400m *i2400m, i2400m 155 drivers/net/wimax/i2400m/op-rfkill.c struct device *dev = i2400m_dev(i2400m); i2400m 163 drivers/net/wimax/i2400m/op-rfkill.c i2400m, rfss, hw, sw); i2400m 166 drivers/net/wimax/i2400m/op-rfkill.c wimax_state = wimax_state_get(&i2400m->wimax_dev); i2400m 174 drivers/net/wimax/i2400m/op-rfkill.c wimax_report_rfkill_sw(&i2400m->wimax_dev, WIMAX_RF_ON); i2400m 177 drivers/net/wimax/i2400m/op-rfkill.c wimax_report_rfkill_sw(&i2400m->wimax_dev, WIMAX_RF_OFF); i2400m 185 drivers/net/wimax/i2400m/op-rfkill.c wimax_report_rfkill_hw(&i2400m->wimax_dev, WIMAX_RF_ON); i2400m 188 drivers/net/wimax/i2400m/op-rfkill.c wimax_report_rfkill_hw(&i2400m->wimax_dev, WIMAX_RF_OFF); i2400m 195 drivers/net/wimax/i2400m/op-rfkill.c i2400m, rfss, hw, sw); i2400m 185 drivers/net/wimax/i2400m/rx.c struct i2400m *i2400m = container_of(ws, struct i2400m, rx_report_ws); i2400m 186 drivers/net/wimax/i2400m/rx.c struct device *dev = i2400m_dev(i2400m); i2400m 192 drivers/net/wimax/i2400m/rx.c spin_lock_irqsave(&i2400m->rx_lock, flags); i2400m 193 drivers/net/wimax/i2400m/rx.c list_splice_init(&i2400m->rx_reports, &list); i2400m 194 drivers/net/wimax/i2400m/rx.c spin_unlock_irqrestore(&i2400m->rx_lock, flags); i2400m 201 drivers/net/wimax/i2400m/rx.c i2400m_report_hook(i2400m, args->l3l4_hdr, args->size); i2400m 214 drivers/net/wimax/i2400m/rx.c void i2400m_report_hook_flush(struct i2400m *i2400m) i2400m 216 drivers/net/wimax/i2400m/rx.c struct device *dev = i2400m_dev(i2400m); i2400m 222 drivers/net/wimax/i2400m/rx.c spin_lock_irqsave(&i2400m->rx_lock, flags); i2400m 223 drivers/net/wimax/i2400m/rx.c list_splice_init(&i2400m->rx_reports, &list); i2400m 224 drivers/net/wimax/i2400m/rx.c spin_unlock_irqrestore(&i2400m->rx_lock, flags); i2400m 243 drivers/net/wimax/i2400m/rx.c void i2400m_report_hook_queue(struct i2400m *i2400m, struct sk_buff *skb_rx, i2400m 246 drivers/net/wimax/i2400m/rx.c struct device *dev = i2400m_dev(i2400m); i2400m 255 drivers/net/wimax/i2400m/rx.c spin_lock_irqsave(&i2400m->rx_lock, flags); i2400m 256 drivers/net/wimax/i2400m/rx.c list_add_tail(&args->list_node, &i2400m->rx_reports); i2400m 257 drivers/net/wimax/i2400m/rx.c spin_unlock_irqrestore(&i2400m->rx_lock, flags); i2400m 260 drivers/net/wimax/i2400m/rx.c if (likely(i2400m->ready)) /* only send if up */ i2400m 261 drivers/net/wimax/i2400m/rx.c queue_work(i2400m->work_queue, &i2400m->rx_report_ws); i2400m 286 drivers/net/wimax/i2400m/rx.c void i2400m_rx_ctl_ack(struct i2400m *i2400m, i2400m 289 drivers/net/wimax/i2400m/rx.c struct device *dev = i2400m_dev(i2400m); i2400m 290 drivers/net/wimax/i2400m/rx.c struct wimax_dev *wimax_dev = &i2400m->wimax_dev; i2400m 295 drivers/net/wimax/i2400m/rx.c spin_lock_irqsave(&i2400m->rx_lock, flags); i2400m 296 drivers/net/wimax/i2400m/rx.c if (i2400m->ack_skb != ERR_PTR(-EINPROGRESS)) { i2400m 300 drivers/net/wimax/i2400m/rx.c spin_unlock_irqrestore(&i2400m->rx_lock, flags); i2400m 305 drivers/net/wimax/i2400m/rx.c spin_lock_irqsave(&i2400m->rx_lock, flags); i2400m 306 drivers/net/wimax/i2400m/rx.c if (i2400m->ack_skb != ERR_PTR(-EINPROGRESS)) { i2400m 312 drivers/net/wimax/i2400m/rx.c i2400m->ack_skb = ack_skb; i2400m 313 drivers/net/wimax/i2400m/rx.c spin_unlock_irqrestore(&i2400m->rx_lock, flags); i2400m 314 drivers/net/wimax/i2400m/rx.c complete(&i2400m->msg_completion); i2400m 321 drivers/net/wimax/i2400m/rx.c spin_unlock_irqrestore(&i2400m->rx_lock, flags); i2400m 358 drivers/net/wimax/i2400m/rx.c void i2400m_rx_ctl(struct i2400m *i2400m, struct sk_buff *skb_rx, i2400m 362 drivers/net/wimax/i2400m/rx.c struct device *dev = i2400m_dev(i2400m); i2400m 366 drivers/net/wimax/i2400m/rx.c result = i2400m_msg_size_check(i2400m, l3l4_hdr, size); i2400m 400 drivers/net/wimax/i2400m/rx.c i2400m_report_hook_queue(i2400m, skb_rx, l3l4_hdr, size); i2400m 401 drivers/net/wimax/i2400m/rx.c if (unlikely(i2400m->trace_msg_from_user)) i2400m 402 drivers/net/wimax/i2400m/rx.c wimax_msg(&i2400m->wimax_dev, "echo", i2400m 404 drivers/net/wimax/i2400m/rx.c result = wimax_msg(&i2400m->wimax_dev, NULL, l3l4_hdr, size, i2400m 410 drivers/net/wimax/i2400m/rx.c i2400m_rx_ctl_ack(i2400m, payload, size); i2400m 434 drivers/net/wimax/i2400m/rx.c void i2400m_rx_trace(struct i2400m *i2400m, i2400m 438 drivers/net/wimax/i2400m/rx.c struct device *dev = i2400m_dev(i2400m); i2400m 439 drivers/net/wimax/i2400m/rx.c struct wimax_dev *wimax_dev = &i2400m->wimax_dev; i2400m 443 drivers/net/wimax/i2400m/rx.c result = i2400m_msg_size_check(i2400m, l3l4_hdr, size); i2400m 505 drivers/net/wimax/i2400m/rx.c unsigned __i2400m_roq_index(struct i2400m *i2400m, struct i2400m_roq *roq) i2400m 507 drivers/net/wimax/i2400m/rx.c return ((unsigned long) roq - (unsigned long) i2400m->rx_roq) i2400m 553 drivers/net/wimax/i2400m/rx.c void i2400m_roq_log_entry_print(struct i2400m *i2400m, unsigned index, i2400m 557 drivers/net/wimax/i2400m/rx.c struct device *dev = i2400m_dev(i2400m); i2400m 588 drivers/net/wimax/i2400m/rx.c void i2400m_roq_log_add(struct i2400m *i2400m, i2400m 595 drivers/net/wimax/i2400m/rx.c int index = __i2400m_roq_index(i2400m, roq); i2400m 611 drivers/net/wimax/i2400m/rx.c i2400m_roq_log_entry_print(i2400m, index, cnt_idx, e); i2400m 617 drivers/net/wimax/i2400m/rx.c void i2400m_roq_log_dump(struct i2400m *i2400m, struct i2400m_roq *roq) i2400m 621 drivers/net/wimax/i2400m/rx.c int index = __i2400m_roq_index(i2400m, roq); i2400m 627 drivers/net/wimax/i2400m/rx.c i2400m_roq_log_entry_print(i2400m, index, cnt_idx, e); i2400m 657 drivers/net/wimax/i2400m/rx.c void __i2400m_roq_queue(struct i2400m *i2400m, struct i2400m_roq *roq, i2400m 660 drivers/net/wimax/i2400m/rx.c struct device *dev = i2400m_dev(i2400m); i2400m 666 drivers/net/wimax/i2400m/rx.c i2400m, roq, skb, sn, nsn); i2400m 725 drivers/net/wimax/i2400m/rx.c i2400m, roq, skb, sn, nsn); i2400m 741 drivers/net/wimax/i2400m/rx.c unsigned __i2400m_roq_update_ws(struct i2400m *i2400m, struct i2400m_roq *roq, i2400m 744 drivers/net/wimax/i2400m/rx.c struct device *dev = i2400m_dev(i2400m); i2400m 766 drivers/net/wimax/i2400m/rx.c i2400m_net_erx(i2400m, skb_itr, roq_data_itr->cs); i2400m 786 drivers/net/wimax/i2400m/rx.c void i2400m_roq_reset(struct i2400m *i2400m, struct i2400m_roq *roq) i2400m 788 drivers/net/wimax/i2400m/rx.c struct device *dev = i2400m_dev(i2400m); i2400m 792 drivers/net/wimax/i2400m/rx.c d_fnstart(2, dev, "(i2400m %p roq %p)\n", i2400m, roq); i2400m 793 drivers/net/wimax/i2400m/rx.c i2400m_roq_log_add(i2400m, roq, I2400M_RO_TYPE_RESET, i2400m 801 drivers/net/wimax/i2400m/rx.c i2400m_net_erx(i2400m, skb_itr, roq_data_itr->cs); i2400m 804 drivers/net/wimax/i2400m/rx.c d_fnend(2, dev, "(i2400m %p roq %p) = void\n", i2400m, roq); i2400m 821 drivers/net/wimax/i2400m/rx.c void i2400m_roq_queue(struct i2400m *i2400m, struct i2400m_roq *roq, i2400m 824 drivers/net/wimax/i2400m/rx.c struct device *dev = i2400m_dev(i2400m); i2400m 828 drivers/net/wimax/i2400m/rx.c i2400m, roq, skb, lbn); i2400m 834 drivers/net/wimax/i2400m/rx.c i2400m_roq_log_dump(i2400m, roq); i2400m 835 drivers/net/wimax/i2400m/rx.c i2400m_reset(i2400m, I2400M_RT_WARM); i2400m 837 drivers/net/wimax/i2400m/rx.c __i2400m_roq_queue(i2400m, roq, skb, lbn, nsn); i2400m 838 drivers/net/wimax/i2400m/rx.c i2400m_roq_log_add(i2400m, roq, I2400M_RO_TYPE_PACKET, i2400m 842 drivers/net/wimax/i2400m/rx.c i2400m, roq, skb, lbn); i2400m 855 drivers/net/wimax/i2400m/rx.c void i2400m_roq_update_ws(struct i2400m *i2400m, struct i2400m_roq *roq, i2400m 858 drivers/net/wimax/i2400m/rx.c struct device *dev = i2400m_dev(i2400m); i2400m 861 drivers/net/wimax/i2400m/rx.c d_fnstart(2, dev, "(i2400m %p roq %p sn %u)\n", i2400m, roq, sn); i2400m 864 drivers/net/wimax/i2400m/rx.c nsn = __i2400m_roq_update_ws(i2400m, roq, sn); i2400m 865 drivers/net/wimax/i2400m/rx.c i2400m_roq_log_add(i2400m, roq, I2400M_RO_TYPE_WS, i2400m 867 drivers/net/wimax/i2400m/rx.c d_fnstart(2, dev, "(i2400m %p roq %p sn %u) = void\n", i2400m, roq, sn); i2400m 884 drivers/net/wimax/i2400m/rx.c void i2400m_roq_queue_update_ws(struct i2400m *i2400m, struct i2400m_roq *roq, i2400m 887 drivers/net/wimax/i2400m/rx.c struct device *dev = i2400m_dev(i2400m); i2400m 891 drivers/net/wimax/i2400m/rx.c i2400m, roq, skb, sn); i2400m 907 drivers/net/wimax/i2400m/rx.c i2400m_net_erx(i2400m, skb, roq_data->cs); i2400m 909 drivers/net/wimax/i2400m/rx.c __i2400m_roq_queue(i2400m, roq, skb, sn, nsn); i2400m 911 drivers/net/wimax/i2400m/rx.c __i2400m_roq_update_ws(i2400m, roq, sn + 1); i2400m 912 drivers/net/wimax/i2400m/rx.c i2400m_roq_log_add(i2400m, roq, I2400M_RO_TYPE_PACKET_WS, i2400m 916 drivers/net/wimax/i2400m/rx.c i2400m, roq, skb, sn); i2400m 930 drivers/net/wimax/i2400m/rx.c struct i2400m *i2400m i2400m 931 drivers/net/wimax/i2400m/rx.c = container_of(ref, struct i2400m, rx_roq_refcount); i2400m 933 drivers/net/wimax/i2400m/rx.c __skb_queue_purge(&i2400m->rx_roq[itr].queue); i2400m 934 drivers/net/wimax/i2400m/rx.c kfree(i2400m->rx_roq[0].log); i2400m 935 drivers/net/wimax/i2400m/rx.c kfree(i2400m->rx_roq); i2400m 936 drivers/net/wimax/i2400m/rx.c i2400m->rx_roq = NULL; i2400m 980 drivers/net/wimax/i2400m/rx.c void i2400m_rx_edata(struct i2400m *i2400m, struct sk_buff *skb_rx, i2400m 983 drivers/net/wimax/i2400m/rx.c struct device *dev = i2400m_dev(i2400m); i2400m 985 drivers/net/wimax/i2400m/rx.c struct net_device *net_dev = i2400m->wimax_dev.net_dev; i2400m 997 drivers/net/wimax/i2400m/rx.c "size %zu)\n", i2400m, skb_rx, single_last, payload, size); i2400m 1031 drivers/net/wimax/i2400m/rx.c spin_lock_irqsave(&i2400m->rx_lock, flags); i2400m 1032 drivers/net/wimax/i2400m/rx.c if (i2400m->rx_roq == NULL) { i2400m 1034 drivers/net/wimax/i2400m/rx.c spin_unlock_irqrestore(&i2400m->rx_lock, flags); i2400m 1037 drivers/net/wimax/i2400m/rx.c roq = &i2400m->rx_roq[ro_cin]; i2400m 1038 drivers/net/wimax/i2400m/rx.c kref_get(&i2400m->rx_roq_refcount); i2400m 1039 drivers/net/wimax/i2400m/rx.c spin_unlock_irqrestore(&i2400m->rx_lock, flags); i2400m 1051 drivers/net/wimax/i2400m/rx.c i2400m_roq_reset(i2400m, roq); i2400m 1055 drivers/net/wimax/i2400m/rx.c i2400m_roq_queue(i2400m, roq, skb, ro_sn); i2400m 1058 drivers/net/wimax/i2400m/rx.c i2400m_roq_update_ws(i2400m, roq, ro_sn); i2400m 1062 drivers/net/wimax/i2400m/rx.c i2400m_roq_queue_update_ws(i2400m, roq, skb, ro_sn); i2400m 1068 drivers/net/wimax/i2400m/rx.c spin_lock_irqsave(&i2400m->rx_lock, flags); i2400m 1069 drivers/net/wimax/i2400m/rx.c kref_put(&i2400m->rx_roq_refcount, i2400m_rx_roq_destroy); i2400m 1070 drivers/net/wimax/i2400m/rx.c spin_unlock_irqrestore(&i2400m->rx_lock, flags); i2400m 1073 drivers/net/wimax/i2400m/rx.c i2400m_net_erx(i2400m, skb, cs); i2400m 1077 drivers/net/wimax/i2400m/rx.c "size %zu) = void\n", i2400m, skb_rx, single_last, payload, size); i2400m 1097 drivers/net/wimax/i2400m/rx.c void i2400m_rx_payload(struct i2400m *i2400m, struct sk_buff *skb_rx, i2400m 1101 drivers/net/wimax/i2400m/rx.c struct device *dev = i2400m_dev(i2400m); i2400m 1112 drivers/net/wimax/i2400m/rx.c i2400m_net_rx(i2400m, skb_rx, single_last, payload, pl_size); i2400m 1115 drivers/net/wimax/i2400m/rx.c i2400m_rx_ctl(i2400m, skb_rx, payload, pl_size); i2400m 1118 drivers/net/wimax/i2400m/rx.c i2400m_rx_trace(i2400m, payload, pl_size); i2400m 1122 drivers/net/wimax/i2400m/rx.c i2400m_rx_edata(i2400m, skb_rx, single_last, payload, pl_size); i2400m 1143 drivers/net/wimax/i2400m/rx.c int i2400m_rx_msg_hdr_check(struct i2400m *i2400m, i2400m 1148 drivers/net/wimax/i2400m/rx.c struct device *dev = i2400m_dev(i2400m); i2400m 1188 drivers/net/wimax/i2400m/rx.c int i2400m_rx_pl_descr_check(struct i2400m *i2400m, i2400m 1193 drivers/net/wimax/i2400m/rx.c struct device *dev = i2400m_dev(i2400m); i2400m 1197 drivers/net/wimax/i2400m/rx.c if (pl_size > i2400m->bus_pl_size_max) { i2400m 1200 drivers/net/wimax/i2400m/rx.c pl_itr, pl_size, i2400m->bus_pl_size_max); i2400m 1244 drivers/net/wimax/i2400m/rx.c int i2400m_rx(struct i2400m *i2400m, struct sk_buff *skb) i2400m 1247 drivers/net/wimax/i2400m/rx.c struct device *dev = i2400m_dev(i2400m); i2400m 1255 drivers/net/wimax/i2400m/rx.c i2400m, skb, skb_len); i2400m 1257 drivers/net/wimax/i2400m/rx.c result = i2400m_rx_msg_hdr_check(i2400m, msg_hdr, skb_len); i2400m 1275 drivers/net/wimax/i2400m/rx.c result = i2400m_rx_pl_descr_check(i2400m, &msg_hdr->pld[i], i2400m 1280 drivers/net/wimax/i2400m/rx.c i2400m_rx_payload(i2400m, skb, single_last, &msg_hdr->pld[i], i2400m 1287 drivers/net/wimax/i2400m/rx.c spin_lock_irqsave(&i2400m->rx_lock, flags); i2400m 1288 drivers/net/wimax/i2400m/rx.c i2400m->rx_pl_num += i; i2400m 1289 drivers/net/wimax/i2400m/rx.c if (i > i2400m->rx_pl_max) i2400m 1290 drivers/net/wimax/i2400m/rx.c i2400m->rx_pl_max = i; i2400m 1291 drivers/net/wimax/i2400m/rx.c if (i < i2400m->rx_pl_min) i2400m 1292 drivers/net/wimax/i2400m/rx.c i2400m->rx_pl_min = i; i2400m 1293 drivers/net/wimax/i2400m/rx.c i2400m->rx_num++; i2400m 1294 drivers/net/wimax/i2400m/rx.c i2400m->rx_size_acc += skb_len; i2400m 1295 drivers/net/wimax/i2400m/rx.c if (skb_len < i2400m->rx_size_min) i2400m 1296 drivers/net/wimax/i2400m/rx.c i2400m->rx_size_min = skb_len; i2400m 1297 drivers/net/wimax/i2400m/rx.c if (skb_len > i2400m->rx_size_max) i2400m 1298 drivers/net/wimax/i2400m/rx.c i2400m->rx_size_max = skb_len; i2400m 1299 drivers/net/wimax/i2400m/rx.c spin_unlock_irqrestore(&i2400m->rx_lock, flags); i2400m 1304 drivers/net/wimax/i2400m/rx.c i2400m, skb, skb_len, result); i2400m 1310 drivers/net/wimax/i2400m/rx.c void i2400m_unknown_barker(struct i2400m *i2400m, i2400m 1313 drivers/net/wimax/i2400m/rx.c struct device *dev = i2400m_dev(i2400m); i2400m 1345 drivers/net/wimax/i2400m/rx.c int i2400m_rx_setup(struct i2400m *i2400m) i2400m 1349 drivers/net/wimax/i2400m/rx.c i2400m->rx_reorder = i2400m_rx_reorder_disabled? 0 : 1; i2400m 1350 drivers/net/wimax/i2400m/rx.c if (i2400m->rx_reorder) { i2400m 1356 drivers/net/wimax/i2400m/rx.c i2400m->rx_roq = kcalloc(I2400M_RO_CIN + 1, i2400m 1357 drivers/net/wimax/i2400m/rx.c sizeof(i2400m->rx_roq[0]), GFP_KERNEL); i2400m 1358 drivers/net/wimax/i2400m/rx.c if (i2400m->rx_roq == NULL) i2400m 1361 drivers/net/wimax/i2400m/rx.c rd = kcalloc(I2400M_RO_CIN + 1, sizeof(*i2400m->rx_roq[0].log), i2400m 1369 drivers/net/wimax/i2400m/rx.c __i2400m_roq_init(&i2400m->rx_roq[itr]); i2400m 1370 drivers/net/wimax/i2400m/rx.c i2400m->rx_roq[itr].log = &rd[itr]; i2400m 1372 drivers/net/wimax/i2400m/rx.c kref_init(&i2400m->rx_roq_refcount); i2400m 1377 drivers/net/wimax/i2400m/rx.c kfree(i2400m->rx_roq); i2400m 1384 drivers/net/wimax/i2400m/rx.c void i2400m_rx_release(struct i2400m *i2400m) i2400m 1388 drivers/net/wimax/i2400m/rx.c if (i2400m->rx_reorder) { i2400m 1389 drivers/net/wimax/i2400m/rx.c spin_lock_irqsave(&i2400m->rx_lock, flags); i2400m 1390 drivers/net/wimax/i2400m/rx.c kref_put(&i2400m->rx_roq_refcount, i2400m_rx_roq_destroy); i2400m 1391 drivers/net/wimax/i2400m/rx.c spin_unlock_irqrestore(&i2400m->rx_lock, flags); i2400m 1394 drivers/net/wimax/i2400m/rx.c i2400m_report_hook_flush(i2400m); i2400m 33 drivers/net/wimax/i2400m/sysfs.c struct i2400m *i2400m = net_dev_to_i2400m(to_net_dev(dev)); i2400m 45 drivers/net/wimax/i2400m/sysfs.c result = i2400m_set_idle_timeout(i2400m, val); i2400m 323 drivers/net/wimax/i2400m/tx.c size_t __i2400m_tx_tail_room(struct i2400m *i2400m) i2400m 328 drivers/net/wimax/i2400m/tx.c if (unlikely(i2400m->tx_in == 0)) i2400m 330 drivers/net/wimax/i2400m/tx.c tx_in = i2400m->tx_in % I2400M_TX_BUF_SIZE; i2400m 434 drivers/net/wimax/i2400m/tx.c void *i2400m_tx_fifo_push(struct i2400m *i2400m, size_t size, i2400m 437 drivers/net/wimax/i2400m/tx.c struct device *dev = i2400m_dev(i2400m); i2400m 442 drivers/net/wimax/i2400m/tx.c room = I2400M_TX_BUF_SIZE - (i2400m->tx_in - i2400m->tx_out); i2400m 449 drivers/net/wimax/i2400m/tx.c tail_room = __i2400m_tx_tail_room(i2400m); i2400m 474 drivers/net/wimax/i2400m/tx.c ptr = i2400m->tx_buf + i2400m->tx_in % I2400M_TX_BUF_SIZE; i2400m 476 drivers/net/wimax/i2400m/tx.c i2400m->tx_in % I2400M_TX_BUF_SIZE); i2400m 477 drivers/net/wimax/i2400m/tx.c i2400m->tx_in += size; i2400m 505 drivers/net/wimax/i2400m/tx.c void i2400m_tx_skip_tail(struct i2400m *i2400m) i2400m 507 drivers/net/wimax/i2400m/tx.c struct device *dev = i2400m_dev(i2400m); i2400m 508 drivers/net/wimax/i2400m/tx.c size_t tx_in = i2400m->tx_in % I2400M_TX_BUF_SIZE; i2400m 509 drivers/net/wimax/i2400m/tx.c size_t tail_room = __i2400m_tx_tail_room(i2400m); i2400m 510 drivers/net/wimax/i2400m/tx.c struct i2400m_msg_hdr *msg = i2400m->tx_buf + tx_in; i2400m 517 drivers/net/wimax/i2400m/tx.c i2400m->tx_in += tail_room; i2400m 535 drivers/net/wimax/i2400m/tx.c unsigned i2400m_tx_fits(struct i2400m *i2400m) i2400m 537 drivers/net/wimax/i2400m/tx.c struct i2400m_msg_hdr *msg_hdr = i2400m->tx_msg; i2400m 561 drivers/net/wimax/i2400m/tx.c void i2400m_tx_new(struct i2400m *i2400m) i2400m 563 drivers/net/wimax/i2400m/tx.c struct device *dev = i2400m_dev(i2400m); i2400m 566 drivers/net/wimax/i2400m/tx.c BUG_ON(i2400m->tx_msg != NULL); i2400m 576 drivers/net/wimax/i2400m/tx.c tx_msg = i2400m_tx_fifo_push(i2400m, I2400M_TX_PLD_SIZE, i2400m 577 drivers/net/wimax/i2400m/tx.c i2400m->bus_tx_room_min, try_head); i2400m 581 drivers/net/wimax/i2400m/tx.c i2400m_tx_skip_tail(i2400m); i2400m 589 drivers/net/wimax/i2400m/tx.c i2400m->tx_msg = tx_msg; i2400m 591 drivers/net/wimax/i2400m/tx.c tx_msg, (void *) tx_msg - i2400m->tx_buf); i2400m 613 drivers/net/wimax/i2400m/tx.c void i2400m_tx_close(struct i2400m *i2400m) i2400m 615 drivers/net/wimax/i2400m/tx.c struct device *dev = i2400m_dev(i2400m); i2400m 616 drivers/net/wimax/i2400m/tx.c struct i2400m_msg_hdr *tx_msg = i2400m->tx_msg; i2400m 653 drivers/net/wimax/i2400m/tx.c aligned_size = ALIGN(tx_msg_moved->size, i2400m->bus_tx_block_size); i2400m 656 drivers/net/wimax/i2400m/tx.c pad_buf = i2400m_tx_fifo_push(i2400m, padding, 0, 0); i2400m 667 drivers/net/wimax/i2400m/tx.c aligned_size, i2400m->tx_buf, i2400m->tx_in, i2400m 668 drivers/net/wimax/i2400m/tx.c i2400m->tx_out); i2400m 677 drivers/net/wimax/i2400m/tx.c i2400m->tx_msg = NULL; i2400m 713 drivers/net/wimax/i2400m/tx.c int i2400m_tx(struct i2400m *i2400m, const void *buf, size_t buf_len, i2400m 717 drivers/net/wimax/i2400m/tx.c struct device *dev = i2400m_dev(i2400m); i2400m 726 drivers/net/wimax/i2400m/tx.c i2400m, buf, buf_len, pl_type); i2400m 732 drivers/net/wimax/i2400m/tx.c spin_lock_irqsave(&i2400m->tx_lock, flags); i2400m 734 drivers/net/wimax/i2400m/tx.c if (i2400m->tx_buf == NULL) { i2400m 739 drivers/net/wimax/i2400m/tx.c if (unlikely(i2400m->tx_msg == NULL)) i2400m 740 drivers/net/wimax/i2400m/tx.c i2400m_tx_new(i2400m); i2400m 741 drivers/net/wimax/i2400m/tx.c else if (unlikely(!i2400m_tx_fits(i2400m) i2400m 742 drivers/net/wimax/i2400m/tx.c || (is_singleton && i2400m->tx_msg->num_pls != 0))) { i2400m 744 drivers/net/wimax/i2400m/tx.c "%u num_pls %u)\n", i2400m_tx_fits(i2400m), i2400m 745 drivers/net/wimax/i2400m/tx.c is_singleton, i2400m->tx_msg->num_pls); i2400m 746 drivers/net/wimax/i2400m/tx.c i2400m_tx_close(i2400m); i2400m 747 drivers/net/wimax/i2400m/tx.c i2400m_tx_new(i2400m); i2400m 749 drivers/net/wimax/i2400m/tx.c if (i2400m->tx_msg == NULL) i2400m 757 drivers/net/wimax/i2400m/tx.c if (i2400m->tx_msg->size + padded_len > I2400M_TX_MSG_SIZE) { i2400m 759 drivers/net/wimax/i2400m/tx.c i2400m_tx_close(i2400m); i2400m 760 drivers/net/wimax/i2400m/tx.c i2400m_tx_new(i2400m); i2400m 762 drivers/net/wimax/i2400m/tx.c if (i2400m->tx_msg == NULL) i2400m 766 drivers/net/wimax/i2400m/tx.c ptr = i2400m_tx_fifo_push(i2400m, padded_len, i2400m 767 drivers/net/wimax/i2400m/tx.c i2400m->bus_tx_block_size, try_head); i2400m 770 drivers/net/wimax/i2400m/tx.c i2400m_tx_close(i2400m); i2400m 771 drivers/net/wimax/i2400m/tx.c i2400m_tx_skip_tail(i2400m); i2400m 778 drivers/net/wimax/i2400m/tx.c struct i2400m_msg_hdr *tx_msg = i2400m->tx_msg; i2400m 792 drivers/net/wimax/i2400m/tx.c (void *)tx_msg - i2400m->tx_buf, (size_t)tx_msg->size, i2400m 793 drivers/net/wimax/i2400m/tx.c num_pls+1, ptr - i2400m->tx_buf, buf_len, padded_len); i2400m 796 drivers/net/wimax/i2400m/tx.c i2400m_tx_close(i2400m); i2400m 799 drivers/net/wimax/i2400m/tx.c spin_unlock_irqrestore(&i2400m->tx_lock, flags); i2400m 803 drivers/net/wimax/i2400m/tx.c i2400m->bus_tx_kick(i2400m); i2400m 805 drivers/net/wimax/i2400m/tx.c i2400m, buf, buf_len, pl_type, result); i2400m 837 drivers/net/wimax/i2400m/tx.c struct i2400m_msg_hdr *i2400m_tx_msg_get(struct i2400m *i2400m, i2400m 840 drivers/net/wimax/i2400m/tx.c struct device *dev = i2400m_dev(i2400m); i2400m 844 drivers/net/wimax/i2400m/tx.c d_fnstart(3, dev, "(i2400m %p bus_size %p)\n", i2400m, bus_size); i2400m 845 drivers/net/wimax/i2400m/tx.c spin_lock_irqsave(&i2400m->tx_lock, flags); i2400m 847 drivers/net/wimax/i2400m/tx.c if (i2400m->tx_buf == NULL) i2400m 851 drivers/net/wimax/i2400m/tx.c if (i2400m->tx_in == i2400m->tx_out) { /* Empty FIFO? */ i2400m 852 drivers/net/wimax/i2400m/tx.c i2400m->tx_in = 0; i2400m 853 drivers/net/wimax/i2400m/tx.c i2400m->tx_out = 0; i2400m 857 drivers/net/wimax/i2400m/tx.c tx_msg = i2400m->tx_buf + i2400m->tx_out % I2400M_TX_BUF_SIZE; i2400m 860 drivers/net/wimax/i2400m/tx.c i2400m->tx_out % I2400M_TX_BUF_SIZE, i2400m 862 drivers/net/wimax/i2400m/tx.c i2400m->tx_out += tx_msg->size & ~I2400M_TX_SKIP; i2400m 867 drivers/net/wimax/i2400m/tx.c if (tx_msg == i2400m->tx_msg) { /* open, we are done */ i2400m 870 drivers/net/wimax/i2400m/tx.c (void *) tx_msg - i2400m->tx_buf); i2400m 876 drivers/net/wimax/i2400m/tx.c (void *) tx_msg - i2400m->tx_buf, i2400m 878 drivers/net/wimax/i2400m/tx.c i2400m->tx_out += tx_msg->size & ~I2400M_TX_SKIP; i2400m 882 drivers/net/wimax/i2400m/tx.c if (tx_msg == i2400m->tx_msg) /* open msg? */ i2400m 883 drivers/net/wimax/i2400m/tx.c i2400m_tx_close(i2400m); i2400m 887 drivers/net/wimax/i2400m/tx.c i2400m->tx_msg_size = tx_msg->size; i2400m 891 drivers/net/wimax/i2400m/tx.c current->pid, (void *) tx_msg - i2400m->tx_buf, i2400m 895 drivers/net/wimax/i2400m/tx.c tx_msg_moved->sequence = le32_to_cpu(i2400m->tx_sequence++); i2400m 898 drivers/net/wimax/i2400m/tx.c i2400m->tx_pl_num += pls; /* Update stats */ i2400m 899 drivers/net/wimax/i2400m/tx.c if (pls > i2400m->tx_pl_max) i2400m 900 drivers/net/wimax/i2400m/tx.c i2400m->tx_pl_max = pls; i2400m 901 drivers/net/wimax/i2400m/tx.c if (pls < i2400m->tx_pl_min) i2400m 902 drivers/net/wimax/i2400m/tx.c i2400m->tx_pl_min = pls; i2400m 903 drivers/net/wimax/i2400m/tx.c i2400m->tx_num++; i2400m 904 drivers/net/wimax/i2400m/tx.c i2400m->tx_size_acc += *bus_size; i2400m 905 drivers/net/wimax/i2400m/tx.c if (*bus_size < i2400m->tx_size_min) i2400m 906 drivers/net/wimax/i2400m/tx.c i2400m->tx_size_min = *bus_size; i2400m 907 drivers/net/wimax/i2400m/tx.c if (*bus_size > i2400m->tx_size_max) i2400m 908 drivers/net/wimax/i2400m/tx.c i2400m->tx_size_max = *bus_size; i2400m 910 drivers/net/wimax/i2400m/tx.c spin_unlock_irqrestore(&i2400m->tx_lock, flags); i2400m 912 drivers/net/wimax/i2400m/tx.c i2400m, bus_size, *bus_size, tx_msg_moved); i2400m 930 drivers/net/wimax/i2400m/tx.c void i2400m_tx_msg_sent(struct i2400m *i2400m) i2400m 934 drivers/net/wimax/i2400m/tx.c struct device *dev = i2400m_dev(i2400m); i2400m 936 drivers/net/wimax/i2400m/tx.c d_fnstart(3, dev, "(i2400m %p)\n", i2400m); i2400m 937 drivers/net/wimax/i2400m/tx.c spin_lock_irqsave(&i2400m->tx_lock, flags); i2400m 938 drivers/net/wimax/i2400m/tx.c if (i2400m->tx_buf == NULL) i2400m 940 drivers/net/wimax/i2400m/tx.c i2400m->tx_out += i2400m->tx_msg_size; i2400m 941 drivers/net/wimax/i2400m/tx.c d_printf(2, dev, "TX: sent %zu b\n", (size_t) i2400m->tx_msg_size); i2400m 942 drivers/net/wimax/i2400m/tx.c i2400m->tx_msg_size = 0; i2400m 943 drivers/net/wimax/i2400m/tx.c BUG_ON(i2400m->tx_out > i2400m->tx_in); i2400m 945 drivers/net/wimax/i2400m/tx.c n = i2400m->tx_out / I2400M_TX_BUF_SIZE; i2400m 946 drivers/net/wimax/i2400m/tx.c i2400m->tx_out %= I2400M_TX_BUF_SIZE; i2400m 947 drivers/net/wimax/i2400m/tx.c i2400m->tx_in -= n * I2400M_TX_BUF_SIZE; i2400m 949 drivers/net/wimax/i2400m/tx.c spin_unlock_irqrestore(&i2400m->tx_lock, flags); i2400m 950 drivers/net/wimax/i2400m/tx.c d_fnend(3, dev, "(i2400m %p) = void\n", i2400m); i2400m 963 drivers/net/wimax/i2400m/tx.c int i2400m_tx_setup(struct i2400m *i2400m) i2400m 972 drivers/net/wimax/i2400m/tx.c INIT_WORK(&i2400m->wake_tx_ws, i2400m_wake_tx_work); i2400m 985 drivers/net/wimax/i2400m/tx.c spin_lock_irqsave(&i2400m->tx_lock, flags); i2400m 986 drivers/net/wimax/i2400m/tx.c i2400m->tx_sequence = 0; i2400m 987 drivers/net/wimax/i2400m/tx.c i2400m->tx_in = 0; i2400m 988 drivers/net/wimax/i2400m/tx.c i2400m->tx_out = 0; i2400m 989 drivers/net/wimax/i2400m/tx.c i2400m->tx_msg_size = 0; i2400m 990 drivers/net/wimax/i2400m/tx.c i2400m->tx_msg = NULL; i2400m 991 drivers/net/wimax/i2400m/tx.c i2400m->tx_buf = tx_buf; i2400m 992 drivers/net/wimax/i2400m/tx.c spin_unlock_irqrestore(&i2400m->tx_lock, flags); i2400m 994 drivers/net/wimax/i2400m/tx.c BUG_ON(i2400m->bus_tx_block_size == 0); i2400m 1004 drivers/net/wimax/i2400m/tx.c void i2400m_tx_release(struct i2400m *i2400m) i2400m 1007 drivers/net/wimax/i2400m/tx.c spin_lock_irqsave(&i2400m->tx_lock, flags); i2400m 1008 drivers/net/wimax/i2400m/tx.c kfree(i2400m->tx_buf); i2400m 1009 drivers/net/wimax/i2400m/tx.c i2400m->tx_buf = NULL; i2400m 1010 drivers/net/wimax/i2400m/tx.c spin_unlock_irqrestore(&i2400m->tx_lock, flags); i2400m 181 drivers/net/wimax/i2400m/usb-fw.c ssize_t i2400mu_bus_bm_cmd_send(struct i2400m *i2400m, i2400m 186 drivers/net/wimax/i2400m/usb-fw.c struct device *dev = i2400m_dev(i2400m); i2400m 187 drivers/net/wimax/i2400m/usb-fw.c struct i2400mu *i2400mu = container_of(i2400m, struct i2400mu, i2400m); i2400m 193 drivers/net/wimax/i2400m/usb-fw.c i2400m, _cmd, cmd_size); i2400m 197 drivers/net/wimax/i2400m/usb-fw.c if (_cmd != i2400m->bm_cmd_buf) i2400m 198 drivers/net/wimax/i2400m/usb-fw.c memmove(i2400m->bm_cmd_buf, _cmd, cmd_size); i2400m 199 drivers/net/wimax/i2400m/usb-fw.c cmd = i2400m->bm_cmd_buf; i2400m 201 drivers/net/wimax/i2400m/usb-fw.c memset(i2400m->bm_cmd_buf + cmd_size, 0, cmd_size_a - cmd_size); i2400m 207 drivers/net/wimax/i2400m/usb-fw.c result = i2400mu_tx_bulk_out(i2400mu, i2400m->bm_cmd_buf, cmd_size); i2400m 223 drivers/net/wimax/i2400m/usb-fw.c i2400m, _cmd, cmd_size, result); i2400m 248 drivers/net/wimax/i2400m/usb-fw.c struct i2400m *i2400m = &i2400mu->i2400m; i2400m 256 drivers/net/wimax/i2400m/usb-fw.c i2400m->bm_ack_buf, I2400M_BM_ACK_BUF_SIZE, i2400m 276 drivers/net/wimax/i2400m/usb-fw.c ssize_t i2400mu_bus_bm_wait_for_ack(struct i2400m *i2400m, i2400m 281 drivers/net/wimax/i2400m/usb-fw.c struct device *dev = i2400m_dev(i2400m); i2400m 282 drivers/net/wimax/i2400m/usb-fw.c struct i2400mu *i2400mu = container_of(i2400m, struct i2400mu, i2400m); i2400m 291 drivers/net/wimax/i2400m/usb-fw.c i2400m, ack, ack_size); i2400m 292 drivers/net/wimax/i2400m/usb-fw.c BUG_ON(_ack == i2400m->bm_ack_buf); i2400m 345 drivers/net/wimax/i2400m/usb-fw.c memcpy(ack + offset, i2400m->bm_ack_buf, len); i2400m 356 drivers/net/wimax/i2400m/usb-fw.c i2400m, ack, ack_size, (long) result); i2400m 87 drivers/net/wimax/i2400m/usb-notif.c struct i2400m *i2400m = &i2400mu->i2400m; i2400m 100 drivers/net/wimax/i2400m/usb-notif.c ret = i2400m_is_boot_barker(i2400m, buf, buf_len); i2400m 102 drivers/net/wimax/i2400m/usb-notif.c ret = i2400m_dev_reset_handle(i2400m, "device rebooted"); i2400m 104 drivers/net/wimax/i2400m/usb-notif.c i2400m_unknown_barker(i2400m, buf, buf_len); i2400m 332 drivers/net/wimax/i2400m/usb-rx.c struct i2400m *i2400m = &i2400mu->i2400m; i2400m 334 drivers/net/wimax/i2400m/usb-rx.c struct net_device *net_dev = i2400m->wimax_dev.net_dev; i2400m 341 drivers/net/wimax/i2400m/usb-rx.c spin_lock_irqsave(&i2400m->rx_lock, flags); i2400m 344 drivers/net/wimax/i2400m/usb-rx.c spin_unlock_irqrestore(&i2400m->rx_lock, flags); i2400m 382 drivers/net/wimax/i2400m/usb-rx.c result = i2400m_rx(i2400m, rx_skb); i2400m 394 drivers/net/wimax/i2400m/usb-rx.c spin_lock_irqsave(&i2400m->rx_lock, flags); i2400m 396 drivers/net/wimax/i2400m/usb-rx.c spin_unlock_irqrestore(&i2400m->rx_lock, flags); i2400m 417 drivers/net/wimax/i2400m/usb-rx.c struct i2400m *i2400m = &i2400mu->i2400m; i2400m 420 drivers/net/wimax/i2400m/usb-rx.c d_fnstart(3, dev, "(i2400mu %p)\n", i2400m); i2400m 423 drivers/net/wimax/i2400m/usb-rx.c d_fnend(3, dev, "(i2400m %p) = void\n", i2400m); i2400m 430 drivers/net/wimax/i2400m/usb-rx.c struct i2400m *i2400m = &i2400mu->i2400m; i2400m 432 drivers/net/wimax/i2400m/usb-rx.c struct wimax_dev *wimax_dev = &i2400m->wimax_dev; i2400m 449 drivers/net/wimax/i2400m/usb-rx.c struct i2400m *i2400m = &i2400mu->i2400m; i2400m 450 drivers/net/wimax/i2400m/usb-rx.c struct device *dev = i2400m_dev(i2400m); i2400m 453 drivers/net/wimax/i2400m/usb-rx.c spin_lock_irqsave(&i2400m->rx_lock, flags); i2400m 456 drivers/net/wimax/i2400m/usb-rx.c spin_unlock_irqrestore(&i2400m->rx_lock, flags); i2400m 91 drivers/net/wimax/i2400m/usb-tx.c struct i2400m *i2400m = &i2400mu->i2400m; i2400m 156 drivers/net/wimax/i2400m/usb-tx.c (void *) tx_msg - i2400m->tx_buf, i2400m 181 drivers/net/wimax/i2400m/usb-tx.c struct i2400m *i2400m = &i2400mu->i2400m; i2400m 189 drivers/net/wimax/i2400m/usb-tx.c spin_lock_irqsave(&i2400m->tx_lock, flags); i2400m 192 drivers/net/wimax/i2400m/usb-tx.c spin_unlock_irqrestore(&i2400m->tx_lock, flags); i2400m 200 drivers/net/wimax/i2400m/usb-tx.c || (tx_msg = i2400m_tx_msg_get(i2400m, &tx_msg_size))) i2400m 209 drivers/net/wimax/i2400m/usb-tx.c i2400m_tx_msg_sent(i2400m); /* ack it, advance the FIFO */ i2400m 212 drivers/net/wimax/i2400m/usb-tx.c spin_lock_irqsave(&i2400m->tx_lock, flags); i2400m 214 drivers/net/wimax/i2400m/usb-tx.c spin_unlock_irqrestore(&i2400m->tx_lock, flags); i2400m 229 drivers/net/wimax/i2400m/usb-tx.c void i2400mu_bus_tx_kick(struct i2400m *i2400m) i2400m 231 drivers/net/wimax/i2400m/usb-tx.c struct i2400mu *i2400mu = container_of(i2400m, struct i2400mu, i2400m); i2400m 234 drivers/net/wimax/i2400m/usb-tx.c d_fnstart(3, dev, "(i2400m %p) = void\n", i2400m); i2400m 236 drivers/net/wimax/i2400m/usb-tx.c d_fnend(3, dev, "(i2400m %p) = void\n", i2400m); i2400m 243 drivers/net/wimax/i2400m/usb-tx.c struct i2400m *i2400m = &i2400mu->i2400m; i2400m 245 drivers/net/wimax/i2400m/usb-tx.c struct wimax_dev *wimax_dev = &i2400m->wimax_dev; i2400m 261 drivers/net/wimax/i2400m/usb-tx.c struct i2400m *i2400m = &i2400mu->i2400m; i2400m 262 drivers/net/wimax/i2400m/usb-tx.c struct device *dev = i2400m_dev(i2400m); i2400m 265 drivers/net/wimax/i2400m/usb-tx.c spin_lock_irqsave(&i2400m->tx_lock, flags); i2400m 268 drivers/net/wimax/i2400m/usb-tx.c spin_unlock_irqrestore(&i2400m->tx_lock, flags); i2400m 87 drivers/net/wimax/i2400m/usb.c int i2400mu_bus_dev_start(struct i2400m *i2400m) i2400m 90 drivers/net/wimax/i2400m/usb.c struct i2400mu *i2400mu = container_of(i2400m, struct i2400mu, i2400m); i2400m 93 drivers/net/wimax/i2400m/usb.c d_fnstart(3, dev, "(i2400m %p)\n", i2400m); i2400m 103 drivers/net/wimax/i2400m/usb.c d_fnend(3, dev, "(i2400m %p) = %d\n", i2400m, result); i2400m 111 drivers/net/wimax/i2400m/usb.c d_fnend(3, dev, "(i2400m %p) = void\n", i2400m); i2400m 117 drivers/net/wimax/i2400m/usb.c void i2400mu_bus_dev_stop(struct i2400m *i2400m) i2400m 119 drivers/net/wimax/i2400m/usb.c struct i2400mu *i2400mu = container_of(i2400m, struct i2400mu, i2400m); i2400m 122 drivers/net/wimax/i2400m/usb.c d_fnstart(3, dev, "(i2400m %p)\n", i2400m); i2400m 126 drivers/net/wimax/i2400m/usb.c d_fnend(3, dev, "(i2400m %p) = void\n", i2400m); i2400m 261 drivers/net/wimax/i2400m/usb.c int i2400mu_bus_reset(struct i2400m *i2400m, enum i2400m_reset_type rt) i2400m 265 drivers/net/wimax/i2400m/usb.c container_of(i2400m, struct i2400mu, i2400m); i2400m 266 drivers/net/wimax/i2400m/usb.c struct device *dev = i2400m_dev(i2400m); i2400m 280 drivers/net/wimax/i2400m/usb.c d_fnstart(3, dev, "(i2400m %p rt %u)\n", i2400m, rt); i2400m 324 drivers/net/wimax/i2400m/usb.c d_fnend(3, dev, "(i2400m %p rt %u) = %d\n", i2400m, rt, result); i2400m 331 drivers/net/wimax/i2400m/usb.c struct i2400m *i2400m = net_dev_to_i2400m(net_dev); i2400m 332 drivers/net/wimax/i2400m/usb.c struct i2400mu *i2400mu = container_of(i2400m, struct i2400mu, i2400m); i2400m 336 drivers/net/wimax/i2400m/usb.c strlcpy(info->fw_version, i2400m->fw_name ? : "", i2400m 349 drivers/net/wimax/i2400m/usb.c struct i2400m *i2400m = net_dev_to_i2400m(net_dev); i2400m 350 drivers/net/wimax/i2400m/usb.c struct i2400mu *i2400mu = container_of(i2400m, struct i2400mu, i2400m); i2400m 372 drivers/net/wimax/i2400m/usb.c struct dentry *dentry = i2400mu->i2400m.wimax_dev.debugfs_dentry; i2400m 416 drivers/net/wimax/i2400m/usb.c struct i2400m *i2400m; i2400m 436 drivers/net/wimax/i2400m/usb.c i2400m = net_dev_to_i2400m(net_dev); i2400m 437 drivers/net/wimax/i2400m/usb.c i2400mu = container_of(i2400m, struct i2400mu, i2400m); i2400m 438 drivers/net/wimax/i2400m/usb.c i2400m->wimax_dev.net_dev = net_dev; i2400m 443 drivers/net/wimax/i2400m/usb.c i2400m->bus_tx_block_size = I2400MU_BLK_SIZE; i2400m 450 drivers/net/wimax/i2400m/usb.c i2400m->bus_tx_room_min = I2400MU_BLK_SIZE; i2400m 451 drivers/net/wimax/i2400m/usb.c i2400m->bus_pl_size_max = I2400MU_PL_SIZE_MAX; i2400m 452 drivers/net/wimax/i2400m/usb.c i2400m->bus_setup = NULL; i2400m 453 drivers/net/wimax/i2400m/usb.c i2400m->bus_dev_start = i2400mu_bus_dev_start; i2400m 454 drivers/net/wimax/i2400m/usb.c i2400m->bus_dev_stop = i2400mu_bus_dev_stop; i2400m 455 drivers/net/wimax/i2400m/usb.c i2400m->bus_release = NULL; i2400m 456 drivers/net/wimax/i2400m/usb.c i2400m->bus_tx_kick = i2400mu_bus_tx_kick; i2400m 457 drivers/net/wimax/i2400m/usb.c i2400m->bus_reset = i2400mu_bus_reset; i2400m 458 drivers/net/wimax/i2400m/usb.c i2400m->bus_bm_retries = I2400M_USB_BOOT_RETRIES; i2400m 459 drivers/net/wimax/i2400m/usb.c i2400m->bus_bm_cmd_send = i2400mu_bus_bm_cmd_send; i2400m 460 drivers/net/wimax/i2400m/usb.c i2400m->bus_bm_wait_for_ack = i2400mu_bus_bm_wait_for_ack; i2400m 461 drivers/net/wimax/i2400m/usb.c i2400m->bus_bm_mac_addr_impaired = 0; i2400m 477 drivers/net/wimax/i2400m/usb.c i2400m->bus_fw_names = i2400mu_bus_fw_names_6050; i2400m 483 drivers/net/wimax/i2400m/usb.c i2400m->bus_fw_names = i2400mu_bus_fw_names_5x50; i2400m 496 drivers/net/wimax/i2400m/usb.c result = i2400m_setup(i2400m, I2400M_BRI_MAC_REINIT); i2400m 524 drivers/net/wimax/i2400m/usb.c struct i2400m *i2400m = &i2400mu->i2400m; i2400m 525 drivers/net/wimax/i2400m/usb.c struct net_device *net_dev = i2400m->wimax_dev.net_dev; i2400m 528 drivers/net/wimax/i2400m/usb.c d_fnstart(3, dev, "(iface %p i2400m %p)\n", iface, i2400m); i2400m 531 drivers/net/wimax/i2400m/usb.c i2400m_release(i2400m); i2400m 535 drivers/net/wimax/i2400m/usb.c d_fnend(3, dev, "(iface %p i2400m %p) = void\n", iface, i2400m); i2400m 584 drivers/net/wimax/i2400m/usb.c struct i2400m *i2400m = &i2400mu->i2400m; i2400m 593 drivers/net/wimax/i2400m/usb.c if (i2400m->updown == 0) i2400m 595 drivers/net/wimax/i2400m/usb.c if (i2400m->state == I2400M_SS_DATA_PATH_CONNECTED && is_autosuspend) { i2400m 617 drivers/net/wimax/i2400m/usb.c result = i2400m_cmd_enter_powersave(i2400m); i2400m 643 drivers/net/wimax/i2400m/usb.c struct i2400m *i2400m = &i2400mu->i2400m; i2400m 647 drivers/net/wimax/i2400m/usb.c if (i2400m->updown == 0) { i2400m 668 drivers/net/wimax/i2400m/usb.c struct i2400m *i2400m = &i2400mu->i2400m; i2400m 671 drivers/net/wimax/i2400m/usb.c result = i2400m_dev_reset_handle(i2400m, "device reset on resume"); i2400m 689 drivers/net/wimax/i2400m/usb.c return i2400m_pre_reset(&i2400mu->i2400m); i2400m 704 drivers/net/wimax/i2400m/usb.c return i2400m_post_reset(&i2400mu->i2400m);