mesh point and ap mode on same interface
Harms, Hannes
hannes.harms at tu-bs.de
Wed Nov 8 04:49:48 PST 2017
Am 11.10.2017 um 20:10 schrieb Peter Oh:
>
>
> On 10/10/2017 06:04 AM, Hannes Harms wrote:
>>
>>> On 10/09/2017 08:08 AM, Thomas Pedersen wrote:
>>>> On Oct 9, 2017 1:46 AM, "Harms, Hannes" <hannes.harms at tu-bs.de
>>>> <mailto:hannes.harms at tu-bs.de>> wrote:
>>>>
>>>> On 10/06/2017 20:18, Peter, Oh wrote
>>>>
>>>> I have tried t bring up the ap interface with iw / hostapd,
>>>>
>>>> after joining the mesh.
>>>>
>>>> When I start the second interface, rtnetlink
>>>> responds with
>>>> device or resource busy.
>>>>
>>>>
>>>> If you give more details of your steps, people may help you
>>>> more.
>>>> Btw, did you create a 2nd interface on the same radio and
>>>> change the mac address?
>>>>
>>>>
>>>> Yes, I changed the mac of the 2nd interface:
>>>>
>>>> The mesh setup:
>>>>
>>>> > brctl addbr mesh-bridge
>>>> > iw phy0 interface add wlan0 type mp mesh_id my_mesh
>>>> > iw wlan0 set freq 5500 80 5530
>>>> > ip link set dev wlan0 up
>>>> > iw wlan0 mesh join my_mesh
>>>> > brctl addif mesh-bridge mesh0
>>>>
>>> Are you sure this configuration is what you're using?
>>> there is no way to use DFS channels on mesh via iw at this moment.
>>> and mesh id on brctl addif is different from interface add.
>>>
>>>> The ap interface:
>>>>
>>>> > iw dev wlan0 interface add virtual_ap type __ap
>>>> > ip link set dev virtual_ap address 04:f0:21:1b:7b:48
>>>> > hostapd -B -dd hostapd.conf
>>>>
>>> hostapd also does not allow interface to use DFS channels without
>>> country_code parameter.
>>>>
>>>> I think mesh and AP channel frequency + width need to match.
>>>>
>> Yes, you are right with the dfs channels,
>> I was testing with some relaxed reg rules.
>>
>> However, I am still facing the original problem.
>> For example if i run the following, the mesh is working (80Mhz),
>> but ap does not come up.
>>
>> > iw phy0 interface add mesh0 type mp
>> > ip link set dev mesh0 up
>> > iw dev mesh0 mesh join "my_mesh" freq 5180 80MHz
>> > sleep 5
>> > iw phy0 interface add virtual_ap type __ap
>> > ip link set dev virtual_ap address 04:f0:21:1b:7b:48
>> > hostapd -B -dd hostapd.conf
>>
>> hostapd config:
>> interface=virtual_ap
>> ctrl_interface=/var/run/hostapd
>> driver=nl80211
>> ssid=test
>> hw_mode=a
>> channel=36
>> ht_capab=[HT40+]
>> ieee80211n=1
>> ieee80211ac=1
>> vht_oper_chwidth=1
>> vht_oper_centr_freq_seg0_idx=42
>> country_code=US
>> bridge=mesh-bridge
>>
> Since I don't have QCA9880 products, I'm not able to run it on the
> chip, but the same steps using the same configurations work for me on
> QCA4019 based product.
> since EBUSY most likely comes from cfg80211, you better trace down the
> codes where the error comes.
>> I also tried to join the mesh after the ap interface.
>> In this case the ap is running, but joining the mesh fails
>> with the same error. (device or resoure busy)
>>
>> thanks for your help & patience
I found a solution for the problem:
When joining the mesh with beacon interval set to 100
both mesh and ap interface are coming up.
> iw mesh0 mesh join my_mesh beacon-interval 100
The default beacon interval is 1000 for mesh interfaces.
It seems that QCA9880 is not working
with different beacon intervals for ap + mesh.
Anyway, I tested with mainline 4.14 and firmware-5.bin_10.2.4.70.61-2
and it is working now.
More information about the ath10k
mailing list