<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-dev/drivers/net/wireless/wl1251, branch master</title>
<subtitle>Linux kernel development work - see feature branches</subtitle>
<id>https://git.zx2c4.com/linux-dev/atom/drivers/net/wireless/wl1251?h=master</id>
<link rel='self' href='https://git.zx2c4.com/linux-dev/atom/drivers/net/wireless/wl1251?h=master'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/'/>
<updated>2012-04-12T05:43:55Z</updated>
<entry>
<title>wireless/wl12xx/wl1251: move TI WLAN modules to a common ti subdirectory</title>
<updated>2012-04-12T05:43:55Z</updated>
<author>
<name>Luciano Coelho</name>
<email>coelho@ti.com</email>
</author>
<published>2011-11-20T19:40:41Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=90921014608d91a03766d0025fa32662dc7c5062'/>
<id>urn:sha1:90921014608d91a03766d0025fa32662dc7c5062</id>
<content type='text'>
Move wl12xx and wl1251 modules into a new drivers/net/wireless/ti
directory.  Add a TI WLAN Kconfig option and Makefile to support this
change.

Signed-off-by: Luciano Coelho &lt;coelho@ti.com&gt;
Cc: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>wl1251: enable sparse endianess check by default</title>
<updated>2012-02-15T06:38:27Z</updated>
<author>
<name>Luciano Coelho</name>
<email>coelho@ti.com</email>
</author>
<published>2011-12-21T20:36:29Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=ebff1bae9445af019e7e3c5b62964ec99b5a8250'/>
<id>urn:sha1:ebff1bae9445af019e7e3c5b62964ec99b5a8250</id>
<content type='text'>
Following the good example of the Intel (and more recently Atheros)
drivers, enable endianess check by default when running sparse.

Signed-off-by: Luciano Coelho &lt;coelho@ti.com&gt;
</content>
</entry>
<entry>
<title>wl1251: convert 32-bit values to le32 before writing to the chip</title>
<updated>2012-02-15T06:38:27Z</updated>
<author>
<name>Luciano Coelho</name>
<email>coelho@ti.com</email>
</author>
<published>2011-12-21T20:36:28Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=ac9e2d9afa90ecb7ee1b419cce6969f31a138f77'/>
<id>urn:sha1:ac9e2d9afa90ecb7ee1b419cce6969f31a138f77</id>
<content type='text'>
The 32-bit values were not converted before writing them to the chip.
Change the wl1251_read32() and wl1251_write32() so that they always
read and write le32 values and convert to and from the CPU endianess.

Signed-off-by: Luciano Coelho &lt;coelho@ti.com&gt;
</content>
</entry>
<entry>
<title>wl1251: fix sparse warning</title>
<updated>2012-02-15T06:38:27Z</updated>
<author>
<name>Luciano Coelho</name>
<email>coelho@ti.com</email>
</author>
<published>2011-12-21T20:36:27Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=059625e757754459d8adb370e3d751abdd51723b'/>
<id>urn:sha1:059625e757754459d8adb370e3d751abdd51723b</id>
<content type='text'>
The wl1251 driver was generating the following warning:

drivers/net/wireless/wl1251/boot.c:467:21: warning: incorrect type in assignment (different base types)
drivers/net/wireless/wl1251/boot.c:467:21:    expected unsigned int [unsigned] [assigned] [usertype] val
drivers/net/wireless/wl1251/boot.c:467:21:    got restricted __le32 [usertype] &lt;noident&gt;

Fix this by removing one cpu_to_le32() call in the wrong place.

Signed-off-by: Luciano Coelho &lt;coelho@ti.com&gt;
</content>
</entry>
<entry>
<title>mac80211: make CQM RSSI support per virtual interface</title>
<updated>2012-01-27T19:56:54Z</updated>
<author>
<name>Johannes Berg</name>
<email>johannes.berg@intel.com</email>
</author>
<published>2012-01-19T08:29:58Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=ea086359a63bd0dd85c1d784d0425340649613fa'/>
<id>urn:sha1:ea086359a63bd0dd85c1d784d0425340649613fa</id>
<content type='text'>
Similar to the previous beacon filtering patch,
make CQM RSSI support depend on the flags that
the driver set for virtual interfaces.

Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
Acked-by: Luciano Coelho &lt;coelho@ti.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>mac80211: make beacon filtering per virtual interface</title>
<updated>2012-01-27T19:56:53Z</updated>
<author>
<name>Johannes Berg</name>
<email>johannes.berg@intel.com</email>
</author>
<published>2012-01-19T08:29:57Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=c1288b1278d00169e12495eb53ad128e09560b69'/>
<id>urn:sha1:c1288b1278d00169e12495eb53ad128e09560b69</id>
<content type='text'>
Due to firmware limitations, we may not be able to
support beacon filtering on all virtual interfaces.
To allow this in mac80211, introduce per-interface
driver capability flags that the driver sets when
an interface is added.

Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
Acked-by: Luciano Coelho &lt;coelho@ti.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>wireless: Remove redundant spi driver bus initialization</title>
<updated>2011-11-28T19:43:58Z</updated>
<author>
<name>Lars-Peter Clausen</name>
<email>lars@metafoo.de</email>
</author>
<published>2011-11-24T15:29:20Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=4e3309ba95f0d642efacfcb972251b07c3d29c27'/>
<id>urn:sha1:4e3309ba95f0d642efacfcb972251b07c3d29c27</id>
<content type='text'>
In ancient times it was necessary to manually initialize the bus field of an
spi_driver to spi_bus_type. These days this is done in spi_driver_register(),
so we can drop the manual assignment.

The patch was generated using the following coccinelle semantic patch:
// &lt;smpl&gt;
@@
identifier _driver;
@@
struct spi_driver _driver = {
	.driver = {
-		.bus = &amp;spi_bus_type,
	},
};
// &lt;/smpl&gt;

Signed-off-by: Lars-Peter Clausen &lt;lars@metafoo.de&gt;
Cc: Dan Williams &lt;dcbw@redhat.com&gt;
Cc: "John W. Linville" &lt;linville@tuxdriver.com&gt;
Cc: Christian Lamparter &lt;chunkeey@googlemail.com&gt;
Cc: Luciano Coelho &lt;coelho@ti.com&gt;
Cc: libertas-dev@lists.infradead.org
Cc: linux-wireless@vger.kernel.org
Acked-by: Luciano Coelho &lt;coelho@ti.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>mac80211: pass vif param to conf_tx() callback</title>
<updated>2011-10-03T19:22:41Z</updated>
<author>
<name>Eliad Peller</name>
<email>eliad@wizery.com</email>
</author>
<published>2011-10-02T08:15:52Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=8a3a3c85e44d58f5af0adac74a0b866ba89a1978'/>
<id>urn:sha1:8a3a3c85e44d58f5af0adac74a0b866ba89a1978</id>
<content type='text'>
tx params should be configured per interface.
add ieee80211_vif param to the conf_tx callback,
and change all the drivers that use this callback.

The following spatch was used:
@rule1@
struct ieee80211_ops ops;
identifier conf_tx_op;
@@
	ops.conf_tx = conf_tx_op;

@rule2@
identifier rule1.conf_tx_op;
identifier hw, queue, params;
@@
	conf_tx_op (
-		struct ieee80211_hw *hw,
+		struct ieee80211_hw *hw, struct ieee80211_vif *vif,
		u16 queue,
		const struct ieee80211_tx_queue_params *params) {...}

Signed-off-by: Eliad Peller &lt;eliad@wizery.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'master' of git://git.infradead.org/users/linville/wireless</title>
<updated>2011-09-20T18:11:55Z</updated>
<author>
<name>John W. Linville</name>
<email>linville@tuxdriver.com</email>
</author>
<published>2011-09-20T18:11:55Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=4d8b61490c14a36efdee4a8bf523e26809df05ac'/>
<id>urn:sha1:4d8b61490c14a36efdee4a8bf523e26809df05ac</id>
<content type='text'>
Conflicts:
	drivers/net/wireless/iwlwifi/iwl-pci.c
	drivers/net/wireless/iwlwifi/iwl-trans-pcie-tx.c
	drivers/net/wireless/rt2x00/rt2800usb.c
	drivers/net/wireless/wl12xx/main.c
</content>
</entry>
<entry>
<title>drivers/net/wireless/wl1251: add missing kfree</title>
<updated>2011-08-10T18:07:10Z</updated>
<author>
<name>Julia Lawall</name>
<email>julia@diku.dk</email>
</author>
<published>2011-08-08T11:18:03Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=059c4383550b158bc1b6d34d8ab085e81cb3d71b'/>
<id>urn:sha1:059c4383550b158bc1b6d34d8ab085e81cb3d71b</id>
<content type='text'>
In each case, the kfree already at the end of the function is also needed
in the error case.

A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// &lt;smpl&gt;
@exists@
local idexpression x;
statement S,S1;
expression E;
identifier fl;
expression *ptr != NULL;
@@

x = \(kmalloc\|kzalloc\|kcalloc\)(...);
...
if (x == NULL) S
&lt;... when != x
     when != if (...) { &lt;+...kfree(x)...+&gt; }
     when any
     when != true x == NULL
x-&gt;fl
...&gt;
(
if (x == NULL) S1
|
if (...) { ... when != x
               when forall
(
 return \(0\|&lt;+...x...+&gt;\|ptr\);
|
* return ...;
)
}
)
// &lt;/smpl&gt;

Signed-off-by: Julia Lawall &lt;julia@diku.dk&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
</feed>
