add more realteks

This commit is contained in:
Mikhail Novosyolov 2022-10-18 18:44:54 +03:00
parent d3867d21dd
commit 01757d8892
2 changed files with 98 additions and 46 deletions

View file

@ -532,6 +532,15 @@ BuildRequires: kernel-source-rtl8812au
BuildRequires: kernel-source-rtl8821au BuildRequires: kernel-source-rtl8821au
BuildRequires: kernel-source-rtl8814au BuildRequires: kernel-source-rtl8814au
BuildRequires: kernel-source-rtk_btusb BuildRequires: kernel-source-rtk_btusb
BuildRequires: kernel-source-rtl8723au
BuildRequires: kernel-source-rtl8188gu
BuildRequires: kernel-source-rtl8723bu
BuildRequires: kernel-source-rtl8723ds
BuildRequires: kernel-source-rtl8723du
BuildRequires: kernel-source-rtl8852au
BuildRequires: kernel-source-rtl8192du
BuildRequires: kernel-source-rtw89
BuildRequires: kernel-source-rtw88
# Broadcom-wl and nvidia contain a proprietary blob which is only for x86 # Broadcom-wl and nvidia contain a proprietary blob which is only for x86
%ifarch %{ix86} %{x86_64} %ifarch %{ix86} %{x86_64}
BuildRequires: kernel-source-broadcom-wl BuildRequires: kernel-source-broadcom-wl
@ -661,6 +670,15 @@ depmod -a %{kver_full}
%exclude %{_modulesdir}/%{kver_full}/kernel/net/wireless/8821au.ko%{kmod_suffix} %exclude %{_modulesdir}/%{kver_full}/kernel/net/wireless/8821au.ko%{kmod_suffix}
%exclude %{_modulesdir}/%{kver_full}/kernel/net/wireless/8814au.ko%{kmod_suffix} %exclude %{_modulesdir}/%{kver_full}/kernel/net/wireless/8814au.ko%{kmod_suffix}
%exclude %{_modulesdir}/%{kver_full}/kernel/drivers/bluetooth/rtk_btusb.ko%{kmod_suffix} %exclude %{_modulesdir}/%{kver_full}/kernel/drivers/bluetooth/rtk_btusb.ko%{kmod_suffix}
%exclude %{_modulesdir}/%{kver_full}/kernel/net/wireless/8723au.ko%{kmod_suffix}
%exclude %{_modulesdir}/%{kver_full}/kernel/net/wireless/8188gu.ko%{kmod_suffix}
%exclude %{_modulesdir}/%{kver_full}/kernel/net/wireless/8723bu.ko%{kmod_suffix}
%exclude %{_modulesdir}/%{kver_full}/kernel/net/wireless/8723ds.ko%{kmod_suffix}
%exclude %{_modulesdir}/%{kver_full}/kernel/net/wireless/8723du.ko%{kmod_suffix}
%exclude %{_modulesdir}/%{kver_full}/kernel/net/wireless/8852au.ko%{kmod_suffix}
%exclude %{_modulesdir}/%{kver_full}/kernel/net/wireless/8192du.ko%{kmod_suffix}
%exclude %{_modulesdir}/%{kver_full}/kernel/net/wireless/realtek/rtw89p
%exclude %{_modulesdir}/%{kver_full}/kernel/net/wireless/realtek/rtw88p
%ifarch %{ix86} %{x86_64} %ifarch %{ix86} %{x86_64}
%exclude %{_modulesdir}/%{kver_full}/kernel/net/wireless/wl.ko%{kmod_suffix} %exclude %{_modulesdir}/%{kver_full}/kernel/net/wireless/wl.ko%{kmod_suffix}
%endif %endif
@ -1013,6 +1031,16 @@ User Mode Linux (UML) kernel modules:
%ksob_mk_module_pkg -n 8821au -s net/wireless %ksob_mk_module_pkg -n 8821au -s net/wireless
%ksob_mk_module_pkg -n 8814au -s net/wireless %ksob_mk_module_pkg -n 8814au -s net/wireless
%ksob_mk_module_pkg -n rtk_btusb -s drivers/bluetooth -r rtk_btusb-firmware %ksob_mk_module_pkg -n rtk_btusb -s drivers/bluetooth -r rtk_btusb-firmware
%ksob_mk_module_pkg -n 8723au -s net/wireless
%ksob_mk_module_pkg -n 8188gu -s net/wireless
%ksob_mk_module_pkg -n 8723bu -s net/wireless
%ksob_mk_module_pkg -n 8723ds -s net/wireless
%ksob_mk_module_pkg -n 8723du -s net/wireless
%ksob_mk_module_pkg -n 8852au -s net/wireless
%ksob_mk_module_pkg -n 8192du -s net/wireless
%ksob_mk_modules_pkg -n rtw89 -s net/wireless/realtek/rtw89p -r rtw89-firmware
%ksob_mk_modules_pkg -n rtw88 -s net/wireless/realtek/rtw88p -r rtw88-firmware
%ifarch %{ix86} %{x86_64} %ifarch %{ix86} %{x86_64}
%ksob_mk_module_pkg -n wl -s net/wireless -r broadcom-wl-aliases %ksob_mk_module_pkg -n wl -s net/wireless -r broadcom-wl-aliases
%kroko_kmod_pkg -r %{kroko_release} -j %{nvidia_340_j} -n %{nvidia_340_n} -f %{flavour} -k %{kernelversion}.%{patchlevel} -m %{sublevel} -p %{kver_full} -s %{NAME} -c %{kmod_suffix} %kroko_kmod_pkg -r %{kroko_release} -j %{nvidia_340_j} -n %{nvidia_340_n} -f %{flavour} -k %{kernelversion}.%{patchlevel} -m %{sublevel} -p %{kver_full} -s %{NAME} -c %{kmod_suffix}
@ -1454,53 +1482,32 @@ mkdir -p %{temp_modules}/%{kver_full}
# Copy directory because write permissions are required # Copy directory because write permissions are required
# `make modules_install` must be done before this, otherwise these copied files will be deleted # `make modules_install` must be done before this, otherwise these copied files will be deleted
cp -r "$(rpm -q --qf '/usr/src/rtl8821ce-%%{VERSION}-%%{RELEASE}' kernel-source-rtl8821ce)" kernel-source-rtl8821ce # $1: name of kernel module
pushd kernel-source-rtl8821ce # $2: directory (e.g.: kernel/net/wireless)
%kmake KSRC=%{src_dir} M="$PWD" _build_rtl(){
mkdir -p %{temp_modules}/%{kver_full}/kernel/net/wireless/ cp -r "$(rpm -q --qf "/usr/src/rtl${1}-%%{VERSION}-%%{RELEASE}" kernel-source-rtl${1})" kernel-source-rtl${1}
cp 8821ce.ko %{temp_modules}/%{kver_full}/kernel/net/wireless/8821ce.ko pushd kernel-source-rtl${1}
popd %kmake KSRC=%{src_dir} M="$PWD"
rm -fr kernel-source-rtl8821ce mkdir -p %{temp_modules}/%{kver_full}/${2}
cp ${1}.ko %{temp_modules}/%{kver_full}/${2}
popd
rm -fr kernel-source-rtl${1}
}
cp -r "$(rpm -q --qf '/usr/src/rtl8821cu-%%{VERSION}-%%{RELEASE}' kernel-source-rtl8821cu)" kernel-source-rtl8821cu _build_rtl 8821ce kernel/net/wireless
pushd kernel-source-rtl8821cu _build_rtl 8821cu kernel/net/wireless
%kmake KSRC=%{src_dir} M="$PWD" _build_rtl 88x2bu kernel/net/wireless
mkdir -p %{temp_modules}/%{kver_full}/kernel/net/wireless/ _build_rtl 8812au kernel/net/wireless
cp 8821cu.ko %{temp_modules}/%{kver_full}/kernel/net/wireless/8821cu.ko _build_rtl 8821au kernel/net/wireless
popd _build_rtl 8821au kernel/net/wireless
rm -fr kernel-source-rtl8821cu _build_rtl 8814au kernel/net/wireless
_build_rtl 8723au kernel/net/wireless
cp -r "$(rpm -q --qf '/usr/src/rtl88x2bu-%%{VERSION}-%%{RELEASE}' kernel-source-rtl88x2bu)" kernel-source-rtl88x2bu _build_rtl 8188gu kernel/net/wireless
pushd kernel-source-rtl88x2bu _build_rtl 8723bu kernel/net/wireless
%kmake KSRC=%{src_dir} M="$PWD" _build_rtl 8723ds kernel/net/wireless
mkdir -p %{temp_modules}/%{kver_full}/kernel/net/wireless/ _build_rtl 8723du kernel/net/wireless
cp 88x2bu.ko %{temp_modules}/%{kver_full}/kernel/net/wireless/88x2bu.ko _build_rtl 8852au kernel/net/wireless
popd _build_rtl 8192du kernel/net/wireless
rm -fr kernel-source-rtl88x2bu
cp -r "$(rpm -q --qf '/usr/src/rtl8812au-%%{VERSION}-%%{RELEASE}' kernel-source-rtl8812au)" kernel-source-rtl8812au
pushd kernel-source-rtl8812au
%kmake KSRC=%{src_dir} M="$PWD"
mkdir -p %{temp_modules}/%{kver_full}/kernel/net/wireless/
cp 8812au.ko %{temp_modules}/%{kver_full}/kernel/net/wireless/8812au.ko
popd
rm -fr kernel-source-rtl8812au
cp -r "$(rpm -q --qf '/usr/src/rtl8821au-%%{VERSION}-%%{RELEASE}' kernel-source-rtl8821au)" kernel-source-rtl8821au
pushd kernel-source-rtl8821au
%kmake KSRC=%{src_dir} M="$PWD"
mkdir -p %{temp_modules}/%{kver_full}/kernel/net/wireless/
cp 8821au.ko %{temp_modules}/%{kver_full}/kernel/net/wireless/8821au.ko
popd
rm -fr kernel-source-rtl8821au
cp -r "$(rpm -q --qf '/usr/src/rtl8814au-%%{VERSION}-%%{RELEASE}' kernel-source-rtl8814au)" kernel-source-rtl8814au
pushd kernel-source-rtl8814au
%kmake KSRC=%{src_dir} M="$PWD"
mkdir -p %{temp_modules}/%{kver_full}/kernel/net/wireless/
cp 8814au.ko %{temp_modules}/%{kver_full}/kernel/net/wireless/8814au.ko
popd
rm -fr kernel-source-rtl8814au
cp -r "$(rpm -q --qf '/usr/src/rtk_btusb-%%{VERSION}-%%{RELEASE}' kernel-source-rtk_btusb)" kernel-source-rtk_btusb cp -r "$(rpm -q --qf '/usr/src/rtk_btusb-%%{VERSION}-%%{RELEASE}' kernel-source-rtk_btusb)" kernel-source-rtk_btusb
pushd kernel-source-rtk_btusb pushd kernel-source-rtk_btusb
@ -1510,6 +1517,22 @@ cp rtk_btusb.ko %{temp_modules}/%{kver_full}/kernel/drivers/bluetooth/rtk_btusb.
popd popd
rm -fr kernel-source-rtk_btusb rm -fr kernel-source-rtk_btusb
cp -r "$(rpm -q --qf '/usr/src/rtw89-%%{VERSION}-%%{RELEASE}' kernel-source-rtw89)" kernel-source-rtw89
pushd kernel-source-rtw89
%kmake KSRC=%{src_dir}
mkdir -p %{temp_modules}/%{kver_full}/kernel/net/wireless/realtek/rtw89p
cp *.ko %{temp_modules}/%{kver_full}/kernel/net/wireless/realtek/rtw89p
popd
rm -fr kernel-source-rtw89
cp -r "$(rpm -q --qf '/usr/src/rtw88-%%{VERSION}-%%{RELEASE}' kernel-source-rtw88)" kernel-source-rtw88
pushd kernel-source-rtw88
%kmake KSRC=%{src_dir}
mkdir -p %{temp_modules}/%{kver_full}/kernel/net/wireless/realtek/rtw88p
cp *.ko %{temp_modules}/%{kver_full}/kernel/net/wireless/realtek/rtw88p
popd
rm -fr kernel-source-rtw88
_build_nvidia(){ _build_nvidia(){
cp -r "$(rpm -q --qf "/usr/src/nvidia${1}-%%{VERSION}-%%{RELEASE}" kernel-source-nvidia${1})" kernel-source-nvidia${1} cp -r "$(rpm -q --qf "/usr/src/nvidia${1}-%%{VERSION}-%%{RELEASE}" kernel-source-nvidia${1})" kernel-source-nvidia${1}
pushd kernel-source-nvidia${1} pushd kernel-source-nvidia${1}

View file

@ -37,3 +37,32 @@ Binary module %{module_name} for kernel-%{ksob_kernel} \
\ \
%{nil} \ %{nil} \
} }
# %%ksob_mk_modules_pkg -s module section [ -r additional requires for this package ]
# Examples:
# %%ksob_mk_modules_pkg -n rtw89 -s net/wireless/realtek/rtw89p -r rtw89-firmware
# %%ksob_mk_modules_pkg -n rtw89 -s net/wireless/realtek/rtw89p
%ksob_mk_modules_pkg(n:s:r:) \
\
%define module_name %{-n:%{-n*}}%{!-n:%{error:Module name not defined!}} \
%define pkg_main kernel-modules-%{module_name}-%{ksob_kernel} \
%define module_section %{-s:%{-s*}}%{!-s:%{error:Module section (e.g. extra/foo) not defined!}} \
\
%{expand: \
%package -n %{pkg_main} \
Summary: Binary modules %{module_name} for kernel-%{ksob_kernel} \
Group: System/Kernel and hardware \
\
%{-r:Requires: %{-r*}} \
Requires: %{name}%{_isa} = %{EVRD} \
Provides: installonlypkg(kernel-module) = %{EVRD}.module.%{module_name} \
\
%description -n %{pkg_main} \
Binary module %{module_name} for kernel-%{ksob_kernel} \
\
%files -n %{pkg_main} \
%dir %{_modulesdir}/%{kver_full}/kernel/%{module_section}
%{_modulesdir}/%{kver_full}/kernel/%{module_section}/*.ko%{kmod_suffix} \
\
%{nil} \
}