Skip to contentSkip to conversation

Libertas: cfg80211 support

PATCH In review Kiran Divekar 5 participants 12 messages Jun 14, 2010 – Jun 24, 2010 Networking drivers (wireless)

lore
Share & tools
lore
#0 lore raw

PATCH 1/3 Libertas: cfg80211 support

Holger Schurig's patch (https://patchwork.kernel.org/patch/64286/)
is rebased to latest wireless-testing tree.

---
 drivers/net/wireless/libertas/Makefile  |    3 -
 drivers/net/wireless/libertas/assoc.c   | 2264 -----------------------------
 drivers/net/wireless/libertas/assoc.h   |  155 --
 drivers/net/wireless/libertas/cfg.c     | 1941 +++++++++++++++++++++++++-
 drivers/net/wireless/libertas/cfg.h     |   16 +-
 drivers/net/wireless/libertas/cmd.c     |   22 +-
 drivers/net/wireless/libertas/cmdresp.c |   29 +-
 drivers/net/wireless/libertas/debugfs.c |   54 +-
 drivers/net/wireless/libertas/decl.h    |    3 +
 drivers/net/wireless/libertas/dev.h     |   59 +-
 drivers/net/wireless/libertas/ethtool.c |    5 -
 drivers/net/wireless/libertas/main.c    |  221 +---
 drivers/net/wireless/libertas/rx.c      |  121 +--
 drivers/net/wireless/libertas/scan.c    | 1354 ------------------
 drivers/net/wireless/libertas/scan.h    |   63 -
 drivers/net/wireless/libertas/tx.c      |   12 +-
 drivers/net/wireless/libertas/wext.c    | 2353 -------------------------------
 drivers/net/wireless/libertas/wext.h    |   17 -
 18 files changed, 1979 insertions(+), 6713 deletions(-)
 delete mode 100644 drivers/net/wireless/libertas/assoc.c
 delete mode 100644 drivers/net/wireless/libertas/assoc.h
 delete mode 100644 drivers/net/wireless/libertas/scan.c
 delete mode 100644 drivers/net/wireless/libertas/scan.h
 delete mode 100644 drivers/net/wireless/libertas/wext.c
 delete mode 100644 drivers/net/wireless/libertas/wext.h
drivers/net/wireless/libertas/Makefile +0 -3
index 45e870e..f7d01bf 100644
@@ -1,4 +1,3 @@
-libertas-y += assoc.o
 libertas-y += cfg.o
 libertas-y += cmd.o
 libertas-y += cmdresp.o
@@ -6,9 +5,7 @@ libertas-y += debugfs.o
 libertas-y += ethtool.o
 libertas-y += main.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
drivers/net/wireless/libertas/assoc.c deleted +0 -2264

2,264 lines not on this page · raw message

drivers/net/wireless/libertas/assoc.h deleted +0 -155

155 lines not on this page · raw message

drivers/net/wireless/libertas/cfg.c +1919 -22

568 lines not on this page · raw message

drivers/net/wireless/libertas/cfg.h +11 -5
index e09a193..eae3fd9 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireless/libertas/cmd.c +11 -11
index 0fa6b0e..d883846 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireless/libertas/cmdresp.c +3 -26
index d6c3063..9c18227 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireless/libertas/debugfs.c +1 -53

54 lines not on this page · raw message

drivers/net/wireless/libertas/decl.h +3 -0
index 61db8bc..85c97d3 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireless/libertas/dev.h +9 -50

59 lines not on this page · raw message

drivers/net/wireless/libertas/ethtool.c +0 -5
index 6a36c99..914c026 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireless/libertas/main.c +4 -217

221 lines not on this page · raw message

drivers/net/wireless/libertas/rx.c +11 -110

121 lines not on this page · raw message

drivers/net/wireless/libertas/scan.c deleted +0 -1354

1,354 lines not on this page · raw message

drivers/net/wireless/libertas/scan.h deleted +0 -63

63 lines not on this page · raw message

drivers/net/wireless/libertas/tx.c +7 -5
index a9bf658..411a3bb 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireless/libertas/wext.c deleted +0 -2353

2,353 lines not on this page · raw message

drivers/net/wireless/libertas/wext.h deleted +0 -17
deleted file mode 100644
index f3f19fe..0000000

Lines of this file are not shown. View the raw message.

The rest of this diff is not shown. View the raw message.

Signature · 1 line
1.7.1

Part of the diff is not shown here. View the raw message.

maintainer
#1 lore raw
Quoted 2 lines · Kiran Divekar

Holger Schurig's patch (https://patchwork.kernel.org/patch/64286/)
is rebased to latest wireless-testing tree.

you shoud probably have kept the attribution to him then by inserting

From: Holger ...

as the first line of this email.

Also, why did you remove the entire changelog?

johannes

#2 lore raw

I'm o.k. with being mentioned in the commit log message.

After all, I *intended* that someone picks this up and continued to work on it, while I'm off to other projects due to my job. That makes me only able to work in an on-and-off style with kernel stuff.

maintainer
#3 lore raw
In reply to Kiran Divekar
Quoted 2 lines · Kiran Divekar

Holger Schurig's patch (https://patchwork.kernel.org/patch/64286/)
is rebased to latest wireless-testing tree.

+drivers/net/wireless/libertas/cfg.c:1844:13: warning: incorrect type in assignment (different base types)
+drivers/net/wireless/libertas/cfg.c:1844:13: expected unsigned short [unsigned] [usertype] capability
+drivers/net/wireless/libertas/cfg.c:1844:13: got restricted __le16 [usertype] <noident>
+drivers/net/wireless/libertas/cmdresp.c:106:5: warning: symbol 'lbs_ret_802_11d_domain_info' was not declared. Should it be static?

I'm guessing this patchset is at fault.

johannes

#4 lore raw

PATCH 1/3 libertas: fix build error due to undefined symbol

ERROR: "mesh_handler_def" [drivers/net/wireless/libertas/libertas.ko] undefined!

Caused by a hunk missed by "Libertas: cfg80211 support" when building with CONFIG_WIRELESS_EXT enabled.

---
 drivers/net/wireless/libertas/mesh.c |    3 ---
 drivers/net/wireless/libertas/mesh.h |    5 -----
 2 files changed, 0 insertions(+), 8 deletions(-)
drivers/net/wireless/libertas/mesh.c +0 -3
index 00b36b0..bc5bc13 100644
@@ -370,9 +370,6 @@ int lbs_add_mesh(struct lbs_private *priv)
 
 	SET_NETDEV_DEV(priv->mesh_dev, priv->dev->dev.parent);
 
-#ifdef	WIRELESS_EXT
-	mesh_dev->wireless_handlers = &mesh_handler_def;
-#endif
 	mesh_dev->flags |= IFF_BROADCAST | IFF_MULTICAST;
 	/* Register virtual mesh interface */
 	ret = register_netdev(mesh_dev);
drivers/net/wireless/libertas/mesh.h +0 -5
index e257330..84ea248 100644
@@ -70,11 +70,6 @@ void lbs_persist_config_init(struct net_device *net);
 void lbs_persist_config_remove(struct net_device *net);
 
 
-/* WEXT handler */
-
-extern struct iw_handler_def mesh_handler_def;
-
-
 /* Ethtool statistics */
 
 struct ethtool_stats;
Signature · 1 line
1.7.0.1
Acked-by on v1 1/3
#5 lore raw

Re: [PATCH 1/3] libertas: fix build error due to undefined symbol

Quoted 6 lines · John W. Linville

ERROR: "mesh_handler_def" [drivers/net/wireless/libertas/libertas.ko] undefined!

Caused by a hunk missed by "Libertas: cfg80211 support" when building with CONFIG_WIRELESS_EXT enabled.

Quoted 35 lines
---
 drivers/net/wireless/libertas/mesh.c |    3 ---
 drivers/net/wireless/libertas/mesh.h |    5 -----
 2 files changed, 0 insertions(+), 8 deletions(-)
drivers/net/wireless/libertas/mesh.c +0 -3
index 00b36b0..bc5bc13 100644
@@ -370,9 +370,6 @@ int lbs_add_mesh(struct lbs_private *priv)
 
 	SET_NETDEV_DEV(priv->mesh_dev, priv->dev->dev.parent);
 
-#ifdef	WIRELESS_EXT
-	mesh_dev->wireless_handlers = &mesh_handler_def;
-#endif
 	mesh_dev->flags |= IFF_BROADCAST | IFF_MULTICAST;
 	/* Register virtual mesh interface */
 	ret = register_netdev(mesh_dev);
drivers/net/wireless/libertas/mesh.h +0 -5
index e257330..84ea248 100644
@@ -70,11 +70,6 @@ void lbs_persist_config_init(struct net_device *net);
 void lbs_persist_config_remove(struct net_device *net);
 
 
-/* WEXT handler */
-
-extern struct iw_handler_def mesh_handler_def;
-
-
 /* Ethtool statistics */
 
 struct ethtool_stats;
#6 lore raw

PATCH 2/3 libertas: unmangle capability value

In reply to Johannes Berg

Address fall-out from patch converting libertas to use cfg80211...

+drivers/net/wireless/libertas/cfg.c:1844:13: warning: incorrect type in assignment (different base types)
+drivers/net/wireless/libertas/cfg.c:1844:13: expected unsigned short [unsigned] [usertype] capability
+drivers/net/wireless/libertas/cfg.c:1844:13: got restricted __le16 [usertype] <noident>

---
 drivers/net/wireless/libertas/cfg.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
drivers/net/wireless/libertas/cfg.c +1 -1
index 23c1dc6..f36cc97 100644
@@ -1841,7 +1841,7 @@ static int lbs_ibss_start_new(struct lbs_private *priv,
 	if (MRVL_FW_MAJOR_REV(priv->fwrelease) <= 8)
 		cmd.probedelay = cpu_to_le16(CMD_SCAN_PROBE_DELAY_TIME);
 	/* TODO: mix in WLAN_CAPABILITY_PRIVACY */
-	capability = cpu_to_le16(WLAN_CAPABILITY_IBSS);
+	capability = WLAN_CAPABILITY_IBSS;
 	cmd.capability = cpu_to_le16(capability);
 	lbs_add_rates(cmd.rates);
 
Signature · 1 line
1.7.0.1
Acked-by on v1 2/3
#7 lore raw

Re: [PATCH 2/3] libertas: unmangle capability value

Quoted 7 lines · John W. Linville

Address fall-out from patch converting libertas to use cfg80211...

(quoted diff) +3 -0
+drivers/net/wireless/libertas/cfg.c:1844:13: warning: incorrect type in assignment (different base types)
+drivers/net/wireless/libertas/cfg.c:1844:13:    expected unsigned short [unsigned] [usertype] capability
+drivers/net/wireless/libertas/cfg.c:1844:13:    got restricted __le16 [usertype] <noident>
Quoted 17 lines
---
 drivers/net/wireless/libertas/cfg.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
drivers/net/wireless/libertas/cfg.c +1 -1
index 23c1dc6..f36cc97 100644
@@ -1841,7 +1841,7 @@ static int lbs_ibss_start_new(struct lbs_private *priv,
 	if (MRVL_FW_MAJOR_REV(priv->fwrelease) <= 8)
 		cmd.probedelay = cpu_to_le16(CMD_SCAN_PROBE_DELAY_TIME);
 	/* TODO: mix in WLAN_CAPABILITY_PRIVACY */
-	capability = cpu_to_le16(WLAN_CAPABILITY_IBSS);
+	capability = WLAN_CAPABILITY_IBSS;
 	cmd.capability = cpu_to_le16(capability);
 	lbs_add_rates(cmd.rates);
 
#8 lore raw

PATCH 3/3 libertas: mark lbs_ret_802_11d_domain_info static

In reply to Johannes Berg

Probably little risk of namespace polution, but good practice... :-)

---
 drivers/net/wireless/libertas/cmdresp.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
drivers/net/wireless/libertas/cmdresp.c +1 -1
index b4bc103..a0d9482 100644
@@ -103,7 +103,7 @@ static int lbs_ret_reg_access(struct lbs_private *priv,
  *  @param resp    pointer to command response buffer
  *  @return        0; -1
  */
-int lbs_ret_802_11d_domain_info(struct cmd_ds_command *resp)
+static int lbs_ret_802_11d_domain_info(struct cmd_ds_command *resp)
 {
 	struct cmd_ds_802_11d_domain_info *domaininfo =
 			&resp->params.domaininforesp;
Signature · 1 line
1.7.0.1
Acked-by on v1 3/3
#9 lore raw

Re: [PATCH 3/3] libertas: mark lbs_ret_802_11d_domain_info static

Quoted 3 lines · John W. Linville

Probably little risk of namespace polution, but good practice... :-)

Quoted 17 lines
---
 drivers/net/wireless/libertas/cmdresp.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
drivers/net/wireless/libertas/cmdresp.c +1 -1
index b4bc103..a0d9482 100644
@@ -103,7 +103,7 @@ static int lbs_ret_reg_access(struct lbs_private *priv,
  *  @param resp    pointer to command response buffer
  *  @return        0; -1
  */
-int lbs_ret_802_11d_domain_info(struct cmd_ds_command *resp)
+static int lbs_ret_802_11d_domain_info(struct cmd_ds_command *resp)
 {
 	struct cmd_ds_802_11d_domain_info *domaininfo =
 			&resp->params.domaininforesp;
#10 lore raw
In reply to Johannes Berg
Quoted 4 lines · Kiran Divekar
Quoted 2 lines

Holger Schurig's patch (https://patchwork.kernel.org/patch/64286/)
is rebased to latest wireless-testing tree.

Hi Johannes, John,

Quoted 11 lines

+drivers/net/wireless/libertas/cfg.c:1844:13: warning: incorrect type in assignment (different base types)
+drivers/net/wireless/libertas/cfg.c:1844:13: expected unsigned short
[unsigned] [usertype] capability
+drivers/net/wireless/libertas/cfg.c:1844:13: got restricted __le16
[usertype] <noident> +drivers/net/wireless/libertas/cmdresp.c:106:5: warning: symbol 'lbs_ret_802_11d_domain_info' was not declared. Should it be static?

These errors did not show up during my compilation. I will now make sure to check with various kernel configs. Any other things should I test?

Quoted 3 lines

I'm guessing this patchset is at fault.

Johannes

- Kiran

maintainer
#11 lore raw
Quoted 5 lines · Kiran Divekar
Quoted 5 lines

+drivers/net/wireless/libertas/cfg.c:1844:13: warning: incorrect type in assignment (different base types)
+drivers/net/wireless/libertas/cfg.c:1844:13: expected unsigned short
[unsigned] [usertype] capability
+drivers/net/wireless/libertas/cfg.c:1844:13: got restricted __le16

Quoted 8 lines
Quoted 4 lines

[usertype] <noident> +drivers/net/wireless/libertas/cmdresp.c:106:5: warning: symbol 'lbs_ret_802_11d_domain_info' was not declared. Should it be static?

These errors did not show up during my compilation. I will now make sure to check with various kernel configs. Any other things should I test?

These are sparse errors, you need to

make C=2 CF=-D__CHECK_ENDIAN__ drivers/net/wireless/libertas/

johannes