Skip to content

Commit

Permalink
Update info regarding DKMS
Browse files Browse the repository at this point in the history
  • Loading branch information
igorpecovnik authored Dec 2, 2024
1 parent 46f06bb commit e21308b
Showing 1 changed file with 180 additions and 36 deletions.
216 changes: 180 additions & 36 deletions docs/User-Guide_Advanced-Features.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,51 +11,195 @@ Both of above headings have been moved to a new page and expanded upon: [Recover

## How to build a wireless driver?

Install and recreate kernel headers scripts (optional)

armbian-config -> install kernel headers
exit

cd /usr/src/linux-headers-$(uname -r)
make scripts

Go back to root directory and fetch sources (working example, use `ARCH=arm64` on 64bit system)

cd
export KSRC="/usr/src/linux-headers-$(uname -r)"
git clone https://github.com/pvaret/rtl8192cu-fixes.git
cd rtl8192cu-fixes
make -C "$KSRC" M="$PWD" ARCH=arm
Install kernel headers:

armbian-config --cmd SY004

Download driver sources:

git clone https://github.com/morrownr/8821au-20210708.git
cd 8821au-20210708
make
make install

??? "Build log"

make ARCH=arm64 CROSS_COMPILE= -C /lib/modules/6.6.62-current-sunxi64/build M=/root/8821au-20210708 modules
make[1]: Entering directory '/usr/src/linux-headers-6.6.62-current-sunxi64'
CC [M] /root/8821au-20210708/core/rtw_cmd.o
CC [M] /root/8821au-20210708/core/rtw_security.o
CC [M] /root/8821au-20210708/core/rtw_debug.o
CC [M] /root/8821au-20210708/core/rtw_io.o
CC [M] /root/8821au-20210708/core/rtw_ioctl_query.o
CC [M] /root/8821au-20210708/core/rtw_ioctl_set.o
CC [M] /root/8821au-20210708/core/rtw_ieee80211.o
CC [M] /root/8821au-20210708/core/rtw_mlme.o
CC [M] /root/8821au-20210708/core/rtw_mlme_ext.o
CC [M] /root/8821au-20210708/core/rtw_mi.o
CC [M] /root/8821au-20210708/core/rtw_wlan_util.o
CC [M] /root/8821au-20210708/core/rtw_vht.o
CC [M] /root/8821au-20210708/core/rtw_pwrctrl.o
CC [M] /root/8821au-20210708/core/rtw_rf.o
CC [M] /root/8821au-20210708/core/rtw_chplan.o
CC [M] /root/8821au-20210708/core/monitor/rtw_radiotap.o
CC [M] /root/8821au-20210708/core/rtw_recv.o
CC [M] /root/8821au-20210708/core/rtw_sta_mgt.o
CC [M] /root/8821au-20210708/core/rtw_ap.o
CC [M] /root/8821au-20210708/core/wds/rtw_wds.o
CC [M] /root/8821au-20210708/core/mesh/rtw_mesh.o
CC [M] /root/8821au-20210708/core/mesh/rtw_mesh_pathtbl.o
CC [M] /root/8821au-20210708/core/mesh/rtw_mesh_hwmp.o
CC [M] /root/8821au-20210708/core/rtw_xmit.o
CC [M] /root/8821au-20210708/core/rtw_p2p.o
CC [M] /root/8821au-20210708/core/rtw_rson.o
CC [M] /root/8821au-20210708/core/rtw_tdls.o
CC [M] /root/8821au-20210708/core/rtw_br_ext.o
CC [M] /root/8821au-20210708/core/rtw_iol.o
CC [M] /root/8821au-20210708/core/rtw_sreset.o
CC [M] /root/8821au-20210708/core/rtw_btcoex_wifionly.o
CC [M] /root/8821au-20210708/core/rtw_btcoex.o
CC [M] /root/8821au-20210708/core/rtw_beamforming.o
CC [M] /root/8821au-20210708/core/rtw_odm.o
CC [M] /root/8821au-20210708/core/rtw_rm.o
CC [M] /root/8821au-20210708/core/rtw_rm_fsm.o
CC [M] /root/8821au-20210708/core/rtw_ft.o
CC [M] /root/8821au-20210708/core/rtw_wnm.o
CC [M] /root/8821au-20210708/core/rtw_mbo.o
CC [M] /root/8821au-20210708/core/rtw_rm_util.o
CC [M] /root/8821au-20210708/core/efuse/rtw_efuse.o
CC [M] /root/8821au-20210708/core/rtw_roch.o
CC [M] /root/8821au-20210708/core/crypto/aes-internal.o
CC [M] /root/8821au-20210708/core/crypto/aes-internal-enc.o
CC [M] /root/8821au-20210708/core/crypto/aes-gcm.o
CC [M] /root/8821au-20210708/core/crypto/aes-ccm.o
CC [M] /root/8821au-20210708/core/crypto/aes-omac1.o
CC [M] /root/8821au-20210708/core/crypto/ccmp.o
CC [M] /root/8821au-20210708/core/crypto/gcmp.o
CC [M] /root/8821au-20210708/core/crypto/aes-siv.o
CC [M] /root/8821au-20210708/core/crypto/aes-ctr.o
CC [M] /root/8821au-20210708/core/crypto/sha256-internal.o
CC [M] /root/8821au-20210708/core/crypto/sha256.o
CC [M] /root/8821au-20210708/core/crypto/sha256-prf.o
CC [M] /root/8821au-20210708/core/crypto/rtw_crypto_wrap.o
CC [M] /root/8821au-20210708/core/rtw_swcrypto.o
CC [M] /root/8821au-20210708/os_dep/osdep_service.o
CC [M] /root/8821au-20210708/os_dep/linux/os_intfs.o
CC [M] /root/8821au-20210708/os_dep/linux/usb_intf.o
CC [M] /root/8821au-20210708/os_dep/linux/usb_ops_linux.o
CC [M] /root/8821au-20210708/os_dep/linux/ioctl_linux.o
CC [M] /root/8821au-20210708/os_dep/linux/xmit_linux.o
CC [M] /root/8821au-20210708/os_dep/linux/mlme_linux.o
CC [M] /root/8821au-20210708/os_dep/linux/recv_linux.o
CC [M] /root/8821au-20210708/os_dep/linux/ioctl_cfg80211.o
CC [M] /root/8821au-20210708/os_dep/linux/rtw_cfgvendor.o
CC [M] /root/8821au-20210708/os_dep/linux/wifi_regd.o
CC [M] /root/8821au-20210708/os_dep/linux/rtw_android.o
CC [M] /root/8821au-20210708/os_dep/linux/rtw_proc.o
CC [M] /root/8821au-20210708/os_dep/linux/nlrtw.o
CC [M] /root/8821au-20210708/os_dep/linux/rtw_rhashtable.o
CC [M] /root/8821au-20210708/hal/hal_intf.o
CC [M] /root/8821au-20210708/hal/hal_com.o
CC [M] /root/8821au-20210708/hal/hal_com_phycfg.o
CC [M] /root/8821au-20210708/hal/hal_phy.o
CC [M] /root/8821au-20210708/hal/hal_dm.o
CC [M] /root/8821au-20210708/hal/hal_dm_acs.o
CC [M] /root/8821au-20210708/hal/hal_btcoex_wifionly.o
CC [M] /root/8821au-20210708/hal/hal_btcoex.o
CC [M] /root/8821au-20210708/hal/hal_mp.o
CC [M] /root/8821au-20210708/hal/hal_mcc.o
CC [M] /root/8821au-20210708/hal/hal_hci/hal_usb.o
CC [M] /root/8821au-20210708/hal/led/hal_led.o
CC [M] /root/8821au-20210708/hal/led/hal_usb_led.o
CC [M] /root/8821au-20210708/hal/HalPwrSeqCmd.o
CC [M] /root/8821au-20210708/hal/rtl8812a/Hal8812PwrSeq.o
CC [M] /root/8821au-20210708/hal/rtl8812a/Hal8821APwrSeq.o
CC [M] /root/8821au-20210708/hal/rtl8812a/rtl8812a_xmit.o
CC [M] /root/8821au-20210708/hal/rtl8812a/rtl8812a_sreset.o
CC [M] /root/8821au-20210708/hal/rtl8812a/rtl8812a_hal_init.o
CC [M] /root/8821au-20210708/hal/rtl8812a/rtl8812a_phycfg.o
CC [M] /root/8821au-20210708/hal/rtl8812a/rtl8812a_rf6052.o
CC [M] /root/8821au-20210708/hal/rtl8812a/rtl8812a_dm.o
CC [M] /root/8821au-20210708/hal/rtl8812a/rtl8812a_rxdesc.o
CC [M] /root/8821au-20210708/hal/rtl8812a/rtl8812a_cmd.o
CC [M] /root/8821au-20210708/hal/rtl8812a/usb/usb_halinit.o
CC [M] /root/8821au-20210708/hal/rtl8812a/usb/rtl8812au_led.o
CC [M] /root/8821au-20210708/hal/rtl8812a/usb/rtl8812au_xmit.o
CC [M] /root/8821au-20210708/hal/rtl8812a/usb/rtl8812au_recv.o
CC [M] /root/8821au-20210708/hal/rtl8812a/usb/usb_ops_linux.o
CC [M] /root/8821au-20210708/hal/efuse/rtl8812a/HalEfuseMask8821A_USB.o
CC [M] /root/8821au-20210708/hal/rtl8812a/hal8821a_fw.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_debug.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_antdiv.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_soml.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_smt_ant.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_antdect.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_interface.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_phystatus.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_hwconfig.o
CC [M] /root/8821au-20210708/hal/phydm/phydm.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_dig.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_pathdiv.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_rainfo.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_dynamictxpower.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_adaptivity.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_cfotracking.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_noisemonitor.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_beamforming.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_direct_bf.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_dfs.o
CC [M] /root/8821au-20210708/hal/phydm/txbf/halcomtxbf.o
CC [M] /root/8821au-20210708/hal/phydm/txbf/haltxbfinterface.o
CC [M] /root/8821au-20210708/hal/phydm/txbf/phydm_hal_txbf_api.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_adc_sampling.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_ccx.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_psd.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_primary_cca.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_cck_pd.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_rssi_monitor.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_auto_dbg.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_math_lib.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_api.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_pow_train.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_lna_sat.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_pmac_tx_setting.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_mp.o
CC [M] /root/8821au-20210708/hal/phydm/phydm_cck_rx_pathdiv.o
CC [M] /root/8821au-20210708/hal/phydm/halrf/halrf.o
CC [M] /root/8821au-20210708/hal/phydm/halrf/halrf_debug.o
CC [M] /root/8821au-20210708/hal/phydm/halrf/halphyrf_ce.o
CC [M] /root/8821au-20210708/hal/phydm/halrf/halrf_powertracking_ce.o
CC [M] /root/8821au-20210708/hal/phydm/halrf/halrf_powertracking.o
CC [M] /root/8821au-20210708/hal/phydm/halrf/halrf_kfree.o
CC [M] /root/8821au-20210708/hal/phydm/halrf/halrf_psd.o
CC [M] /root/8821au-20210708/hal/phydm/rtl8821a/halhwimg8821a_mac.o
CC [M] /root/8821au-20210708/hal/phydm/rtl8821a/halhwimg8821a_bb.o
CC [M] /root/8821au-20210708/hal/phydm/rtl8821a/halhwimg8821a_rf.o
CC [M] /root/8821au-20210708/hal/phydm/halrf/rtl8812a/halrf_8812a_ce.o
CC [M] /root/8821au-20210708/hal/phydm/halrf/rtl8821a/halrf_8821a_ce.o
CC [M] /root/8821au-20210708/hal/phydm/rtl8821a/phydm_regconfig8821a.o
CC [M] /root/8821au-20210708/hal/phydm/rtl8821a/phydm_rtl8821a.o
CC [M] /root/8821au-20210708/hal/phydm/halrf/rtl8821a/halrf_iqk_8821a_ce.o
CC [M] /root/8821au-20210708/hal/phydm/txbf/haltxbfjaguar.o
CC [M] /root/8821au-20210708/hal/btc/halbtc8821a1ant.o
CC [M] /root/8821au-20210708/hal/btc/halbtc8821a2ant.o
CC [M] /root/8821au-20210708/platform/platform_ops.o
LD [M] /root/8821au-20210708/8821au.o
MODPOST /root/8821au-20210708/Module.symvers
CC [M] /root/8821au-20210708/8821au.mod.o
LD [M] /root/8821au-20210708/8821au.ko
make[1]: Leaving directory '/usr/src/linux-headers-6.6.62-current-sunxi64'

Refer to [Linux Kernel Documentations: Building External Modules](https://www.kernel.org/doc/html/latest/kbuild/modules.html) for more information.

Load driver for test

insmod 8192cu.ko
insmod 8821au.ko

Check `dmesg` and the last entry will be:

usbcore: registered new interface driver rtl8192cu

Plug the USB wireless adaptor and issue a command:

iwconfig wlan0

You should see this:

wlan0 unassociated Nickname:"<WIFI@REALTEK>"
Mode:Auto Frequency=2.412 GHz Access Point: Not-Associated
Sensitivity:0/0
Retry:off RTS thr:off Fragment thr:off
Encryption key:off
Power Management:off
Link Quality=0/100 Signal level=0 dBm Noise level=0 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0

Check which wireless stations / routers are in range
usbcore: registered new interface driver rtl8821au

iwlist wlan0 scan | grep ESSID
Plug the USB wireless adaptor and proceed with [network configuration](/User-Guide_Networking/)

## How to run Docker?

Expand Down

0 comments on commit e21308b

Please sign in to comment.