Lines Matching defs:i2400m
43 * The i2400m driver is split in the following two major parts:
55 * i2400m-BUSNAME.h
104 * (include/linux/wimax/i2400m.h); these can be also used by user
114 * &struct i2400m at the top.
116 * On probe, it needs to fill the i2400m members marked as [fill], as
117 * well as i2400m->wimax_dev.net_dev and call i2400m_setup(). The
118 * i2400m driver will only register with the WiMAX and network stacks;
126 * i2400m->bus_setup()
130 * i2400m->bus_dev_start()
139 * i2400m->bus_dev_stop()
141 * i2400m->bus_release()
160 #include <linux/wimax/i2400m.h>
229 * struct i2400m - descriptor for an Intel 2400m
303 * IMPORTANT: don't call reset on RT_BUS with i2400m->init_mutex
336 * should be i2400m-fw-X-VERSION.sbcf, where X is the bus name.
338 * used. The fw loader will set i2400m->fw_name to point to the
362 * Write to it only inside a i2400m->init_mutex protected area
364 * inside i2400m->init_mutex). Read access can be loose like that
372 * Write to it only inside a i2400m->init_mutex protected area
374 * inside i2400m->init_mutex). Read access can be loose like that
441 * drivers/net/i2400m/rx.c for details.
524 * the spinlock i2400m->rx_lock.
552 * (i2400m->alive remains 1) until the driver is removed. Therefore
566 struct i2400m {
584 int (*bus_setup)(struct i2400m *);
585 int (*bus_dev_start)(struct i2400m *);
586 void (*bus_dev_stop)(struct i2400m *);
587 void (*bus_release)(struct i2400m *);
588 void (*bus_tx_kick)(struct i2400m *);
589 int (*bus_reset)(struct i2400m *, enum i2400m_reset_type);
590 ssize_t (*bus_bm_cmd_send)(struct i2400m *,
593 ssize_t (*bus_bm_wait_for_ack)(struct i2400m *,
666 struct i2400m *wimax_dev_to_i2400m(struct wimax_dev *wimax_dev)
668 return container_of(wimax_dev, struct i2400m, wimax_dev);
672 struct i2400m *net_dev_to_i2400m(struct net_device *net_dev)
714 int i2400m_dev_bootstrap(struct i2400m *, enum i2400m_bri);
715 int i2400m_read_mac_addr(struct i2400m *);
716 int i2400m_bootrom_init(struct i2400m *, enum i2400m_bri);
717 int i2400m_is_boot_barker(struct i2400m *, const void *, size_t);
724 void i2400m_unknown_barker(struct i2400m *, const void *, size_t);
792 void i2400m_init(struct i2400m *);
793 int i2400m_reset(struct i2400m *, enum i2400m_reset_type);
797 int i2400m_tx_setup(struct i2400m *);
799 void i2400m_tx_release(struct i2400m *);
801 int i2400m_rx_setup(struct i2400m *);
802 void i2400m_rx_release(struct i2400m *);
804 void i2400m_fw_cache(struct i2400m *);
805 void i2400m_fw_uncache(struct i2400m *);
807 void i2400m_net_rx(struct i2400m *, struct sk_buff *, unsigned, const void *,
809 void i2400m_net_erx(struct i2400m *, struct sk_buff *, enum i2400m_cs);
810 void i2400m_net_wake_stop(struct i2400m *);
812 int i2400m_tx(struct i2400m *, const void *, size_t, enum i2400m_pt);
815 void i2400m_debugfs_add(struct i2400m *);
816 void i2400m_debugfs_rm(struct i2400m *);
818 static inline void i2400m_debugfs_add(struct i2400m *i2400m) {}
819 static inline void i2400m_debugfs_rm(struct i2400m *i2400m) {}
823 int i2400m_dev_initialize(struct i2400m *);
824 void i2400m_dev_shutdown(struct i2400m *);
860 struct i2400m *i2400m_get(struct i2400m *i2400m)
862 dev_hold(i2400m->wimax_dev.net_dev);
863 return i2400m;
867 void i2400m_put(struct i2400m *i2400m)
869 dev_put(i2400m->wimax_dev.net_dev);
872 int i2400m_dev_reset_handle(struct i2400m *, const char *);
873 int i2400m_pre_reset(struct i2400m *);
874 int i2400m_post_reset(struct i2400m *);
875 void i2400m_error_recovery(struct i2400m *);
881 int i2400m_setup(struct i2400m *, enum i2400m_bri bm_flags);
882 void i2400m_release(struct i2400m *);
884 int i2400m_rx(struct i2400m *, struct sk_buff *);
885 struct i2400m_msg_hdr *i2400m_tx_msg_get(struct i2400m *, size_t *);
886 void i2400m_tx_msg_sent(struct i2400m *);
894 struct device *i2400m_dev(struct i2400m *i2400m)
896 return i2400m->wimax_dev.net_dev->dev.parent;
900 int i2400m_msg_size_check(struct i2400m *, const struct i2400m_l3l4_hdr *,
902 struct sk_buff *i2400m_msg_to_dev(struct i2400m *, const void *, size_t);
903 void i2400m_msg_to_dev_cancel_wait(struct i2400m *, int);
904 void i2400m_report_hook(struct i2400m *, const struct i2400m_l3l4_hdr *,
907 int i2400m_cmd_enter_powersave(struct i2400m *);
908 int i2400m_cmd_exit_idle(struct i2400m *);
909 struct sk_buff *i2400m_get_device_info(struct i2400m *);
910 int i2400m_firmware_check(struct i2400m *);
911 int i2400m_set_idle_timeout(struct i2400m *, unsigned);
920 void i2400m_report_tlv_rf_switches_status(struct i2400m *,
936 unsigned i2400m_le_v1_3(struct i2400m *i2400m)
939 return i2400m->fw_version <= 0x00090001;
943 unsigned i2400m_ge_v1_4(struct i2400m *i2400m)
946 return i2400m->fw_version >= 0x00090002;