[Arm64-baikalm] Bluetooth/WiFi модуль RTL8821

Aleksey Novodvorsky aen на basealt.ru
Пн Апр 19 11:29:15 MSK 2021


FYI

Rgrds, Алексей

---------- Forwarded message ---------
От: Anton V. Boyarshinov <boyarsh at altlinux.org>
Date: пн, 19 апр. 2021 г., 11:27
Subject: Re: [Arm64-baikalm] Bluetooth/WiFi модуль RTL8821
To: Aleksey Novodvorsky <aen at basealt.ru>, <sin at altinux.org>, Nikolay
Zhuravlev <n.zhuravlev at edelweiss.msk.ru>
Cc: Ольчев Алексей Иванович <a.olchev at edelweiss.msk.ru>


Добрый день

Данный модуль собран в Сизиф, в стабильном репозитории p9 он находится
на тестировании.

Поставить его из p9 можно следующим образом:

# Обновляем ядро до последнего
apt-get update
update-kernel -t un-def

# Ставим модуль
apt-repo add 270268
apt-get update
apt-get install kernel-modules-rtl8821cu-un-def

В Fri, 16 Apr 2021 19:51:19 +0300
Aleksey Novodvorsky <aen at basealt.ru> пишет:

> Говорят, что для aarch64 тоже можно собрать.
>
> Rgrds, Алексей
>
> ---------- Forwarded message ---------
> От: Nikolay Zhuravlev <n.zhuravlev at edelweiss.msk.ru>
> Date: пт, 16 апр. 2021 г., 19:37
> Subject: [Arm64-baikalm] Bluetooth/WiFi модуль RTL8821
> To: ARM64 Baikal-M <arm64-baikalm at lists.altlinux.org>
> Cc: Ольчев Алексей Иванович <a.olchev at edelweiss.msk.ru>
>
>
> Коллеги,
>
> В некоторые наши моноблоки мы ставим BT/WiFi модуль RTL8821CU.  Такой,
> кажется, стоит и в моноблоках, которые готовятся для конференции.  Мы
> нашли в интернете кое-какие исходники, которые после легкого
> допиливания вроде заработали на arm64. Почему их нет (не было) в
> апстриме мы не выясняли. Хотелось бы увидеть их в дистрибутиве.
>
> Портированные исходники доступны на нашем гитхабе:
> https://github.com/edelweiss-tech/rtl8821CU
> https://github.com/edelweiss-tech/rtl8821cu_bt
>
> Ниже копия задачи из нашего багтрекера, если будет полезно.
>
> Support RTL8821CU module
>
> Description
>
> На моноблоке стоит комбо-модуль rtl8821cu, который умеет wifi и bluetooth.
> Нужно поддержать его для Baikal-M.
>
> Analysis
>
> В апстриме поддержки для данного модуля нет. На сайте производителя не
> удалось найти драйвера под Linux.
> Удалось найти какой-то драйвер для wifi части:
> https://github.com/brektrou/rtl8821CU
> и какой-то драйвер для BT части:
> https://github.com/andydvsn/rtl8821cu_bt, который изначально происходит от
> китайских исходников
> производителя COMFAST:
> Linux_BT_USB_v3.10_20170314_8821CU_BTCOEX_20170223-1111.tgz
>
> Design
>
> В драйвере https://github.com/brektrou/rtl8821CU добавляем новую платформу
> в Makefile,
> CONFIG_PLATFORM_BAIKAL_M. EXTRA_CFLAGS такие же, как для x86. Остальные
> параметры - просто
> для кроссовой сборки с исходниками ядра 4.9.
> Исходники и изменения зачекинены в git at gitlab.tpl:ndz/rtl8821cu.git
> Как предложено в файле README.md от этого драйвера, для arm64 нужно
> выключить опцию
> --mgeneral-regs-only в ядерном arch/arm64/Makefile.
> Также необходимо добавить поддержку BT и CFG80211 в ядро в виде модулей,
> когда это возможно.
> См. прилагаемый патч.
> Код для BT-части портирован с более старого ядра 3.x на 4.9 и доступен
тут:
> git at gitlab.tpl:baikal-m/rtl8821cu_bt.git
> Пришлось заблеклистить оригинальный драйвер btusb, чтобы этот драйвер смог
> подцепить
> bluetooth-ную часть устройства RTL8821CU. Альтернативой rtk_btusb явлается
> небольшая
> модификация стандартного драйвера btusb (наш патч есть в данном
> репозитарии).
> Детали можно почитать в README.baikal.
>
> Насколько реально функциональны данные драйвера, учитывая что их нет в
> апстриме,
> сказать трудно. Базовые тесты (поднятие интерфейсов, пинги устроиств)
вроде
> проходят.
>
> Unit test
>
> 1. WiFi test.
> Load modules cfg80211 and 8821cu.
> After that "iw list" shall show the wifi interface.
>
> 2. BT test
> Turn on the bluetooth on some other device, for ex. a smartphone,
> and put it in discovery mode.
>
> At some point a pairing request will appear on the computer screen.
> Click "confirm".
> Discover and ping the other device:
> $ hcitool scan
> $ l2ping <MAC address of the paired device>
> $ hcitool info <MAC address of the paired device>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.altlinux.org/pipermail/arm64-baikalm/attachments/20210419/61cb50bf/attachment.html>


Подробная информация о списке рассылки Arm64-baikalm