[PATCH V4 1/6] bss coloring: add support for handling collision events and triggering CCA

John Crispin john at phrozen.org
Tue Sep 1 03:11:17 EDT 2020


On 01.09.20 06:52, Karthikeyan periyasamy wrote:
>
>> +
>> +static void
>> +hostapd_switch_color_timeout_handler(void *eloop_data, void *user_ctx)
>> +{
>> +    struct hostapd_data *hapd = (struct hostapd_data *) eloop_data;
>> +    struct cca_settings settings;
>> +    struct os_time now;
>> +    int i, r, b, ret;
>> +
>> +    if (os_get_time(&now))
>> +        return;
>> +
>> +    /* check if there has been a recent collision */
>> +    if (now.sec - hapd->last_color_collision.sec >= 10)
>> +        return;
>> +
>> +    r = os_random() % HE_OPERATION_BSS_COLOR_MAX;
>> +    for (i = 0; i < HE_OPERATION_BSS_COLOR_MAX; i++) {
>> +        if (r && (hapd->color_collision_bitmap & (1 << r)) == 0)
>> +            break;
>> +        r = (r + 1) % HE_OPERATION_BSS_COLOR_MAX;
>> +    }
>> +    if (i == HE_OPERATION_BSS_COLOR_MAX) {
>> +        /* there are no free colors so turn bss coloring off */
>> +        wpa_printf(MSG_INFO, "no free colors left, turning of BSS 
>> coloring");
>> +        hapd->iface->conf->he_op.he_bss_color_disabled = 1;
>> +        hapd->iface->conf->he_op.he_bss_color = 1;
>
> Why don't we retain the previous color instead of going to the color 
> "1" while disabled the bss color ?
>
> Thanks,
> Karthikeyan P.
>
this is the default when coloring is disabled. There were inter-op 
issues when setting it to 0

     John




More information about the Hostap mailing list