qmi-wwan-q:use bpi version

This commit is contained in:
padavanonly 2025-04-07 11:39:53 +08:00
parent 5a078f2587
commit 9094fd7062
10 changed files with 2245 additions and 26 deletions

View File

@ -5746,7 +5746,7 @@ CONFIG_PACKAGE_luci-app-turboacc-mtk=y
CONFIG_PACKAGE_luci-app-upnp-mtk-adjust=y
CONFIG_PACKAGE_luci-app-usb-printer=y
# CONFIG_PACKAGE_luci-app-usb3disable is not set
CONFIG_PACKAGE_luci-app-usbmodem=y
# CONFIG_PACKAGE_luci-app-usbmodem is not set
# CONFIG_PACKAGE_luci-app-uugamebooster is not set
# CONFIG_PACKAGE_luci-app-v2ray-server is not set
# CONFIG_PACKAGE_luci-app-v2raya is not set

View File

@ -1305,6 +1305,19 @@ endef
$(eval $(call KernelPackage,usb-net-qmi-wwan))
define KernelPackage/usb-net-qmi-wwan-quectel-bpi
TITLE:=QMI WWAN driver
KCONFIG:=CONFIG_USB_NET_QMI_WWAN
FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/qmi_wwan_q.ko
AUTOLOAD:=$(call AutoProbe,qmi_wwan_q)
$(call AddDepends/usb-net,+kmod-usb-wdm)
endef
define KernelPackage/usb-net-qmi-wwan-quectel-bpi/description
QMI WWAN driver for Quectel bpi version
endef
$(eval $(call KernelPackage,usb-net-qmi-wwan-quectel-bpi))
define KernelPackage/usb-net-rtl8150
TITLE:=Kernel module for USB-to-Ethernet Realtek convertors

View File

@ -80,15 +80,6 @@
regulator-always-on;
};
usb_vbus: regulator-usb-vbus {
compatible = "regulator-fixed";
regulator-name = "usb_vbus";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpios = <&pio 20 GPIO_ACTIVE_LOW>;
regulator-boot-on;
};
sound {
compatible = "mediatek,mt7986-wm8960-machine";
mediatek,platform = <&afe>;
@ -307,8 +298,6 @@
&xhci {
pinctrl-names = "default";
pinctrl-0 = <&usb_ngff_pins>;
vusb33-supply = <&reg_3p3v>;
vbus-supply = <&usb_vbus>;
status = "okay";
};

View File

@ -41,15 +41,6 @@
regulator-always-on;
};
usb_vbus: regulator-usb-vbus {
compatible = "regulator-fixed";
regulator-name = "usb_vbus";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpios = <&pio 20 GPIO_ACTIVE_LOW>;
regulator-boot-on;
};
sound {
compatible = "mediatek,mt7986-wm8960-machine";
mediatek,platform = <&afe>;
@ -216,8 +207,6 @@
&xhci {
pinctrl-names = "default";
pinctrl-0 = <&usb_ngff_pins>;
vusb33-supply = <&reg_3p3v>;
vbus-supply = <&usb_vbus>;
status = "okay";
};

View File

@ -86,7 +86,7 @@
regulator-name = "usb_vbus";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpios = <&pio 20 GPIO_ACTIVE_LOW>;
gpio = <&pio 20 GPIO_ACTIVE_LOW>;
regulator-boot-on;
};

View File

@ -849,6 +849,7 @@
}
dev->net->netdev_ops = &qmi_wwan_netdev_ops;
dev->net->sysfs_groups[0] = &qmi_wwan_sysfs_attr_group;
dev->rx_urb_size = 32*1024;
err:
return status;
}

File diff suppressed because it is too large Load Diff

View File

@ -3,7 +3,8 @@ KERNEL_LOADADDR := 0x48080000
MT7981_USB_PKGS := automount blkid blockdev fdisk \
kmod-nls-cp437 kmod-nls-iso8859-1 kmod-usb2 kmod-usb3 \
luci-app-usb-printer luci-i18n-usb-printer-zh-cn \
kmod-usb-net-rndis usbutils luci-app-usbmodem
kmod-usb-net-rndis usbutils kmod-usb-net-qmi-wwan-quectel-bpi \
kmod-usb-net-qmi-wwan
define Device/mt7981-spim-nor-rfb
DEVICE_VENDOR := MediaTek

View File

@ -8,7 +8,8 @@ MT7986_USB_PKGS := automount blkid blockdev fdisk \
MT7986_WWAN_PKGS := wwan uqmi modemmanager \
luci-proto-modemmanager luci-proto-qmi \
kmod-usb-net-cdc-ether kmod-usb-net-cdc-mbim kmod-usb-net-cdc-ncm \
kmod-usb-serial-option kmod-usb-serial-qualcomm
kmod-usb-serial-option kmod-usb-serial-qualcomm \
kmod-usb-net-qmi-wwan-quectel-bpi kmod-usb-net-qmi-wwan
define Device/mt7986a-ax6000-spim-nor-rfb
DEVICE_VENDOR := MediaTek

View File

@ -0,0 +1,15 @@
On low end devices with sparse amount of cpus, cryptographic hash functions
are tad overkill for calculating flow hashes, and take a lot of cpu time too.
--- a/net/core/flow_dissector.c
+++ b/net/core/flow_dissector.c
@@ -1527,8 +1527,7 @@ static inline u32 __flow_hash_from_keys(
__flow_hash_consistentify(keys);
- hash = siphash(flow_keys_hash_start(keys),
- flow_keys_hash_length(keys), keyval);
+ hash = jhash(flow_keys_hash_start(keys), flow_keys_hash_length(keys), *(u32*)keyval);
if (!hash)
hash = 1;