Move UWE5622 from kernel patches to misc (#4723)

Todo: Compare and unify with the driver that floats in Rockchip patches
This commit is contained in:
Igor Pečovnik
2023-01-22 08:40:12 +01:00
committed by GitHub
parent fc70c73608
commit 6d38906c8d
10 changed files with 10635 additions and 211856 deletions

View File

@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/arm64 5.15.86 Kernel Configuration
# Linux/arm64 5.15.88 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="aarch64-linux-gnu-gcc (GNU Toolchain for the A-profile Architecture 8.3-2019.03 (arm-rel-8.36)) 8.3.0"
CONFIG_CC_IS_GCC=y
@@ -2766,6 +2766,7 @@ CONFIG_AW_WIFI_DEVICE_UWE5622=y
CONFIG_AW_BIND_VERIFY=y
# end of UNISOC WCN Device Drivers(for new chip...)
CONFIG_WLAN_UWE5621=m
CONFIG_WLAN_UWE5622=m
CONFIG_SPRDWL_NG=m
CONFIG_UNISOC_WIFI_PS=y

View File

@@ -515,10 +515,28 @@ driver_rtl8822BS()
}
driver_uwe5622_allwinner()
{
# Unisoc uwe5622 wireless Support
if linux-version compare "${version}" ge 4.4 && linux-version compare "${version}" le 6.1 && [[ "$LINUXFAMILY" == sunxi* ]]; then
display_alert "Adding" "Drivers for Unisoc uwe5622 found on some Allwinner and Rockchip boards" "info"
process_patch_file "${SRC}/patch/misc/wireless-driver-for-uwe5622-allwinner.patch" "applying"
process_patch_file "${SRC}/patch/misc/wireless-driver-for-uwe5622-allwinner-bugfix.patch" "applying"
# Add to section Makefile
echo "obj-\$(CONFIG_SPARD_WLAN_SUPPORT) += uwe5622/" >> "$kerneldir/drivers/net/wireless/Makefile"
if linux-version compare "${version}" lt 6.1; then
process_patch_file "${SRC}/patch/misc/wireless-driver-for-uwe5622-allwinner-bt-fix.patch" "applying"
fi
fi
}
patch_drivers_network()
{
display_alert "Patching network related drivers"
driver_rtl8152_rtl8153
driver_rtl8189ES
driver_rtl8189FS
@@ -533,6 +551,7 @@ patch_drivers_network()
driver_rtl8723DS
driver_rtl8723DU
driver_rtl8822BS
driver_uwe5622_allwinner
display_alert "Network related drivers patched" "" "info"
}

View File

@@ -190,8 +190,6 @@
patches.armbian/0003-add-dump_reg-and-sunxi-sysinfo-drivers.patch
patches.armbian/0004-add-sunxi-addr-driver-used-to-fix-uwe5622-bluetooth-.patch
patches.armbian/0005-net-phy-support-yt8531c.patch
patches.armbian/0007-wireless-add-uwe5622-driver.patch
patches.armbian/0008-uwe5622-bluetooth-fix-firmware-init-fail.patch
patches.armbian/0009-allwinner-h6-support-ac200-audio-codec.patch
patches.armbian/0010-allwinner-add-sunxi_get_soc_chipid-and-sunxi_get_ser.patch
patches.armbian/0011-add-initial-support-for-orangepi3-lts.patch

View File

@@ -662,8 +662,6 @@
patches.armbian/0003-add-dump_reg-and-sunxi-sysinfo-drivers.patch
patches.armbian/0004-add-sunxi-addr-driver-used-to-fix-uwe5622-bluetooth-.patch
patches.armbian/0005-net-phy-support-yt8531c.patch
patches.armbian/0007-wireless-add-uwe5622-driver.patch
patches.armbian/0008-uwe5622-bluetooth-fix-firmware-init-fail.patch
patches.armbian/0009-allwinner-h6-support-ac200-audio-codec.patch
patches.armbian/0010-allwinner-add-sunxi_get_soc_chipid-and-sunxi_get_ser.patch
patches.armbian/0011-add-initial-support-for-orangepi3-lts.patch

View File

@@ -165,7 +165,6 @@
patches.armbian/Add-dump_reg-and-sunxi-sysinfo-drivers.patch
patches.armbian/Add-sunxi-addr-driver-Used-to-fix-uwe5622-bluetooth-MAC-address.patch
patches.armbian/net-phy-Support-yt8531c.patch
patches.armbian/wireless-Add-uwe5622-driver.patch
patches.armbian/allwinner-h6-Support-ac200-audio-codec.patch
patches.armbian/nvmem-sunxi_sid-add-sunxi_get_soc_chipid-sunxi_get_serial.patch
patches.armbian/add-initial-support-for-orangepi3-lts.patch

View File

@@ -566,7 +566,6 @@
patches.armbian/Add-dump_reg-and-sunxi-sysinfo-drivers.patch
patches.armbian/Add-sunxi-addr-driver-Used-to-fix-uwe5622-bluetooth-MAC-address.patch
patches.armbian/net-phy-Support-yt8531c.patch
patches.armbian/wireless-Add-uwe5622-driver.patch
patches.armbian/allwinner-h6-Support-ac200-audio-codec.patch
patches.armbian/nvmem-sunxi_sid-add-sunxi_get_soc_chipid-sunxi_get_serial.patch
patches.armbian/add-initial-support-for-orangepi3-lts.patch

File diff suppressed because it is too large Load Diff

View File

@@ -1,11 +1,11 @@
From d7e6b14b5ba8a5866108927657482ce72751981f Mon Sep 17 00:00:00 2001
From: afaulkner420 <afaulkner420@gmail.com>
Date: Fri, 25 Mar 2022 20:29:16 +0000
Subject: [PATCH 162/170] wireless: Add uwe5622 driver
From ec1aee57ed09a181680241215115848f2033e897 Mon Sep 17 00:00:00 2001
From: Igor Pecovnik <igor.pecovnik@gmail.com>
Date: Fri, 20 Jan 2023 12:38:27 +0100
Subject: [PATCH] Driver for Unisoc uwe5622
Signed-off-by: Igor Pecovnik <igor.pecovnik@gmail.com>
---
drivers/net/wireless/Kconfig | 1 +
drivers/net/wireless/Makefile | 1 +
drivers/net/wireless/uwe5622/Kconfig | 13 +
drivers/net/wireless/uwe5622/Makefile | 10 +
drivers/net/wireless/uwe5622/tty-sdio/Kconfig | 4 +
@@ -160,9 +160,9 @@ Subject: [PATCH 162/170] wireless: Add uwe5622 driver
.../net/wireless/uwe5622/unisocwifi/Kconfig | 19 +
.../net/wireless/uwe5622/unisocwifi/Makefile | 64 +
.../wireless/uwe5622/unisocwifi/api_version.c | 498 +
.../wireless/uwe5622/unisocwifi/cfg80211.c | 3940 +
.../wireless/uwe5622/unisocwifi/cfg80211.c | 3944 +
.../wireless/uwe5622/unisocwifi/cfg80211.h | 220 +
.../net/wireless/uwe5622/unisocwifi/cmdevt.c | 3615 +
.../net/wireless/uwe5622/unisocwifi/cmdevt.c | 3619 +
.../net/wireless/uwe5622/unisocwifi/cmdevt.h | 1131 +
.../uwe5622/unisocwifi/dbg_ini_util.c | 347 +
.../uwe5622/unisocwifi/dbg_ini_util.h | 22 +
@@ -219,7 +219,7 @@ Subject: [PATCH 162/170] wireless: Add uwe5622 driver
.../net/wireless/uwe5622/unisocwifi/wl_intf.h | 302 +
.../net/wireless/uwe5622/unisocwifi/work.c | 220 +
.../net/wireless/uwe5622/unisocwifi/work.h | 84 +
215 files changed, 210075 insertions(+)
215 files changed, 210083 insertions(+)
create mode 100644 drivers/net/wireless/uwe5622/Kconfig
create mode 100644 drivers/net/wireless/uwe5622/Makefile
create mode 100644 drivers/net/wireless/uwe5622/tty-sdio/Kconfig
@@ -435,29 +435,17 @@ Subject: [PATCH 162/170] wireless: Add uwe5622 driver
create mode 100644 drivers/net/wireless/uwe5622/unisocwifi/work.h
diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig
index cb1c15012..83e0e54ee 100644
index 968dbfd76..27263c76a 100644
--- a/drivers/net/wireless/Kconfig
+++ b/drivers/net/wireless/Kconfig
@@ -37,6 +37,7 @@ source "drivers/net/wireless/st/Kconfig"
source "drivers/net/wireless/ti/Kconfig"
@@ -46,6 +46,7 @@ source "drivers/net/wireless/rtl8189fs/Kconfig"
source "drivers/net/wireless/rtl8189es/Kconfig"
source "drivers/net/wireless/zydas/Kconfig"
source "drivers/net/wireless/quantenna/Kconfig"
+source "drivers/net/wireless/uwe5622/Kconfig"
config PCMCIA_RAYCS
tristate "Aviator/Raytheon 2.4GHz wireless support"
diff --git a/drivers/net/wireless/Makefile b/drivers/net/wireless/Makefile
index a61cf6c90..952e6bdd8 100644
--- a/drivers/net/wireless/Makefile
+++ b/drivers/net/wireless/Makefile
@@ -22,6 +22,7 @@ obj-$(CONFIG_WLAN_VENDOR_SILABS) += silabs/
obj-$(CONFIG_WLAN_VENDOR_ST) += st/
obj-$(CONFIG_WLAN_VENDOR_TI) += ti/
obj-$(CONFIG_WLAN_VENDOR_ZYDAS) += zydas/
+obj-$(CONFIG_SPARD_WLAN_SUPPORT) += uwe5622/
# 16-bit wireless PCMCIA client drivers
obj-$(CONFIG_PCMCIA_RAYCS) += ray_cs.o
diff --git a/drivers/net/wireless/uwe5622/Kconfig b/drivers/net/wireless/uwe5622/Kconfig
new file mode 100644
index 000000000..a1e123b03
@@ -963,7 +951,7 @@ new file mode 100644
index 000000000..35e30651a
--- /dev/null
+++ b/drivers/net/wireless/uwe5622/tty-sdio/lpm.c
@@ -0,0 +1,143 @@
@@ -0,0 +1,147 @@
+#include <linux/module.h>
+#include <linux/errno.h>
+#include <linux/init.h>
@@ -1036,7 +1024,11 @@ index 000000000..35e30651a
+
+static int bluesleep_open_proc_btwrite(struct inode *inode, struct file *file)
+{
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,19, 2))
+ return single_open(file, btwrite_proc_show, pde_data(inode));
+#else
+ return single_open(file, btwrite_proc_show, PDE_DATA(inode));
+#endif
+}
+
+static const struct proc_ops lpm_proc_btwrite_fops = {
@@ -5532,7 +5524,7 @@ new file mode 100644
index 000000000..29a3ec298
--- /dev/null
+++ b/drivers/net/wireless/uwe5622/unisocwcn/boot/wcn_integrate_dev.c
@@ -0,0 +1,852 @@
@@ -0,0 +1,856 @@
+/*
+ * Copyright (C) 2017 Spreadtrum Communications Inc.
+ *
@@ -6097,7 +6089,11 @@ index 000000000..29a3ec298
+static int wcn_platform_open(struct inode *inode, struct file *filp)
+{
+ struct platform_proc_file_entry
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,19, 2))
+ *entry = (struct platform_proc_file_entry *)pde_data(inode);
+#else
+ *entry = (struct platform_proc_file_entry *)PDE_DATA(inode);
+#endif
+
+ WCN_INFO("entry name:%s\n!", entry->name);
+
@@ -160419,7 +160415,7 @@ new file mode 100644
index 000000000..9e453365b
--- /dev/null
+++ b/drivers/net/wireless/uwe5622/unisocwcn/platform/wcn_procfs.c
@@ -0,0 +1,1256 @@
@@ -0,0 +1,1260 @@
+/*
+ * Copyright (C) 2015 Spreadtrum Communications Inc.
+ *
@@ -160853,7 +160849,11 @@ index 000000000..9e453365b
+static int mdbg_proc_open(struct inode *inode, struct file *filp)
+{
+ struct mdbg_proc_entry *entry =
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,19, 2))
+ (struct mdbg_proc_entry *)pde_data(inode);
+#else
+ (struct mdbg_proc_entry *)PDE_DATA(inode);
+#endif
+ filp->private_data = entry;
+
+ return 0;
@@ -172037,7 +172037,11 @@ index 000000000..0c2664d87
+{
+ struct wcn_usb_ddata *data;
+
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,19, 2))
+ data = (struct wcn_usb_ddata *)pde_data(inode);
+#else
+ data = (struct wcn_usb_ddata *)PDE_DATA(inode);
+#endif
+
+ if (!data)
+ return -EIO;
@@ -175329,7 +175333,7 @@ new file mode 100644
index 000000000..e7a9f2589
--- /dev/null
+++ b/drivers/net/wireless/uwe5622/unisocwcn/usb/wcn_usb_test.c
@@ -0,0 +1,1447 @@
@@ -0,0 +1,1451 @@
+#include "wcn_usb.h"
+#include <linux/proc_fs.h>
+#include <linux/kthread.h>
@@ -175393,7 +175397,11 @@ index 000000000..e7a9f2589
+{
+ struct channel *channel;
+
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,19, 2))
+ channel = (struct channel *)pde_data(inode);
+else
+ channel = (struct channel *)PDE_DATA(inode);
+#endif
+
+ if (!channel)
+ return -EIO;
@@ -178062,7 +178070,7 @@ index 000000000..79f0b5706
+}
diff --git a/drivers/net/wireless/uwe5622/unisocwifi/cfg80211.c b/drivers/net/wireless/uwe5622/unisocwifi/cfg80211.c
new file mode 100644
index 000000000..daef880ae
index 000000000..47d60f30c
--- /dev/null
+++ b/drivers/net/wireless/uwe5622/unisocwifi/cfg80211.c
@@ -0,0 +1,3944 @@
@@ -182238,7 +182246,7 @@ index 000000000..d4ffe1024
+#endif
diff --git a/drivers/net/wireless/uwe5622/unisocwifi/cmdevt.c b/drivers/net/wireless/uwe5622/unisocwifi/cmdevt.c
new file mode 100644
index 000000000..e81619b12
index 000000000..308d1ecc7
--- /dev/null
+++ b/drivers/net/wireless/uwe5622/unisocwifi/cmdevt.c
@@ -0,0 +1,3619 @@
@@ -211819,6 +211827,6 @@ index 000000000..4e745903e
+void sprdwl_deinit_work(struct sprdwl_priv *priv);
+
+#endif
--
2.35.3
--
Created with Armbian build tools https://github.com/armbian/build