* [PATCH 1/3] compat-wireless: make patches apply again.
@ 2010-12-17 22:42 Hauke Mehrtens
2010-12-17 22:42 ` [PATCH 2/3] compat-wireless: use pci_is_pcie() Hauke Mehrtens
` (2 more replies)
0 siblings, 3 replies; 12+ messages in thread
From: Hauke Mehrtens @ 2010-12-17 22:42 UTC (permalink / raw)
To: lrodriguez; +Cc: linux-wireless, mcgrof, Hauke Mehrtens
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
patches/25-multicast-list_head.patch | 18 +++++++++---------
patches/99-change-makefiles.patch | 7 ++++---
2 files changed, 13 insertions(+), 12 deletions(-)
diff --git a/patches/25-multicast-list_head.patch b/patches/25-multicast-list_head.patch
index 09099ff..8ad8391 100644
--- a/patches/25-multicast-list_head.patch
+++ b/patches/25-multicast-list_head.patch
@@ -162,7 +162,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
}
--- a/drivers/net/wireless/ath/ath5k/base.c
+++ b/drivers/net/wireless/ath/ath5k/base.c
-@@ -3122,20 +3122,42 @@ unlock:
+@@ -3131,20 +3131,42 @@ unlock:
}
static u64 ath5k_prepare_multicast(struct ieee80211_hw *hw,
@@ -205,7 +205,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
pos ^= (val >> 18) ^ (val >> 12) ^ (val >> 6) ^ val;
pos &= 0x3f;
mfilt[pos / 32] |= (1 << (pos % 32));
-@@ -3144,6 +3166,9 @@ static u64 ath5k_prepare_multicast(struc
+@@ -3153,6 +3175,9 @@ static u64 ath5k_prepare_multicast(struc
* neet to inform below to not reset the mcast */
/* ath5k_hw_set_mcast_filterindex(ah,
* ha->addr[5]); */
@@ -501,7 +501,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
static void rtl8187_configure_filter(struct ieee80211_hw *dev,
--- a/drivers/net/wireless/wl12xx/main.c
+++ b/drivers/net/wireless/wl12xx/main.c
-@@ -1481,11 +1481,20 @@ struct wl1271_filter_params {
+@@ -1501,11 +1501,20 @@ struct wl1271_filter_params {
u8 mc_list[ACX_MC_ADDRESS_GROUP_MAX][ETH_ALEN];
};
@@ -522,7 +522,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
struct wl1271 *wl = hw->priv;
if (unlikely(wl->state == WL1271_STATE_OFF))
-@@ -1498,16 +1507,40 @@ static u64 wl1271_op_prepare_multicast(s
+@@ -1518,16 +1527,40 @@ static u64 wl1271_op_prepare_multicast(s
}
/* update multicast filtering parameters */
@@ -607,11 +607,11 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
if (!cnt)
break;
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35))
- memcpy(bufp, ha->addr, ETHER_ADDR_LEN);
+ memcpy(bufp, ha->addr, ETH_ALEN);
+#else
-+ memcpy(bufp, ha->dmi_addr, ETHER_ADDR_LEN);
++ memcpy(bufp, ha->dmi_addr, ETH_ALEN);
+#endif
- bufp += ETHER_ADDR_LEN;
+ bufp += ETH_ALEN;
cnt--;
}
--- a/include/net/mac80211.h
@@ -677,7 +677,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
--- a/net/mac80211/ieee80211_i.h
+++ b/net/mac80211/ieee80211_i.h
-@@ -718,7 +718,12 @@ struct ieee80211_local {
+@@ -719,7 +719,12 @@ struct ieee80211_local {
struct work_struct recalc_smps;
/* aggregated multicast list */
@@ -733,7 +733,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
spin_unlock_bh(&local->filter_lock);
/* be a bit nasty */
-@@ -550,9 +554,11 @@ struct ieee80211_hw *ieee80211_alloc_hw(
+@@ -555,9 +559,11 @@ struct ieee80211_hw *ieee80211_alloc_hw(
local->uapsd_max_sp_len = IEEE80211_DEFAULT_MAX_SP_LEN;
INIT_LIST_HEAD(&local->interfaces);
diff --git a/patches/99-change-makefiles.patch b/patches/99-change-makefiles.patch
index 5114869..42c7ea3 100644
--- a/patches/99-change-makefiles.patch
+++ b/patches/99-change-makefiles.patch
@@ -45,7 +45,7 @@ only the wireless stuff.
--- a/drivers/net/wireless/Makefile
+++ b/drivers/net/wireless/Makefile
-@@ -7,31 +7,16 @@ obj-$(CONFIG_IPW2200) += ipw2x00/
+@@ -7,32 +7,16 @@ obj-$(CONFIG_IPW2200) += ipw2x00/
obj-$(CONFIG_HERMES) += orinoco/
@@ -66,11 +66,12 @@ only the wireless stuff.
obj-$(CONFIG_ZD1211RW) += zd1211rw/
obj-$(CONFIG_RTL8180) += rtl818x/
obj-$(CONFIG_RTL8187) += rtl818x/
-
+-obj-$(CONFIG_RTL8192CE) += rtlwifi/
+-
-# 16-bit wireless PCMCIA client drivers
-obj-$(CONFIG_PCMCIA_RAYCS) += ray_cs.o
-obj-$(CONFIG_PCMCIA_WL3501) += wl3501_cs.o
--
+
obj-$(CONFIG_USB_NET_COMPAT_RNDIS_WLAN) += rndis_wlan.o
-obj-$(CONFIG_USB_ZD1201) += zd1201.o
--
1.7.1
^ permalink raw reply related [flat|nested] 12+ messages in thread* [PATCH 2/3] compat-wireless: use pci_is_pcie()
2010-12-17 22:42 [PATCH 1/3] compat-wireless: make patches apply again Hauke Mehrtens
@ 2010-12-17 22:42 ` Hauke Mehrtens
2010-12-18 20:14 ` Luis R. Rodriguez
2010-12-17 22:42 ` [PATCH 3/3] compat-wireless: add support for RTL8192CE Hauke Mehrtens
2010-12-18 20:08 ` [PATCH 1/3] compat-wireless: make patches apply again Luis R. Rodriguez
2 siblings, 1 reply; 12+ messages in thread
From: Hauke Mehrtens @ 2010-12-17 22:42 UTC (permalink / raw)
To: lrodriguez; +Cc: linux-wireless, mcgrof, Hauke Mehrtens
Use pci_is_pcie function and do not access the member of the struct directly.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
patches/20-pcidev.patch | 66 ++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 60 insertions(+), 6 deletions(-)
diff --git a/patches/20-pcidev.patch b/patches/20-pcidev.patch
index 25a3946..19feea6 100644
--- a/patches/20-pcidev.patch
+++ b/patches/20-pcidev.patch
@@ -2,17 +2,71 @@ Older kernels than 2.6.24 do not have the is_pcie member as part of
the struct pci_dev, to help with that we use the compat-2.6.24.c supplied
compat_is_pcie() when needed.
+--- a/drivers/net/wireless/ath/ath5k/attach.c
++++ b/drivers/net/wireless/ath/ath5k/attach.c
+@@ -276,7 +276,7 @@ int ath5k_hw_init(struct ath5k_softc *sc
+ /*
+ * Write PCI-E power save settings
+ */
+- if ((ah->ah_version == AR5K_AR5212) && pdev && (pdev->is_pcie)) {
++ if ((ah->ah_version == AR5K_AR5212) && pdev && (pci_is_pcie(pdev))) {
+ ath5k_hw_reg_write(ah, 0x9248fc00, AR5K_PCIE_SERDES);
+ ath5k_hw_reg_write(ah, 0x24924924, AR5K_PCIE_SERDES);
+
+--- a/drivers/net/wireless/ath/ath5k/reset.c
++++ b/drivers/net/wireless/ath/ath5k/reset.c
+@@ -537,7 +537,7 @@ int ath5k_hw_on_hold(struct ath5k_hw *ah
+ * we ingore that flag for PCI-E cards. On PCI cards
+ * this flag gets cleared after 64 PCI clocks.
+ */
+- bus_flags = (pdev && pdev->is_pcie) ? 0 : AR5K_RESET_CTL_PCI;
++ bus_flags = (pdev && pci_is_pcie(pdev)) ? 0 : AR5K_RESET_CTL_PCI;
+
+ if (ah->ah_version == AR5K_AR5210) {
+ ret = ath5k_hw_nic_reset(ah, AR5K_RESET_CTL_PCU |
+@@ -594,7 +594,7 @@ int ath5k_hw_nic_wakeup(struct ath5k_hw
+ * we ingore that flag for PCI-E cards. On PCI cards
+ * this flag gets cleared after 64 PCI clocks.
+ */
+- bus_flags = (pdev && pdev->is_pcie) ? 0 : AR5K_RESET_CTL_PCI;
++ bus_flags = (pdev && pci_is_pcie(pdev)) ? 0 : AR5K_RESET_CTL_PCI;
+
+ if (ah->ah_version == AR5K_AR5210) {
+ ret = ath5k_hw_nic_reset(ah, AR5K_RESET_CTL_PCU |
--- a/drivers/net/wireless/ath/ath9k/pci.c
+++ b/drivers/net/wireless/ath/ath9k/pci.c
-@@ -96,7 +96,11 @@ static void ath_pci_bt_coex_prep(struct
+@@ -96,7 +96,7 @@ static void ath_pci_bt_coex_prep(struct
struct pci_dev *pdev = to_pci_dev(sc->dev);
u8 aspm;
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,24))
- if (!pdev->is_pcie)
-+#else
-+ if (!compat_is_pcie(pdev))
-+#endif
+- if (!pdev->is_pcie)
++ if (!pci_is_pcie(pdev))
return;
pci_read_config_byte(pdev, ATH_PCIE_CAP_LINK_CTRL, &aspm);
+--- a/drivers/net/wireless/rt2x00/rt2x00pci.c
++++ b/drivers/net/wireless/rt2x00/rt2x00pci.c
+@@ -301,7 +301,7 @@ int rt2x00pci_probe(struct pci_dev *pci_
+ rt2x00dev->irq = pci_dev->irq;
+ rt2x00dev->name = pci_name(pci_dev);
+
+- if (pci_dev->is_pcie)
++ if (pci_is_pcie(pci_dev))
+ rt2x00_set_chip_intf(rt2x00dev, RT2X00_CHIP_INTF_PCIE);
+ else
+ rt2x00_set_chip_intf(rt2x00dev, RT2X00_CHIP_INTF_PCI);
+--- a/drivers/ssb/scan.c
++++ b/drivers/ssb/scan.c
+@@ -405,10 +405,10 @@ int ssb_bus_scan(struct ssb_bus *bus,
+ /* Ignore PCI cores on PCI-E cards.
+ * Ignore PCI-E cores on PCI cards. */
+ if (dev->id.coreid == SSB_DEV_PCI) {
+- if (bus->host_pci->is_pcie)
++ if (pci_is_pcie(bus->host_pci))
+ continue;
+ } else {
+- if (!bus->host_pci->is_pcie)
++ if (!pci_is_pcie(bus->host_pci))
+ continue;
+ }
+ }
--
1.7.1
^ permalink raw reply related [flat|nested] 12+ messages in thread* [PATCH 3/3] compat-wireless: add support for RTL8192CE
2010-12-17 22:42 [PATCH 1/3] compat-wireless: make patches apply again Hauke Mehrtens
2010-12-17 22:42 ` [PATCH 2/3] compat-wireless: use pci_is_pcie() Hauke Mehrtens
@ 2010-12-17 22:42 ` Hauke Mehrtens
2010-12-20 11:33 ` [PATCH 1/2] compat-wireless: complete rtlwifi/RTL8192CE support Walter Goldens
2010-12-18 20:08 ` [PATCH 1/3] compat-wireless: make patches apply again Luis R. Rodriguez
2 siblings, 1 reply; 12+ messages in thread
From: Hauke Mehrtens @ 2010-12-17 22:42 UTC (permalink / raw)
To: lrodriguez; +Cc: linux-wireless, mcgrof, Hauke Mehrtens
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
config.mk | 3 +++
| 10 ++++++++++
patches/20-pcidev.patch | 11 +++++++++++
patches/99-change-makefiles.patch | 10 +++++-----
scripts/admin-update.sh | 2 ++
5 files changed, 31 insertions(+), 5 deletions(-)
diff --git a/config.mk b/config.mk
index 3261aa3..964c646 100644
--- a/config.mk
+++ b/config.mk
@@ -353,6 +353,9 @@ CONFIG_PCMCIA_SPECTRUM=m
endif #CONFIG_PCMCIA
endif #CONFIG_WIRELESS_EXT
+CONFIG_RTL8192CE=m
+CONFIG_RTLWIFI=m
+
endif #CONFIG_PCI
## end of PCI
--git a/patches/06-header-changes.patch b/patches/06-header-changes.patch
index 69b1934..0b90d4c 100644
--- a/patches/06-header-changes.patch
+++ b/patches/06-header-changes.patch
@@ -16,6 +16,16 @@ cases.
struct b43_wldev;
+--- a/drivers/net/wireless/rtlwifi/base.c
++++ b/drivers/net/wireless/rtlwifi/base.c
+@@ -28,6 +28,7 @@
+ *****************************************************************************/
+
+ #include <linux/ip.h>
++#include <linux/in.h>
+ #include "wifi.h"
+ #include "rc.h"
+ #include "base.h"
--- a/drivers/net/wireless/wl1251/boot.c
+++ b/drivers/net/wireless/wl1251/boot.c
@@ -19,7 +19,6 @@
diff --git a/patches/20-pcidev.patch b/patches/20-pcidev.patch
index 19feea6..d576ce8 100644
--- a/patches/20-pcidev.patch
+++ b/patches/20-pcidev.patch
@@ -55,6 +55,17 @@ compat_is_pcie() when needed.
rt2x00_set_chip_intf(rt2x00dev, RT2X00_CHIP_INTF_PCIE);
else
rt2x00_set_chip_intf(rt2x00dev, RT2X00_CHIP_INTF_PCI);
+--- a/drivers/net/wireless/rtlwifi/pci.c
++++ b/drivers/net/wireless/rtlwifi/pci.c
+@@ -1608,7 +1608,7 @@ static bool _rtl_pci_find_adapter(struct
+ pcipriv->ndis_adapter.pcibridge_funcnum =
+ PCI_FUNC(bridge_pdev->devfn);
+ pcipriv->ndis_adapter.pcibridge_pciehdr_offset =
+- bridge_pdev->pcie_cap;
++ pci_pcie_cap(bridge_pdev);
+ pcipriv->ndis_adapter.pcicfg_addrport =
+ (pcipriv->ndis_adapter.pcibridge_busnum << 16) |
+ (pcipriv->ndis_adapter.pcibridge_devnum << 11) |
--- a/drivers/ssb/scan.c
+++ b/drivers/ssb/scan.c
@@ -405,10 +405,10 @@ int ssb_bus_scan(struct ssb_bus *bus,
diff --git a/patches/99-change-makefiles.patch b/patches/99-change-makefiles.patch
index 42c7ea3..585ff03 100644
--- a/patches/99-change-makefiles.patch
+++ b/patches/99-change-makefiles.patch
@@ -45,7 +45,7 @@ only the wireless stuff.
--- a/drivers/net/wireless/Makefile
+++ b/drivers/net/wireless/Makefile
-@@ -7,32 +7,16 @@ obj-$(CONFIG_IPW2200) += ipw2x00/
+@@ -7,18 +7,8 @@ obj-$(CONFIG_IPW2200) += ipw2x00/
obj-$(CONFIG_HERMES) += orinoco/
@@ -64,14 +64,14 @@ only the wireless stuff.
obj-$(CONFIG_B43) += b43/
obj-$(CONFIG_B43LEGACY) += b43legacy/
obj-$(CONFIG_ZD1211RW) += zd1211rw/
- obj-$(CONFIG_RTL8180) += rtl818x/
+@@ -26,13 +16,8 @@ obj-$(CONFIG_RTL8180) += rtl818x/
obj-$(CONFIG_RTL8187) += rtl818x/
--obj-$(CONFIG_RTL8192CE) += rtlwifi/
--
+ obj-$(CONFIG_RTL8192CE) += rtlwifi/
+
-# 16-bit wireless PCMCIA client drivers
-obj-$(CONFIG_PCMCIA_RAYCS) += ray_cs.o
-obj-$(CONFIG_PCMCIA_WL3501) += wl3501_cs.o
-
+-
obj-$(CONFIG_USB_NET_COMPAT_RNDIS_WLAN) += rndis_wlan.o
-obj-$(CONFIG_USB_ZD1201) += zd1201.o
diff --git a/scripts/admin-update.sh b/scripts/admin-update.sh
index 6fd1bc0..b93761e 100755
--- a/scripts/admin-update.sh
+++ b/scripts/admin-update.sh
@@ -229,6 +229,8 @@ DRIVERS="$DRIVERS drivers/net/wireless/zd1211rw"
DRIVERS="$DRIVERS drivers/net/wireless/libertas"
DRIVERS="$DRIVERS drivers/net/wireless/p54"
DRIVERS="$DRIVERS drivers/net/wireless/rtl818x"
+DRIVERS="$DRIVERS drivers/net/wireless/rtlwifi"
+DRIVERS="$DRIVERS drivers/net/wireless/rtlwifi/rtl8192ce"
DRIVERS="$DRIVERS drivers/net/wireless/libertas_tf"
DRIVERS="$DRIVERS drivers/net/wireless/ipw2x00"
DRIVERS="$DRIVERS drivers/net/wireless/wl12xx"
--
1.7.1
^ permalink raw reply related [flat|nested] 12+ messages in thread* [PATCH 1/2] compat-wireless: complete rtlwifi/RTL8192CE support
2010-12-17 22:42 ` [PATCH 3/3] compat-wireless: add support for RTL8192CE Hauke Mehrtens
@ 2010-12-20 11:33 ` Walter Goldens
0 siblings, 0 replies; 12+ messages in thread
From: Walter Goldens @ 2010-12-20 11:33 UTC (permalink / raw)
To: Luis R. Rodriguez, Hauke Mehrtens; +Cc: linux-wireless
enable driver-select for rtlwifi/rtl8192ce
complete renaming rtlwifi entries for compat-wireless
Signed-off-by: Walter Goldens <goldenstranger@yahoo.com>
---
--- a/scripts/driver-select
+++ b/scripts/driver-select
@@ -60,6 +60,7 @@ function usage {
echo -e "\t${CYAN}intel${NORMAL} < ${PURPLE} iwl3945 iwlagn ipw2100 ipw2200 ${NORMAL}>"
echo -e "\t${CYAN}iwlwifi${NORMAL} < ${PURPLE} iwl3945 iwlagn ${NORMAL}>"
echo -e "\t${CYAN}rtl818x${NORMAL} < ${PURPLE} rtl8180 rtl8187 ${NORMAL}>"
+ echo -e "\t${CYAN}rtlwifi${NORMAL} < ${PURPLE} rtl8192ce ${NORMAL}>"
echo -e "\t${CYAN}wl12xx${NORMAL} < ${PURPLE} wl1251 wl12xx (SPI and SDIO)${NORMAL}>"
echo -e "\nSupported group drivers: Bluetooth & Ethernet:"
@@ -332,6 +333,11 @@ case $1 in
disable_staging
disable_var_02
;;
+ rtlwifi)
+ select_drivers CONFIG_RTL8192CE CONFIG_RTLWIFI
+ disable_staging
+ disable_bt_usb_ethernet_var
+ ;;
wl12xx)
select_drivers CONFIG_WL1251 \
CONFIG_WL12XX
--- a/Makefile
+++ b/Makefile
@@ -271,6 +271,8 @@ install-scripts:
@$(MODPROBE) -l rt73usb
@$(MODPROBE) -l rtl8180
@$(MODPROBE) -l rtl8187
+ @$(MODPROBE) -l rtlwifi
+ @$(MODPROBE) -l rtl8192ce
@$(MODPROBE) -l spectrum_cs
@$(MODPROBE) -l ssb
@$(MODPROBE) -l usb8xxx
@@ -400,6 +402,8 @@ uninstall:
@$(MODPROBE) -l rt73usb
@$(MODPROBE) -l rtl8180
@$(MODPROBE) -l rtl8187
+ @$(MODPROBE) -l rtlwifi
+ @$(MODPROBE) -l rtl8192ce
@$(MODPROBE) -l spectrum_cs
@$(MODPROBE) -l ssb
@$(MODPROBE) -l usb8xxx
--- a/README
+++ b/README
@@ -159,6 +159,8 @@ rt61pci
rt73usb
rtl8180
rtl8187
+rtlwifi
+rtl8192ce
spectrum_cs
ssb
wl1251
--- a/scripts/unload.sh
+++ b/scripts/unload.sh
@@ -23,7 +23,7 @@ MODULES="$MODULES rt2400pci rt2500pci rt
MODULES="$MODULES rt2500usb rt73usb"
MODULES="$MODULES rt2800usb rt2800lib"
MODULES="$MODULES rt2x00usb rt2x00lib"
-MODULES="$MODULES rtl8180 rtl8187"
+MODULES="$MODULES rtl8180 rtl8187 rtl8192ce rtlwifi"
MODULES="$MODULES mwl8k mac80211_hwsim"
MODULES="$MODULES at76c50x_usb at76_usb"
MODULES="$MODULES rndis_wlan rndis_host cdc_ether usbnet"
--- a/scripts/wlunload.sh
+++ b/scripts/wlunload.sh
@@ -23,7 +23,7 @@ MODULES="$MODULES rt2400pci rt2500pci rt
MODULES="$MODULES rt2500usb rt73usb"
MODULES="$MODULES rt2800usb rt2800lib"
MODULES="$MODULES rt2x00usb rt2x00lib"
-MODULES="$MODULES rtl8180 rtl8187"
+MODULES="$MODULES rtl8180 rtl8187 rtl8192ce rtlwifi"
MODULES="$MODULES mwl8k mac80211_hwsim"
MODULES="$MODULES at76c50x_usb at76_usb"
MODULES="$MODULES rndis_wlan rndis_host cdc_ether usbnet"
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/3] compat-wireless: make patches apply again.
2010-12-17 22:42 [PATCH 1/3] compat-wireless: make patches apply again Hauke Mehrtens
2010-12-17 22:42 ` [PATCH 2/3] compat-wireless: use pci_is_pcie() Hauke Mehrtens
2010-12-17 22:42 ` [PATCH 3/3] compat-wireless: add support for RTL8192CE Hauke Mehrtens
@ 2010-12-18 20:08 ` Luis R. Rodriguez
2 siblings, 0 replies; 12+ messages in thread
From: Luis R. Rodriguez @ 2010-12-18 20:08 UTC (permalink / raw)
To: Hauke Mehrtens
Cc: Luis Rodriguez, linux-wireless@vger.kernel.org,
mcgrof@infradead.org
On Fri, Dec 17, 2010 at 02:42:46PM -0800, Hauke Mehrtens wrote:
>
> Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Applied all and pushed, thanks!
Luis
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 1/3] compat-wireless: make patches apply again
@ 2011-04-20 21:35 Hauke Mehrtens
0 siblings, 0 replies; 12+ messages in thread
From: Hauke Mehrtens @ 2011-04-20 21:35 UTC (permalink / raw)
To: mcgrof, lrodriguez; +Cc: linux-wireless, Hauke Mehrtens
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
patches/03-rfkill.patch | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/patches/03-rfkill.patch b/patches/03-rfkill.patch
index a46bdf6..051c6f0 100644
--- a/patches/03-rfkill.patch
+++ b/patches/03-rfkill.patch
@@ -30,7 +30,7 @@ This would do the policing from within mac80211.
--- a/net/rfkill/Makefile
+++ b/net/rfkill/Makefile
-@@ -2,6 +2,6 @@
+@@ -2,7 +2,7 @@
# Makefile for the RF switch subsystem.
#
@@ -40,6 +40,7 @@ This would do the policing from within mac80211.
+rfkill_backport-y += core.o
+rfkill_backport-$(CONFIG_RFKILL_BACKPORT_INPUT) += input.o
+obj-$(CONFIG_RFKILL_BACKPORT) += rfkill_backport.o
+ obj-$(CONFIG_RFKILL_REGULATOR) += rfkill-regulator.o
--- a/net/rfkill/input.c
+++ b/net/rfkill/input.c
@@ -232,7 +232,7 @@ static int rfkill_connect(struct input_h
--
1.7.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 1/3] compat-wireless: make patches apply again
@ 2011-05-10 11:11 Hauke Mehrtens
0 siblings, 0 replies; 12+ messages in thread
From: Hauke Mehrtens @ 2011-05-10 11:11 UTC (permalink / raw)
To: mcgrof, lrodriguez; +Cc: linux-wireless, Hauke Mehrtens
This part of the patch is now in wireless-testing.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
patches/22-multiqueue.patch | 15 ++-------------
1 files changed, 2 insertions(+), 13 deletions(-)
diff --git a/patches/22-multiqueue.patch b/patches/22-multiqueue.patch
index 2090320..05129d5 100644
--- a/patches/22-multiqueue.patch
+++ b/patches/22-multiqueue.patch
@@ -44,17 +44,6 @@ are used for injecting frames so they have their own respective queue
handling, but mac80211 just always sends management frames on VO
queue by using skb_set_queue_mapping(skb, 0) through ieee80211_tx_skb()
---- a/drivers/net/wireless/wl12xx/main.c
-+++ b/drivers/net/wireless/wl12xx/main.c
-@@ -1272,7 +1272,7 @@ static struct sk_buff *wl12xx_alloc_dumm
- skb->priority = WL1271_TID_MGMT;
-
- /* Initialize all fields that might be used */
-- skb->queue_mapping = 0;
-+ skb_set_queue_mapping(skb, 0);
- memset(IEEE80211_SKB_CB(skb), 0, sizeof(struct ieee80211_tx_info));
-
- return skb;
--- a/net/mac80211/util.c
+++ b/net/mac80211/util.c
@@ -264,6 +264,18 @@ __le16 ieee80211_ctstoself_duration(stru
@@ -107,7 +96,7 @@ queue by using skb_set_queue_mapping(skb, 0) through ieee80211_tx_skb()
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
-@@ -1598,6 +1598,10 @@ static void ieee80211_xmit(struct ieee80
+@@ -1587,6 +1587,10 @@ static void ieee80211_xmit(struct ieee80
return;
}
@@ -118,7 +107,7 @@ queue by using skb_set_queue_mapping(skb, 0) through ieee80211_tx_skb()
ieee80211_set_qos_hdr(local, skb);
ieee80211_tx(sdata, skb, false);
rcu_read_unlock();
-@@ -2090,7 +2094,14 @@ void ieee80211_tx_pending(unsigned long
+@@ -2079,7 +2083,14 @@ void ieee80211_tx_pending(unsigned long
if (skb_queue_empty(&local->pending[i]))
list_for_each_entry_rcu(sdata, &local->interfaces, list)
--
1.7.4.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 1/3] compat-wireless: make patches apply again
@ 2011-06-28 18:38 Hauke Mehrtens
2011-06-28 18:43 ` Luis R. Rodriguez
0 siblings, 1 reply; 12+ messages in thread
From: Hauke Mehrtens @ 2011-06-28 18:38 UTC (permalink / raw)
To: mcgrof, lrodriguez; +Cc: linux-wireless, Hauke Mehrtens
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
patches/11-dev-pm-ops.patch | 21 ++++++---------------
1 files changed, 6 insertions(+), 15 deletions(-)
diff --git a/patches/11-dev-pm-ops.patch b/patches/11-dev-pm-ops.patch
index b36c48b..c64a6e2 100644
--- a/patches/11-dev-pm-ops.patch
+++ b/patches/11-dev-pm-ops.patch
@@ -219,26 +219,17 @@ calls on compat code with only slight modifications.
static int __init iwl4965_init(void)
--- a/drivers/net/wireless/iwlwifi/iwl-pci.c
+++ b/drivers/net/wireless/iwlwifi/iwl-pci.c
-@@ -530,14 +530,10 @@ static int iwl_pci_resume(struct device
- return iwl_resume(priv);
- }
+@@ -527,6 +527,9 @@ static int iwl_pci_resume(struct device
+
+ static SIMPLE_DEV_PM_OPS(iwl_dev_pm_ops, iwl_pci_suspend, iwl_pci_resume);
--static const struct dev_pm_ops iwl_dev_pm_ops = {
-- .suspend = iwl_pci_suspend,
-- .resume = iwl_pci_resume,
-- .freeze = iwl_pci_suspend,
-- .thaw = iwl_pci_resume,
-- .poweroff = iwl_pci_suspend,
-- .restore = iwl_pci_resume,
--};
-+const SIMPLE_DEV_PM_OPS(iwl_dev_pm_ops, iwl_pci_suspend, iwl_pci_resume);
-+
+compat_pci_suspend(iwl_pci_suspend)
+compat_pci_resume(iwl_pci_resume)
-
++
#define IWL_PM_OPS (&iwl_dev_pm_ops)
-@@ -552,7 +548,12 @@ static struct pci_driver iwl_pci_driver
+ #else
+@@ -540,7 +543,12 @@ static struct pci_driver iwl_pci_driver
.id_table = iwl_hw_card_ids,
.probe = iwl_pci_probe,
.remove = __devexit_p(iwl_pci_remove),
--
1.7.4.1
^ permalink raw reply related [flat|nested] 12+ messages in thread* [PATCH 1/3] compat-wireless: make patches apply again
@ 2011-11-18 19:44 Hauke Mehrtens
2011-11-18 20:00 ` Luis R. Rodriguez
0 siblings, 1 reply; 12+ messages in thread
From: Hauke Mehrtens @ 2011-11-18 19:44 UTC (permalink / raw)
To: mcgrof, mcgrof; +Cc: linux-wireless, Hauke Mehrtens
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
patches/01-netdev.patch | 28 ++++++++--------
patches/29-sdio_no_suspend.patch | 64 +++++++++++++++++++++++++------------
2 files changed, 57 insertions(+), 35 deletions(-)
diff --git a/patches/01-netdev.patch b/patches/01-netdev.patch
index 2927219..c01024a 100644
--- a/patches/01-netdev.patch
+++ b/patches/01-netdev.patch
@@ -34,18 +34,18 @@ without creating a headache on maintenance of the pathes.
--- a/drivers/net/wireless/ath/ath6kl/main.c
+++ b/drivers/net/wireless/ath/ath6kl/main.c
-@@ -1465,7 +1465,7 @@ static struct net_device_ops ath6kl_netd
+@@ -1114,7 +1114,7 @@ static struct net_device_ops ath6kl_netd
void init_netdev(struct net_device *dev)
{
- dev->netdev_ops = &ath6kl_netdev_ops;
+ netdev_attach_ops(dev, &ath6kl_netdev_ops);
+ dev->destructor = free_netdev;
dev->watchdog_timeo = ATH6KL_TX_TIMEOUT;
- dev->needed_headroom = ETH_HLEN;
--- a/drivers/net/wireless/rndis_wlan.c
+++ b/drivers/net/wireless/rndis_wlan.c
-@@ -3439,7 +3439,7 @@ static int rndis_wlan_bind(struct usbnet
+@@ -3452,7 +3452,7 @@ static int rndis_wlan_bind(struct usbnet
* rndis_host wants to avoid all OID as much as possible
* so do promisc/multicast handling in rndis_wlan.
*/
@@ -56,7 +56,7 @@ without creating a headache on maintenance of the pathes.
retval = rndis_set_oid(usbdev, OID_GEN_CURRENT_PACKET_FILTER, &tmp,
--- a/net/mac80211/iface.c
+++ b/net/mac80211/iface.c
-@@ -697,7 +697,12 @@ static void ieee80211_if_setup(struct ne
+@@ -713,7 +713,12 @@ static void ieee80211_if_setup(struct ne
{
ether_setup(dev);
dev->priv_flags &= ~IFF_TX_SKB_SHARING;
@@ -70,7 +70,7 @@ without creating a headache on maintenance of the pathes.
dev->destructor = free_netdev;
}
-@@ -844,7 +849,7 @@ static void ieee80211_setup_sdata(struct
+@@ -860,7 +865,7 @@ static void ieee80211_setup_sdata(struct
/* and set some type-dependent values */
sdata->vif.type = type;
sdata->vif.p2p = false;
@@ -79,7 +79,7 @@ without creating a headache on maintenance of the pathes.
sdata->wdev.iftype = type;
sdata->control_port_protocol = cpu_to_be16(ETH_P_PAE);
-@@ -883,7 +888,7 @@ static void ieee80211_setup_sdata(struct
+@@ -899,7 +904,7 @@ static void ieee80211_setup_sdata(struct
break;
case NL80211_IFTYPE_MONITOR:
sdata->dev->type = ARPHRD_IEEE80211_RADIOTAP;
@@ -88,7 +88,7 @@ without creating a headache on maintenance of the pathes.
sdata->u.mntr_flags = MONITOR_FLAG_CONTROL |
MONITOR_FLAG_OTHER_BSS;
break;
-@@ -1134,6 +1139,8 @@ int ieee80211_if_add(struct ieee80211_lo
+@@ -1150,6 +1155,8 @@ int ieee80211_if_add(struct ieee80211_lo
return -ENOMEM;
dev_net_set(ndev, wiphy_net(local->hw.wiphy));
@@ -97,7 +97,7 @@ without creating a headache on maintenance of the pathes.
ndev->needed_headroom = local->tx_headroom +
4*6 /* four MAC addresses */
+ 2 + 2 + 2 + 2 /* ctl, dur, seq, qos */
-@@ -1142,6 +1149,7 @@ int ieee80211_if_add(struct ieee80211_lo
+@@ -1158,6 +1165,7 @@ int ieee80211_if_add(struct ieee80211_lo
- ETH_HLEN /* ethernet hard_header_len */
+ IEEE80211_ENCRYPT_HEADROOM;
ndev->needed_tailroom = IEEE80211_ENCRYPT_TAILROOM;
@@ -186,7 +186,7 @@ without creating a headache on maintenance of the pathes.
--- a/drivers/net/wireless/ipw2x00/ipw2100.c
+++ b/drivers/net/wireless/ipw2x00/ipw2100.c
-@@ -6114,7 +6114,7 @@ static struct net_device *ipw2100_alloc_
+@@ -6115,7 +6115,7 @@ static struct net_device *ipw2100_alloc_
priv->ieee->perfect_rssi = -20;
priv->ieee->worst_rssi = -85;
@@ -197,7 +197,7 @@ without creating a headache on maintenance of the pathes.
priv->wireless_data.libipw = priv->ieee;
--- a/drivers/net/wireless/ipw2x00/ipw2200.c
+++ b/drivers/net/wireless/ipw2x00/ipw2200.c
-@@ -11673,7 +11673,7 @@ static int ipw_prom_alloc(struct ipw_pri
+@@ -11682,7 +11682,7 @@ static int ipw_prom_alloc(struct ipw_pri
memcpy(priv->prom_net_dev->dev_addr, priv->mac_addr, ETH_ALEN);
priv->prom_net_dev->type = ARPHRD_IEEE80211_RADIOTAP;
@@ -206,7 +206,7 @@ without creating a headache on maintenance of the pathes.
priv->prom_priv->ieee->iw_mode = IW_MODE_MONITOR;
SET_NETDEV_DEV(priv->prom_net_dev, &priv->pci_dev->dev);
-@@ -11812,7 +11812,7 @@ static int __devinit ipw_pci_probe(struc
+@@ -11821,7 +11821,7 @@ static int __devinit ipw_pci_probe(struc
priv->ieee->perfect_rssi = -20;
priv->ieee->worst_rssi = -85;
@@ -336,7 +336,7 @@ without creating a headache on maintenance of the pathes.
}
--- a/drivers/net/ethernet/atheros/atl1e/atl1e_main.c
+++ b/drivers/net/ethernet/atheros/atl1e/atl1e_main.c
-@@ -2231,7 +2231,7 @@ static int atl1e_init_netdev(struct net_
+@@ -2234,7 +2234,7 @@ static int atl1e_init_netdev(struct net_
pci_set_drvdata(pdev, netdev);
netdev->irq = pdev->irq;
@@ -347,7 +347,7 @@ without creating a headache on maintenance of the pathes.
atl1e_set_ethtool_ops(netdev);
--- a/drivers/net/ethernet/atheros/atl1c/atl1c_main.c
+++ b/drivers/net/ethernet/atheros/atl1c/atl1c_main.c
-@@ -2617,7 +2617,7 @@ static int atl1c_init_netdev(struct net_
+@@ -2620,7 +2620,7 @@ static int atl1c_init_netdev(struct net_
pci_set_drvdata(pdev, netdev);
netdev->irq = pdev->irq;
@@ -369,7 +369,7 @@ without creating a headache on maintenance of the pathes.
netdev->ethtool_ops = &atl1_ethtool_ops;
--- a/drivers/net/ethernet/atheros/atlx/atl2.c
+++ b/drivers/net/ethernet/atheros/atlx/atl2.c
-@@ -1411,7 +1411,7 @@ static int __devinit atl2_probe(struct p
+@@ -1414,7 +1414,7 @@ static int __devinit atl2_probe(struct p
atl2_setup_pcicmd(pdev);
diff --git a/patches/29-sdio_no_suspend.patch b/patches/29-sdio_no_suspend.patch
index 934eb94..f5b85b7 100644
--- a/patches/29-sdio_no_suspend.patch
+++ b/patches/29-sdio_no_suspend.patch
@@ -5,66 +5,88 @@ suspend and resume that are not backported.
--- a/drivers/net/wireless/ath/ath6kl/cfg80211.c
+++ b/drivers/net/wireless/ath/ath6kl/cfg80211.c
-@@ -1411,7 +1411,7 @@ static int ath6kl_flush_pmksa(struct wip
+@@ -1871,7 +1871,7 @@ int ath6kl_cfg80211_resume(struct ath6kl
return 0;
}
-#ifdef CONFIG_PM
+#if defined(CONFIG_PM) && (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34))
- static int ar6k_cfg80211_suspend(struct wiphy *wiphy,
- struct cfg80211_wowlan *wow)
- {
-@@ -1827,7 +1827,7 @@ static struct cfg80211_ops ath6kl_cfg802
+
+ /* hif layer decides what suspend mode to use */
+ static int __ath6kl_cfg80211_suspend(struct wiphy *wiphy,
+@@ -2346,7 +2346,7 @@ static struct cfg80211_ops ath6kl_cfg802
.del_pmksa = ath6kl_del_pmksa,
.flush_pmksa = ath6kl_flush_pmksa,
CFG80211_TESTMODE_CMD(ath6kl_tm_cmd)
-#ifdef CONFIG_PM
+#if defined(CONFIG_PM) && (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34))
- .suspend = ar6k_cfg80211_suspend,
+ .suspend = __ath6kl_cfg80211_suspend,
+ .resume = __ath6kl_cfg80211_resume,
#endif
- .set_channel = ath6kl_set_channel,
--- a/drivers/net/wireless/ath/ath6kl/hif-ops.h
+++ b/drivers/net/wireless/ath/ath6kl/hif-ops.h
-@@ -69,9 +69,11 @@ static inline void ath6kl_hif_cleanup_sc
+@@ -83,6 +83,7 @@ static inline void ath6kl_hif_cleanup_sc
return ar->hif_ops->cleanup_scatter(ar);
}
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34))
- static inline int ath6kl_hif_suspend(struct ath6kl *ar)
+ static inline int ath6kl_hif_suspend(struct ath6kl *ar,
+ struct cfg80211_wowlan *wow)
{
- return ar->hif_ops->suspend(ar);
+@@ -97,6 +98,7 @@ static inline int ath6kl_hif_resume(stru
+
+ return ar->hif_ops->resume(ar);
}
+#endif
- #endif
+ static inline int ath6kl_hif_power_on(struct ath6kl *ar)
+ {
--- a/drivers/net/wireless/ath/ath6kl/sdio.c
+++ b/drivers/net/wireless/ath/ath6kl/sdio.c
-@@ -724,6 +724,7 @@ static int ath6kl_sdio_enable_scatter(st
- return 0;
+@@ -774,6 +774,7 @@ out:
+ return ret;
}
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34))
- static int ath6kl_sdio_suspend(struct ath6kl *ar)
+ static int ath6kl_sdio_suspend(struct ath6kl *ar, struct cfg80211_wowlan *wow)
{
struct ath6kl_sdio *ar_sdio = ath6kl_sdio_priv(ar);
-@@ -751,6 +752,7 @@ static int ath6kl_sdio_suspend(struct at
+@@ -845,6 +846,7 @@ static int ath6kl_sdio_resume(struct ath
return 0;
}
+#endif /* (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34)) */
- static const struct ath6kl_hif_ops ath6kl_sdio_ops = {
- .read_write_sync = ath6kl_sdio_read_write_sync,
-@@ -762,7 +764,9 @@ static const struct ath6kl_hif_ops ath6k
+ static void ath6kl_sdio_stop(struct ath6kl *ar)
+ {
+@@ -888,14 +890,16 @@ static const struct ath6kl_hif_ops ath6k
.enable_scatter = ath6kl_sdio_enable_scatter,
.scat_req_rw = ath6kl_sdio_async_rw_scatter,
.cleanup_scatter = ath6kl_sdio_cleanup_scatter,
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34))
.suspend = ath6kl_sdio_suspend,
+ .resume = ath6kl_sdio_resume,
++#endif
+ .power_on = ath6kl_sdio_power_on,
+ .power_off = ath6kl_sdio_power_off,
+ .stop = ath6kl_sdio_stop,
+ };
+
+-#ifdef CONFIG_PM_SLEEP
++#if defined(CONFIG_PM_SLEEP) && (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34))
+
+ /*
+ * Empty handlers so that mmc subsystem doesn't remove us entirely during
+@@ -1037,7 +1041,9 @@ static struct sdio_driver ath6kl_sdio_dr
+ .id_table = ath6kl_sdio_devices,
+ .probe = ath6kl_sdio_probe,
+ .remove = ath6kl_sdio_remove,
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34))
+ .drv.pm = ATH6KL_SDIO_PM_OPS,
+#endif
};
- static int ath6kl_sdio_probe(struct sdio_func *func,
+ static int __init ath6kl_sdio_init(void)
--- a/drivers/net/wireless/libertas/if_sdio.c
+++ b/drivers/net/wireless/libertas/if_sdio.c
@@ -1306,6 +1306,7 @@ static void if_sdio_remove(struct sdio_f
@@ -123,7 +145,7 @@ suspend and resume that are not backported.
/* Device ID for SD8787 */
#define SDIO_DEVICE_ID_MARVELL_8787 (0x9119)
-@@ -267,10 +271,12 @@ static const struct sdio_device_id mwifi
+@@ -270,10 +274,12 @@ static const struct sdio_device_id mwifi
MODULE_DEVICE_TABLE(sdio, mwifiex_ids);
@@ -136,7 +158,7 @@ suspend and resume that are not backported.
static struct sdio_driver mwifiex_sdio = {
.name = "mwifiex_sdio",
-@@ -279,7 +285,9 @@ static struct sdio_driver mwifiex_sdio =
+@@ -282,7 +288,9 @@ static struct sdio_driver mwifiex_sdio =
.remove = mwifiex_sdio_remove,
.drv = {
.owner = THIS_MODULE,
--
1.7.4.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
end of thread, other threads:[~2011-11-18 20:01 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-12-17 22:42 [PATCH 1/3] compat-wireless: make patches apply again Hauke Mehrtens
2010-12-17 22:42 ` [PATCH 2/3] compat-wireless: use pci_is_pcie() Hauke Mehrtens
2010-12-18 20:14 ` Luis R. Rodriguez
2010-12-17 22:42 ` [PATCH 3/3] compat-wireless: add support for RTL8192CE Hauke Mehrtens
2010-12-20 11:33 ` [PATCH 1/2] compat-wireless: complete rtlwifi/RTL8192CE support Walter Goldens
2010-12-18 20:08 ` [PATCH 1/3] compat-wireless: make patches apply again Luis R. Rodriguez
-- strict thread matches above, loose matches on Subject: below --
2011-04-20 21:35 Hauke Mehrtens
2011-05-10 11:11 Hauke Mehrtens
2011-06-28 18:38 Hauke Mehrtens
2011-06-28 18:43 ` Luis R. Rodriguez
2011-11-18 19:44 Hauke Mehrtens
2011-11-18 20:00 ` Luis R. Rodriguez
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).