Search Linux Wireless

Re: 2 compile errors: rt2x00firmware.c and mesh.c

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Mar 10, 2008 at 11:21:35PM +0100, Ivo van Doorn wrote:
> On Monday 10 March 2008, Franz Apeltauer wrote:
> > Luis R. Rodriguez schrieb:
> > >>  b) Test on a PC with MSI PC54G2 ... RaLink rt2500
> > > 
> > > You can test this now, I've enabled rt2x00 drivers by fixing
> > > dependencies on config.mk. Forced re-generation of new tarball based
> > > on latest updates too.
> > > 
> > >   Luis
> > 
> > Loaded today's tarball (10.3.).
> > The "redefinition of rt2x00lib_load_firmware" error is back.
> > 
> > I believe, that there should be 2 additional lines in rt2x00firmware.c:
> > a) line #115, before "int rt2x00lib_load_firmware":
> >      #ifdef CONFIG_RT2X00_LIB_FIRMWARE
> > b) at the end of the file:
> >      #endif /* CONFIG_RT2X00_LIB_FIRMWARE */
> > to be consistent with #ifdef/#else/#endif in rt2x00lib.h lines 124, 127, 
> > 135.
> > Then it compiles fine. install, unload, load.
> > ... and now I see wlan0 and wmaster0!  Yippee!
> 
> How about not linking rt2x00firmware.c at all when RT2X00_LIB_FIRMWARE
> is not set? That should be a clean solution that can be made in the Makefile...

Actually Ivo, I think you're fine, this is an issue with
compat-wireless. I've applied the patch below to correct this.

The issue seems to have come from scripts/gen-compat-autoconf.sh, in the 
the "skip vars that weren't actually set due to dependencies"
section.

Frankz, I generated a new tarball with this applied. You can either
patch your local tarball with this patch or just download the
tarball again.

  Luis

commit d4097ab3593a721fc1d99823d2442464debf7f09
Author: Luis R. Rodriguez <mcgrof@xxxxxxxxxxxxxxxxxx>
Date:   Mon Mar 10 19:20:33 2008 -0400

    Fix rt2x00 firmware build issue, fix typo with IPW2200 radiotap options
    
    Signed-off-by: Luis R. Rodriguez <mcgrof@xxxxxxxxxxxxxxxxxx>

diff --git a/config.mk b/config.mk
index a146854..b9d537d 100644
--- a/config.mk
+++ b/config.mk
@@ -59,11 +59,11 @@ CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y
 
 # The Intel ipws
 CONFIG_IPW2100=m
-IPW2100_MONITOR=y
+CONFIG_IPW2100_MONITOR=y
 CONFIG_IPW2200=m
-IPW2200_MONITOR=y
-IPW2200_RADIOTAP=y
-IPW2200_PROMISCUOUS=y
+CONFIG_IPW2200_MONITOR=y
+CONFIG_IPW2200_RADIOTAP=y
+CONFIG_IPW2200_PROMISCUOUS=y
 # The above enables use a second interface prefixed 'rtap'.
 #           Example usage:
 #
@@ -76,7 +76,7 @@ IPW2200_PROMISCUOUS=y
 # it on via sysfs:
 #
 # % echo 1 > /sys/bus/pci/drivers/ipw2200/*/rtap_iface
-IPW2200_QOS=y
+CONFIG_IPW2200_QOS=y
 
 NEED_IEEE80211=y
 
@@ -113,9 +113,12 @@ CONFIG_EEPROM_93CX6=m
 ifneq ($(CONFIG_USB),)
 CONFIG_ZD1211RW=m
 
-# Sorry, it uses cancel_work_sync which is new and can't be done in compat...
+# Stuff here things which depend on kernel versions for USB
+ifeq ($(shell test -e $(KLIB_BUILD)/Makefile && echo yes),yes)
 ifeq ($(shell test $(shell sed 's/^SUBLEVEL = //;t;d' < $(KLIB_BUILD)/Makefile) -gt 21 && echo yes),yes)
 
+# Sorry, rndis_wlan uses cancel_work_sync which is new and can't be done in compat...
+
 # Wireless RNDIS USB support (RTL8185 802.11g) A-Link WL54PC
 # All of these devices are based on Broadcom 4320 chip which
 # is only wireless RNDIS chip known to date.
@@ -125,12 +128,14 @@ CONFIG_USB_NET_RNDIS_HOST=m
 CONFIG_USB_NET_RNDIS_WLAN=m
 
 endif
+endif
 
 CONFIG_P54_USB=m
 CONFIG_RTL8187=m
 
 # RT2500USB does not require firmware
 CONFIG_RT2500USB=m
+CONFIG_RT2X00_LIB_USB=m
 NEED_RT2X00=y
 # RT73USB requires firmware
 ifneq ($(CONFIG_CRC_ITU_T),)
@@ -144,12 +149,12 @@ endif # end of USB driver list
 ifeq ($(NEED_RT2X00),y)
 CONFIG_RT2X00=m
 CONFIG_RT2X00_LIB=m
+# CONFIG_RT2X00_LIB_DEBUGFS is not set
+# CONFIG_RT2X00_DEBUG is not set
 endif
 
 ifeq ($(NEED_RT2X00_FIRMWARE),y)
 CONFIG_RT2X00_LIB_FIRMWARE=y
-# CONFIG_RT2X00_LIB_DEBUGFS is not set
-# CONFIG_RT2X00_DEBUG is not set
 endif
 
 # p54
diff --git a/scripts/gen-compat-autoconf.sh b/scripts/gen-compat-autoconf.sh
index 4c97835..173431f 100755
--- a/scripts/gen-compat-autoconf.sh
+++ b/scripts/gen-compat-autoconf.sh
@@ -127,9 +127,9 @@ for i in $(grep '^CONFIG_' $COMPAT_CONFIG); do
 	VALUE=$(echo $i | cut -d"=" -f 2)
 
 	# skip vars that weren't actually set due to dependencies
-	if [ "${!VAR}" = "" ] ; then
-		continue
-	fi
+	#if [ "${!VAR}" = "" ] ; then
+	#	continue
+	#fi
 
 	# Handle core kernel module depenencies here.
 	case $VAR in
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux