I found that there was too much pollution of files from the make of the Realtek driver, so I thought (since I have nothing invested in this system) I'd wipe it clean again and start afresh with the serialmonkey version of the drivers. this is what I found so far:
--> start of file, lets do the make
Code:
[root@localhost Module]# make
make[1]: Entering directory `/usr/src/kernels/2.6.9-22.EL-smp-i686'
CC [M] /tmp/rt61-cvs-2008071005/Module/rtmp_main.o
CC [M] /tmp/rt61-cvs-2008071005/Module/mlme.o
CC [M] /tmp/rt61-cvs-2008071005/Module/connect.o
CC [M] /tmp/rt61-cvs-2008071005/Module/sync.o
CC [M] /tmp/rt61-cvs-2008071005/Module/assoc.o
CC [M] /tmp/rt61-cvs-2008071005/Module/auth.o
CC [M] /tmp/rt61-cvs-2008071005/Module/auth_rsp.o
CC [M] /tmp/rt61-cvs-2008071005/Module/rtmp_data.o
CC [M] /tmp/rt61-cvs-2008071005/Module/rtmp_init.o
CC [M] /tmp/rt61-cvs-2008071005/Module/sanity.o
CC [M] /tmp/rt61-cvs-2008071005/Module/rtmp_wep.o
CC [M] /tmp/rt61-cvs-2008071005/Module/wpa.o
CC [M] /tmp/rt61-cvs-2008071005/Module/md5.o
CC [M] /tmp/rt61-cvs-2008071005/Module/rtmp_tkip.o
CC [M] /tmp/rt61-cvs-2008071005/Module/rtmp_info.o
CC [M] /tmp/rt61-cvs-2008071005/Module/eeprom.o
CC [M] /tmp/rt61-cvs-2008071005/Module/rt2x00debug.o
LD [M] /tmp/rt61-cvs-2008071005/Module/rt61.o
Building modules, stage 2.
MODPOST
CC /tmp/rt61-cvs-2008071005/Module/rt61.mod.o
LD [M] /tmp/rt61-cvs-2008071005/Module/rt61.ko
make[1]: Leaving directory `/usr/src/kernels/2.6.9-22.EL-smp-i686'
!!! WARNING: Module file much too big (>1MB)
!!! Check your kernel settings or use 'strip'
*** Module rt61.ko built successfully
ok ... a warning, things too big ... what's next
Code:
[root@localhost Module]# make install
*** Install module in /lib/modules/2.6.9-22.ELsmp/extra ...
make[1]: Entering directory `/usr/src/kernels/2.6.9-22.EL-smp-i686'
INSTALL /tmp/rt61-cvs-2008071005/Module/rt61.ko
make[1]: Leaving directory `/usr/src/kernels/2.6.9-22.EL-smp-i686'
/sbin/depmod -a
*** Update /etc/modprobe.d/ralink alias for wlan*
*** Config dir /etc/modprobe.d not found
*** Install firmware in /lib/firmware ...
*** Check old config ...
couple of warnings, nothing too scary ... now, lets confirm what's now been made one at a time starting from the first line
--> *** Update /etc/modprobe.d/ralink alias for wlan*
well that's a fluff up! As you can see below the code then basically adds this line into the modprobe.d/ralink file
and why then is there this step in the README file (step 4)
Code:
# modprobe rt61 [debug=<mask>]
is it because they knew that the make was wrong?? I need to understand what needs to be done, as I need to ensure that the preconditions are actually right before executing this.
as I understand it (please someone jump in if I'm wrong here) the entry in /etc/modprobe.conf is perhaps linked in some way to the filename (such as by name without the .ko extention) to the files in
/lib/modules/`uname -r`/kernel/drivers/net
dunno ... way too many "
dunno's" in this.
Lets also look at the existing module dependencies (depmod). My manpage on modprobe says that I need to check dmesg to see what the results are as some functions are now part of the kernel ... great!
So if anyone out there reading this can fill me in on what modprobe rt61 does, and what needs to be where before its done I'd be very grateful.
Code:
IF_NAME := wlan*
MODULE_NAME := rt61
MODULE_OBJECT := $(MODULE_NAME).ko
MODULE_CONF := /etc/modprobe.d/ralink
...
if ! grep -q '$(IF_NAME)' $(MODULE_CONF) ; then \
echo "alias $(IF_NAME) $(MODULE_NAME)" >> $(MODULE_CONF) ; \
which is wrong for RHEL the location is /etc/modprobe.conf so such an entry needs to be put into /etc/modprobe.conf
as its only an alias, so perhaps this can be done by the gui tools?
next, this line stands out alone in the makefile:
what's it supposed to do?
now, what about the Firmware? Bewdy, the firmware's there :-)
Code:
[root@localhost Module]# ls /lib/firmware
BCM2033-FW.bin BCM-LEGAL.txt rt2561s.bin
BCM2033-MD.hex rt2561.bin rt2661.bin
NOTE: some important changes in the structure have resulted in some new bits which are confusing, for example there
were files put into /etc/Wireless/RT61STA however the code
now puts stuff into /lib/firmware. NB:
Code:
FIRMWARES := rt2*.bin
FIRM_DIR := /lib/firmware
...
@echo "*** Install firmware in $(FIRM_DIR) ..."; \
if ! [ -d $(FIRM_DIR) ]; then \
mkdir $(FIRM_DIR); \
fi; \
cp -f $(FIRMWARES) $(FIRM_DIR)
the make file then goes on to check if the old DEPRECATED stuff is there...
Code:
CONFIG_DIR := /etc/Wireless/RT61STA
OLD_IF_NAME := ra0
CONFIG_FILE := rt61sta.dat
...
if [ -d $(CONFIG_DIR) ]; then \
echo "!!!"; \
echo "!!! WARNING: DEPRECATED CONFIG FOUND !"; \
echo "!!!"; \
echo "!!! -> Update your config and remove $(CONFIG_DIR)"; \
if [ -f $(CONFIG_DIR)/$(CONFIG_FILE) ]; then \
echo "!!! -> $(CONFIG_FILE) file is deprecated:" \
"use iwconfig/iwpriv instead"; \
and then tells you NOT to use the stuff in /etc/Wireless/RT61STA
I recall that I had a problem with my card not being recognized, so I've gone and got the latest pci.ids file with the one from pci-ids.ucw.cz and it now at least doesn't show that its an unknown card
BUT still don't work!
I'm so glad that Linux is so simple, if this was windows, it would have given me the option to "have disk" and install a driver for an unknown card.
Sheesh!
more as I get further into this