$B$=$&$$$&;d$b!"<+Bp$K(BADSL$B$,$d$C$F$-$FEEOC$+$i%G%9%/%H%C%W%Q%=%3%s$X$NG[@~$K:$$C$F$$$?$H$3$m$K!"2q$B$3$N%Z!<%8$G$O(B WLI-PCI-OP + WLI-PCM + WLA-T1 $B$N40A4$J(BMELCO$B$NAH9g$o$;$G2wE,L5@~(BLAN$B4D6-$r:n$j$^$9!*(B
debian-users$B%a!<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B
linux$B%f!<%6!<%6!<%6!<%6!<%6!<%6!<%6!<%6!<%a!<%a!<%a!<%a!<%a!<%a!<%a!<%a!<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B
Linux MLD$B$N%a!<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B<%j%s%0%j%9%H(B
$B$3$N$"$?$j$G$O(BWLI-PCI-OP$B$,F0$$$?$jF0$+$J$+$C$?$j$7$F$$$^$9!#(B
linux-wlan-0.2.7$B$N(BWLA-T1$B%Q%C%A(B
$B$3$l$,!"@N$OF0$+$J$+$C$?$N$G$9$,(B /etc/init.d/pcmcia $B$K(B PCIC_OPTS="irq_mode=0" $B$r$$$l$k$3$H$G$A$c$s$HF0:n$7$^$9!#(B(pcmcia-cs-3.1.14$B0J9_!)(B)
$B$A$J$_$K$3$$$D$OIaDL$N(BCardbus$B%9%m%C%H$J$N$G!"$[$+$N(BPCMCIA$B%+!<%I$bF0:n$9$k$O$:$G$9!J<%I$bF0:n$9$k$O$:$G$9!J<%I$bF0:n$9$k$O$:$G$9!J<%I$bF0:n$9$k$O$:$G$9!J<%I$bF0:n$9$k$O$:$G$9!J<%I$bF0:n$9$k$O$:$G$9!J<%I$bF0:n$9$k$O$:$G$9!J<%I$bF0:n$9$k$O$:$G$9!J
16bitPCMCIA $B%+!<%I$N%I%i%$%P!<%I$N%I%i%$%P!<%I$N%I%i%$%P!<%I$N%I%i%$%P!<%I$N%I%i%$%P!<%I$N%I%i%$%P!<%I$N%I%i%$%P!<%I$N%I%i%$%P!<$O@N$N(BIRQ$B$N3d$jEv$F$N;WA[$G:n$i$l$F$$$k$N$G!"(Bshared irq$B$H$$$&!"!V3d$j9~$_$O>/$J$$$+$iJ,$1$"$C$F;H$&!W$H$$$&$U$&$K$J$C$F$^$;$s!#(B
$B$3$l$O%O!<%I%&%'%"!<%I%&%'%"!<%I%&%'%"!<%I%&%'%"!<%I%&%'%"!<%I%&%'%"!<%I%&%'%"!<%I%&%'%"!<$N@)8B$G$O$J$$!J(B
$B$3$N$X$s(B
$B$K2r@b$,$"$C$?$j$7$^$9$M(B) $B$?$a$K%I%i%$%P!<$r=q$-49$($k$H$J$s$H$+$J$k$o$1$G$9!#(B
$BIaDL$N%N!<%H%Q%=%3%s$O(BPCMCIA$B$N3d$j9~$_$O(BPCI$B$H(BISA$B$NN>J}$K?6$jJ,$1$i$l$k$h$&$K$J$C$F$$$k$?$aLdBj$OL5$$$N$G$9$,!"(BWLI-PCI-OP$B$NMM$K(BPCI$B$N3d$j9~$_$7$+;H$($J$$(BPCMCIA$B%9%m%C%H$G$OLdBj$,H/@8$7$F;H$($J$$$H$$$&7k2L$K$J$j$^$9!#(B
$B$G!"2r7h$9$k$?$a$N
(DEBUG$B$9$k?M$O!"$3$N$^$^$G$O!"!V3d$j9~$_$,F~$C$F$$$k$O$:$J$N$K0c$&$8$c$J$$$+!*!W$H$$$&(Bsyslog$B$,;3$N$h$&$K$G$^$9$N$G!"(Bam930hw.c $B$N(B WLAN_LOG_DEBUG0(1,"in ISR, int_status1 == 0\n"); $B$r%3%a%s%H%"%&%H$7$^$9!#(B)
$B$3$N7k2L(B
$B$3$3$G$O(B801.11$B%X%C%@!<$N=q$-49$($G$9(B
$B$G$O!#(B
WLI-PCM
$B$8$c$"$I$&$9$k$+$H$$$$$^$9$H!"$A$g$C$H2r@b$r!#(B
instance->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING| IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
$B$K=q$-49$($l$P=*N;(B.. $B$8$c$J$+$C$?!#$J$<$@$,(B 'kfree_skb on Hard IRQ' $B$,$?$^$K$G$k$N$G!"(Bam930llc.c $B$G$G$F$/$k(B kfree_skb/dev_kfree_skb $B$r(B dev_kfree_skb_any $B$K=q$-49$($^$7$g$&!#(B
$ cat /proc/interrupts
10: 361732 XT-PIC i82365, am930_cs
$B$H!"3d$j9~$_$N6&M-$,$G$-$^$7$?!#(B
$B$A$J$_$K(Bioport$B$O(B 0100-010f : am930_cs $B$G$9!#(B
$B$3$3$^$G$G!"(BWLA-T1$B$r;H$o$J$$?M$O=*$j$G$9!#(B
WLA-T1
$B$3$N%G%P%$%9$O(B10base-T$B$H(B2M$BL5@~(BLAN$B$N4V$r
$B$I$&$b$^$C$H$&$J%V%j%C%8$G$O$J$/!"(B10base-T$BB&$K(BIP$B%"%I%l%9$r$b$C$F$$$F!"L5@~(BLAN$B%W%m%H%3%k$N%X%C%@!<$K$=$N(BMAC$B%"%I%l%9$rF~$l$F$/$l$k$H$$$&F0:n$r$7$^$9!#(B
$B$G!"$b$A$m$s(B linux-wlan $B$N:n
$B
--- melco-linux-wlan-0.3.4/driver/am930cs.c
unsigned char ap_mac_addr[6] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
MODULE_PARM( ap_mac_addr, "6b" );
$B$3$l$K$?$$$7$F(B /etc/pcmcia/config.opts $B$K$O(B
module "am930_cs" opts "ap_mac_addr=0x00,0x40,0x26,0x__,0x__,0x__"
$B$N!"MM$J9T$,I,MW$G$9!#%"%I%l%9$O3F?MD4$Y$F2<$5$$!#!J(BWLA-T1$B$N2#$KE=$C$F$"$k$+$b(B..$B!K(B
$B
--- /melco-linux-wlan-0.3.4/driver/am930llc.c
/* Test for the various encodings */
if ( 1 || memcmp( daddr, ethhdr->daddr, WLAN_ETHADDR_LEN) == 0 &&
--- melco-linux-wlan-0.3.4/driver/am930mac.c
*** 1360,1367 ****
switch( mac->mode )
{
case AM930_MACMODE_IBSS_STA:
! /* copy the addresses to the 802.11 header */
! memcpy( pb->p80211_hdr->a3.a1, daddr, WLAN_ADDR_LEN);
memcpy( pb->p80211_hdr->a3.a2, saddr, WLAN_ADDR_LEN);
memcpy( pb->p80211_hdr->a3.a3, mac->mgr->curr_bssid, WLAN_BSSID_LEN);
--- 1374,1395 ----
switch( mac->mode )
{
case AM930_MACMODE_IBSS_STA:
! /* copy the addresses to the 802.11 header */
! #if 0
! memcpy( pb->p80211_hdr->a3.a1, daddr, WLAN_ADDR_LEN);
! #else
! if (( daddr[0]==0xff && daddr[1]==0xff && daddr[2]==0xff &&
! daddr[3]==0xff && daddr[4]==0xff && daddr[5]==0xff ) ||
! ( daddr[0]==ap_mac_addr[0] &&
! daddr[1]==ap_mac_addr[1] &&
! daddr[2]==ap_mac_addr[2] ))
! memcpy( pb->p80211_hdr->a3.a1, daddr, WLAN_ADDR_LEN);
! else{
! /* copy Access Point addr */
! memcpy( pb->p80211_hdr->a3.a1, ap_mac_addr, WLAN_ADDR_LEN);
! /* printk( KERN_DEBUG "rewrite: %02x:%02x:%02x:%02x:%02x:%02x - %02x:%02x:%02x:%02x:%02x:%02x\n" , daddr[0], daddr[1],daddr[2],daddr[3],daddr[4],daddr[5], ap_mac_addr[0], ap_mac_addr[1], ap_mac
_addr[2], ap_mac_addr[3], ap_mac_addr[4], ap_mac_addr[5]); */
! }
! #endif
$B$3$NFs$D$G!"(BWLA-T1$BFCM-$N(B801.11$B$N%X%C%@!
$B
SCAN_SSID="$B$"$J$?$N(BSSID"
SCAN_BSSID="ff:ff:ff:ff:ff:ff"
SCAN_BSSTYPE=ind # both|ind|infr
SCAN_TYPE=active # active|passive
SCAN_STARTCH=14
SCAN_ENDCH=14
SCAN_TIMEPERCHANNEL=200
CREATEBSS=no
SNIFONLY=n
P80211_CONVERSION=encapsulation # encapsulation|rfc1042|802.1h
P80211_CONVERSION=encapsulation $B$OBg;v$G$9!#$H$$$&$+$3$l0J30$G$O$^$:F0:n$7$J$$$G$7$g$&!#(B
$B7k2L(B
linux-wlan-0.3.4 + kernel2.4patch + $B>e$N2~B$$G!"(B
$B$&$A$N4D6-$G$O(B http $B$G:GBg(B165kB/s = 1.3Mbps $B$G$F$$$^$9!#(B
8M ADSL$B$,
Last modified: Fri May 10 16:18:37 JST 2002