On Thu, 15 Nov 2018 13:45:47 -0500, Dennis New wrote:
> b43: bcm4318 can't create ibss or set channel
> 
> I keep getting a "Invalid argument (-22)" error whenever I try to create an 
> IBSS adhoc network or whenever I try to change the channel or frequency. "iw 
> reg get" also gives me weird values, I think -- eg. lots of "N/As".
> 
> My card is BCM4318 (14e4:4318 (rev 02)). I'm using the latest working 
> firmware for my wifi card (666.2, 2011-02-23), and the latest kernel 
> (4.19.2). Thoughts?
> 
> 
> # modprobe b43
>  kernel: b43-phy2: Broadcom 4318 WLAN found (core revision 9)
>  kernel: b43-phy2: Found PHY: Analog 3, Type 2 (G), Revision 7
>  kernel: b43-phy2: Found Radio: Manuf 0x17F, ID 0x2050, Revision 8, Version 0
>  kernel: b43-phy2 debug: DebugFS (CONFIG_DEBUG_FS) not enabled in kernel 
> config
>  kernel: Broadcom 43xx driver loaded [ Features: P ]
>  kernel: ieee80211 phy2: Selected rate control algorithm 'minstrel_ht'
> 
> 
> # iw wlan0 set type ibss
> # ip link set wlan0 up
>  kernel: b43-phy2: Loading firmware version 666.2 (2011-02-23 01:15:07)
>  kernel: b43-phy2 debug: Chip initialized
>  kernel: b43-phy2 debug: 32-bit DMA initialized
>  kernel: b43-phy2 debug: QoS enabled
>  kernel: b43-phy2 debug: Wireless interface started
>  kernel: b43-phy2 debug: Adding Interface type 1
> 
> 
> # iw --debug wlan0 ibss join blabla 2437
> -- Debug: Sent Message:
> --------------------------   BEGIN NETLINK MESSAGE ---------------------------
>   [NETLINK HEADER] 16 octets
>     .nlmsg_len = 72
>     .type = 22 <0x16>
>     .flags = 5 <REQUEST,ACK>
>     .seq = 1542305664
>     .port = 813726157
>   [GENERIC NETLINK HEADER] 4 octets
>     .cmd = 43
>     .version = 0
>     .unused = 0
>   [PAYLOAD] 52 octets
>     08 00 03 00 06 00 00 00 0a 00 34 00 62 6c 61 62 ..........4.blab
>     6c 61 00 00 08 00 26 00 85 09 00 00 08 00 9f 00 la....&.........
>     00 00 00 00 08 00 27 00 00 00 00 00 08 00 a0 00 ......'.........
>     85 09 00 00                                     ....
> ---------------------------  END NETLINK MESSAGE   ---------------------------
> -- Debug: Received Message:
> --------------------------   BEGIN NETLINK MESSAGE ---------------------------
>   [NETLINK HEADER] 16 octets
>     .nlmsg_len = 92
>     .type = 2 <ERROR>
>     .flags = 0 <>
>     .seq = 1542305664
>     .port = 813726157
>   [ERRORMSG] 20 octets
>     .error = -22 "Invalid argument"
>   [ORIGINAL MESSAGE] 16 octets
>     .nlmsg_len = 16
>     .type = 22 <0x16>
>     .flags = 5 <REQUEST,ACK>
>     .seq = 1542305664
>     .port = 813726157
> ---------------------------  END NETLINK MESSAGE   ---------------------------
> command failed: Invalid argument (-22)
> 
> 
> # iw reg get
> global
> country 00: DFS-UNSET
>         (2402 - 2472 @ 92), (N/A, 20), (N/A)
>         (2457 - 2482 @ 92), (N/A, 20), (N/A), PASSIVE-SCAN
>         (2474 - 2494 @ 20), (N/A, 20), (N/A), NO-OFDM, PASSIVE-SCAN
>         (5170 - 5250 @ 160), (N/A, 20), (N/A), PASSIVE-SCAN
>         (5250 - 5330 @ 160), (N/A, 20), (0 ms), DFS, PASSIVE-SCAN
>         (5490 - 5730 @ 160), (N/A, 20), (0 ms), DFS, PASSIVE-SCAN
>         (5735 - 5835 @ 80), (N/A, 20), (N/A), PASSIVE-SCAN
>         (57240 - 63720 @ 2160), (N/A, 0), (N/A)
> 
> 
> # iw --debug wlan0 set channel 6
> -- Debug: Sent Message:
> --------------------------   BEGIN NETLINK MESSAGE ---------------------------
>   [NETLINK HEADER] 16 octets
>     .nlmsg_len = 60
>     .type = 22 <0x16>
>     .flags = 5 <REQUEST,ACK>
>     .seq = 1542305850
>     .port = -939492680
>   [GENERIC NETLINK HEADER] 4 octets
>     .cmd = 2
>     .version = 0
>     .unused = 0
>   [PAYLOAD] 40 octets
>     08 00 03 00 06 00 00 00 08 00 26 00 85 09 00 00 ..........&.....
>     08 00 9f 00 00 00 00 00 08 00 27 00 00 00 00 00 ..........'.....
>     08 00 a0 00 85 09 00 00                         ........
> ---------------------------  END NETLINK MESSAGE   ---------------------------
> -- Debug: Received Message:
> --------------------------   BEGIN NETLINK MESSAGE ---------------------------
>   [NETLINK HEADER] 16 octets
>     .nlmsg_len = 80
>     .type = 2 <ERROR>
>     .flags = 0 <>
>     .seq = 1542305850
>     .port = -939492680
>   [ERRORMSG] 20 octets
>     .error = -22 "Invalid argument"
>   [ORIGINAL MESSAGE] 16 octets
>     .nlmsg_len = 16
>     .type = 22 <0x16>
>     .flags = 5 <REQUEST,ACK>
>     .seq = 1542305850
>     .port = -939492680
> ---------------------------  END NETLINK MESSAGE   ---------------------------
> command failed: Invalid argument (-22)
> 
> 
> # ifconfig wlan0 down
>  kernel: b43-phy2 debug: Removing Interface type 1
>  kernel: b43-phy2 debug: Wireless interface stopped
>  kernel: b43-phy2 debug: DMA-32 rx_ring: Used slots 1/256, Failed frames 0/0 
> = 0.0%, Average tries 0.00
>  kernel: b43-phy2 debug: DMA-32 tx_ring_AC_BK: Used slots 0/256, Failed 
> frames 0/0 = 0.0%, Average tries 0.00
>  kernel: b43-phy2 debug: DMA-32 tx_ring_AC_BE: Used slots 0/256, Failed 
> frames 0/0 = 0.0%, Average tries 0.00
>  kernel: b43-phy2 debug: DMA-32 tx_ring_AC_VI: Used slots 0/256, Failed 
> frames 0/0 = 0.0%, Average tries 0.00
>  kernel: b43-phy2 debug: DMA-32 tx_ring_AC_VO: Used slots 0/256, Failed 
> frames 0/0 = 0.0%, Average tries 0.00
>  kernel: b43-phy2 debug: DMA-32 tx_ring_mcast: Used slots 0/256, Failed 
> frames 0/0 = 0.0%, Average tries 0.00
> 
> 
> Even when I try to use the old iwconfig, I can't connect to an IBSS network 
> with a slightly different error message, repeated over and over again:
> 
> # iwconfig wlan0 essid blabla
>  wlan0: Selected IBSS BSSID 52:fc:75:5d:a0:d4 based on configured SSID
>  wlan0: Failed to join IBSS, beacons forbidden

Hm, after upgrading my wireless-regdb package (and/or maybe crda), it seems to 
work now - I can create an IBSS and change channels. It appears to have been a 
"regulatory" issue? I did notice that before I was missing 
/lib/firmware/regulatory.db[.p7s]. Now my "iw reg get" values are slightly 
different:

# iw reg get
global
country 00: DFS-UNSET
        (2402 - 2472 @ 40), (N/A, 20), (N/A)
        (2457 - 2482 @ 20), (N/A, 20), (N/A), AUTO-BW, NO-IR
        (2474 - 2494 @ 20), (N/A, 20), (N/A), NO-OFDM, NO-IR
        (5170 - 5250 @ 80), (N/A, 20), (N/A), AUTO-BW, NO-IR
        (5250 - 5330 @ 80), (N/A, 20), (0 ms), DFS, AUTO-BW, NO-IR
        (5490 - 5730 @ 160), (N/A, 20), (0 ms), DFS, NO-IR
        (5735 - 5835 @ 80), (N/A, 20), (N/A), NO-IR
        (57240 - 63720 @ 2160), (N/A, 0), (N/A)

I'm still not sure exactly what the problem was. The error message "Invalid 
argument -22" was also less than helpful. Any way that message can be made more 
helpful to avoid this confusion?

_______________________________________________
b43-dev mailing list
b43-dev@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/b43-dev

Reply via email to