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