This functions makes all libertas_sbi_XXX functions static to the
if_usb.c file and renames them to if_usb_XXXX(). The get called from
other places of the source code via priv->hw_XXXX().

Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de>
---
 drivers/net/wireless/libertas/cmd.c     |    5 +--
 drivers/net/wireless/libertas/cmdresp.c |    1 -
 drivers/net/wireless/libertas/decl.h    |    5 ++++
 drivers/net/wireless/libertas/defs.h    |    7 ++++++
 drivers/net/wireless/libertas/dev.h     |    8 +++++++
 drivers/net/wireless/libertas/ethtool.c |    2 -
 drivers/net/wireless/libertas/fw.c      |    3 +-
 drivers/net/wireless/libertas/if_usb.c  |   32 +++++++++++++++++++++---------
 drivers/net/wireless/libertas/main.c    |   15 ++++++-------
 drivers/net/wireless/libertas/sbi.h     |   30 -----------------------------
 drivers/net/wireless/libertas/tx.c      |   11 ++++-----
 11 files changed, 57 insertions(+), 62 deletions(-)

diff --git a/drivers/net/wireless/libertas/cmd.c b/drivers/net/wireless/libertas/cmd.c
index 935cce2..ac9a982 100644
--- a/drivers/net/wireless/libertas/cmd.c
+++ b/drivers/net/wireless/libertas/cmd.c
@@ -6,7 +6,6 @@
 #include <net/iw_handler.h>
 #include "host.h"
 #include "hostcmd.h"
-#include "sbi.h"
 #include "decl.h"
 #include "defs.h"
 #include "dev.h"
@@ -1013,7 +1012,7 @@ static int DownloadcommandToStation(wlan_private * priv,
 	cmdnode->cmdwaitqwoken = 0;
 	cmdsize = cpu_to_le16(cmdsize);
 
-	ret = libertas_sbi_host_to_card(priv, MVMS_CMD, (u8 *) cmdptr, cmdsize);
+	ret = priv->hw_host_to_card(priv, MVMS_CMD, (u8 *) cmdptr, cmdsize);
 
 	if (ret != 0) {
 		lbs_deb_cmd("DNLD_CMD: Host to Card failed\n");
@@ -1840,7 +1839,7 @@ static int sendconfirmsleep(wlan_private * priv, u8 * cmdptr, u16 size)
 
 	lbs_dbg_hex("SEND_SLEEPC_CMD: Sleep confirm command", cmdptr, size);
 
-	ret = libertas_sbi_host_to_card(priv, MVMS_CMD, cmdptr, size);
+	ret = priv->hw_host_to_card(priv, MVMS_CMD, cmdptr, size);
 	priv->wlan_dev.dnld_sent = DNLD_RES_RECEIVED;
 
 	spin_lock_irqsave(&adapter->driver_lock, flags);
diff --git a/drivers/net/wireless/libertas/cmdresp.c b/drivers/net/wireless/libertas/cmdresp.c
index 027b91c..1b3d54d 100644
--- a/drivers/net/wireless/libertas/cmdresp.c
+++ b/drivers/net/wireless/libertas/cmdresp.c
@@ -9,7 +9,6 @@
 #include <net/iw_handler.h>
 
 #include "host.h"
-#include "sbi.h"
 #include "decl.h"
 #include "defs.h"
 #include "dev.h"
diff --git a/drivers/net/wireless/libertas/decl.h b/drivers/net/wireless/libertas/decl.h
index d7bb7b0..0df1f29 100644
--- a/drivers/net/wireless/libertas/decl.h
+++ b/drivers/net/wireless/libertas/decl.h
@@ -82,4 +82,9 @@ int libertas_remove_card(wlan_private *priv);
 int libertas_add_mesh(wlan_private *priv);
 void libertas_remove_mesh(wlan_private *priv);
 
+/* preliminary here */
+int if_usb_register(void);
+void if_usb_unregister(void);
+
+
 #endif				/* _WLAN_DECL_H_ */
diff --git a/drivers/net/wireless/libertas/defs.h b/drivers/net/wireless/libertas/defs.h
index 67de2a6..c310061 100644
--- a/drivers/net/wireless/libertas/defs.h
+++ b/drivers/net/wireless/libertas/defs.h
@@ -152,6 +152,13 @@ static inline void lbs_dbg_hex(char *prompt, u8 * buf, int len)
 #define MRVDRV_MAX_BEACON_INTERVAL		1000
 #define MRVDRV_BEACON_INTERVAL			100
 
+/** INT status Bit Definition*/
+#define his_cmddnldrdy			0x01
+#define his_cardevent			0x02
+#define his_cmdupldrdy			0x04
+
+#define SBI_EVENT_CAUSE_SHIFT		3
+
 /** TxPD status */
 
 /*	Station firmware use TxPD status field to report final Tx transmit
diff --git a/drivers/net/wireless/libertas/dev.h b/drivers/net/wireless/libertas/dev.h
index 34fa0f8..2961a8b 100644
--- a/drivers/net/wireless/libertas/dev.h
+++ b/drivers/net/wireless/libertas/dev.h
@@ -162,6 +162,14 @@ struct _wlan_private {
 
 	struct delayed_work assoc_work;
 	struct workqueue_struct *assoc_thread;
+
+	/** Hardware access */
+	int (*hw_register_dev) (wlan_private * priv);
+	int (*hw_unregister_dev) (wlan_private *);
+	int (*hw_prog_firmware) (wlan_private *);
+	int (*hw_host_to_card) (wlan_private * priv, u8 type, u8 * payload, u16 nb);
+	int (*hw_get_int_status) (wlan_private * priv, u8 *);
+	int (*hw_read_event_cause) (wlan_private *);
 };
 
 /** Association request
diff --git a/drivers/net/wireless/libertas/ethtool.c b/drivers/net/wireless/libertas/ethtool.c
index 81a09ed..2b716eb 100644
--- a/drivers/net/wireless/libertas/ethtool.c
+++ b/drivers/net/wireless/libertas/ethtool.c
@@ -1,10 +1,8 @@
-
 #include <linux/netdevice.h>
 #include <linux/ethtool.h>
 #include <linux/delay.h>
 
 #include "host.h"
-#include "sbi.h"
 #include "decl.h"
 #include "defs.h"
 #include "dev.h"
diff --git a/drivers/net/wireless/libertas/fw.c b/drivers/net/wireless/libertas/fw.c
index 0ea0cfc..19a2888 100644
--- a/drivers/net/wireless/libertas/fw.c
+++ b/drivers/net/wireless/libertas/fw.c
@@ -5,7 +5,6 @@
 #include <linux/firmware.h>
 
 #include "host.h"
-#include "sbi.h"
 #include "defs.h"
 #include "decl.h"
 #include "dev.h"
@@ -89,7 +88,7 @@ static int wlan_setup_station_hw(wlan_private * priv)
 		goto done;
 	}
 
-	ret = libertas_sbi_prog_firmware(priv);
+	ret = priv->hw_prog_firmware(priv);
 
 	release_firmware(priv->firmware);
 
diff --git a/drivers/net/wireless/libertas/if_usb.c b/drivers/net/wireless/libertas/if_usb.c
index c48e09f..7c23689 100644
--- a/drivers/net/wireless/libertas/if_usb.c
+++ b/drivers/net/wireless/libertas/if_usb.c
@@ -7,7 +7,6 @@
 #include <linux/usb.h>
 
 #include "host.h"
-#include "sbi.h"
 #include "decl.h"
 #include "defs.h"
 #include "dev.h"
@@ -33,6 +32,12 @@ MODULE_DEVICE_TABLE(usb, if_usb_table);
 static void if_usb_receive(struct urb *urb);
 static void if_usb_receive_fwload(struct urb *urb);
 static int reset_device(wlan_private *priv);
+static int if_usb_register_dev(wlan_private * priv);
+static int if_usb_unregister_dev(wlan_private *);
+static int if_usb_prog_firmware(wlan_private *);
+static int if_usb_host_to_card(wlan_private * priv, u8 type, u8 * payload, u16 nb);
+static int if_usb_get_int_status(wlan_private * priv, u8 *);
+static int if_usb_read_event_cause(wlan_private *);
 
 /** 
  *  @brief  call back function to handle the status of the URB
@@ -190,11 +195,18 @@ static int if_usb_probe(struct usb_interface *intf,
 
 	/* At this point libertas_add_card() will be called.  Don't worry
 	 * about keeping priv around since it will be set on our
-	 * usb device data in -> add() -> libertas_sbi_register_dev().
+	 * usb device data in -> add() -> hw_register_dev() -> if_usb_register_dev.
 	 */
 	if (!(priv = libertas_add_card(usb_cardp)))
 		goto dealloc;
 
+	priv->hw_register_dev = if_usb_register_dev;
+	priv->hw_unregister_dev = if_usb_unregister_dev;
+	priv->hw_prog_firmware = if_usb_prog_firmware;
+	priv->hw_host_to_card = if_usb_host_to_card;
+	priv->hw_get_int_status = if_usb_get_int_status;
+	priv->hw_read_event_cause = if_usb_read_event_cause;
+
 	if (libertas_activate_card(priv))
 		goto dealloc;
 
@@ -694,7 +706,7 @@ rx_exit:
  *  @param len		number of bytes
  *  @return 	   	0 or -1
  */
-int libertas_sbi_host_to_card(wlan_private * priv, u8 type, u8 * payload, u16 nb)
+static int if_usb_host_to_card(wlan_private * priv, u8 type, u8 * payload, u16 nb)
 {
 	int ret = -1;
 	u32 tmp;
@@ -725,7 +737,7 @@ int libertas_sbi_host_to_card(wlan_private * priv, u8 type, u8 * payload, u16 nb
 }
 
 /* called with adapter->driver_lock held */
-int libertas_sbi_get_int_status(wlan_private * priv, u8 * ireg)
+static int if_usb_get_int_status(wlan_private * priv, u8 * ireg)
 {
 	struct usb_card_rec *cardp = priv->wlan_dev.card;
 
@@ -737,7 +749,7 @@ int libertas_sbi_get_int_status(wlan_private * priv, u8 * ireg)
 	return 0;
 }
 
-int libertas_sbi_read_event_cause(wlan_private * priv)
+static int if_usb_read_event_cause(wlan_private * priv)
 {
 	struct usb_card_rec *cardp = priv->wlan_dev.card;
 	priv->adapter->eventcause = cardp->usb_event_cause;
@@ -760,7 +772,7 @@ static int reset_device(wlan_private *priv)
 	return ret;
 }
 
-int libertas_sbi_unregister_dev(wlan_private * priv)
+static int if_usb_unregister_dev(wlan_private * priv)
 {
 	int ret = 0;
 
@@ -780,7 +792,7 @@ int libertas_sbi_unregister_dev(wlan_private * priv)
  *  @param		priv pointer to wlan_private
  *  @return		0 or -1
  */
-int libertas_sbi_register_dev(wlan_private * priv)
+static int if_usb_register_dev(wlan_private * priv)
 {
 	struct usb_card_rec *cardp = (struct usb_card_rec *)priv->wlan_dev.card;
 
@@ -801,7 +813,7 @@ int libertas_sbi_register_dev(wlan_private * priv)
 
 
 
-int libertas_sbi_prog_firmware(wlan_private * priv)
+static int if_usb_prog_firmware(wlan_private * priv)
 {
 	struct usb_card_rec *cardp = priv->wlan_dev.card;
 	int i = 0;
@@ -948,7 +960,7 @@ static struct usb_driver if_usb_driver = {
  *  @param arg		pointer to call back function parameter
  *  @return 	   	dummy success variable
  */
-int libertas_sbi_register(void)
+int if_usb_register(void)
 {
 	/* 
 	 * API registers the Marvell USB driver
@@ -964,7 +976,7 @@ int libertas_sbi_register(void)
  *  @brief This function removes usb driver.
  *  @return 	   	N/A
  */
-void libertas_sbi_unregister(void)
+void if_usb_unregister(void)
 {
 	int i;
 
diff --git a/drivers/net/wireless/libertas/main.c b/drivers/net/wireless/libertas/main.c
index 25efdda..e47a4c5 100644
--- a/drivers/net/wireless/libertas/main.c
+++ b/drivers/net/wireless/libertas/main.c
@@ -15,7 +15,6 @@
 #include <net/ieee80211.h>
 
 #include "host.h"
-#include "sbi.h"
 #include "decl.h"
 #include "dev.h"
 #include "fw.h"
@@ -647,7 +646,7 @@ static int wlan_service_main_thread(void *data)
 		if (adapter->intcounter) {
 			u8 int_status;
 			adapter->intcounter = 0;
-			int_status = libertas_sbi_get_int_status(priv, &ireg);
+			int_status = priv->hw_get_int_status(priv, &ireg);
 
 			if (int_status) {
 				lbs_deb_thread(
@@ -679,9 +678,9 @@ static int wlan_service_main_thread(void *data)
 
 			adapter->hisregcpy &= ~his_cardevent;
 
-			if (libertas_sbi_read_event_cause(priv)) {
+			if (priv->hw_read_event_cause(priv)) {
 				lbs_pr_alert(
-				       "main-thread: libertas_sbi_read_event_cause failed\n");
+				       "main-thread: hw_read_event_cause failed\n");
 				spin_unlock_irq(&adapter->driver_lock);
 				continue;
 			}
@@ -849,7 +848,7 @@ int libertas_activate_card(wlan_private *priv)
 	 * relevant information from the card and request for the required
 	 * IRQ. 
 	 */
-	if (libertas_sbi_register_dev(priv) < 0) {
+	if (priv->hw_register_dev(priv) < 0) {
 		lbs_pr_err("failed to register WLAN device\n");
 		goto err_registerdev;
 	}
@@ -873,7 +872,7 @@ int libertas_activate_card(wlan_private *priv)
 	goto done;
 
 err_init_fw:
-	libertas_sbi_unregister_dev(priv);
+	priv->hw_unregister_dev(priv);
 err_registerdev:
 	destroy_workqueue(priv->assoc_thread);
 	/* Stop the thread servicing the interrupts */
@@ -1150,7 +1149,7 @@ static int wlan_init_module(void)
 
 	libertas_debugfs_init();
 
-	if (libertas_sbi_register()) {
+	if (if_usb_register()) {
 		ret = -1;
 		libertas_debugfs_remove();
 	}
@@ -1163,7 +1162,7 @@ static void wlan_cleanup_module(void)
 {
 	lbs_deb_enter(LBS_DEB_MAIN);
 
-	libertas_sbi_unregister();
+	if_usb_unregister();
 	libertas_debugfs_remove();
 
 	lbs_deb_leave(LBS_DEB_MAIN);
diff --git a/drivers/net/wireless/libertas/sbi.h b/drivers/net/wireless/libertas/sbi.h
deleted file mode 100644
index e4840fd..0000000
--- a/drivers/net/wireless/libertas/sbi.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/** 
-  * This file contains IF layer definitions.
-  */
-
-#ifndef	_SBI_H_
-#define	_SBI_H_
-
-#include <linux/interrupt.h>
-
-#include "defs.h"
-
-/** INT status Bit Definition*/
-#define his_cmddnldrdy			0x01
-#define his_cardevent			0x02
-#define his_cmdupldrdy			0x04
-
-#define SBI_EVENT_CAUSE_SHIFT		3
-
-/* Probe and Check if the card is present*/
-int libertas_sbi_register_dev(wlan_private * priv);
-int libertas_sbi_unregister_dev(wlan_private *);
-int libertas_sbi_get_int_status(wlan_private * priv, u8 *);
-int libertas_sbi_register(void);
-void libertas_sbi_unregister(void);
-int libertas_sbi_prog_firmware(wlan_private *);
-
-int libertas_sbi_read_event_cause(wlan_private *);
-int libertas_sbi_host_to_card(wlan_private * priv, u8 type, u8 * payload, u16 nb);
-
-#endif				/* _SBI_H */
diff --git a/drivers/net/wireless/libertas/tx.c b/drivers/net/wireless/libertas/tx.c
index d8eb45e..106fb76 100644
--- a/drivers/net/wireless/libertas/tx.c
+++ b/drivers/net/wireless/libertas/tx.c
@@ -5,7 +5,6 @@
 
 #include "hostcmd.h"
 #include "radiotap.h"
-#include "sbi.h"
 #include "decl.h"
 #include "defs.h"
 #include "dev.h"
@@ -132,13 +131,13 @@ static int SendSinglePacket(wlan_private * priv, struct sk_buff *skb)
 
 	lbs_dbg_hex("Tx Data", (u8 *) p802x_hdr, plocaltxpd->tx_packet_length);
 	memcpy(ptr, p802x_hdr, plocaltxpd->tx_packet_length);
-	ret = libertas_sbi_host_to_card(priv, MVMS_DAT,
-			       priv->adapter->tmptxbuf,
-			       plocaltxpd->tx_packet_length +
-			       sizeof(struct txpd));
+	ret = priv->hw_host_to_card(priv, MVMS_DAT,
+		priv->adapter->tmptxbuf,
+		plocaltxpd->tx_packet_length +
+		sizeof(struct txpd));
 
 	if (ret) {
-		lbs_deb_tx("tx err: libertas_sbi_host_to_card returned 0x%X\n", ret);
+		lbs_deb_tx("tx err: hw_host_to_card returned 0x%X\n", ret);
 		goto done;
 	}
 
-- 
1.4.4.4

