summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/libertas/decl.h
diff options
context:
space:
mode:
authorDan Williams <dcbw@redhat.com>2007-08-20 19:43:25 +0400
committerDavid S. Miller <davem@sunset.davemloft.net>2007-10-11 03:50:34 +0400
commit954ee164f4f4598afc172c0ec3865d0352e55a0b (patch)
tree51aae73210d22c0a91282a52b5198cfa1ad068b4 /drivers/net/wireless/libertas/decl.h
parentb1b1907dceadddc7d7317f8ae85a5efec44125d8 (diff)
downloadlinux-954ee164f4f4598afc172c0ec3865d0352e55a0b.tar.xz
[PATCH] libertas: reorganize and simplify init sequence
This patch moves all firmware load responsibility into the interface-specific code and gets rid of the firmware pointer in the generic card structure. It also removes 3 fairly unecessary callbacks: hw_register_dev, hw_unregister_dev, and hw_prog_firmware. It also makes the init sequence from interface probe functions more logical, as there are paired add/remove and start/stop calls into generic libertas code. Because the USB driver code uses the same TX URB callback for both firmware upload (where the generic libertas structure isn't initialized yet) and for normal operation (where it is), some bits of USB code have to deal with 'priv' being NULL. All USB firmware upload bits have been changed to not require 'priv' at all, but simply the USB card structure. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/libertas/decl.h')
-rw-r--r--drivers/net/wireless/libertas/decl.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/wireless/libertas/decl.h b/drivers/net/wireless/libertas/decl.h
index 095edf6a4c29..87fea9d5b90a 100644
--- a/drivers/net/wireless/libertas/decl.h
+++ b/drivers/net/wireless/libertas/decl.h
@@ -72,8 +72,9 @@ void libertas_send_iwevcustom_event(wlan_private * priv, s8 * str);
struct chan_freq_power *libertas_get_region_cfp_table(u8 region, u8 band,
int *cfp_no);
wlan_private *libertas_add_card(void *card, struct device *dmdev);
-int libertas_activate_card(wlan_private *priv);
int libertas_remove_card(wlan_private *priv);
+int libertas_start_card(wlan_private *priv);
+int libertas_stop_card(wlan_private *priv);
int libertas_add_mesh(wlan_private *priv, struct device *dev);
void libertas_remove_mesh(wlan_private *priv);
int libertas_reset_device(wlan_private *priv);