aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuis R. Rodriguez <mcgrof@winlab.rutgers.edu>2008-03-07 20:43:56 -0500
committerLuis R. Rodriguez <mcgrof@winlab.rutgers.edu>2008-03-07 20:43:56 -0500
commite88c9ede778c41920b508bf825389faa440692e7 (patch)
treec6eca1aa04ef93079297ce6d2ec03cad40e481ec
parent1c9e71d3dbea62a6225e3f474c4a5cb9badebbb9 (diff)
downloadcompat-wireless-2.6-old-e88c9ede778c41920b508bf825389faa440692e7.tar.gz
Update compat.diff for the latest pull from wireless-testing, also fix rt2x00
configuration on config.mk. Signed-off-by: Luis R. Rodriguez <mcgrof@winlab.rutgers.edu>
-rw-r--r--compat/compat.diff140
-rw-r--r--config.mk26
2 files changed, 96 insertions, 70 deletions
diff --git a/compat/compat.diff b/compat/compat.diff
index 790f722..b89b636 100644
--- a/compat/compat.diff
+++ b/compat/compat.diff
@@ -91,44 +91,6 @@
struct pcmcia_device;
---- a/drivers/ssb/main.c 2008-02-28 19:54:52.000000000 +0100
-+++ b/drivers/ssb/main.c 2008-02-28 19:54:53.000000000 +0100
-@@ -321,6 +321,27 @@ static int ssb_bus_match(struct device *
- return 0;
- }
-
-+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24))
-+static int ssb_device_uevent(struct device *dev, char **envp,
-+ int num_envp, char *buffer, int buffer_size)
-+{
-+ struct ssb_device *ssb_dev = dev_to_ssb_dev(dev);
-+ int cur_index = 0, cur_len = 0;
-+
-+ if (!dev)
-+ return -ENODEV;
-+
-+ return add_uevent_var(envp,
-+ num_envp,
-+ &cur_index,
-+ buffer,
-+ buffer_size,
-+ &cur_len,
-+ "MODALIAS=ssb:v%04Xid%04Xrev%02X",
-+ ssb_dev->id.vendor, ssb_dev->id.coreid,
-+ ssb_dev->id.revision);
-+}
-+#else
- static int ssb_device_uevent(struct device *dev, struct kobj_uevent_env *env)
- {
- struct ssb_device *ssb_dev = dev_to_ssb_dev(dev);
-@@ -333,6 +354,7 @@ static int ssb_device_uevent(struct devi
- ssb_dev->id.vendor, ssb_dev->id.coreid,
- ssb_dev->id.revision);
- }
-+#endif
-
- static struct bus_type ssb_bustype = {
- .name = "ssb",
--- a/net/mac80211/util.c 2008-02-28 19:54:52.000000000 +0100
+++ b/net/mac80211/util.c 2008-02-28 19:54:53.000000000 +0100
@@ -20,9 +20,15 @@
@@ -623,15 +585,6 @@
return 0;
---- a/drivers/net/wireless/zd1211rw/zd_mac.c 2008-02-21 13:07:01.000000000 -0500
-+++ b/drivers/net/wireless/zd1211rw/zd_mac.c 2008-02-21 13:07:01.000000000 -0500
-@@ -971,5 +971,5 @@
- dev_dbg_f(zd_mac_dev(mac), "\n");
- cancel_rearming_delayed_workqueue(zd_workqueue,
- &mac->housekeeping.link_led_work);
-- zd_chip_control_leds(&mac->chip, LED_OFF);
-+ zd_chip_control_leds(&mac->chip, LED_OFF_ZD);
- }
--- a/net/mac80211/ieee80211.c 2008-02-28 13:35:06.000000000 -0500
+++ b/net/mac80211/ieee80211.c 2008-02-28 13:35:08.000000000 -0500
@@ -21,7 +21,9 @@
@@ -832,9 +785,56 @@
return -EINVAL;
}
return 0;
---- a/drivers/net/wireless/zd1211rw/zd_chip.c 2008-03-02 22:24:54.000000000 -0500
-+++ b/drivers/net/wireless/zd1211rw/zd_chip.c 2008-03-02 22:24:54.000000000 -0500
-@@ -1280,7 +1280,7 @@
+--- a/drivers/ssb/main.c 2008-03-07 20:02:05.000000000 -0500
++++ b/drivers/ssb/main.c 2008-03-07 20:02:07.000000000 -0500
+@@ -341,6 +341,27 @@
+ return 0;
+ }
+
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24))
++static int ssb_device_uevent(struct device *dev, char **envp,
++ int num_envp, char *buffer, int buffer_size)
++{
++ struct ssb_device *ssb_dev = dev_to_ssb_dev(dev);
++ int cur_index = 0, cur_len = 0;
++
++ if (!dev)
++ return -ENODEV;
++
++ return add_uevent_var(envp,
++ num_envp,
++ &cur_index,
++ buffer,
++ buffer_size,
++ &cur_len,
++ "MODALIAS=ssb:v%04Xid%04Xrev%02X",
++ ssb_dev->id.vendor, ssb_dev->id.coreid,
++ ssb_dev->id.revision);
++}
++#else
+ static int ssb_device_uevent(struct device *dev, struct kobj_uevent_env *env)
+ {
+ struct ssb_device *ssb_dev = dev_to_ssb_dev(dev);
+@@ -353,6 +374,7 @@
+ ssb_dev->id.vendor, ssb_dev->id.coreid,
+ ssb_dev->id.revision);
+ }
++#endif
+
+ static struct bus_type ssb_bustype = {
+ .name = "ssb",
+--- a/drivers/net/wireless/zd1211rw/zd_mac.c 2008-03-07 20:02:06.000000000 -0500
++++ b/drivers/net/wireless/zd1211rw/zd_mac.c 2008-03-07 20:02:07.000000000 -0500
+@@ -1042,5 +1042,5 @@
+ dev_dbg_f(zd_mac_dev(mac), "\n");
+ cancel_rearming_delayed_workqueue(zd_workqueue,
+ &mac->housekeeping.link_led_work);
+- zd_chip_control_leds(&mac->chip, LED_OFF);
++ zd_chip_control_leds(&mac->chip, LED_OFF_ZD);
+ }
+--- a/drivers/net/wireless/zd1211rw/zd_chip.c 2008-03-07 20:02:06.000000000 -0500
++++ b/drivers/net/wireless/zd1211rw/zd_chip.c 2008-03-07 20:02:07.000000000 -0500
+@@ -1281,7 +1281,7 @@
other_led = chip->link_led == LED1 ? LED2 : LED1;
switch (status) {
@@ -843,9 +843,9 @@
ioreqs[0].value = FW_LINK_OFF;
ioreqs[1].value = v[1] & ~(LED1|LED2);
break;
---- a/drivers/net/wireless/zd1211rw/zd_chip.h 2008-03-02 22:26:47.000000000 -0500
-+++ b/drivers/net/wireless/zd1211rw/zd_chip.h 2008-03-02 22:26:48.000000000 -0500
-@@ -889,7 +889,7 @@
+--- a/drivers/net/wireless/zd1211rw/zd_chip.h 2008-03-07 20:02:06.000000000 -0500
++++ b/drivers/net/wireless/zd1211rw/zd_chip.h 2008-03-07 20:02:07.000000000 -0500
+@@ -897,7 +897,7 @@
int zd_chip_unlock_phy_regs(struct zd_chip *chip);
enum led_status {
@@ -854,13 +854,29 @@
LED_SCANNING = 1,
LED_ASSOCIATED = 2,
};
---- a/drivers/net/wireless/Makefile 2008-03-02 22:29:20.000000000 -0500
-+++ b/drivers/net/wireless/Makefile 2008-03-02 22:29:32.000000000 -0500
-@@ -24,7 +24,6 @@
-
- obj-$(CONFIG_IWL3945) += iwlwifi/
- obj-$(CONFIG_IWL4965) += iwlwifi/
--obj-$(CONFIG_RT2X00) += rt2x00/
+--- a/drivers/net/wireless/ath5k/hw.c 2008-03-07 20:16:26.000000000 -0500
++++ b/drivers/net/wireless/ath5k/hw.c 2008-03-07 20:16:26.000000000 -0500
+@@ -385,7 +385,11 @@
+ /* reseting PCI on PCI-E cards results card to hang
+ * and always return 0xffff... so we ingore that flag
+ * for PCI-E cards */
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24))
++ bus_flags = (compat_is_pcie(pdev)) ? 0 : AR5K_RESET_CTL_PCI;
++#else
+ bus_flags = (pdev->is_pcie) ? 0 : AR5K_RESET_CTL_PCI;
++#endif
- obj-$(CONFIG_P54_COMMON) += p54common.o
- obj-$(CONFIG_P54_USB) += p54usb.o
+ /* Reset chipset */
+ ret = ath5k_hw_nic_reset(ah, AR5K_RESET_CTL_PCU |
+@@ -935,7 +939,11 @@
+ * TODO: Check out tx triger level, it's always 64 on dumps but I
+ * guess we can tweak it and see how it goes ;-)
+ */
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24))
++ dma_size = (compat_is_pcie(pdev)) ? AR5K_DMASIZE_128B : AR5K_DMASIZE_512B;
++#else
+ dma_size = (pdev->is_pcie) ? AR5K_DMASIZE_128B : AR5K_DMASIZE_512B;
++#endif
+ if (ah->ah_version != AR5K_AR5210) {
+ AR5K_REG_WRITE_BITS(ah, AR5K_TXCFG,
+ AR5K_TXCFG_SDMAMR, dma_size);
diff --git a/config.mk b/config.mk
index 3186241..a70d781 100644
--- a/config.mk
+++ b/config.mk
@@ -72,12 +72,17 @@ CONFIG_SSB_DRIVER_PCICORE=y
CONFIG_RTL8180=m
CONFIG_ADM8211=m
-ifneq ($(CONFIG_CRC_ITU_T),)
CONFIG_RT2X00_LIB_PCI=m
CONFIG_RT2400PCI=m
CONFIG_RT2500PCI=m
-CONFIG_RT61PCI=m
NEED_RT2X00=y
+
+# Two rt2x00 drivers require firmware: rt61pci and rt73usb. They depend on
+# CRC to check the firmware. We check here first for the PCI
+# driver as we're in the PCI section.
+ifneq ($(CONFIG_CRC_ITU_T),)
+CONFIG_RT61PCI=m
+NEED_RT2X00_FIRMWARE=y
endif
endif
@@ -106,22 +111,27 @@ endif
CONFIG_P54_USB=m
CONFIG_RTL8187=m
-ifneq ($(CONFIG_CRC_ITU_T),)
-CONFIG_RT2X00_LIB_USB=m
+# RT2500USB does not require firmware
CONFIG_RT2500USB=m
-CONFIG_RT73USB=m
NEED_RT2X00=y
+# RT73USB requires firmware
+ifneq ($(CONFIG_CRC_ITU_T),)
+CONFIG_RT73USB=m
+NEED_RT2X00_FIRMWARE=y
endif
-endif
+endif # end of USB driver list
-# rt2x00
+# Common rt2x00 requirements
ifeq ($(NEED_RT2X00),y)
CONFIG_RT2X00=m
CONFIG_RT2X00_LIB=m
+endif
+
+ifeq ($(NEED_RT2X00_FIRMWARE),y)
CONFIG_RT2X00_LIB_FIRMWARE=y
# CONFIG_RT2X00_LIB_DEBUGFS is not set
-# CONFIG_RT2X00_DEBUG is not se
+# CONFIG_RT2X00_DEBUG is not set
endif
# p54