Lines Matching refs:i2400m
162 struct i2400m *i2400m, in i2400m_tlv_buffer_walk() argument
166 struct device *dev = i2400m_dev(i2400m); in i2400m_tlv_buffer_walk()
225 struct i2400m *i2400m, in i2400m_tlv_find() argument
230 struct device *dev = i2400m_dev(i2400m); in i2400m_tlv_find()
232 while ((tlv = i2400m_tlv_buffer_walk(i2400m, tlv_hdr, size, tlv))) { in i2400m_tlv_find()
311 void i2400m_report_tlv_system_state(struct i2400m *i2400m, in i2400m_report_tlv_system_state() argument
314 struct device *dev = i2400m_dev(i2400m); in i2400m_report_tlv_system_state()
315 struct wimax_dev *wimax_dev = &i2400m->wimax_dev; in i2400m_report_tlv_system_state()
318 d_fnstart(3, dev, "(i2400m %p ss %p [%u])\n", i2400m, ss, i2400m_state); in i2400m_report_tlv_system_state()
320 if (i2400m->state != i2400m_state) { in i2400m_report_tlv_system_state()
321 i2400m->state = i2400m_state; in i2400m_report_tlv_system_state()
322 wake_up_all(&i2400m->state_wq); in i2400m_report_tlv_system_state()
364 i2400m_reset(i2400m, I2400M_RT_WARM); in i2400m_report_tlv_system_state()
368 i2400m, ss, i2400m_state); in i2400m_report_tlv_system_state()
387 void i2400m_report_tlv_media_status(struct i2400m *i2400m, in i2400m_report_tlv_media_status() argument
390 struct device *dev = i2400m_dev(i2400m); in i2400m_report_tlv_media_status()
391 struct wimax_dev *wimax_dev = &i2400m->wimax_dev; in i2400m_report_tlv_media_status()
395 d_fnstart(3, dev, "(i2400m %p ms %p [%u])\n", i2400m, ms, status); in i2400m_report_tlv_media_status()
417 i2400m, ms, status); in i2400m_report_tlv_media_status()
432 void i2400m_report_state_parse_tlv(struct i2400m *i2400m, in i2400m_report_state_parse_tlv() argument
436 struct device *dev = i2400m_dev(i2400m); in i2400m_report_state_parse_tlv()
447 i2400m_report_tlv_system_state(i2400m, ss); in i2400m_report_state_parse_tlv()
456 i2400m_report_tlv_rf_switches_status(i2400m, rfss); in i2400m_report_state_parse_tlv()
462 i2400m_report_tlv_media_status(i2400m, ms); in i2400m_report_state_parse_tlv()
480 void i2400m_report_state_hook(struct i2400m *i2400m, in i2400m_report_state_hook() argument
484 struct device *dev = i2400m_dev(i2400m); in i2400m_report_state_hook()
489 i2400m, l3l4_hdr, size, tag); in i2400m_report_state_hook()
492 while ((tlv = i2400m_tlv_buffer_walk(i2400m, &l3l4_hdr->pl, in i2400m_report_state_hook()
494 i2400m_report_state_parse_tlv(i2400m, tlv, tag); in i2400m_report_state_hook()
496 i2400m, l3l4_hdr, size, tag); in i2400m_report_state_hook()
513 void i2400m_report_hook(struct i2400m *i2400m, in i2400m_report_hook() argument
516 struct device *dev = i2400m_dev(i2400m); in i2400m_report_hook()
520 i2400m, l3l4_hdr, size); in i2400m_report_hook()
526 i2400m_report_state_hook(i2400m, in i2400m_report_hook()
540 i2400m_cmd_enter_powersave(i2400m); in i2400m_report_hook()
546 i2400m, l3l4_hdr, size); in i2400m_report_hook()
563 static void i2400m_msg_ack_hook(struct i2400m *i2400m, in i2400m_msg_ack_hook() argument
568 struct device *dev = i2400m_dev(i2400m); in i2400m_msg_ack_hook()
598 int i2400m_msg_size_check(struct i2400m *i2400m, in i2400m_msg_size_check() argument
603 struct device *dev = i2400m_dev(i2400m); in i2400m_msg_size_check()
606 i2400m, l3l4_hdr, msg_size); in i2400m_msg_size_check()
625 i2400m, l3l4_hdr, msg_size, result); in i2400m_msg_size_check()
640 void i2400m_msg_to_dev_cancel_wait(struct i2400m *i2400m, int code) in i2400m_msg_to_dev_cancel_wait() argument
645 spin_lock_irqsave(&i2400m->rx_lock, flags); in i2400m_msg_to_dev_cancel_wait()
646 ack_skb = i2400m->ack_skb; in i2400m_msg_to_dev_cancel_wait()
649 i2400m->ack_skb = ERR_PTR(code); in i2400m_msg_to_dev_cancel_wait()
650 spin_unlock_irqrestore(&i2400m->rx_lock, flags); in i2400m_msg_to_dev_cancel_wait()
707 struct sk_buff *i2400m_msg_to_dev(struct i2400m *i2400m, in i2400m_msg_to_dev() argument
711 struct device *dev = i2400m_dev(i2400m); in i2400m_msg_to_dev()
721 i2400m, buf, buf_len); in i2400m_msg_to_dev()
724 if (i2400m->boot_mode) in i2400m_msg_to_dev()
729 result = i2400m_msg_size_check(i2400m, msg_l3l4_hdr, buf_len); in i2400m_msg_to_dev()
739 mutex_lock(&i2400m->msg_mutex); in i2400m_msg_to_dev()
740 spin_lock_irqsave(&i2400m->rx_lock, flags); in i2400m_msg_to_dev()
741 i2400m->ack_skb = ERR_PTR(-EINPROGRESS); in i2400m_msg_to_dev()
742 spin_unlock_irqrestore(&i2400m->rx_lock, flags); in i2400m_msg_to_dev()
743 init_completion(&i2400m->msg_completion); in i2400m_msg_to_dev()
744 result = i2400m_tx(i2400m, buf, buf_len, I2400M_PT_CTRL); in i2400m_msg_to_dev()
762 if (unlikely(i2400m->trace_msg_from_user)) in i2400m_msg_to_dev()
763 wimax_msg(&i2400m->wimax_dev, "echo", buf, buf_len, GFP_KERNEL); in i2400m_msg_to_dev()
769 &i2400m->msg_completion, ack_timeout); in i2400m_msg_to_dev()
774 i2400m_msg_to_dev_cancel_wait(i2400m, result); in i2400m_msg_to_dev()
779 i2400m_msg_to_dev_cancel_wait(i2400m, result); in i2400m_msg_to_dev()
785 spin_lock_irqsave(&i2400m->rx_lock, flags); in i2400m_msg_to_dev()
786 ack_skb = i2400m->ack_skb; in i2400m_msg_to_dev()
791 i2400m->ack_skb = NULL; in i2400m_msg_to_dev()
792 spin_unlock_irqrestore(&i2400m->rx_lock, flags); in i2400m_msg_to_dev()
798 if (unlikely(i2400m->trace_msg_from_user)) in i2400m_msg_to_dev()
799 wimax_msg(&i2400m->wimax_dev, "echo", in i2400m_msg_to_dev()
801 result = i2400m_msg_size_check(i2400m, ack_l3l4_hdr, ack_len); in i2400m_msg_to_dev()
813 i2400m_msg_ack_hook(i2400m, ack_l3l4_hdr, ack_len); in i2400m_msg_to_dev()
814 mutex_unlock(&i2400m->msg_mutex); in i2400m_msg_to_dev()
816 i2400m, buf, buf_len, ack_skb); in i2400m_msg_to_dev()
825 mutex_unlock(&i2400m->msg_mutex); in i2400m_msg_to_dev()
828 i2400m, buf, buf_len, result); in i2400m_msg_to_dev()
863 int i2400m_cmd_enter_powersave(struct i2400m *i2400m) in i2400m_cmd_enter_powersave() argument
866 struct device *dev = i2400m_dev(i2400m); in i2400m_cmd_enter_powersave()
882 ack_skb = i2400m_msg_to_dev(i2400m, cmd, sizeof(*cmd)); in i2400m_cmd_enter_powersave()
927 struct sk_buff *i2400m_get_device_info(struct i2400m *i2400m) in i2400m_get_device_info() argument
930 struct device *dev = i2400m_dev(i2400m); in i2400m_get_device_info()
947 ack_skb = i2400m_msg_to_dev(i2400m, cmd, sizeof(*cmd)); in i2400m_get_device_info()
961 tlv = i2400m_tlv_find(i2400m, ack->pl, ack_len - sizeof(*ack), in i2400m_get_device_info()
1009 int i2400m_firmware_check(struct i2400m *i2400m) in i2400m_firmware_check() argument
1012 struct device *dev = i2400m_dev(i2400m); in i2400m_firmware_check()
1030 ack_skb = i2400m_msg_to_dev(i2400m, cmd, sizeof(*cmd)); in i2400m_firmware_check()
1045 tlv = i2400m_tlv_find(i2400m, ack->pl, ack_len - sizeof(*ack), in i2400m_firmware_check()
1068 i2400m->fw_version = major << 16 | minor; in i2400m_firmware_check()
1093 int i2400m_cmd_exit_idle(struct i2400m *i2400m) in i2400m_cmd_exit_idle() argument
1096 struct device *dev = i2400m_dev(i2400m); in i2400m_cmd_exit_idle()
1109 ack_skb = i2400m_msg_to_dev(i2400m, cmd, sizeof(*cmd)); in i2400m_cmd_exit_idle()
1141 static int i2400m_cmd_get_state(struct i2400m *i2400m) in i2400m_cmd_get_state() argument
1144 struct device *dev = i2400m_dev(i2400m); in i2400m_cmd_get_state()
1159 ack_skb = i2400m_msg_to_dev(i2400m, cmd, sizeof(*cmd)); in i2400m_cmd_get_state()
1173 i2400m_report_state_hook(i2400m, ack, ack_len - sizeof(*ack), in i2400m_cmd_get_state()
1194 static int i2400m_set_init_config(struct i2400m *i2400m, in i2400m_set_init_config() argument
1199 struct device *dev = i2400m_dev(i2400m); in i2400m_set_init_config()
1207 d_fnstart(3, dev, "(i2400m %p arg %p args %zu)\n", i2400m, arg, args); in i2400m_set_init_config()
1240 ack_skb = i2400m_msg_to_dev(i2400m, buf, sizeof(*cmd) + argsize); in i2400m_set_init_config()
1259 i2400m, arg, args, result); in i2400m_set_init_config()
1282 int i2400m_set_idle_timeout(struct i2400m *i2400m, unsigned msecs) in i2400m_set_idle_timeout() argument
1285 struct device *dev = i2400m_dev(i2400m); in i2400m_set_idle_timeout()
1296 if (i2400m_le_v1_3(i2400m)) in i2400m_set_idle_timeout()
1311 ack_skb = i2400m_msg_to_dev(i2400m, cmd, sizeof(*cmd)); in i2400m_set_idle_timeout()
1348 int i2400m_dev_initialize(struct i2400m *i2400m) in i2400m_dev_initialize() argument
1351 struct device *dev = i2400m_dev(i2400m); in i2400m_dev_initialize()
1359 d_fnstart(3, dev, "(i2400m %p)\n", i2400m); in i2400m_dev_initialize()
1364 if (i2400m_le_v1_3(i2400m)) { in i2400m_dev_initialize()
1381 if (i2400m_ge_v1_4(i2400m)) { in i2400m_dev_initialize()
1392 if (i2400m->rx_reorder) { in i2400m_dev_initialize()
1401 result = i2400m_set_init_config(i2400m, args, argc); in i2400m_dev_initialize()
1411 result = i2400m_cmd_get_state(i2400m); in i2400m_dev_initialize()
1415 d_fnend(3, dev, "(i2400m %p) = %d\n", i2400m, result); in i2400m_dev_initialize()
1430 void i2400m_dev_shutdown(struct i2400m *i2400m) in i2400m_dev_shutdown() argument
1432 struct device *dev = i2400m_dev(i2400m); in i2400m_dev_shutdown()
1434 d_fnstart(3, dev, "(i2400m %p)\n", i2400m); in i2400m_dev_shutdown()
1435 d_fnend(3, dev, "(i2400m %p) = void\n", i2400m); in i2400m_dev_shutdown()