컴퓨터공부

HostAP FAQ...

achivenKakao 2006. 6. 30. 12:17

이번 프로젝트를 하면서, 어떤 유틸이나 드라이버에 대한 문서는 꼼꼼하게 읽어야 한다는

것을 깨달았다. 내가 이 문서를 조금만 더 자세히 들여봤더라도, 여러 문제점들을 쉽게 찾아

내었을 것이다...-_-; 무엇이든 대충 보는 생각을 버려야 겠다.

HostAP 는 Intersil 기반의 PCMCIA 무선 랜 카드를 이용하여 AP로 동작시키기 위한

리눅스용 클라이언트 디바이스 드라이버 이다. Host PC 를 무선 인터넷 공유기로 구현 할

수 있다.

 

출처는 http://hostap.epitest.fi/cgi-bin/viewcvs.cgi/*checkout*/hostap/FAQ?rev=HEAD&content-type=text/plain

 

Host AP driver - Frequently Asked Questions===========================================1. What does "GetNextTuple: No more items" mean in hostap_cs initialization?2. Why RX does not work? What does "NETDEV WATCHDOG: wlan0: transmit timed out" mean? (interrupt delivery problems)3. What is wrong with Host AP mode in secondary (station) firmware v1.4.2?4. What is causing 'Unresolved symbols' in depmod/modprobe?5. How can I upgrade Prism2/2.5/3 firmware?6. Why did I get two network interfaces (wlan0 and wifi0) even when I have only one wireless card?7. Why does my D-Link DWL-650 rev. P1 or D-Link DWL-520 rev. E1 (or any other card with small flash) card fail?8. Does Host AP driver support IEEE 802.11a and 802.11g? Does it support chipsets other than Prism 2/2.5/3?1. What does "GetNextTuple: No more items" mean in hostap_cs initialization?This is one of the most often reported problems in getting thehostap_cs.o driver working. It is usually reported for D-Link DWL-650PC Card, e.g., on ISA-to-PCMCIA adapter. Later versions of the driverreport this also with "Vcc mismatch - skipping this entry".Most common reason for getting this is a mismatch in voltageconfiguration. The driver tries to make sure that the voltage (Vcc)configuration in CIS and the slot match each other. It refuses toinitialize the card if the card CIS does not include a CFTABLE entrywith a matching Vcc value. This seems to be a problem for some casessince the CIS is invalid or the reported voltage is incorrect.As a workaround, the driver supports a module parameter ignore_cis_vccthat can be used to skip this verification. This can be enabled bysetting ignore_cis_vcc=1 in /etc/pcmcia/hostap_cs.conf (commentedexample line in the end of file). This can also be tested by manuallyloading the module with 'modprobe hostap_cs ignore_cis_vcc=1' beforeinserting the card).2. Why RX does not work? What does "NETDEV WATCHDOG: wlan0: transmit timed out" mean? (interrupt delivery problems)If the driver does not seem to receive any packets or sending packetsresults in "NETDEV WATCHDOG: wlan0: transmit timed out", the reason isprobably in interrupt delivery problems. This is quite common withPCI-to-PCMCIA adapters. Newer than 2002-05-19 of the driver have atest that will report this after the initialization ("wlan: Possibleinterrupt delivery problem"). Another method for checking this is toobserver whether interrupt counters in /proc/interrupts increase forhostap_cs/wlan0 entry.Adding suitable irq_mode=# setting in PCIC_OPTS line ofpcmcia-configuration is the most common fix for this. pcmcia-cs HOWTOhas more information on how to debug and fix interrupt deliveryproblems athttp://pcmcia-cs.sourceforge.net/ftp/doc/PCMCIA-HOWTO-5.html#irqmode3. What is wrong with Host AP mode in secondary (station) firmware v1.4.2?It looks like secondary firmware v1.4.2 sends beacon frames properly,but does not respond to probe requests. With most station cards, thisprevents authentication and association and thus, in practice, no dataframes can be sent. It has been reported that at least some CiscoAironet 350 cards can associate with Host AP mode even with firmwarev1.4.2 (i.e., without receiving probe response), but Prism2 andLucent/ORiNOCO/Agere seem to require probe response and they do notthus associate with AP using v1.4.2 firmware.This is fixed in later secondary firmware versions; probably alreadyin 1.4.3, but at least 1.4.9 has been tested to work. In other words,this problem can be fixed by upgrading card firmware.4. What is causing 'Unresolved symbols' in depmod/modprobe?Installation of Host AP driver (e.g, 'make install_pccard') may reportunresolved symbols when running depmod. These are usually caused withmismatch in kernel configuration for modversions.Example:depmod reports unresolved symbol 'eth_type_trans' (this is withoutmodversions):depmod: eth_type_transbut kernel was really configured with CONFIG_MODVERSIONS:# grep eth_type_trans /proc/ksymsc01b66c0 eth_type_trans_Rdb9cd26f(notice the _R... postfix)This happens if the kernel configuration given to Host AP driver'sMakefile (.config in KERNEL_PATH) has not CONFIG_MODVERSIONS, but therunning kernel is compiled with it.If the kernel were configured without modversions, /proc/ksyms wouldshow the symbols with _R... postfix:Mismatches in kernel configuration can be fixed by using the sameconfiguration (i.e., Linux kernel .config) for both the kernel and thedriver. If you are using a kernel from a distribution installation(i.e., you have not compiled it yourself), you will need to create amatching .config file somehow. This depends on the distribution youare using, but 'make oldconfig' in kernel source directory might workwith some distributions. If you compile the kernel yourself, it willbe easier, since you already have to have created the correct .configfile.5. How can I upgrade Prism2/2.5/3 firmware?Prism2/2.5/3 cards and Host AP driver support two different mechanismof upgrading the card firmware. Firmware images (primary and station)can be downloaded either into volatile memory (RAM download) ornon-volatile memory (flash upgrade). Firmware images downloaded intovolatile memory are lost when the card is resetted, so they are quitesafe. Flash upgrade with incorrect images may cause permanent problems(i.e., render the card useless), so certain amount of caution isalways recommended for this.Note! Some of the older versions of Host AP driver or prism2_srec hadfatal bugs in flash upgrade. Only versions 0.1.0 or newer should beused when performing non-volatile flash upgrade!utils/prism2_srec (run 'make' in utils directory to build this) is atool that can be instructed Host AP driver to download firmware imageinto the wlan card. Brief usage information is available by runningthis program without any command line parameters. Please note, thatthe downloading support is disabled in the default Host AP driverbuild. You will need to change this by definingPRISM2_DOWNLOAD_SUPPORT (and PRISM2_NON_VOLATILE_DOWNLOAD if you wantto update flash); see driver/modules/hostap_config.h for more details.Jun Sun has written a mini-howto on flashing Intersil PrismChipsets. This is available at http://linux.junsun.net/intersil-prism/.6. Why did I get two network interfaces (wlan0 and wifi0) even when I have only one wireless card?Host AP driver supports multiple virtual interfaces per wirelesscard. wifi0 is the master radio interface and wlan0 is the firstvirtual interface for this radio. Other virtual interfaces are wlan0ap(for hostapd), and one interface per WDS link.In most cases, one should ignore wifi0 interface and just use wlan0interface. In other words, assign IP address to wlan0, not wifi0 andin general, just ignore the wifi0 interface.7. Why does my D-Link DWL-650 rev. P1 or D-Link DWL-520 rev. E1 (or any other card with small flash) card fail?Some of the new Prism3-based cards use a smaller flash chip that doesnot include full firmware for the card. For example, D-Link DWL-650rev. P1 and D-Link DWL-520 rev. E1 are such cards. These cards requirethat the firmware is downloaded to the card during initialization. Seeutils/hostap_fw_load for example commands on doing this.8. Does Host AP driver support IEEE 802.11a and 802.11g? Does it support chipsets other than Prism 2/2.5/3?Host AP driver supports only Intersil Prism chipsets, versions 2, 2.5,and 3. Those chipsets support IEEE 802.11b only; other chipsets arenot supported. All utilities distributed with Host AP driver exceptwpa_supplicant work only with Host AP driver, so they are limited tothe same hardware. wpa_supplicant works with other drivers, includingthose that support 802.11a and 802.11g.