Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
This commit is contained in:
commit
e8c2e5dc7d
@ -168,7 +168,7 @@ ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
|
||||
define Kernel/CompileImage/Initramfs
|
||||
$(call Kernel/Configure/Initramfs)
|
||||
$(CP) $(GENERIC_PLATFORM_DIR)/other-files/init $(TARGET_DIR)/init
|
||||
$(if $(SOURCE_DATE_EPOCH),touch -hcd "@$(SOURCE_DATE_EPOCH)" $(TARGET_DIR)/init)
|
||||
$(if $(SOURCE_DATE_EPOCH),touch -hcd "@$(SOURCE_DATE_EPOCH)" $(TARGET_DIR) $(TARGET_DIR)/init)
|
||||
rm -rf $(KERNEL_BUILD_DIR)/linux-$(LINUX_VERSION)/usr/initramfs_data.cpio*
|
||||
ifeq ($(CONFIG_TARGET_ROOTFS_INITRAMFS_SEPARATE),y)
|
||||
ifneq ($(qstrip $(CONFIG_EXTERNAL_CPIO)),)
|
||||
|
||||
@ -7,10 +7,10 @@
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_VERSION:=2020.04
|
||||
PKG_VERSION:=2022.01
|
||||
PKG_RELEASE:=$(AUTORELEASE)
|
||||
|
||||
PKG_HASH:=fe732aaf037d9cc3c0909bad8362af366ae964bbdac6913a34081ff4ad565372
|
||||
PKG_HASH:=81b4543227db228c03f8a1bf5ddbc813b0bb8f6555ce46064ef721a6fc680413
|
||||
|
||||
include $(INCLUDE_DIR)/u-boot.mk
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
@ -30,8 +30,8 @@ endef
|
||||
|
||||
define U-Boot/mx6cuboxi
|
||||
NAME:=SolidRun Cubox-i boards
|
||||
UBOOT_IMAGE:=SPL u-boot.img
|
||||
UBOOT_MAKE_FLAGS:=SPL u-boot.img
|
||||
UBOOT_IMAGE:=SPL u-boot-dtb.img
|
||||
UBOOT_MAKE_FLAGS:=SPL u-boot-dtb.img
|
||||
BUILD_SUBTARGET:=cortexa9
|
||||
BUILD_DEVICES:=solidrun_cubox-i
|
||||
endef
|
||||
|
||||
@ -16,22 +16,11 @@ Signed-off-by: Petr Štetiar <ynezz@true.cz>
|
||||
|
||||
--- a/configs/apalis_imx6_defconfig
|
||||
+++ b/configs/apalis_imx6_defconfig
|
||||
@@ -44,6 +44,7 @@ CONFIG_CMD_GPIO=y
|
||||
CONFIG_CMD_GPT=y
|
||||
CONFIG_CMD_I2C=y
|
||||
CONFIG_CMD_MMC=y
|
||||
+CONFIG_CMD_PART=y
|
||||
CONFIG_CMD_USB=y
|
||||
CONFIG_CMD_USB_SDP=y
|
||||
CONFIG_CMD_USB_MASS_STORAGE=y
|
||||
@@ -53,6 +54,10 @@ CONFIG_CMD_PMIC=y
|
||||
@@ -60,6 +60,7 @@ CONFIG_CMD_CACHE=y
|
||||
CONFIG_CMD_TIME=y
|
||||
CONFIG_CMD_PMIC=y
|
||||
CONFIG_CMD_REGULATOR=y
|
||||
CONFIG_OF_CONTROL=y
|
||||
CONFIG_DEFAULT_DEVICE_TREE="imx6-apalis"
|
||||
+CONFIG_CMD_EXT4=y
|
||||
+CONFIG_CMD_EXT4_WRITE=y
|
||||
+CONFIG_CMD_FAT=y
|
||||
+CONFIG_CMD_FS_GENERIC=y
|
||||
CONFIG_OF_CONTROL=y
|
||||
CONFIG_ENV_OVERWRITE=y
|
||||
CONFIG_ENV_IS_IN_MMC=y
|
||||
CONFIG_SYS_RELOC_GD_ENV_ADDR=y
|
||||
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
|
||||
|
||||
@ -1,15 +0,0 @@
|
||||
--- a/board/solidrun/mx6cuboxi/mx6cuboxi.c
|
||||
+++ b/board/solidrun/mx6cuboxi/mx6cuboxi.c
|
||||
@@ -286,6 +286,12 @@ static void setup_iomux_enet(void)
|
||||
gpio_free_list_nodev(&desc, 1);
|
||||
}
|
||||
|
||||
+void board_boot_order(u32 *spl_boot_list)
|
||||
+{
|
||||
+ spl_boot_list[0] = spl_boot_device();
|
||||
+ spl_boot_list[1] = BOOT_DEVICE_MMC1;
|
||||
+}
|
||||
+
|
||||
int board_phy_config(struct phy_device *phydev)
|
||||
{
|
||||
if (phydev->drv->config)
|
||||
@ -1,23 +0,0 @@
|
||||
From 00ad8b42dfe801107db25ead8249cb10afcd0f94 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Petr=20=C5=A0tetiar?= <ynezz@true.cz>
|
||||
Date: Sun, 1 Mar 2020 22:10:23 +0100
|
||||
Subject: [PATCH] mx6cuboxi_defconfig: force mmc boot
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Petr Štetiar <ynezz@true.cz>
|
||||
---
|
||||
configs/mx6cuboxi_defconfig | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
--- a/configs/mx6cuboxi_defconfig
|
||||
+++ b/configs/mx6cuboxi_defconfig
|
||||
@@ -9,6 +9,7 @@ CONFIG_ENV_SIZE=0x2000
|
||||
CONFIG_ENV_OFFSET=0xFE000
|
||||
CONFIG_DM_GPIO=y
|
||||
CONFIG_SPL_MMC_SUPPORT=y
|
||||
+CONFIG_SPL_FORCE_MMC_BOOT=y
|
||||
CONFIG_SPL_SERIAL_SUPPORT=y
|
||||
CONFIG_NR_DRAM_BANKS=1
|
||||
CONFIG_SPL=y
|
||||
@ -1337,3 +1337,50 @@ define KernelPackage/sfc-falcon/description
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sfc-falcon))
|
||||
|
||||
define KernelPackage/mhi-net
|
||||
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||
TITLE:=MHI Network Device
|
||||
DEPENDS:=@LINUX_5_15 @PCI_SUPPORT +kmod-mhi-bus
|
||||
KCONFIG:=CONFIG_MHI_NET
|
||||
FILES:=$(LINUX_DIR)/drivers/net/mhi_net.ko
|
||||
AUTOLOAD:=$(call AutoProbe,mhi_net)
|
||||
endef
|
||||
|
||||
define KernelPackage/mhi-net/description
|
||||
Driver for MHI network interface
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,mhi-net))
|
||||
|
||||
define KernelPackage/mhi-wwan-ctrl
|
||||
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||
TITLE:=MHI WWAN Control
|
||||
DEPENDS:=@LINUX_5_15 @PCI_SUPPORT +kmod-mhi-bus
|
||||
KCONFIG:=CONFIG_MHI_WWAN_CTRL
|
||||
FILES:=$(LINUX_DIR)/drivers/net/mhi_wwan_ctrl.ko
|
||||
AUTOLOAD:=$(call AutoProbe,mhi_wwan_ctrl)
|
||||
endef
|
||||
|
||||
define KernelPackage/mhi-wwan-ctrl/description
|
||||
Driver for MHI WWAN Control
|
||||
This exposes all modem control ports like AT, MBIM, QMI, DIAG, ..
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,mhi-wwan-ctrl))
|
||||
|
||||
define KernelPackage/mhi-wwan-mbim
|
||||
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||
TITLE:=MHI MBIM
|
||||
DEPENDS:=@LINUX_5_15 @PCI_SUPPORT +kmod-mhi-bus
|
||||
KCONFIG:=CONFIG_MHI_WWAN_MBIM
|
||||
FILES:=$(LINUX_DIR)/drivers/net/mhi_wwan_mbim.ko
|
||||
AUTOLOAD:=$(call AutoProbe,mhi_wwan_mbim)
|
||||
endef
|
||||
|
||||
define KernelPackage/mhi-wwan-mbim/description
|
||||
Driver for MHI MBIM
|
||||
This implements MBIM over MHI
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,mhi-wwan-mbim))
|
||||
|
||||
@ -1338,3 +1338,34 @@ define KernelPackage/f71808e-wdt/description
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,f71808e-wdt))
|
||||
|
||||
define KernelPackage/mhi-bus
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=MHI bus
|
||||
DEPENDS:=@LINUX_5_15
|
||||
KCONFIG:=CONFIG_MHI_BUS \
|
||||
CONFIG_MHI_BUS_DEBUG=y
|
||||
FILES:=$(LINUX_DIR)/drivers/bus/mhi/core/mhi.ko
|
||||
AUTOLOAD:=$(call AutoProbe,mhi)
|
||||
endef
|
||||
|
||||
define KernelPackage/mhi-bus/description
|
||||
Kernel module for the Qualcomm MHI bus.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,mhi-bus))
|
||||
|
||||
define KernelPackage/mhi-pci-generic
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=MHI PCI controller driver
|
||||
DEPENDS:=@LINUX_5_15 +kmod-mhi-bus
|
||||
KCONFIG:=CONFIG_MHI_BUS_PCI_GENERIC
|
||||
FILES:=$(LINUX_DIR)/drivers/bus/mhi/mhi_pci_generic.ko
|
||||
AUTOLOAD:=$(call AutoProbe,mhi_pci_generic)
|
||||
endef
|
||||
|
||||
define KernelPackage/mhi-pci-generic/description
|
||||
Kernel module for the MHI PCI controller driver.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,mhi-pci-generic))
|
||||
|
||||
@ -8,9 +8,9 @@ PKG_LICENSE_FILES:=
|
||||
|
||||
PKG_SOURCE_URL:=https://github.com/openwrt/mt76
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_DATE:=2022-03-29
|
||||
PKG_SOURCE_VERSION:=eed44048ca575863ebdf1dc73f441cb9604cd388
|
||||
PKG_MIRROR_HASH:=fdc2ef82dfcb1880445d6d07d6fdd68373aec263fff15ad26a2d18133dc4fd6b
|
||||
PKG_SOURCE_DATE:=2022-04-07
|
||||
PKG_SOURCE_VERSION:=506bb0605e3e2fa4c5285e6c8866167691a6d71b
|
||||
PKG_MIRROR_HASH:=4c60255d5899e2aac48dad6129d000163aa9ce18ed3ed0cd7e223298a10cc4e7
|
||||
|
||||
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
||||
PKG_USE_NINJA:=0
|
||||
|
||||
@ -18,7 +18,7 @@ PKG_LICENSE:=libselinux-1.0
|
||||
PKG_LICENSE_FILES:=LICENSE
|
||||
PKG_MAINTAINER:=Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
|
||||
HOST_BUILD_DEPENDS:=musl-fts/host pcre/host
|
||||
HOST_BUILD_DEPENDS:=libsepol/host musl-fts/host pcre/host
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
include $(INCLUDE_DIR)/host-build.mk
|
||||
|
||||
@ -9,9 +9,9 @@ PKG_RELEASE:=$(AUTORELEASE)
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL=$(PROJECT_GIT)/project/firewall4.git
|
||||
PKG_SOURCE_DATE:=2022-02-12
|
||||
PKG_SOURCE_VERSION:=53caa1a762125a71389a486aa913e4fbdf3650cf
|
||||
PKG_MIRROR_HASH:=9052a779b12c0c9b21914bf38daf11a2d98879c2f9c9b39f091d7ebb7f0f877b
|
||||
PKG_SOURCE_DATE:=2022-04-02
|
||||
PKG_SOURCE_VERSION:=a3788839d61742799b6c62f2d8790c464b7374fc
|
||||
PKG_MIRROR_HASH:=9b1c5d27d7d0022388693db679f9518216932ed1f39c096e1242c4d9e3fd897a
|
||||
PKG_MAINTAINER:=Jo-Philipp Wich <jo@mein.io>
|
||||
PKG_LICENSE:=ISC
|
||||
|
||||
@ -26,7 +26,7 @@ define Package/firewall4
|
||||
+kmod-nft-nat +kmod-nft-nat6 \
|
||||
+nftables-json \
|
||||
+ucode +ucode-mod-fs +ucode-mod-ubus +ucode-mod-uci
|
||||
EXTRA_DEPENDS:=ucode (>= 2022-01-26)
|
||||
EXTRA_DEPENDS:=ucode (>= 2022-03-22)
|
||||
PROVIDES:=uci-firewall
|
||||
endef
|
||||
|
||||
|
||||
@ -11,9 +11,9 @@ include $(INCLUDE_DIR)/kernel.mk
|
||||
PKG_NAME:=qosify
|
||||
PKG_SOURCE_URL=$(PROJECT_GIT)/project/qosify.git
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_DATE:=2022-03-22
|
||||
PKG_SOURCE_VERSION:=57c7817f91c2ff2f247b2d7eb8554e861c4aec33
|
||||
PKG_MIRROR_HASH:=409f7db13a36334557de861a016a8d9f241070b2bbf6f738e992281b36f41cd4
|
||||
PKG_SOURCE_DATE:=2022-04-08
|
||||
PKG_SOURCE_VERSION:=ef82defaae26619e5b2ebddfdd86e9de61c399f1
|
||||
PKG_MIRROR_HASH:=8e4ca65d23a85aad774af51dc62cfaa4615111ffd2c7922258ac8f026a62b013
|
||||
PKG_RELEASE:=$(AUTORELEASE)
|
||||
|
||||
PKG_LICENSE:=GPL-2.0
|
||||
@ -31,10 +31,16 @@ define Package/qosify
|
||||
SECTION:=utils
|
||||
CATEGORY:=Base system
|
||||
TITLE:=A simple QoS solution based eBPF + CAKE
|
||||
DEPENDS:=+libbpf +libubox +libubus +kmod-sched-cake +kmod-sched-bpf +kmod-ifb +tc-full $(BPF_DEPENDS)
|
||||
DEPENDS:=+libbpf +libubox +libubus +libnl-tiny +kmod-sched-cake +kmod-sched-bpf +kmod-ifb +tc $(BPF_DEPENDS)
|
||||
endef
|
||||
|
||||
TARGET_CFLAGS += -Wno-error=deprecated-declarations
|
||||
TARGET_CFLAGS += \
|
||||
-Wno-error=deprecated-declarations \
|
||||
-I$(STAGING_DIR)/usr/include/libnl-tiny \
|
||||
-I$(STAGING_DIR)/usr/include
|
||||
|
||||
CMAKE_OPTIONS += \
|
||||
-DLIBNL_LIBS=-lnl-tiny
|
||||
|
||||
define Build/Compile
|
||||
$(call CompileBPF,$(PKG_BUILD_DIR)/qosify-bpf.c)
|
||||
|
||||
62
package/network/services/bridger/Makefile
Normal file
62
package/network/services/bridger/Makefile
Normal file
@ -0,0 +1,62 @@
|
||||
#
|
||||
# Copyright (C) 2022 OpenWrt.org
|
||||
#
|
||||
# This is free software, licensed under the GNU General Public License v2.
|
||||
# See /LICENSE for more information.
|
||||
#
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=bridger
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL=https://github.com/nbd168/bridger
|
||||
PKG_SOURCE_DATE:=2022-04-06
|
||||
PKG_SOURCE_VERSION:=e8f6814a85b4ea951657e7018c5d77597400f44a
|
||||
PKG_MIRROR_HASH:=f917e099a9ab2a55745a7254239efabe695a722d5c448342198cdc847a4a24ac
|
||||
|
||||
PKG_LICENSE:=GPL-2.0
|
||||
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
||||
|
||||
PKG_BUILD_DEPENDS:=bpf-headers
|
||||
|
||||
PKG_BUILD_PARALLEL:=1
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
include $(INCLUDE_DIR)/cmake.mk
|
||||
include $(INCLUDE_DIR)/bpf.mk
|
||||
include $(INCLUDE_DIR)/nls.mk
|
||||
|
||||
define Package/bridger
|
||||
SECTION:=utils
|
||||
CATEGORY:=Base system
|
||||
TITLE:=Bridge forwarding accelerator
|
||||
DEPENDS:=+libbpf +libubox +libubus +libnl-tiny +kmod-sched-core +kmod-sched-flower +kmod-sched-bpf +kmod-sched-act-vlan $(BPF_DEPENDS)
|
||||
endef
|
||||
|
||||
TARGET_CFLAGS += \
|
||||
-I$(STAGING_DIR)/usr/include/libnl-tiny \
|
||||
-I$(STAGING_DIR)/usr/include
|
||||
|
||||
CMAKE_OPTIONS += \
|
||||
-DLIBNL_LIBS=-lnl-tiny
|
||||
|
||||
define Build/Compile
|
||||
$(call CompileBPF,$(PKG_BUILD_DIR)/bridger-bpf.c)
|
||||
$(Build/Compile/Default)
|
||||
endef
|
||||
|
||||
define Package/bridger/install
|
||||
$(INSTALL_DIR) \
|
||||
$(1)/etc/config \
|
||||
$(1)/etc/init.d \
|
||||
$(1)/lib/bpf \
|
||||
$(1)/usr/sbin
|
||||
$(INSTALL_DATA) $(PKG_BUILD_DIR)/bridger-bpf.o $(1)/lib/bpf
|
||||
$(INSTALL_BIN) \
|
||||
$(PKG_INSTALL_DIR)/usr/bin/bridger \
|
||||
$(1)/usr/sbin/
|
||||
$(INSTALL_DATA) ./files/bridger.conf $(1)/etc/config/bridger
|
||||
$(INSTALL_BIN) ./files/bridger.init $(1)/etc/init.d/bridger
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,bridger))
|
||||
3
package/network/services/bridger/files/bridger.conf
Normal file
3
package/network/services/bridger/files/bridger.conf
Normal file
@ -0,0 +1,3 @@
|
||||
config defaults
|
||||
# example for blacklisting individual devices or bridges
|
||||
# list blacklist eth0
|
||||
44
package/network/services/bridger/files/bridger.init
Normal file
44
package/network/services/bridger/files/bridger.init
Normal file
@ -0,0 +1,44 @@
|
||||
#!/bin/sh /etc/rc.common
|
||||
# Copyright (c) 2021 OpenWrt.org
|
||||
|
||||
START=19
|
||||
|
||||
USE_PROCD=1
|
||||
PROG=/usr/sbin/bridger
|
||||
|
||||
add_blacklist() {
|
||||
cfg="$1"
|
||||
|
||||
config_get blacklist "$cfg" blacklist
|
||||
for i in $blacklist; do
|
||||
json_add_string "" "$i"
|
||||
done
|
||||
}
|
||||
|
||||
reload_service() {
|
||||
config_load bridger
|
||||
|
||||
json_init
|
||||
json_add_string name "config"
|
||||
json_add_array devices
|
||||
config_foreach add_blacklist defaults
|
||||
json_close_array
|
||||
|
||||
ubus call bridger set_blacklist "$(json_dump)"
|
||||
}
|
||||
|
||||
service_triggers() {
|
||||
procd_add_reload_trigger bridger
|
||||
}
|
||||
|
||||
start_service() {
|
||||
procd_open_instance
|
||||
procd_set_param command "$PROG"
|
||||
procd_set_param respawn
|
||||
procd_close_instance
|
||||
}
|
||||
|
||||
service_started() {
|
||||
ubus -t 10 wait_for bridger
|
||||
[ $? = 0 ] && reload_service
|
||||
}
|
||||
@ -1160,6 +1160,11 @@ dnsmasq_start()
|
||||
[ -n "$user_dhcpscript" ] && procd_set_param env USER_DHCPSCRIPT="$user_dhcpscript"
|
||||
procd_set_param respawn
|
||||
|
||||
local instance_ifc instance_netdev
|
||||
config_get instance_ifc "$cfg" interface
|
||||
[ -n "$instance_ifc" ] && network_get_device instance_netdev "$instance_ifc" &&
|
||||
[ -n "$instance_netdev" ] && procd_set_param netdev $instance_netdev
|
||||
|
||||
procd_add_jail dnsmasq ubus log
|
||||
procd_add_jail_mount $CONFIGFILE $DHCPBOGUSHOSTNAMEFILE $DHCPSCRIPT $DHCPSCRIPT_DEPENDS
|
||||
procd_add_jail_mount $EXTRA_MOUNT $RFC6761FILE $TRUSTANCHORSFILE
|
||||
|
||||
@ -423,6 +423,16 @@
|
||||
}
|
||||
|
||||
|
||||
@@ -352,6 +355,9 @@ void hostapd_handle_radio_measurement(st
|
||||
mgmt->u.action.u.rrm.action, MAC2STR(mgmt->sa));
|
||||
|
||||
switch (mgmt->u.action.u.rrm.action) {
|
||||
+ case WLAN_RRM_LINK_MEASUREMENT_REPORT:
|
||||
+ hostapd_ubus_handle_link_measurement(hapd, buf, len);
|
||||
+ break;
|
||||
case WLAN_RRM_RADIO_MEASUREMENT_REPORT:
|
||||
hostapd_handle_radio_msmt_report(hapd, buf, len);
|
||||
break;
|
||||
--- a/src/ap/vlan_init.c
|
||||
+++ b/src/ap/vlan_init.c
|
||||
@@ -22,6 +22,7 @@
|
||||
|
||||
@ -995,6 +995,7 @@ hostapd_rrm_print_nr(struct hostapd_neighbor_entry *nr)
|
||||
enum {
|
||||
BSS_MGMT_EN_NEIGHBOR,
|
||||
BSS_MGMT_EN_BEACON,
|
||||
BSS_MGMT_EN_LINK_MEASUREMENT,
|
||||
#ifdef CONFIG_WNM_AP
|
||||
BSS_MGMT_EN_BSS_TRANSITION,
|
||||
#endif
|
||||
@ -1022,6 +1023,14 @@ __hostapd_bss_mgmt_enable_f(struct hostapd_data *hapd, int flag)
|
||||
WLAN_RRM_CAPS_BEACON_REPORT_ACTIVE |
|
||||
WLAN_RRM_CAPS_BEACON_REPORT_TABLE;
|
||||
|
||||
if (bss->radio_measurements[0] & flags == flags)
|
||||
return false;
|
||||
|
||||
bss->radio_measurements[0] |= (u8) flags;
|
||||
return true;
|
||||
case BSS_MGMT_EN_LINK_MEASUREMENT:
|
||||
flags = WLAN_RRM_CAPS_LINK_MEASUREMENT;
|
||||
|
||||
if (bss->radio_measurements[0] & flags == flags)
|
||||
return false;
|
||||
|
||||
@ -1059,6 +1068,7 @@ __hostapd_bss_mgmt_enable(struct hostapd_data *hapd, uint32_t flags)
|
||||
static const struct blobmsg_policy bss_mgmt_enable_policy[__BSS_MGMT_EN_MAX] = {
|
||||
[BSS_MGMT_EN_NEIGHBOR] = { "neighbor_report", BLOBMSG_TYPE_BOOL },
|
||||
[BSS_MGMT_EN_BEACON] = { "beacon_report", BLOBMSG_TYPE_BOOL },
|
||||
[BSS_MGMT_EN_LINK_MEASUREMENT] = { "link_measurement", BLOBMSG_TYPE_BOOL },
|
||||
#ifdef CONFIG_WNM_AP
|
||||
[BSS_MGMT_EN_BSS_TRANSITION] = { "bss_transition", BLOBMSG_TYPE_BOOL },
|
||||
#endif
|
||||
@ -1337,6 +1347,98 @@ hostapd_rrm_beacon_req(struct ubus_context *ctx, struct ubus_object *obj,
|
||||
return 0;
|
||||
}
|
||||
|
||||
enum {
|
||||
LM_REQ_ADDR,
|
||||
LM_REQ_TX_POWER_USED,
|
||||
LM_REQ_TX_POWER_MAX,
|
||||
__LM_REQ_MAX,
|
||||
};
|
||||
|
||||
static const struct blobmsg_policy lm_req_policy[__LM_REQ_MAX] = {
|
||||
[LM_REQ_ADDR] = { "addr", BLOBMSG_TYPE_STRING },
|
||||
[LM_REQ_TX_POWER_USED] = { "tx-power-used", BLOBMSG_TYPE_INT32 },
|
||||
[LM_REQ_TX_POWER_MAX] = { "tx-power-max", BLOBMSG_TYPE_INT32 },
|
||||
};
|
||||
|
||||
static int
|
||||
hostapd_rrm_lm_req(struct ubus_context *ctx, struct ubus_object *obj,
|
||||
struct ubus_request_data *ureq, const char *method,
|
||||
struct blob_attr *msg)
|
||||
{
|
||||
struct hostapd_data *hapd = container_of(obj, struct hostapd_data, ubus.obj);
|
||||
struct blob_attr *tb[__LM_REQ_MAX];
|
||||
struct wpabuf *buf;
|
||||
u8 addr[ETH_ALEN];
|
||||
int ret;
|
||||
int8_t txp_used, txp_max;
|
||||
|
||||
txp_used = 0;
|
||||
txp_max = 0;
|
||||
|
||||
blobmsg_parse(lm_req_policy, __LM_REQ_MAX, tb, blob_data(msg), blob_len(msg));
|
||||
|
||||
if (!tb[LM_REQ_ADDR])
|
||||
return UBUS_STATUS_INVALID_ARGUMENT;
|
||||
|
||||
if (tb[LM_REQ_TX_POWER_USED])
|
||||
txp_used = (int8_t) blobmsg_get_u32(tb[LM_REQ_TX_POWER_USED]);
|
||||
|
||||
if (tb[LM_REQ_TX_POWER_MAX])
|
||||
txp_max = (int8_t) blobmsg_get_u32(tb[LM_REQ_TX_POWER_MAX]);
|
||||
|
||||
if (hwaddr_aton(blobmsg_data(tb[LM_REQ_ADDR]), addr))
|
||||
return UBUS_STATUS_INVALID_ARGUMENT;
|
||||
|
||||
buf = wpabuf_alloc(5);
|
||||
if (!buf)
|
||||
return UBUS_STATUS_UNKNOWN_ERROR;
|
||||
|
||||
wpabuf_put_u8(buf, WLAN_ACTION_RADIO_MEASUREMENT);
|
||||
wpabuf_put_u8(buf, WLAN_RRM_LINK_MEASUREMENT_REQUEST);
|
||||
wpabuf_put_u8(buf, 1);
|
||||
/* TX-Power used */
|
||||
wpabuf_put_u8(buf, txp_used);
|
||||
/* Max TX Power */
|
||||
wpabuf_put_u8(buf, txp_max);
|
||||
|
||||
ret = hostapd_drv_send_action(hapd, hapd->iface->freq, 0, addr,
|
||||
wpabuf_head(buf), wpabuf_len(buf));
|
||||
|
||||
wpabuf_free(buf);
|
||||
if (ret < 0)
|
||||
return -ret;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
void hostapd_ubus_handle_link_measurement(struct hostapd_data *hapd, const u8 *data, size_t len)
|
||||
{
|
||||
const struct ieee80211_mgmt *mgmt = (const struct ieee80211_mgmt *) data;
|
||||
const u8 *pos, *end;
|
||||
u8 token;
|
||||
|
||||
end = data + len;
|
||||
token = mgmt->u.action.u.rrm.dialog_token;
|
||||
pos = mgmt->u.action.u.rrm.variable;
|
||||
|
||||
if (end - pos < 8)
|
||||
return;
|
||||
|
||||
if (!hapd->ubus.obj.has_subscribers)
|
||||
return;
|
||||
|
||||
blob_buf_init(&b, 0);
|
||||
blobmsg_add_macaddr(&b, "address", mgmt->sa);
|
||||
blobmsg_add_u16(&b, "dialog-token", token);
|
||||
blobmsg_add_u16(&b, "rx-antenna-id", pos[4]);
|
||||
blobmsg_add_u16(&b, "tx-antenna-id", pos[5]);
|
||||
blobmsg_add_u16(&b, "rcpi", pos[6]);
|
||||
blobmsg_add_u16(&b, "rsni", pos[7]);
|
||||
|
||||
ubus_notify(ctx, &hapd->ubus.obj, "link-measurement-report", b.head, -1);
|
||||
}
|
||||
|
||||
|
||||
#ifdef CONFIG_WNM_AP
|
||||
|
||||
@ -1594,6 +1696,7 @@ static const struct ubus_method bss_methods[] = {
|
||||
UBUS_METHOD_NOARG("rrm_nr_list", hostapd_rrm_nr_list),
|
||||
UBUS_METHOD("rrm_nr_set", hostapd_rrm_nr_set, nr_set_policy),
|
||||
UBUS_METHOD("rrm_beacon_req", hostapd_rrm_beacon_req, beacon_req_policy),
|
||||
UBUS_METHOD("link_measurement_req", hostapd_rrm_lm_req, lm_req_policy),
|
||||
#ifdef CONFIG_WNM_AP
|
||||
UBUS_METHOD("wnm_disassoc_imminent", hostapd_wnm_disassoc_imminent, wnm_disassoc_policy),
|
||||
UBUS_METHOD("bss_transition_request", hostapd_bss_transition_request, bss_tr_policy),
|
||||
|
||||
@ -47,6 +47,7 @@ void hostapd_ubus_add_vlan(struct hostapd_data *hapd, struct hostapd_vlan *vlan)
|
||||
void hostapd_ubus_remove_vlan(struct hostapd_data *hapd, struct hostapd_vlan *vlan);
|
||||
|
||||
int hostapd_ubus_handle_event(struct hostapd_data *hapd, struct hostapd_ubus_request *req);
|
||||
void hostapd_ubus_handle_link_measurement(struct hostapd_data *hapd, const u8 *data, size_t len);
|
||||
void hostapd_ubus_notify(struct hostapd_data *hapd, const char *type, const u8 *mac);
|
||||
void hostapd_ubus_notify_beacon_report(struct hostapd_data *hapd,
|
||||
const u8 *addr, u8 token, u8 rep_mode,
|
||||
@ -98,6 +99,10 @@ static inline int hostapd_ubus_handle_event(struct hostapd_data *hapd, struct ho
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline void hostapd_ubus_handle_link_measurement(struct hostapd_data *hapd, const u8 *data, size_t len)
|
||||
{
|
||||
}
|
||||
|
||||
static inline void hostapd_ubus_notify(struct hostapd_data *hapd, const char *type, const u8 *mac)
|
||||
{
|
||||
}
|
||||
|
||||
@ -5,9 +5,9 @@ PKG_RELEASE:=2
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL=$(PROJECT_GIT)/project/ubox.git
|
||||
PKG_SOURCE_DATE:=2021-08-03
|
||||
PKG_SOURCE_VERSION:=205defb597295a4a8966db3e618cfe41a29bed99
|
||||
PKG_MIRROR_HASH:=22da1601424c13af8751424b4216f32910a26da49408b6f309158ed8cee93034
|
||||
PKG_SOURCE_DATE:=2022-01-06
|
||||
PKG_SOURCE_VERSION:=b87a4fdca6346a01c19e94fe0461fb9ef7493815
|
||||
PKG_MIRROR_HASH:=4b41596fa00637134b23175a4952de66ff80b2edb956f685347f146d90d910c5
|
||||
CMAKE_INSTALL:=1
|
||||
|
||||
PKG_LICENSE:=GPL-2.0
|
||||
@ -33,6 +33,10 @@ define Package/ubox
|
||||
100:/sbin/modprobe:/sbin/kmodloader
|
||||
endef
|
||||
|
||||
define Package/ubox/conffiles
|
||||
/etc/modules.conf
|
||||
endef
|
||||
|
||||
define Package/getrandom
|
||||
SECTION:=base
|
||||
CATEGORY:=Base system
|
||||
@ -53,10 +57,11 @@ define Package/getrandom/install
|
||||
endef
|
||||
|
||||
define Package/ubox/install
|
||||
$(INSTALL_DIR) $(1)/sbin $(1)/usr/sbin $(1)/lib $(1)/usr/bin
|
||||
$(INSTALL_DIR) $(1)/sbin $(1)/usr/sbin $(1)/lib $(1)/usr/bin $(1)/etc
|
||||
|
||||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/{kmodloader,validate_data} $(1)/sbin/
|
||||
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libvalidate.so $(1)/lib
|
||||
$(INSTALL_DATA) ./files/modules.conf $(1)/etc/modules.conf
|
||||
endef
|
||||
|
||||
define Package/logd/install
|
||||
|
||||
3
package/system/ubox/files/modules.conf
Normal file
3
package/system/ubox/files/modules.conf
Normal file
@ -0,0 +1,3 @@
|
||||
# examples:
|
||||
# options mod1 option=val
|
||||
# blacklist mod2
|
||||
@ -12,13 +12,13 @@ PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL=https://github.com/jow-/ucode.git
|
||||
PKG_SOURCE_DATE:=2022-02-11
|
||||
PKG_SOURCE_VERSION:=a29bad9454edcc285f7f37410b6822affede44d1
|
||||
PKG_MIRROR_HASH:=eaba0f12c469ef82b772a64f8763e8855dbba81551a78d05f547c0922a7dacad
|
||||
PKG_SOURCE_DATE:=2022-04-07
|
||||
PKG_SOURCE_VERSION:=33f1e0b0926e973fb5ae445e9a995848762143bb
|
||||
PKG_MIRROR_HASH:=e419678244c5402c739e3a200d6d1d7cd6989a711c73744bc68b2d5b76bae33a
|
||||
PKG_MAINTAINER:=Jo-Philipp Wich <jo@mein.io>
|
||||
PKG_LICENSE:=ISC
|
||||
|
||||
PKG_ABI_VERSION:=20220206
|
||||
PKG_ABI_VERSION:=20220322
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
include $(INCLUDE_DIR)/cmake.mk
|
||||
@ -152,7 +152,7 @@ endef
|
||||
|
||||
define Package/ucode/install
|
||||
$(INSTALL_DIR) $(1)/usr/bin
|
||||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ucode $(1)/usr/bin/ucode
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/bin/u* $(1)/usr/bin/
|
||||
endef
|
||||
|
||||
define Package/libucode/install
|
||||
|
||||
@ -58,7 +58,7 @@ pkg_appears_sane() {
|
||||
|
||||
rm "$CONTROL"/conffiles
|
||||
if [ -f "$CONTROL"/conffiles.resolved ]; then
|
||||
sort -o "$CONTROL"/conffiles "$CONTROL"/conffiles.resolved
|
||||
LC_ALL=C sort -o "$CONTROL"/conffiles "$CONTROL"/conffiles.resolved
|
||||
rm "$CONTROL"/conffiles.resolved
|
||||
chmod 0644 "$CONTROL"/conffiles
|
||||
fi
|
||||
|
||||
@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk
|
||||
ARCH:=arm
|
||||
BOARD:=at91
|
||||
BOARDNAME:=Microchip (Atmel AT91)
|
||||
FEATURES:=ext4 squashfs targz usb usbgadget ubifs
|
||||
FEATURES:=ext4 squashfs targz usbgadget ubifs
|
||||
SUBTARGETS:=sama7 sama5 sam9x
|
||||
|
||||
KERNEL_PATCHVER:=5.10
|
||||
|
||||
@ -24,10 +24,6 @@ CONFIG_ARM_PATCH_PHYS_VIRT=y
|
||||
CONFIG_ARM_THUMB=y
|
||||
CONFIG_ARM_UNWIND=y
|
||||
CONFIG_ARM_VIRT_EXT=y
|
||||
CONFIG_ASN1=y
|
||||
CONFIG_ASSOCIATIVE_ARRAY=y
|
||||
CONFIG_ASYMMETRIC_KEY_TYPE=y
|
||||
CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
|
||||
# CONFIG_AT91SAM9X_WATCHDOG is not set
|
||||
# CONFIG_AT91_ADC is not set
|
||||
CONFIG_AT91_SAMA5D2_ADC=y
|
||||
@ -42,44 +38,17 @@ CONFIG_ATMEL_TCB_CLKSRC=y
|
||||
CONFIG_AT_XDMAC=y
|
||||
CONFIG_AUTO_ZRELADDR=y
|
||||
CONFIG_BINFMT_FLAT_ARGVP_ENVP_ON_STACK=y
|
||||
# CONFIG_BLK_CGROUP is not set
|
||||
CONFIG_BLK_DEV_LOOP=y
|
||||
CONFIG_BLK_DEV_RAM=y
|
||||
CONFIG_BLK_DEV_RAM_COUNT=1
|
||||
CONFIG_BLK_DEV_RAM_SIZE=8192
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_BLK_SCSI_REQUEST=y
|
||||
CONFIG_BRIDGE=m
|
||||
CONFIG_BT=y
|
||||
CONFIG_BT_DEBUGFS=y
|
||||
CONFIG_BT_HCIUART=y
|
||||
# CONFIG_BT_HCIUART_INTEL is not set
|
||||
CONFIG_BT_HCIVHCI=y
|
||||
# CONFIG_CACHE_L2X0 is not set
|
||||
CONFIG_CAN=y
|
||||
CONFIG_CFG80211=m
|
||||
CONFIG_CFG80211_CRDA_SUPPORT=y
|
||||
CONFIG_CFG80211_DEBUGFS=y
|
||||
# CONFIG_CFG80211_DEFAULT_PS is not set
|
||||
# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
|
||||
CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y
|
||||
CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y
|
||||
CONFIG_CFG80211_WEXT=y
|
||||
CONFIG_CGROUPS=y
|
||||
# CONFIG_CGROUP_BPF is not set
|
||||
# CONFIG_CGROUP_CPUACCT is not set
|
||||
CONFIG_CGROUP_DEBUG=y
|
||||
# CONFIG_CGROUP_DEVICE is not set
|
||||
# CONFIG_CGROUP_FREEZER is not set
|
||||
# CONFIG_CGROUP_NET_CLASSID is not set
|
||||
# CONFIG_CGROUP_NET_PRIO is not set
|
||||
# CONFIG_CGROUP_PIDS is not set
|
||||
# CONFIG_CGROUP_RDMA is not set
|
||||
# CONFIG_CGROUP_SCHED is not set
|
||||
CONFIG_CLKDEV_LOOKUP=y
|
||||
CONFIG_CLKSRC_MMIO=y
|
||||
CONFIG_CLONE_BACKWARDS=y
|
||||
CONFIG_CLZ_TAB=y
|
||||
CONFIG_CMA=y
|
||||
CONFIG_CMA_ALIGNMENT=9
|
||||
CONFIG_CMA_AREAS=7
|
||||
@ -138,7 +107,6 @@ CONFIG_CRYPTO_DRBG_MENU=y
|
||||
CONFIG_CRYPTO_ECB=y
|
||||
CONFIG_CRYPTO_ECC=y
|
||||
CONFIG_CRYPTO_ECDH=y
|
||||
CONFIG_CRYPTO_HASH_INFO=y
|
||||
CONFIG_CRYPTO_HMAC=y
|
||||
CONFIG_CRYPTO_JITTERENTROPY=y
|
||||
CONFIG_CRYPTO_LIB_SHA256=y
|
||||
@ -146,7 +114,6 @@ CONFIG_CRYPTO_LZO=y
|
||||
CONFIG_CRYPTO_RNG=y
|
||||
CONFIG_CRYPTO_RNG2=y
|
||||
CONFIG_CRYPTO_RNG_DEFAULT=y
|
||||
CONFIG_CRYPTO_RSA=y
|
||||
CONFIG_CRYPTO_SHA256=y
|
||||
CONFIG_DCACHE_WORD_ACCESS=y
|
||||
CONFIG_DEBUG_AT91_SAMA7G5_FLEXCOM3=y
|
||||
@ -175,12 +142,6 @@ CONFIG_EDAC_ATOMIC_SCRUB=y
|
||||
CONFIG_EDAC_SUPPORT=y
|
||||
CONFIG_EEPROM_AT24=y
|
||||
# CONFIG_EFI_PARTITION is not set
|
||||
CONFIG_EXT2_FS=y
|
||||
# CONFIG_EXT2_FS_POSIX_ACL is not set
|
||||
# CONFIG_EXT2_FS_SECURITY is not set
|
||||
CONFIG_EXT3_FS=y
|
||||
# CONFIG_EXT3_FS_POSIX_ACL is not set
|
||||
# CONFIG_EXT3_FS_SECURITY is not set
|
||||
CONFIG_EXT4_FS=y
|
||||
CONFIG_FANOTIFY=y
|
||||
CONFIG_FAT_FS=y
|
||||
@ -194,6 +155,7 @@ CONFIG_GENERIC_ALLOCATOR=y
|
||||
CONFIG_GENERIC_BUG=y
|
||||
CONFIG_GENERIC_CLOCKEVENTS=y
|
||||
CONFIG_GENERIC_CPU_AUTOPROBE=y
|
||||
CONFIG_GENERIC_CPU_VULNERABILITIES=y
|
||||
CONFIG_GENERIC_EARLY_IOREMAP=y
|
||||
CONFIG_GENERIC_GETTIMEOFDAY=y
|
||||
CONFIG_GENERIC_IDLE_POLL_SETUP=y
|
||||
@ -215,7 +177,6 @@ CONFIG_GLOB=y
|
||||
CONFIG_GPIOLIB=y
|
||||
CONFIG_GPIOLIB_IRQCHIP=y
|
||||
CONFIG_GRACE_PERIOD=y
|
||||
CONFIG_GRO_CELLS=y
|
||||
CONFIG_HANDLE_DOMAIN_IRQ=y
|
||||
CONFIG_HARDEN_BRANCH_PREDICTOR=y
|
||||
CONFIG_HARDIRQS_SW_RESEND=y
|
||||
@ -251,28 +212,15 @@ CONFIG_IRQ_DOMAIN=y
|
||||
CONFIG_IRQ_DOMAIN_HIERARCHY=y
|
||||
CONFIG_IRQ_FORCED_THREADING=y
|
||||
CONFIG_IRQ_WORK=y
|
||||
CONFIG_ISDN_CAPI=y
|
||||
CONFIG_JBD2=y
|
||||
CONFIG_KEYS=y
|
||||
CONFIG_LEDS_GPIO=y
|
||||
CONFIG_LIBFDT=y
|
||||
CONFIG_LLC=m
|
||||
CONFIG_LOCKD=y
|
||||
CONFIG_LOCK_DEBUGGING_SUPPORT=y
|
||||
CONFIG_LOG_BUF_SHIFT=16
|
||||
CONFIG_LSM="N"
|
||||
CONFIG_LZO_COMPRESS=y
|
||||
CONFIG_LZO_DECOMPRESS=y
|
||||
CONFIG_MAC80211=m
|
||||
# CONFIG_MAC80211_DEBUGFS is not set
|
||||
# CONFIG_MAC80211_DEBUG_MENU is not set
|
||||
CONFIG_MAC80211_HAS_RC=y
|
||||
# CONFIG_MAC80211_HWSIM is not set
|
||||
CONFIG_MAC80211_LEDS=y
|
||||
# CONFIG_MAC80211_MESH is not set
|
||||
CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
|
||||
CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
|
||||
CONFIG_MAC80211_RC_MINSTREL=y
|
||||
CONFIG_MACB=y
|
||||
CONFIG_MDIO_BUS=y
|
||||
CONFIG_MDIO_DEVICE=y
|
||||
@ -282,7 +230,6 @@ CONFIG_MEDIA_CONTROLLER=y
|
||||
CONFIG_MEDIA_PLATFORM_SUPPORT=y
|
||||
CONFIG_MEDIA_SUPPORT=y
|
||||
CONFIG_MEDIA_SUPPORT_FILTER=y
|
||||
# CONFIG_MEMCG is not set
|
||||
CONFIG_MEMFD_CREATE=y
|
||||
CONFIG_MEMORY=y
|
||||
CONFIG_MEMORY_ISOLATION=y
|
||||
@ -304,19 +251,12 @@ CONFIG_MMC_SDHCI_PLTFM=y
|
||||
CONFIG_MODULES_USE_ELF_REL=y
|
||||
CONFIG_MODULE_FORCE_LOAD=y
|
||||
CONFIG_MODULE_FORCE_UNLOAD=y
|
||||
CONFIG_MPILIB=y
|
||||
CONFIG_MTD_CMDLINE_PARTS=y
|
||||
CONFIG_NAMESPACES=y
|
||||
CONFIG_NEED_DMA_MAP_STATE=y
|
||||
CONFIG_NEED_PER_CPU_KM=y
|
||||
CONFIG_NEON=y
|
||||
# CONFIG_NET_CLS_CGROUP is not set
|
||||
CONFIG_NET_DEVLINK=y
|
||||
CONFIG_NET_DSA=m
|
||||
CONFIG_NET_NS=y
|
||||
CONFIG_NET_SWITCHDEV=y
|
||||
CONFIG_NFS_FS=y
|
||||
# CONFIG_NL80211_TESTMODE is not set
|
||||
CONFIG_NLS=y
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
CONFIG_NLS_CODEPAGE_850=y
|
||||
@ -335,7 +275,6 @@ CONFIG_OF_IRQ=y
|
||||
CONFIG_OF_KOBJ=y
|
||||
CONFIG_OF_MDIO=y
|
||||
CONFIG_OF_NET=y
|
||||
CONFIG_OID_REGISTRY=y
|
||||
CONFIG_OLD_SIGACTION=y
|
||||
CONFIG_OLD_SIGSUSPEND3=y
|
||||
CONFIG_PAGE_OFFSET=0xC0000000
|
||||
@ -347,9 +286,6 @@ CONFIG_PHYLINK=y
|
||||
CONFIG_PINCTRL=y
|
||||
CONFIG_PINCTRL_AT91=y
|
||||
CONFIG_PINCTRL_AT91PIO4=y
|
||||
CONFIG_PKCS7_MESSAGE_PARSER=y
|
||||
# CONFIG_PKCS7_TEST_KEY is not set
|
||||
# CONFIG_PKCS8_PRIVATE_KEY_PARSER is not set
|
||||
CONFIG_PM_OPP=y
|
||||
CONFIG_POWER_RESET=y
|
||||
# CONFIG_POWER_RESET_AT91_POWEROFF is not set
|
||||
@ -374,11 +310,9 @@ CONFIG_RTC_DRV_AT91RM9200=y
|
||||
CONFIG_RTC_DRV_AT91SAM9=y
|
||||
CONFIG_RTC_I2C_AND_SPI=y
|
||||
CONFIG_RTC_MC146818_LIB=y
|
||||
# CONFIG_RTL8723BS is not set
|
||||
# CONFIG_RUNTIME_TESTING_MENU is not set
|
||||
CONFIG_SAMA5D4_WATCHDOG=y
|
||||
CONFIG_SCSI=y
|
||||
# CONFIG_SECONDARY_TRUSTED_KEYRING is not set
|
||||
# CONFIG_SERIAL_8250 is not set
|
||||
CONFIG_SERIAL_ATMEL=y
|
||||
CONFIG_SERIAL_ATMEL_CONSOLE=y
|
||||
@ -405,10 +339,9 @@ CONFIG_SND_SIMPLE_CARD_UTILS=y
|
||||
CONFIG_SND_SOC=y
|
||||
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
|
||||
CONFIG_SND_SOC_I2C_AND_SPI=y
|
||||
CONFIG_SND_SOC_MIKROE_PROTO=m
|
||||
# CONFIG_SND_SOC_MIKROE_PROTO is not set
|
||||
CONFIG_SND_SOC_PCM5102A=y
|
||||
CONFIG_SND_SOC_SPDIF=y
|
||||
CONFIG_SND_SOC_WM8731=m
|
||||
CONFIG_SOC_BUS=y
|
||||
# CONFIG_SOC_SAMA5D2 is not set
|
||||
# CONFIG_SOC_SAMA5D3 is not set
|
||||
@ -425,20 +358,15 @@ CONFIG_SPI_ATMEL=y
|
||||
# CONFIG_SPI_ATMEL_QUADSPI is not set
|
||||
CONFIG_SPI_MASTER=y
|
||||
CONFIG_SPI_MEM=y
|
||||
CONFIG_SPI_SPIDEV=m
|
||||
CONFIG_SRCU=y
|
||||
CONFIG_STACKTRACE=y
|
||||
# CONFIG_STANDALONE is not set
|
||||
CONFIG_STP=m
|
||||
CONFIG_SUNRPC=y
|
||||
# CONFIG_SWAP is not set
|
||||
CONFIG_SWPHY=y
|
||||
# CONFIG_SWP_EMULATE is not set
|
||||
CONFIG_SYSFS_DEPRECATED=y
|
||||
CONFIG_SYSFS_DEPRECATED_V2=y
|
||||
CONFIG_SYSTEM_DATA_VERIFICATION=y
|
||||
# CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set
|
||||
CONFIG_SYSTEM_TRUSTED_KEYRING=y
|
||||
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
|
||||
CONFIG_TICK_CPU_ACCOUNTING=y
|
||||
CONFIG_TIMER_OF=y
|
||||
@ -447,29 +375,20 @@ CONFIG_TINY_SRCU=y
|
||||
CONFIG_UACCESS_WITH_MEMCPY=y
|
||||
CONFIG_UNCOMPRESS_INCLUDE="debug/uncompress.h"
|
||||
CONFIG_UNWINDER_ARM=y
|
||||
# CONFIG_USER_NS is not set
|
||||
CONFIG_USE_OF=y
|
||||
CONFIG_V4L2_FWNODE=m
|
||||
CONFIG_V4L_PLATFORM_DRIVERS=y
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_VFP=y
|
||||
CONFIG_VFPv3=y
|
||||
# CONFIG_VIDEO_ATMEL_XISC is not set
|
||||
CONFIG_VIDEO_DEV=y
|
||||
CONFIG_VIDEO_IMX219=m
|
||||
CONFIG_VIDEO_IMX274=m
|
||||
CONFIG_VIDEO_OV5647=m
|
||||
CONFIG_VIDEO_V4L2=y
|
||||
CONFIG_VIDEO_V4L2_I2C=y
|
||||
CONFIG_VIDEO_V4L2_SUBDEV_API=y
|
||||
# CONFIG_VIRT_WIFI is not set
|
||||
CONFIG_VLAN_8021Q=m
|
||||
CONFIG_VT=y
|
||||
CONFIG_VT_CONSOLE=y
|
||||
# CONFIG_VT_HW_CONSOLE_BINDING is not set
|
||||
CONFIG_WATCHDOG_CORE=y
|
||||
# CONFIG_WFX is not set
|
||||
CONFIG_X509_CERTIFICATE_PARSER=y
|
||||
CONFIG_ZBOOT_ROM_BSS=0x0
|
||||
CONFIG_ZBOOT_ROM_TEXT=0x0
|
||||
CONFIG_ZLIB_DEFLATE=y
|
||||
|
||||
@ -15,6 +15,7 @@ CONFIG_MTD_NAND=y
|
||||
CONFIG_MTD_NAND_AR934X=y
|
||||
CONFIG_MTD_NAND_CORE=y
|
||||
CONFIG_MTD_NAND_ECC=y
|
||||
CONFIG_MTD_NAND_ECC_SW_HAMMING=y
|
||||
CONFIG_MTD_NAND_RB4XX=y
|
||||
CONFIG_MTD_NAND_RB91X=y
|
||||
CONFIG_MTD_RAW_NAND=y
|
||||
|
||||
@ -5,6 +5,8 @@ IMAGES_DIR := ../../..
|
||||
|
||||
DEFAULT_PACKAGES += wpad-basic-wolfssl
|
||||
|
||||
KERNEL_TESTING_PATCHVER:=5.15
|
||||
|
||||
define Target/Description
|
||||
Build firmware images for MikroTik devices based on Qualcomm Atheros
|
||||
MIPS SoCs (AR71xx, AR72xx, AR91xx, AR93xx, QCA95xx).
|
||||
|
||||
@ -0,0 +1,27 @@
|
||||
From c70282457c380db7deb57c81a6894debc8f88efa Mon Sep 17 00:00:00 2001
|
||||
From: Oskari Lemmela <oskari@lemmela.net>
|
||||
Date: Wed, 22 Dec 2021 07:59:58 +0200
|
||||
Subject: [PATCH] spi: ar934x: fix transfer and word delays
|
||||
|
||||
Add missing delay between transferred messages and words.
|
||||
|
||||
Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
|
||||
Link: https://lore.kernel.org/r/20211222055958.1383233-3-oskari@lemmela.net
|
||||
Signed-off-by: Mark Brown <broonie@kernel.org>
|
||||
---
|
||||
drivers/spi/spi-ar934x.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
--- a/drivers/spi/spi-ar934x.c
|
||||
+++ b/drivers/spi/spi-ar934x.c
|
||||
@@ -137,8 +137,10 @@ static int ar934x_spi_transfer_one_messa
|
||||
reg >>= 8;
|
||||
}
|
||||
}
|
||||
+ spi_delay_exec(&t->word_delay, t);
|
||||
}
|
||||
m->actual_length += t->len;
|
||||
+ spi_transfer_delay_exec(t);
|
||||
}
|
||||
|
||||
msg_done:
|
||||
@ -0,0 +1,62 @@
|
||||
From ebe33e5a98dcf14a9630845f3f10c193584ac054 Mon Sep 17 00:00:00 2001
|
||||
From: Oskari Lemmela <oskari@lemmela.net>
|
||||
Date: Wed, 22 Dec 2021 07:59:57 +0200
|
||||
Subject: [PATCH] spi: ar934x: fix transfer size
|
||||
|
||||
If bits_per_word is configured, transfer only word amount
|
||||
of data per iteration.
|
||||
|
||||
Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
|
||||
Link: https://lore.kernel.org/r/20211222055958.1383233-2-oskari@lemmela.net
|
||||
Signed-off-by: Mark Brown <broonie@kernel.org>
|
||||
---
|
||||
drivers/spi/spi-ar934x.c | 16 +++++++++++-----
|
||||
1 file changed, 11 insertions(+), 5 deletions(-)
|
||||
|
||||
--- a/drivers/spi/spi-ar934x.c
|
||||
+++ b/drivers/spi/spi-ar934x.c
|
||||
@@ -82,7 +82,7 @@ static int ar934x_spi_transfer_one_messa
|
||||
struct spi_device *spi = m->spi;
|
||||
unsigned long trx_done, trx_cur;
|
||||
int stat = 0;
|
||||
- u8 term = 0;
|
||||
+ u8 bpw, term = 0;
|
||||
int div, i;
|
||||
u32 reg;
|
||||
const u8 *tx_buf;
|
||||
@@ -90,6 +90,11 @@ static int ar934x_spi_transfer_one_messa
|
||||
|
||||
m->actual_length = 0;
|
||||
list_for_each_entry(t, &m->transfers, transfer_list) {
|
||||
+ if (t->bits_per_word >= 8 && t->bits_per_word < 32)
|
||||
+ bpw = t->bits_per_word >> 3;
|
||||
+ else
|
||||
+ bpw = 4;
|
||||
+
|
||||
if (t->speed_hz)
|
||||
div = ar934x_spi_clk_div(sp, t->speed_hz);
|
||||
else
|
||||
@@ -105,10 +110,10 @@ static int ar934x_spi_transfer_one_messa
|
||||
iowrite32(reg, sp->base + AR934X_SPI_REG_CTRL);
|
||||
iowrite32(0, sp->base + AR934X_SPI_DATAOUT);
|
||||
|
||||
- for (trx_done = 0; trx_done < t->len; trx_done += 4) {
|
||||
+ for (trx_done = 0; trx_done < t->len; trx_done += bpw) {
|
||||
trx_cur = t->len - trx_done;
|
||||
- if (trx_cur > 4)
|
||||
- trx_cur = 4;
|
||||
+ if (trx_cur > bpw)
|
||||
+ trx_cur = bpw;
|
||||
else if (list_is_last(&t->transfer_list, &m->transfers))
|
||||
term = 1;
|
||||
|
||||
@@ -193,7 +198,8 @@ static int ar934x_spi_probe(struct platf
|
||||
ctlr->mode_bits = SPI_LSB_FIRST;
|
||||
ctlr->setup = ar934x_spi_setup;
|
||||
ctlr->transfer_one_message = ar934x_spi_transfer_one_message;
|
||||
- ctlr->bits_per_word_mask = SPI_BPW_MASK(8);
|
||||
+ ctlr->bits_per_word_mask = SPI_BPW_MASK(32) | SPI_BPW_MASK(24) |
|
||||
+ SPI_BPW_MASK(16) | SPI_BPW_MASK(8);
|
||||
ctlr->dev.of_node = pdev->dev.of_node;
|
||||
ctlr->num_chipselect = 3;
|
||||
|
||||
@ -0,0 +1,27 @@
|
||||
From c70282457c380db7deb57c81a6894debc8f88efa Mon Sep 17 00:00:00 2001
|
||||
From: Oskari Lemmela <oskari@lemmela.net>
|
||||
Date: Wed, 22 Dec 2021 07:59:58 +0200
|
||||
Subject: [PATCH] spi: ar934x: fix transfer and word delays
|
||||
|
||||
Add missing delay between transferred messages and words.
|
||||
|
||||
Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
|
||||
Link: https://lore.kernel.org/r/20211222055958.1383233-3-oskari@lemmela.net
|
||||
Signed-off-by: Mark Brown <broonie@kernel.org>
|
||||
---
|
||||
drivers/spi/spi-ar934x.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
--- a/drivers/spi/spi-ar934x.c
|
||||
+++ b/drivers/spi/spi-ar934x.c
|
||||
@@ -137,8 +137,10 @@ static int ar934x_spi_transfer_one_messa
|
||||
reg >>= 8;
|
||||
}
|
||||
}
|
||||
+ spi_delay_exec(&t->word_delay, t);
|
||||
}
|
||||
m->actual_length += t->len;
|
||||
+ spi_transfer_delay_exec(t);
|
||||
}
|
||||
|
||||
msg_done:
|
||||
@ -0,0 +1,62 @@
|
||||
From ebe33e5a98dcf14a9630845f3f10c193584ac054 Mon Sep 17 00:00:00 2001
|
||||
From: Oskari Lemmela <oskari@lemmela.net>
|
||||
Date: Wed, 22 Dec 2021 07:59:57 +0200
|
||||
Subject: [PATCH] spi: ar934x: fix transfer size
|
||||
|
||||
If bits_per_word is configured, transfer only word amount
|
||||
of data per iteration.
|
||||
|
||||
Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
|
||||
Link: https://lore.kernel.org/r/20211222055958.1383233-2-oskari@lemmela.net
|
||||
Signed-off-by: Mark Brown <broonie@kernel.org>
|
||||
---
|
||||
drivers/spi/spi-ar934x.c | 16 +++++++++++-----
|
||||
1 file changed, 11 insertions(+), 5 deletions(-)
|
||||
|
||||
--- a/drivers/spi/spi-ar934x.c
|
||||
+++ b/drivers/spi/spi-ar934x.c
|
||||
@@ -82,7 +82,7 @@ static int ar934x_spi_transfer_one_messa
|
||||
struct spi_device *spi = m->spi;
|
||||
unsigned long trx_done, trx_cur;
|
||||
int stat = 0;
|
||||
- u8 term = 0;
|
||||
+ u8 bpw, term = 0;
|
||||
int div, i;
|
||||
u32 reg;
|
||||
const u8 *tx_buf;
|
||||
@@ -90,6 +90,11 @@ static int ar934x_spi_transfer_one_messa
|
||||
|
||||
m->actual_length = 0;
|
||||
list_for_each_entry(t, &m->transfers, transfer_list) {
|
||||
+ if (t->bits_per_word >= 8 && t->bits_per_word < 32)
|
||||
+ bpw = t->bits_per_word >> 3;
|
||||
+ else
|
||||
+ bpw = 4;
|
||||
+
|
||||
if (t->speed_hz)
|
||||
div = ar934x_spi_clk_div(sp, t->speed_hz);
|
||||
else
|
||||
@@ -105,10 +110,10 @@ static int ar934x_spi_transfer_one_messa
|
||||
iowrite32(reg, sp->base + AR934X_SPI_REG_CTRL);
|
||||
iowrite32(0, sp->base + AR934X_SPI_DATAOUT);
|
||||
|
||||
- for (trx_done = 0; trx_done < t->len; trx_done += 4) {
|
||||
+ for (trx_done = 0; trx_done < t->len; trx_done += bpw) {
|
||||
trx_cur = t->len - trx_done;
|
||||
- if (trx_cur > 4)
|
||||
- trx_cur = 4;
|
||||
+ if (trx_cur > bpw)
|
||||
+ trx_cur = bpw;
|
||||
else if (list_is_last(&t->transfer_list, &m->transfers))
|
||||
term = 1;
|
||||
|
||||
@@ -193,7 +198,8 @@ static int ar934x_spi_probe(struct platf
|
||||
ctlr->mode_bits = SPI_LSB_FIRST;
|
||||
ctlr->setup = ar934x_spi_setup;
|
||||
ctlr->transfer_one_message = ar934x_spi_transfer_one_message;
|
||||
- ctlr->bits_per_word_mask = SPI_BPW_MASK(8);
|
||||
+ ctlr->bits_per_word_mask = SPI_BPW_MASK(32) | SPI_BPW_MASK(24) |
|
||||
+ SPI_BPW_MASK(16) | SPI_BPW_MASK(8);
|
||||
ctlr->dev.of_node = pdev->dev.of_node;
|
||||
ctlr->num_chipselect = 3;
|
||||
|
||||
@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk
|
||||
ARCH:=arm
|
||||
BOARD:=bcm27xx
|
||||
BOARDNAME:=Broadcom BCM27xx
|
||||
FEATURES:=ext4 audio usb usbgadget display gpio fpu squashfs rootfs-part boot-part
|
||||
FEATURES:=audio boot-part display ext4 fpu gpio rootfs-part rtc squashfs usb usbgadget
|
||||
SUBTARGETS:=bcm2708 bcm2709 bcm2710 bcm2711
|
||||
|
||||
KERNEL_PATCHVER=5.10
|
||||
|
||||
@ -1,3 +1,4 @@
|
||||
CONFIG_AF_UNIX_OOB=y
|
||||
CONFIG_ALIGNMENT_TRAP=y
|
||||
CONFIG_ARCH_32BIT_OFF_T=y
|
||||
CONFIG_ARCH_BCM=y
|
||||
@ -28,6 +29,7 @@ CONFIG_ARM_ERRATA_764369=y
|
||||
CONFIG_ARM_ERRATA_775420=y
|
||||
CONFIG_ARM_GIC=y
|
||||
CONFIG_ARM_GLOBAL_TIMER=y
|
||||
CONFIG_ARM_GT_INITIAL_PRESCALER_VAL=1
|
||||
CONFIG_ARM_HAS_SG_CHAIN=y
|
||||
CONFIG_ARM_HEAVY_MB=y
|
||||
CONFIG_ARM_L1_CACHE_SHIFT=6
|
||||
@ -62,12 +64,12 @@ CONFIG_BCM_SR_THERMAL=y
|
||||
CONFIG_BGMAC=y
|
||||
CONFIG_BGMAC_BCMA=y
|
||||
# CONFIG_BGMAC_PLATFORM is not set
|
||||
CONFIG_BINARY_PRINTF=y
|
||||
CONFIG_BINFMT_FLAT_ARGVP_ENVP_ON_STACK=y
|
||||
CONFIG_BLK_MQ_PCI=y
|
||||
CONFIG_BOUNCE=y
|
||||
CONFIG_BROADCOM_PHY=y
|
||||
CONFIG_CACHE_L2X0=y
|
||||
CONFIG_CLKDEV_LOOKUP=y
|
||||
CONFIG_CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK=y
|
||||
CONFIG_CLKSRC_MMIO=y
|
||||
# CONFIG_CLK_BCM_NS2 is not set
|
||||
@ -119,6 +121,7 @@ CONFIG_EDAC_SUPPORT=y
|
||||
CONFIG_EXTCON=y
|
||||
CONFIG_FIXED_PHY=y
|
||||
CONFIG_FIX_EARLYCON_MEM=y
|
||||
CONFIG_FWNODE_MDIO=y
|
||||
CONFIG_FW_LOADER_PAGED_BUF=y
|
||||
# CONFIG_FW_LOADER_USER_HELPER_FALLBACK is not set
|
||||
CONFIG_GENERIC_ALLOCATOR=y
|
||||
@ -127,6 +130,7 @@ CONFIG_GENERIC_BUG=y
|
||||
CONFIG_GENERIC_CLOCKEVENTS=y
|
||||
CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
|
||||
CONFIG_GENERIC_CPU_AUTOPROBE=y
|
||||
CONFIG_GENERIC_CPU_VULNERABILITIES=y
|
||||
CONFIG_GENERIC_EARLY_IOREMAP=y
|
||||
CONFIG_GENERIC_GETTIMEOFDAY=y
|
||||
CONFIG_GENERIC_IDLE_POLL_SETUP=y
|
||||
@ -134,6 +138,7 @@ CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y
|
||||
CONFIG_GENERIC_IRQ_MULTI_HANDLER=y
|
||||
CONFIG_GENERIC_IRQ_SHOW=y
|
||||
CONFIG_GENERIC_IRQ_SHOW_LEVEL=y
|
||||
CONFIG_GENERIC_LIB_DEVMEM_IS_ALLOWED=y
|
||||
CONFIG_GENERIC_PCI_IOMAP=y
|
||||
CONFIG_GENERIC_PHY=y
|
||||
CONFIG_GENERIC_PINCONF=y
|
||||
@ -149,6 +154,7 @@ CONFIG_GPIOLIB=y
|
||||
CONFIG_GPIOLIB_IRQCHIP=y
|
||||
CONFIG_GPIO_74X164=y
|
||||
CONFIG_GPIO_BCM_XGS_IPROC=y
|
||||
CONFIG_GPIO_CDEV=y
|
||||
CONFIG_GPIO_GENERIC=y
|
||||
CONFIG_GRO_CELLS=y
|
||||
CONFIG_HANDLE_DOMAIN_IRQ=y
|
||||
@ -171,9 +177,12 @@ CONFIG_IRQ_DOMAIN=y
|
||||
CONFIG_IRQ_DOMAIN_HIERARCHY=y
|
||||
CONFIG_IRQ_FORCED_THREADING=y
|
||||
CONFIG_IRQ_WORK=y
|
||||
CONFIG_KMAP_LOCAL=y
|
||||
CONFIG_KMAP_LOCAL_NON_LINEAR_PTE_ARRAY=y
|
||||
CONFIG_LIBFDT=y
|
||||
CONFIG_LOCK_DEBUGGING_SUPPORT=y
|
||||
CONFIG_LOCK_SPIN_ON_OWNER=y
|
||||
CONFIG_LTO_NONE=y
|
||||
CONFIG_LZO_COMPRESS=y
|
||||
CONFIG_LZO_DECOMPRESS=y
|
||||
CONFIG_MDIO_BCM_IPROC=y
|
||||
@ -212,6 +221,8 @@ CONFIG_NET_DSA_TAG_BRCM_COMMON=y
|
||||
CONFIG_NET_DSA_TAG_BRCM_LEGACY=y
|
||||
CONFIG_NET_DSA_TAG_BRCM_PREPEND=y
|
||||
CONFIG_NET_FLOW_LIMIT=y
|
||||
CONFIG_NET_SELFTESTS=y
|
||||
CONFIG_NET_SOCK_MSG=y
|
||||
CONFIG_NET_SWITCHDEV=y
|
||||
CONFIG_NR_CPUS=2
|
||||
CONFIG_NVMEM=y
|
||||
@ -225,7 +236,6 @@ CONFIG_OF_GPIO=y
|
||||
CONFIG_OF_IRQ=y
|
||||
CONFIG_OF_KOBJ=y
|
||||
CONFIG_OF_MDIO=y
|
||||
CONFIG_OF_NET=y
|
||||
CONFIG_OLD_SIGACTION=y
|
||||
CONFIG_OLD_SIGSUSPEND3=y
|
||||
CONFIG_OUTER_CACHE=y
|
||||
@ -252,6 +262,7 @@ CONFIG_PINCTRL=y
|
||||
# CONFIG_PINCTRL_IPROC_GPIO is not set
|
||||
CONFIG_PINCTRL_NS=y
|
||||
# CONFIG_PINCTRL_NS2_MUX is not set
|
||||
CONFIG_PTP_1588_CLOCK_OPTIONAL=y
|
||||
CONFIG_PWM=y
|
||||
CONFIG_PWM_BCM_IPROC=y
|
||||
CONFIG_PWM_SYSFS=y
|
||||
@ -267,6 +278,7 @@ CONFIG_SERIAL_OF_PLATFORM=y
|
||||
CONFIG_SGL_ALLOC=y
|
||||
CONFIG_SMP=y
|
||||
CONFIG_SMP_ON_UP=y
|
||||
CONFIG_SOCK_RX_QUEUE_MAPPING=y
|
||||
CONFIG_SPARSE_IRQ=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_SPI_BCM_QSPI=y
|
||||
|
||||
@ -1466,6 +1466,7 @@ CONFIG_DMA_NONCOHERENT_MMAP=y
|
||||
# CONFIG_DNOTIFY is not set
|
||||
# CONFIG_DNS_RESOLVER is not set
|
||||
CONFIG_DOUBLEFAULT=y
|
||||
# CONFIG_DP83640_PHY is not set
|
||||
# CONFIG_DP83822_PHY is not set
|
||||
# CONFIG_DP83848_PHY is not set
|
||||
# CONFIG_DP83867_PHY is not set
|
||||
@ -5291,6 +5292,7 @@ CONFIG_SECTION_MISMATCH_WARN_ONLY=y
|
||||
# CONFIG_SECURITYFS is not set
|
||||
# CONFIG_SECURITY_APPARMOR is not set
|
||||
CONFIG_SECURITY_DMESG_RESTRICT=y
|
||||
# CONFIG_SECURITY_LANDLOCK is not set
|
||||
# CONFIG_SECURITY_LOADPIN is not set
|
||||
# CONFIG_SECURITY_LOCKDOWN_LSM is not set
|
||||
# CONFIG_SECURITY_NETWORK_XFRM is not set
|
||||
|
||||
@ -1,26 +0,0 @@
|
||||
From: Felix Fietkau <nbd@nbd.name>
|
||||
Date: Thu, 8 Jul 2021 07:08:29 +0200
|
||||
Subject: [PATCH] net: ethernet: mtk_eth_soc: avoid creating duplicate offload
|
||||
entries
|
||||
|
||||
Sometimes multiple CLS_REPLACE calls are issued for the same connection.
|
||||
rhashtable_insert_fast does not check for these duplicates, so multiple
|
||||
hardware flow entries can be created.
|
||||
Fix this by checking for an existing entry early
|
||||
|
||||
Fixes: 502e84e2382d ("net: ethernet: mtk_eth_soc: add flow offloading support")
|
||||
Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
---
|
||||
|
||||
--- a/drivers/net/ethernet/mediatek/mtk_ppe_offload.c
|
||||
+++ b/drivers/net/ethernet/mediatek/mtk_ppe_offload.c
|
||||
@@ -189,6 +189,9 @@ mtk_flow_offload_replace(struct mtk_eth
|
||||
if (rhashtable_lookup(ð->flow_table, &f->cookie, mtk_flow_ht_params))
|
||||
return -EEXIST;
|
||||
|
||||
+ if (rhashtable_lookup(ð->flow_table, &f->cookie, mtk_flow_ht_params))
|
||||
+ return -EEXIST;
|
||||
+
|
||||
if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_META)) {
|
||||
struct flow_match_meta match;
|
||||
|
||||
@ -1,13 +1,15 @@
|
||||
echo "Toradex Apalis OpenWrt Boot script v1.1"
|
||||
|
||||
run emmcfinduuid
|
||||
setenv mmcdev 0
|
||||
setenv mmcrootpart 2
|
||||
part uuid mmc ${mmcdev}:${mmcrootpart} uuid
|
||||
|
||||
setenv nextcon 0
|
||||
setenv boot_file uImage
|
||||
setenv fdt_file imx6q-apalis-ixora.dtb
|
||||
setenv root root=PARTUUID=${uuid} rootfstype=squashfs rootwait
|
||||
setenv bootargs earlyprintk console=${console},${baudrate}n8 ${root}
|
||||
setenv fsload ext4load mmc ${emmcdev}:${emmcbootpart}
|
||||
setenv fsload ext4load mmc ${mmcdev}:${mmcbootpart}
|
||||
|
||||
if ${fsload} ${kernel_addr_r} ${boot_file}; then
|
||||
if ${fsload} ${fdt_addr_r} ${fdt_file}; then
|
||||
|
||||
@ -80,7 +80,16 @@ endef
|
||||
define Build/imx6-sdcard
|
||||
$(Build/imx6-combined-image-prepare)
|
||||
|
||||
$(CP) $(STAGING_DIR_IMAGE)/$(UBOOT)-u-boot.img $@.boot/u-boot.img
|
||||
if [ -f $(STAGING_DIR_IMAGE)/$(UBOOT)-u-boot.img ]; then \
|
||||
$(CP) $(STAGING_DIR_IMAGE)/$(UBOOT)-u-boot.img \
|
||||
$@.boot/u-boot.img; \
|
||||
fi
|
||||
|
||||
if [ -f $(STAGING_DIR_IMAGE)/$(UBOOT)-u-boot-dtb.img ]; then \
|
||||
$(CP) $(STAGING_DIR_IMAGE)/$(UBOOT)-u-boot-dtb.img \
|
||||
$@.boot/u-boot-dtb.img; \
|
||||
fi
|
||||
|
||||
$(Build/imx6-combined-image)
|
||||
dd if=$(STAGING_DIR_IMAGE)/$(UBOOT)-SPL of=$@ bs=1024 seek=1 conv=notrunc
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user