Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4143a23d authored by Holger Schurig's avatar Holger Schurig Committed by John W. Linville
Browse files

libertas: make mesh configurable



Mostly for the embedded people that know beforehand that they don't need
MESH at all and want to save some bytes, but also helpful for the upcoming
cfg80211 transition.

   text    data     bss     dec     hex filename
 114264    2308     140  116712   1c7e8 libertas.ko   with mesh
 105026    2000     140  107166   1a29e libertas.ko   without mesh
 --------------------------------------------------
  -9238    -308           -9546

Signed-off-by: default avatarHolger Schurig <holgerschurig@gmail.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 602114ae
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -37,3 +37,9 @@ config LIBERTAS_DEBUG
	depends on LIBERTAS
	---help---
	  Debugging support.

config LIBERTAS_MESH
	bool "Enable mesh support"
	depends on LIBERTAS
	help
	  This enables Libertas' MESH support, used by e.g. the OLPC people.
+1 −1
Original line number Diff line number Diff line
@@ -5,11 +5,11 @@ libertas-y += cmdresp.o
libertas-y += debugfs.o
libertas-y += ethtool.o
libertas-y += main.o
libertas-y += mesh.o
libertas-y += rx.o
libertas-y += scan.o
libertas-y += tx.o
libertas-y += wext.o
libertas-$(CONFIG_LIBERTAS_MESH) += mesh.o

usb8xxx-objs += if_usb.o
libertas_cs-objs += if_cs.o
+4 −0
Original line number Diff line number Diff line
@@ -998,6 +998,8 @@ int lbs_prepare_and_send_command(struct lbs_private *priv,
		ret = 0;
		break;

#ifdef CONFIG_LIBERTAS_MESH

	case CMD_BT_ACCESS:
		ret = lbs_cmd_bt_access(cmdptr, cmd_action, pdata_buf);
		break;
@@ -1006,6 +1008,8 @@ int lbs_prepare_and_send_command(struct lbs_private *priv,
		ret = lbs_cmd_fwt_access(cmdptr, cmd_action, pdata_buf);
		break;

#endif

	case CMD_802_11_BEACON_CTRL:
		ret = lbs_cmd_bcn_ctrl(priv, cmdptr, cmd_action);
		break;
+2 −0
Original line number Diff line number Diff line
@@ -39,12 +39,14 @@ struct lbs_private {

	/* Mesh */
	struct net_device *mesh_dev; /* Virtual device */
#ifdef CONFIG_LIBERTAS_MESH
	u32 mesh_connect_status;
	struct lbs_mesh_stats mstats;
	int mesh_open;
	uint16_t mesh_tlv;
	u8 mesh_ssid[IEEE80211_MAX_SSID_LEN + 1];
	u8 mesh_ssid_len;
#endif

	/* Monitor mode */
	struct net_device *rtap_net_dev;
+2 −0
Original line number Diff line number Diff line
@@ -114,9 +114,11 @@ const struct ethtool_ops lbs_ethtool_ops = {
	.get_drvinfo = lbs_ethtool_get_drvinfo,
	.get_eeprom =  lbs_ethtool_get_eeprom,
	.get_eeprom_len = lbs_ethtool_get_eeprom_len,
#ifdef CONFIG_LIBERTAS_MESH
	.get_sset_count = lbs_mesh_ethtool_get_sset_count,
	.get_ethtool_stats = lbs_mesh_ethtool_get_stats,
	.get_strings = lbs_mesh_ethtool_get_strings,
#endif
	.get_wol = lbs_ethtool_get_wol,
	.set_wol = lbs_ethtool_set_wol,
};
Loading