Merge branch 'openwrt-21.02' of https://github.com/immortalwrt/immortalwrt into openwrt-21.02

This commit is contained in:
hanwckf 2022-12-15 19:51:45 +08:00
commit 606a7d6270
250 changed files with 12877 additions and 798 deletions

View File

@ -34,12 +34,12 @@ To build your own firmware you need a GNU/Linux, BSD or MacOSX system (case sens
sudo apt update -y sudo apt update -y
sudo apt full-upgrade -y sudo apt full-upgrade -y
sudo apt install -y ack antlr3 asciidoc autoconf automake autopoint binutils bison build-essential \ sudo apt install -y ack antlr3 asciidoc autoconf automake autopoint binutils bison build-essential \
bzip2 ccache cmake cpio curl device-tree-compiler ecj fastjar flex gawk gettext gcc-multilib g++-multilib \ bzip2 ccache clang clangd cmake cpio curl device-tree-compiler ecj fastjar flex gawk gettext gcc-multilib \
git gperf haveged help2man intltool lib32gcc-s1 libc6-dev-i386 libelf-dev libglib2.0-dev libgmp3-dev libltdl-dev \ g++-multilib git gperf haveged help2man intltool lib32gcc-s1 libc6-dev-i386 libelf-dev libglib2.0-dev \
libmpc-dev libmpfr-dev libncurses5-dev libncursesw5 libncursesw5-dev libreadline-dev libssl-dev libtool lrzsz \ libgmp3-dev libltdl-dev libmpc-dev libmpfr-dev libncurses5-dev libncursesw5 libncursesw5-dev libreadline-dev \
mkisofs msmtp nano ninja-build p7zip p7zip-full patch pkgconf python2.7 python3 python3-pip python3-ply \ libssl-dev libtool lld lldb lrzsz mkisofs msmtp nano ninja-build p7zip p7zip-full patch pkgconf python2.7 \
python-docutils qemu-utils re2c rsync scons squashfs-tools subversion swig texinfo uglifyjs upx-ucl unzip \ python3 python3-pip python3-ply python-docutils qemu-utils re2c rsync scons squashfs-tools subversion swig \
vim wget xmlto xxd zlib1g-dev texinfo uglifyjs upx-ucl unzip vim wget xmlto xxd zlib1g-dev
``` ```
</details> </details>
- Method 2: - Method 2:

View File

@ -164,7 +164,6 @@ menu "Global build settings"
choice choice
prompt "Binary stripping method" prompt "Binary stripping method"
default USE_STRIP if EXTERNAL_TOOLCHAIN
default USE_STRIP if USE_GLIBC default USE_STRIP if USE_GLIBC
default USE_SSTRIP default USE_SSTRIP
help help

View File

@ -12,6 +12,7 @@
DEP_FINDPARAMS := -x "*/.svn*" -x ".*" -x "*:*" -x "*\!*" -x "* *" -x "*\\\#*" -x "*/.*_check" -x "*/.*.swp" -x "*/.pkgdir*" DEP_FINDPARAMS := -x "*/.svn*" -x ".*" -x "*:*" -x "*\!*" -x "* *" -x "*\\\#*" -x "*/.*_check" -x "*/.*.swp" -x "*/.pkgdir*"
find_md5=find $(wildcard $(1)) -type f $(patsubst -x,-and -not -path,$(DEP_FINDPARAMS) $(2)) -printf "%p%T@\n" | sort | mkhash md5 find_md5=find $(wildcard $(1)) -type f $(patsubst -x,-and -not -path,$(DEP_FINDPARAMS) $(2)) -printf "%p%T@\n" | sort | mkhash md5
find_md5_reproducible=find $(wildcard $(1)) -type f $(patsubst -x,-and -not -path,$(DEP_FINDPARAMS) $(2)) -print0 | xargs -0 mkhash md5 | sort | mkhash md5
define rdep define rdep
.PRECIOUS: $(2) .PRECIOUS: $(2)

View File

@ -27,7 +27,7 @@ define dl_method
$(strip \ $(strip \
$(if $(filter git,$(2)),$(call dl_method_git,$(1),$(2)), $(if $(filter git,$(2)),$(call dl_method_git,$(1),$(2)),
$(if $(2),$(2), \ $(if $(2),$(2), \
$(if $(filter @OPENWRT @IMMORTALWRT @APACHE/% @GITHUB/% @GNOME/% @GNU/% @KERNEL/% @SF/% @SAVANNAH/% ftp://% http://% https://% file://%,$(1)),default, \ $(if $(filter @OPENWRT @IMMORTALWRT @APACHE/% @DEBIAN/% @GITHUB/% @GNOME/% @GNU/% @KERNEL/% @SF/% @SAVANNAH/% ftp://% http://% https://% file://%,$(1)),default, \
$(if $(filter git://%,$(1)),$(call dl_method_git,$(1),$(2)), \ $(if $(filter git://%,$(1)),$(call dl_method_git,$(1),$(2)), \
$(if $(filter svn://%,$(1)),svn, \ $(if $(filter svn://%,$(1)),svn, \
$(if $(filter cvs://%,$(1)),cvs, \ $(if $(filter cvs://%,$(1)),cvs, \

View File

@ -21,7 +21,7 @@ include $(INCLUDE_DIR)/depends.mk
include $(INCLUDE_DIR)/quilt.mk include $(INCLUDE_DIR)/quilt.mk
BUILD_TYPES += host BUILD_TYPES += host
HOST_STAMP_PREPARED=$(HOST_BUILD_DIR)/.prepared$(if $(HOST_QUILT)$(DUMP),,$(shell $(call find_md5,${CURDIR} $(PKG_FILE_DEPENDS),))_$(call confvar,CONFIG_AUTOREMOVE $(HOST_PREPARED_DEPENDS))) HOST_STAMP_PREPARED=$(HOST_BUILD_DIR)/.prepared$(if $(HOST_QUILT)$(DUMP),,$(shell $(call $(if $(CONFIG_AUTOREMOVE),find_md5_reproducible,find_md5),${CURDIR} $(PKG_FILE_DEPENDS),))_$(call confvar,CONFIG_AUTOREMOVE $(HOST_PREPARED_DEPENDS)))
HOST_STAMP_CONFIGURED:=$(HOST_BUILD_DIR)/.configured HOST_STAMP_CONFIGURED:=$(HOST_BUILD_DIR)/.configured
HOST_STAMP_BUILT:=$(HOST_BUILD_DIR)/.built HOST_STAMP_BUILT:=$(HOST_BUILD_DIR)/.built
HOST_BUILD_PREFIX?=$(if $(IS_PACKAGE_BUILD),$(STAGING_DIR_HOSTPKG),$(STAGING_DIR_HOST)) HOST_BUILD_PREFIX?=$(if $(IS_PACKAGE_BUILD),$(STAGING_DIR_HOSTPKG),$(STAGING_DIR_HOST))
@ -197,8 +197,8 @@ ifndef DUMP
ifneq ($(CONFIG_AUTOREMOVE),) ifneq ($(CONFIG_AUTOREMOVE),)
host-compile: host-compile:
$(FIND) $(HOST_BUILD_DIR) -mindepth 1 -maxdepth 1 -not '(' -type f -and -name '.*' -and -size 0 ')' | \ $(FIND) $(HOST_BUILD_DIR) -mindepth 1 -maxdepth 1 -not '(' -type f -and -name '.*' -and -size 0 ')' -print0 | \
$(XARGS) rm -rf $(XARGS) -0 rm -rf
endif endif
endef endef
endif endif

2
include/kernel-5.4 Normal file
View File

@ -0,0 +1,2 @@
LINUX_VERSION-5.4 = .225
LINUX_KERNEL_HASH-5.4.225 = 59f596f6714317955cf481590babcf015aff2bc1900bd8e8dc8f7af73bc560aa

View File

@ -10,7 +10,7 @@ ifneq ($(DUMP),1)
endif endif
KERNEL_FILE_DEPENDS=$(GENERIC_BACKPORT_DIR) $(GENERIC_PATCH_DIR) $(GENERIC_HACK_DIR) $(PATCH_DIR) $(GENERIC_FILES_DIR) $(FILES_DIR) KERNEL_FILE_DEPENDS=$(GENERIC_BACKPORT_DIR) $(GENERIC_PATCH_DIR) $(GENERIC_HACK_DIR) $(PATCH_DIR) $(GENERIC_FILES_DIR) $(FILES_DIR)
STAMP_PREPARED=$(LINUX_DIR)/.prepared$(if $(QUILT)$(DUMP),,_$(shell $(call find_md5,$(KERNEL_FILE_DEPENDS),))) STAMP_PREPARED=$(LINUX_DIR)/.prepared$(if $(QUILT)$(DUMP),,_$(shell $(call $(if $(CONFIG_AUTOREMOVE),find_md5_reproducible,find_md5),$(KERNEL_FILE_DEPENDS),)))
STAMP_CONFIGURED:=$(LINUX_DIR)/.configured STAMP_CONFIGURED:=$(LINUX_DIR)/.configured
include $(INCLUDE_DIR)/download.mk include $(INCLUDE_DIR)/download.mk
include $(INCLUDE_DIR)/quilt.mk include $(INCLUDE_DIR)/quilt.mk

View File

@ -6,9 +6,12 @@ ifdef CONFIG_TESTING_KERNEL
KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER) KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
endif endif
LINUX_VERSION-5.4 = .224 KERNEL_DETAILS_FILE=$(INCLUDE_DIR)/kernel-$(KERNEL_PATCHVER)
ifeq ($(wildcard $(KERNEL_DETAILS_FILE)),)
$(error Missing kernel version/hash file for $(KERNEL_PATCHVER). Please create $(KERNEL_DETAILS_FILE))
endif
LINUX_KERNEL_HASH-5.4.224 = 8b7df25b5560620eb2776d7b7c67569764b3916ff2f596767f72567b38d13d36 include $(KERNEL_DETAILS_FILE)
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1)))) remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1))))))) sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))

View File

@ -84,7 +84,7 @@ ifneq ($(PREV_STAMP_PREPARED),)
STAMP_PREPARED:=$(PREV_STAMP_PREPARED) STAMP_PREPARED:=$(PREV_STAMP_PREPARED)
CONFIG_AUTOREBUILD:= CONFIG_AUTOREBUILD:=
else else
STAMP_PREPARED=$(PKG_BUILD_DIR)/.prepared$(if $(QUILT)$(DUMP),,_$(shell $(call find_md5,${CURDIR} $(PKG_FILE_DEPENDS),))_$(call confvar,CONFIG_AUTOREMOVE $(PKG_PREPARED_DEPENDS))) STAMP_PREPARED=$(PKG_BUILD_DIR)/.prepared$(if $(QUILT)$(DUMP),,_$(shell $(call $(if $(CONFIG_AUTOREMOVE),find_md5_reproducible,find_md5),${CURDIR} $(PKG_FILE_DEPENDS),))_$(call confvar,CONFIG_AUTOREMOVE $(PKG_PREPARED_DEPENDS)))
endif endif
STAMP_CONFIGURED=$(PKG_BUILD_DIR)/.configured$(if $(DUMP),,_$(call confvar,$(PKG_CONFIG_DEPENDS))) STAMP_CONFIGURED=$(PKG_BUILD_DIR)/.configured$(if $(DUMP),,_$(call confvar,$(PKG_CONFIG_DEPENDS)))
STAMP_CONFIGURED_WILDCARD=$(PKG_BUILD_DIR)/.configured_* STAMP_CONFIGURED_WILDCARD=$(PKG_BUILD_DIR)/.configured_*
@ -258,8 +258,8 @@ define Build/CoreTargets
ifneq ($(CONFIG_AUTOREMOVE),) ifneq ($(CONFIG_AUTOREMOVE),)
compile: compile:
-touch -r $(PKG_BUILD_DIR)/.built $(PKG_BUILD_DIR)/.autoremove 2>/dev/null >/dev/null -touch -r $(PKG_BUILD_DIR)/.built $(PKG_BUILD_DIR)/.autoremove 2>/dev/null >/dev/null
$(FIND) $(PKG_BUILD_DIR) -mindepth 1 -maxdepth 1 -not '(' -type f -and -name '.*' -and -size 0 ')' -and -not -name '.pkgdir' | \ $(FIND) $(PKG_BUILD_DIR) -mindepth 1 -maxdepth 1 -not '(' -type f -and -name '.*' -and -size 0 ')' -and -not -name '.pkgdir' -print0 | \
$(XARGS) rm -rf $(XARGS) -0 rm -rf
endif endif
endef endef

View File

@ -96,7 +96,7 @@ generate_network() {
json_select network json_select network
json_select "$1" json_select "$1"
json_get_vars device macaddr protocol ipaddr netmask vlan json_get_vars device macaddr metric protocol ipaddr netmask vlan
json_get_values ports ports json_get_values ports ports
json_select .. json_select ..
json_select .. json_select ..
@ -154,6 +154,7 @@ generate_network() {
set network.$1='interface' set network.$1='interface'
set network.$1.type='$type' set network.$1.type='$type'
set network.$1.device='$device' set network.$1.device='$device'
set network.$1.metric='$metric'
set network.$1.proto='none' set network.$1.proto='none'
EOF EOF

View File

@ -7,12 +7,12 @@ include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=exfat PKG_NAME:=exfat
PKG_VERSION:=5.19.1 PKG_VERSION:=6.0.0
PKG_RELEASE:=$(AUTORELEASE) PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/namjaejeon/linux-exfat-oot/tar.gz/$(PKG_VERSION)? PKG_SOURCE_URL:=https://codeload.github.com/namjaejeon/linux-exfat-oot/tar.gz/$(PKG_VERSION)?
PKG_HASH:=80750bfa3bcdf743ca0d027be8244cc7b6ccd78f20304c2cabbb4011c88e4f0a PKG_HASH:=08513c4ad7bceda6570435f54e76fc91369cbf404968838bdd3f566495f20f36
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/linux-exfat-oot-$(PKG_VERSION) PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/linux-exfat-oot-$(PKG_VERSION)
PKG_MAINTAINER:= PKG_MAINTAINER:=

View File

@ -0,0 +1,47 @@
# SPDX-License-Identifier: GPL-3.0-only
#
# Copyright (C) 2022 ImmortalWrt.org
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=i40e
PKG_VERSION:=2.22.8
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@IMMORTALWRT
PKG_HASH:=938eac24067e385d6e7e47788c7a1c47987bbe0ed36f3360809cbaa8caf85c6b
PKG_MAINTAINER:=Tianling Shen <cnsztl@immortalwrt.org>
PKG_LICENSE:=GPL-2.0-only
PKG_LICENSE_FILES:=COPYING
PKG_BUILD_PARALLEL:=1
include $(INCLUDE_DIR)/package.mk
define KernelPackage/i40e-vendor
SUBMENU:=Network Devices
TITLE:=Intel(R) Ethernet Controller XL710 Family support (vendor driver)
VERSION:=$(LINUX_VERSION)+$(PKG_VERSION)-$(BOARD)-$(PKG_RELEASE)
DEPENDS:=@PCI_SUPPORT +kmod-mdio +kmod-ptp +kmod-libphy
CONFLICTS:=kmod-i40e
FILES:= \
$(PKG_BUILD_DIR)/src/intel_auxiliary.ko \
$(PKG_BUILD_DIR)/src/i40e.ko
AUTOLOAD:=$(call AutoProbe,i40e)
endef
define KernelPackage/i40e-vendor/description
Kernel modules for Intel(R) Ethernet Controller XL710 Family 40 Gigabit Ethernet adapters.
endef
define Build/Compile
+$(KERNEL_MAKE) $(PKG_JOBS) \
M=$(PKG_BUILD_DIR)/src \
NEED_AUX_BUS=2 \
modules
endef
$(eval $(call KernelPackage,i40e-vendor))

View File

@ -0,0 +1,45 @@
# SPDX-License-Identifier: GPL-2.0-only
#
# Copyright (C) 2022 ImmortalWrt.org
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=igb
PKG_VERSION:=5.13.7
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@IMMORTALWRT
PKG_HASH:=4ccae73110f3c871a17b7cc6df7dbdf6295fc90f4941e8b2978a471c2fec83cb
PKG_MAINTAINER:=Tianling Shen <cnsztl@immortalwrt.org>
PKG_LICENSE:=GPL-2.0-only
PKG_LICENSE_FILES:=COPYING
PKG_BUILD_PARALLEL:=1
include $(INCLUDE_DIR)/package.mk
define KernelPackage/igb-vendor
SUBMENU:=Network Devices
TITLE:=Intel(R) 82575/82576 PCI-Express Gigabit Ethernet support (vendor driver)
VERSION:=$(LINUX_VERSION)+$(PKG_VERSION)-$(BOARD)-$(PKG_RELEASE)
DEPENDS:=@PCI_SUPPORT +kmod-i2c-core +kmod-i2c-algo-bit +kmod-ptp +kmod-hwmon-core
CONFLICTS:=kmod-igb
FILES:=$(PKG_BUILD_DIR)/src/igb.ko
AUTOLOAD:=$(call AutoProbe,igb)
endef
define KernelPackage/igb-vendor/description
Kernel modules for Intel(R) 82575/82576 PCI-Express Gigabit Ethernet adapters.
endef
define Build/Compile
+$(KERNEL_MAKE) $(PKG_JOBS) \
M=$(PKG_BUILD_DIR)/src \
CONFIG_IGB=m \
modules
endef
$(eval $(call KernelPackage,igb-vendor))

View File

@ -0,0 +1,10 @@
--- a/src/igb_main.c
+++ b/src/igb_main.c
@@ -25,6 +25,7 @@
#ifdef CONFIG_PM_RUNTIME
#include <linux/pm_runtime.h>
#endif /* CONFIG_PM_RUNTIME */
+#include <linux/ctype.h>
#include <linux/if_bridge.h>
#include "igb.h"

View File

@ -3,7 +3,6 @@
net.netfilter.nf_conntrack_acct=1 net.netfilter.nf_conntrack_acct=1
net.netfilter.nf_conntrack_checksum=0 net.netfilter.nf_conntrack_checksum=0
net.netfilter.nf_conntrack_max=65536
net.netfilter.nf_conntrack_tcp_timeout_established=7440 net.netfilter.nf_conntrack_tcp_timeout_established=7440
net.netfilter.nf_conntrack_udp_timeout=60 net.netfilter.nf_conntrack_udp_timeout=60
net.netfilter.nf_conntrack_udp_timeout_stream=180 net.netfilter.nf_conntrack_udp_timeout_stream=180

View File

@ -462,7 +462,7 @@ $(eval $(call KernelPackage,fs-nfsd))
define KernelPackage/fs-ntfs define KernelPackage/fs-ntfs
SUBMENU:=$(FS_MENU) SUBMENU:=$(FS_MENU)
TITLE:=NTFS filesystem support TITLE:=NTFS filesystem read-only (old driver) support
KCONFIG:=CONFIG_NTFS_FS KCONFIG:=CONFIG_NTFS_FS
FILES:=$(LINUX_DIR)/fs/ntfs/ntfs.ko FILES:=$(LINUX_DIR)/fs/ntfs/ntfs.ko
AUTOLOAD:=$(call AutoLoad,30,ntfs) AUTOLOAD:=$(call AutoLoad,30,ntfs)
@ -470,7 +470,8 @@ define KernelPackage/fs-ntfs
endef endef
define KernelPackage/fs-ntfs/description define KernelPackage/fs-ntfs/description
Kernel module for NTFS filesystem support Kernel module for limited NTFS filesystem support. Support for writing
is extremely limited and disabled as a result.
endef endef
$(eval $(call KernelPackage,fs-ntfs)) $(eval $(call KernelPackage,fs-ntfs))

View File

@ -1083,6 +1083,26 @@ endef
$(eval $(call KernelPackage,bnx2x)) $(eval $(call KernelPackage,bnx2x))
define KernelPackage/bnxt-en
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=BCM 574xx/575xx 10/25/50-Gigabit ethernet adapter driver
DEPENDS:=@PCI_SUPPORT +kmod-lib-crc32c +kmod-mdio +kmod-ptp +kmod-lib-zlib-inflate +kmod-hwmon-core
FILES:=$(LINUX_DIR)/drivers/net/ethernet/broadcom/bnxt/bnxt_en.ko
KCONFIG:= \
CONFIG_BNXT \
CONFIG_BNXT_SRIOV=y \
CONFIG_BNXT_FLOWER_OFFLOAD=y \
CONFIG_BNXT_DCB=n \
CONFIG_BNXT_HWMON=y
AUTOLOAD:=$(call AutoProbe,bnxt_en)
endef
define KernelPackage/bnxt-en/description
Broadcom 573xx/574xx/575xx 10/25/40/50-Gigabit ethernet adapter Driver
endef
$(eval $(call KernelPackage,bnxt-en))
define KernelPackage/be2net define KernelPackage/be2net
SUBMENU:=$(NETWORK_DEVICES_MENU) SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Broadcom Emulex OneConnect 10Gbps NIC TITLE:=Broadcom Emulex OneConnect 10Gbps NIC

View File

@ -162,38 +162,6 @@ endef
$(eval $(call KernelPackage,misdn)) $(eval $(call KernelPackage,misdn))
define KernelPackage/isdn4linux
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=Old ISDN4Linux (deprecated)
DEPENDS:=+kmod-ppp
KCONFIG:= \
CONFIG_ISDN=y \
CONFIG_ISDN_I4L \
CONFIG_ISDN_PPP=y \
CONFIG_ISDN_PPP_VJ=y \
CONFIG_ISDN_MPP=y \
CONFIG_IPPP_FILTER=y \
CONFIG_ISDN_PPP_BSDCOMP \
CONFIG_ISDN_CAPI_MIDDLEWARE=y \
CONFIG_ISDN_CAPI_CAPIFS_BOOL=y \
CONFIG_ISDN_AUDIO=y \
CONFIG_ISDN_TTY_FAX=y \
CONFIG_ISDN_X25=y \
CONFIG_ISDN_DIVERSION
FILES:= \
$(LINUX_DIR)/drivers/isdn/divert/dss1_divert.ko \
$(LINUX_DIR)/drivers/isdn/i4l/isdn.ko \
$(LINUX_DIR)/drivers/isdn/i4l/isdn_bsdcomp.ko
AUTOLOAD:=$(call AutoLoad,40,isdn isdn_bsdcomp dss1_divert)
endef
define KernelPackage/isdn4linux/description
This driver allows you to use an ISDN adapter for networking
endef
$(eval $(call KernelPackage,isdn4linux))
define KernelPackage/ipip define KernelPackage/ipip
SUBMENU:=$(NETWORK_SUPPORT_MENU) SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=IP-in-IP encapsulation TITLE:=IP-in-IP encapsulation

View File

@ -665,22 +665,6 @@ endef
$(eval $(call KernelPackage,rtc-pcf2127)) $(eval $(call KernelPackage,rtc-pcf2127))
define KernelPackage/rtc-pt7c4338
SUBMENU:=$(OTHER_MENU)
TITLE:=Pericom PT7C4338 RTC support
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
DEPENDS:=+kmod-i2c-core
KCONFIG:=CONFIG_RTC_DRV_PT7C4338 \
CONFIG_RTC_CLASS=y
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
AUTOLOAD:=$(call AutoProbe,rtc-pt7c4338)
endef
define KernelPackage/rtc-pt7c4338/description
Kernel module for Pericom PT7C4338 i2c RTC chip
endef
$(eval $(call KernelPackage,rtc-pt7c4338))
define KernelPackage/rtc-rs5c372a define KernelPackage/rtc-rs5c372a
SUBMENU:=$(OTHER_MENU) SUBMENU:=$(OTHER_MENU)

View File

@ -160,23 +160,6 @@ endef
$(eval $(call KernelPackage,w1-slave-ds2433)) $(eval $(call KernelPackage,w1-slave-ds2433))
define KernelPackage/w1-slave-ds2760
TITLE:=Dallas 2760 battery monitor chip (HP iPAQ & others)
KCONFIG:= \
CONFIG_W1_SLAVE_DS2760 \
CONFIG_W1_SLAVE_DS2433_CRC=n
FILES:=$(W1_SLAVES_DIR)/w1_ds2760.ko
AUTOLOAD:=$(call AutoProbe,w1_ds2760)
$(call AddDepends/w1)
endef
define KernelPackage/w1-slave-ds2760/description
Kernel module for 1-wire DS2760 battery monitor chip support
endef
$(eval $(call KernelPackage,w1-slave-ds2760))
define KernelPackage/w1-slave-ds2413 define KernelPackage/w1-slave-ds2413
TITLE:=DS2413 2 Ch. Addressable Switch TITLE:=DS2413 2 Ch. Addressable Switch
KCONFIG:= \ KCONFIG:= \

View File

@ -10,10 +10,10 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=mac80211 PKG_NAME:=mac80211
PKG_VERSION:=5.15.74-1 PKG_VERSION:=5.15.81-1
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE_URL:=@KERNEL/linux/kernel/projects/backports/stable/v5.15.74/ PKG_SOURCE_URL:=@KERNEL/linux/kernel/projects/backports/stable/v5.15.81/
PKG_HASH:=98098d0cab24cc76a04db738dc746a0c8d38d180398805481224f141cca06423 PKG_HASH:=5227d3c35ccebacfaee6b8180b3a87b9910f3c94ee768ebc5c0fef3c86b6146d
PKG_SOURCE:=backports-$(PKG_VERSION).tar.xz PKG_SOURCE:=backports-$(PKG_VERSION).tar.xz
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/backports-$(PKG_VERSION) PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/backports-$(PKG_VERSION)

View File

@ -1,6 +1,6 @@
--- a/net/wireless/reg.c --- a/net/wireless/reg.c
+++ b/net/wireless/reg.c +++ b/net/wireless/reg.c
@@ -3309,6 +3309,8 @@ void regulatory_hint_country_ie(struct w @@ -3315,6 +3315,8 @@ void regulatory_hint_country_ie(struct w
enum environment_cap env = ENVIRON_ANY; enum environment_cap env = ENVIRON_ANY;
struct regulatory_request *request = NULL, *lr; struct regulatory_request *request = NULL, *lr;
@ -9,7 +9,7 @@
/* IE len must be evenly divisible by 2 */ /* IE len must be evenly divisible by 2 */
if (country_ie_len & 0x01) if (country_ie_len & 0x01)
return; return;
@@ -3560,6 +3562,7 @@ static bool is_wiphy_all_set_reg_flag(en @@ -3566,6 +3568,7 @@ static bool is_wiphy_all_set_reg_flag(en
void regulatory_hint_disconnect(void) void regulatory_hint_disconnect(void)
{ {

View File

@ -50,7 +50,7 @@ Link: https://lore.kernel.org/r/20220516032519.29831-5-ryazanov.s.a@gmail.com
--- a/drivers/net/wireless/ath/ath10k/mac.c --- a/drivers/net/wireless/ath/ath10k/mac.c
+++ b/drivers/net/wireless/ath/ath10k/mac.c +++ b/drivers/net/wireless/ath/ath10k/mac.c
@@ -3710,6 +3710,9 @@ ath10k_mac_tx_h_get_txmode(struct ath10k @@ -3717,6 +3717,9 @@ ath10k_mac_tx_h_get_txmode(struct ath10k
const struct ath10k_skb_cb *skb_cb = ATH10K_SKB_CB(skb); const struct ath10k_skb_cb *skb_cb = ATH10K_SKB_CB(skb);
__le16 fc = hdr->frame_control; __le16 fc = hdr->frame_control;
@ -60,7 +60,7 @@ Link: https://lore.kernel.org/r/20220516032519.29831-5-ryazanov.s.a@gmail.com
if (!vif || vif->type == NL80211_IFTYPE_MONITOR) if (!vif || vif->type == NL80211_IFTYPE_MONITOR)
return ATH10K_HW_TXRX_RAW; return ATH10K_HW_TXRX_RAW;
@@ -3870,6 +3873,12 @@ static void ath10k_mac_tx_h_fill_cb(stru @@ -3877,6 +3880,12 @@ static void ath10k_mac_tx_h_fill_cb(stru
bool noack = false; bool noack = false;
cb->flags = 0; cb->flags = 0;
@ -73,7 +73,7 @@ Link: https://lore.kernel.org/r/20220516032519.29831-5-ryazanov.s.a@gmail.com
if (!ath10k_tx_h_use_hwcrypto(vif, skb)) if (!ath10k_tx_h_use_hwcrypto(vif, skb))
cb->flags |= ATH10K_SKB_F_NO_HWCRYPT; cb->flags |= ATH10K_SKB_F_NO_HWCRYPT;
@@ -3908,6 +3917,7 @@ static void ath10k_mac_tx_h_fill_cb(stru @@ -3915,6 +3924,7 @@ static void ath10k_mac_tx_h_fill_cb(stru
cb->flags |= ATH10K_SKB_F_RAW_TX; cb->flags |= ATH10K_SKB_F_RAW_TX;
} }
@ -81,7 +81,7 @@ Link: https://lore.kernel.org/r/20220516032519.29831-5-ryazanov.s.a@gmail.com
cb->vif = vif; cb->vif = vif;
cb->txq = txq; cb->txq = txq;
cb->airtime_est = airtime; cb->airtime_est = airtime;
@@ -4031,7 +4041,11 @@ static int ath10k_mac_tx(struct ath10k * @@ -4038,7 +4048,11 @@ static int ath10k_mac_tx(struct ath10k *
ath10k_tx_h_seq_no(vif, skb); ath10k_tx_h_seq_no(vif, skb);
break; break;
case ATH10K_HW_TXRX_ETHERNET: case ATH10K_HW_TXRX_ETHERNET:
@ -94,7 +94,7 @@ Link: https://lore.kernel.org/r/20220516032519.29831-5-ryazanov.s.a@gmail.com
break; break;
case ATH10K_HW_TXRX_RAW: case ATH10K_HW_TXRX_RAW:
if (!test_bit(ATH10K_FLAG_RAW_MODE, &ar->dev_flags) && if (!test_bit(ATH10K_FLAG_RAW_MODE, &ar->dev_flags) &&
@@ -4643,12 +4657,10 @@ static void ath10k_mac_op_tx(struct ieee @@ -4650,12 +4664,10 @@ static void ath10k_mac_op_tx(struct ieee
struct ieee80211_vif *vif = info->control.vif; struct ieee80211_vif *vif = info->control.vif;
struct ieee80211_sta *sta = control->sta; struct ieee80211_sta *sta = control->sta;
struct ieee80211_txq *txq = NULL; struct ieee80211_txq *txq = NULL;
@ -107,7 +107,7 @@ Link: https://lore.kernel.org/r/20220516032519.29831-5-ryazanov.s.a@gmail.com
int ret; int ret;
u16 airtime; u16 airtime;
@@ -4662,8 +4674,14 @@ static void ath10k_mac_op_tx(struct ieee @@ -4669,8 +4681,14 @@ static void ath10k_mac_op_tx(struct ieee
is_mgmt = (txpath == ATH10K_MAC_TX_HTT_MGMT); is_mgmt = (txpath == ATH10K_MAC_TX_HTT_MGMT);
if (is_htt) { if (is_htt) {
@ -123,7 +123,7 @@ Link: https://lore.kernel.org/r/20220516032519.29831-5-ryazanov.s.a@gmail.com
ret = ath10k_htt_tx_inc_pending(htt); ret = ath10k_htt_tx_inc_pending(htt);
if (ret) { if (ret) {
@@ -5463,6 +5481,30 @@ static int ath10k_mac_set_txbf_conf(stru @@ -5470,6 +5488,30 @@ static int ath10k_mac_set_txbf_conf(stru
ar->wmi.vdev_param->txbf, value); ar->wmi.vdev_param->txbf, value);
} }
@ -154,7 +154,7 @@ Link: https://lore.kernel.org/r/20220516032519.29831-5-ryazanov.s.a@gmail.com
/* /*
* TODO: * TODO:
* Figure out how to handle WMI_VDEV_SUBTYPE_P2P_DEVICE, * Figure out how to handle WMI_VDEV_SUBTYPE_P2P_DEVICE,
@@ -5672,15 +5714,7 @@ static int ath10k_add_interface(struct i @@ -5679,15 +5721,7 @@ static int ath10k_add_interface(struct i
arvif->def_wep_key_idx = -1; arvif->def_wep_key_idx = -1;
@ -171,7 +171,7 @@ Link: https://lore.kernel.org/r/20220516032519.29831-5-ryazanov.s.a@gmail.com
/* Configuring number of spatial stream for monitor interface is causing /* Configuring number of spatial stream for monitor interface is causing
* target assert in qca9888 and qca6174. * target assert in qca9888 and qca6174.
@@ -9368,6 +9402,7 @@ static const struct ieee80211_ops ath10k @@ -9372,6 +9406,7 @@ static const struct ieee80211_ops ath10k
.stop = ath10k_stop, .stop = ath10k_stop,
.config = ath10k_config, .config = ath10k_config,
.add_interface = ath10k_add_interface, .add_interface = ath10k_add_interface,
@ -179,7 +179,7 @@ Link: https://lore.kernel.org/r/20220516032519.29831-5-ryazanov.s.a@gmail.com
.remove_interface = ath10k_remove_interface, .remove_interface = ath10k_remove_interface,
.configure_filter = ath10k_configure_filter, .configure_filter = ath10k_configure_filter,
.bss_info_changed = ath10k_bss_info_changed, .bss_info_changed = ath10k_bss_info_changed,
@@ -10037,6 +10072,12 @@ int ath10k_mac_register(struct ath10k *a @@ -10041,6 +10076,12 @@ int ath10k_mac_register(struct ath10k *a
if (test_bit(WMI_SERVICE_TDLS_UAPSD_BUFFER_STA, ar->wmi.svc_map)) if (test_bit(WMI_SERVICE_TDLS_UAPSD_BUFFER_STA, ar->wmi.svc_map))
ieee80211_hw_set(ar->hw, SUPPORTS_TDLS_BUFFER_STA); ieee80211_hw_set(ar->hw, SUPPORTS_TDLS_BUFFER_STA);

View File

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath10k/mac.c --- a/drivers/net/wireless/ath/ath10k/mac.c
+++ b/drivers/net/wireless/ath/ath10k/mac.c +++ b/drivers/net/wireless/ath/ath10k/mac.c
@@ -9894,6 +9894,21 @@ static int ath10k_mac_init_rd(struct ath @@ -9898,6 +9898,21 @@ static int ath10k_mac_init_rd(struct ath
return 0; return 0;
} }
@ -22,7 +22,7 @@
int ath10k_mac_register(struct ath10k *ar) int ath10k_mac_register(struct ath10k *ar)
{ {
static const u32 cipher_suites[] = { static const u32 cipher_suites[] = {
@@ -10252,6 +10267,12 @@ int ath10k_mac_register(struct ath10k *a @@ -10256,6 +10271,12 @@ int ath10k_mac_register(struct ath10k *a
ar->hw->weight_multiplier = ATH10K_AIRTIME_WEIGHT_MULTIPLIER; ar->hw->weight_multiplier = ATH10K_AIRTIME_WEIGHT_MULTIPLIER;

View File

@ -42,7 +42,7 @@ Signed-off-by: Mathias Kresin <dev@kresin.me>
if (ret) if (ret)
--- a/drivers/net/wireless/ath/ath10k/mac.c --- a/drivers/net/wireless/ath/ath10k/mac.c
+++ b/drivers/net/wireless/ath/ath10k/mac.c +++ b/drivers/net/wireless/ath/ath10k/mac.c
@@ -10269,7 +10269,7 @@ int ath10k_mac_register(struct ath10k *a @@ -10273,7 +10273,7 @@ int ath10k_mac_register(struct ath10k *a
ar->hw->weight_multiplier = ATH10K_AIRTIME_WEIGHT_MULTIPLIER; ar->hw->weight_multiplier = ATH10K_AIRTIME_WEIGHT_MULTIPLIER;
#ifdef CPTCFG_MAC80211_LEDS #ifdef CPTCFG_MAC80211_LEDS

View File

@ -28,7 +28,7 @@ Forwarded: no
--- a/drivers/net/wireless/ath/ath10k/mac.c --- a/drivers/net/wireless/ath/ath10k/mac.c
+++ b/drivers/net/wireless/ath/ath10k/mac.c +++ b/drivers/net/wireless/ath/ath10k/mac.c
@@ -1021,6 +1021,40 @@ static inline int ath10k_vdev_setup_sync @@ -1028,6 +1028,40 @@ static inline int ath10k_vdev_setup_sync
return ar->last_wmi_vdev_start_status; return ar->last_wmi_vdev_start_status;
} }
@ -69,7 +69,7 @@ Forwarded: no
static int ath10k_monitor_vdev_start(struct ath10k *ar, int vdev_id) static int ath10k_monitor_vdev_start(struct ath10k *ar, int vdev_id)
{ {
struct cfg80211_chan_def *chandef = NULL; struct cfg80211_chan_def *chandef = NULL;
@@ -1053,7 +1087,8 @@ static int ath10k_monitor_vdev_start(str @@ -1060,7 +1094,8 @@ static int ath10k_monitor_vdev_start(str
arg.channel.min_power = 0; arg.channel.min_power = 0;
arg.channel.max_power = channel->max_power * 2; arg.channel.max_power = channel->max_power * 2;
arg.channel.max_reg_power = channel->max_reg_power * 2; arg.channel.max_reg_power = channel->max_reg_power * 2;
@ -79,7 +79,7 @@ Forwarded: no
reinit_completion(&ar->vdev_setup_done); reinit_completion(&ar->vdev_setup_done);
reinit_completion(&ar->vdev_delete_done); reinit_completion(&ar->vdev_delete_done);
@@ -1499,7 +1534,8 @@ static int ath10k_vdev_start_restart(str @@ -1506,7 +1541,8 @@ static int ath10k_vdev_start_restart(str
arg.channel.min_power = 0; arg.channel.min_power = 0;
arg.channel.max_power = chandef->chan->max_power * 2; arg.channel.max_power = chandef->chan->max_power * 2;
arg.channel.max_reg_power = chandef->chan->max_reg_power * 2; arg.channel.max_reg_power = chandef->chan->max_reg_power * 2;
@ -89,7 +89,7 @@ Forwarded: no
if (arvif->vdev_type == WMI_VDEV_TYPE_AP) { if (arvif->vdev_type == WMI_VDEV_TYPE_AP) {
arg.ssid = arvif->u.ap.ssid; arg.ssid = arvif->u.ap.ssid;
@@ -3427,7 +3463,8 @@ static int ath10k_update_channel_list(st @@ -3434,7 +3470,8 @@ static int ath10k_update_channel_list(st
ch->min_power = 0; ch->min_power = 0;
ch->max_power = channel->max_power * 2; ch->max_power = channel->max_power * 2;
ch->max_reg_power = channel->max_reg_power * 2; ch->max_reg_power = channel->max_reg_power * 2;

View File

@ -72,7 +72,7 @@ Link: https://lore.kernel.org/r/20220506044246.67146-1-pavel@loebl.cz
#include <net/cfg80211.h> #include <net/cfg80211.h>
#include <net/rtnetlink.h> #include <net/rtnetlink.h>
#include <net/addrconf.h> #include <net/addrconf.h>
@@ -1226,7 +1227,8 @@ static int brcmf_bus_started(struct brcm @@ -1227,7 +1228,8 @@ static int brcmf_bus_started(struct brcm
brcmf_dbg(TRACE, "\n"); brcmf_dbg(TRACE, "\n");
/* add primary networking interface */ /* add primary networking interface */

View File

@ -100,7 +100,7 @@
.add_key = brcmf_cfg80211_add_key, .add_key = brcmf_cfg80211_add_key,
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c
@@ -1363,6 +1363,8 @@ int brcmf_attach(struct device *dev) @@ -1364,6 +1364,8 @@ int brcmf_attach(struct device *dev)
/* Link to bus module */ /* Link to bus module */
drvr->hdrlen = 0; drvr->hdrlen = 0;
@ -109,7 +109,7 @@
/* Attach and link in the protocol */ /* Attach and link in the protocol */
ret = brcmf_proto_attach(drvr); ret = brcmf_proto_attach(drvr);
@@ -1445,6 +1447,12 @@ void brcmf_detach(struct device *dev) @@ -1446,6 +1448,12 @@ void brcmf_detach(struct device *dev)
if (drvr == NULL) if (drvr == NULL)
return; return;

View File

@ -41,7 +41,7 @@ Acked-by: Stanislaw Gruszka <stf_xl@wp.pl>
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c --- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c +++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
@@ -9435,6 +9435,8 @@ static int rt2800_init_eeprom(struct rt2 @@ -9461,6 +9461,8 @@ static int rt2800_init_eeprom(struct rt2
rf = RF3853; rf = RF3853;
else if (rt2x00_rt(rt2x00dev, RT5350)) else if (rt2x00_rt(rt2x00dev, RT5350))
rf = RF5350; rf = RF5350;

View File

@ -50,8 +50,8 @@ Acked-by: Stanislaw Gruszka <stf_xl@wp.pl>
* EEPROM LNA * EEPROM LNA
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c --- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c +++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
@@ -4368,6 +4368,43 @@ static void rt2800_config_channel(struct @@ -4372,6 +4372,43 @@ static void rt2800_config_channel(struct
rt2800_iq_calibrate(rt2x00dev, rf->channel); rt2800_iq_calibrate(rt2x00dev, rf->channel);
} }
+ if (rt2x00_rt(rt2x00dev, RT6352)) { + if (rt2x00_rt(rt2x00dev, RT6352)) {
@ -94,7 +94,7 @@ Acked-by: Stanislaw Gruszka <stf_xl@wp.pl>
bbp = rt2800_bbp_read(rt2x00dev, 4); bbp = rt2800_bbp_read(rt2x00dev, 4);
rt2x00_set_field8(&bbp, BBP4_BANDWIDTH, 2 * conf_is_ht40(conf)); rt2x00_set_field8(&bbp, BBP4_BANDWIDTH, 2 * conf_is_ht40(conf));
rt2800_bbp_write(rt2x00dev, 4, bbp); rt2800_bbp_write(rt2x00dev, 4, bbp);
@@ -9566,7 +9603,8 @@ static int rt2800_init_eeprom(struct rt2 @@ -9592,7 +9629,8 @@ static int rt2800_init_eeprom(struct rt2
*/ */
eeprom = rt2800_eeprom_read(rt2x00dev, EEPROM_NIC_CONF1); eeprom = rt2800_eeprom_read(rt2x00dev, EEPROM_NIC_CONF1);
@ -104,7 +104,7 @@ Acked-by: Stanislaw Gruszka <stf_xl@wp.pl>
if (rt2x00_get_field16(eeprom, if (rt2x00_get_field16(eeprom,
EEPROM_NIC_CONF1_EXTERNAL_TX0_PA_3352)) EEPROM_NIC_CONF1_EXTERNAL_TX0_PA_3352))
__set_bit(CAPABILITY_EXTERNAL_PA_TX0, __set_bit(CAPABILITY_EXTERNAL_PA_TX0,
@@ -9577,6 +9615,18 @@ static int rt2800_init_eeprom(struct rt2 @@ -9603,6 +9641,18 @@ static int rt2800_init_eeprom(struct rt2
&rt2x00dev->cap_flags); &rt2x00dev->cap_flags);
} }

View File

@ -120,7 +120,7 @@ Acked-by: Stanislaw Gruszka <stf_xl@wp.pl>
if (chan->center_freq > 2457) { if (chan->center_freq > 2457) {
bbp = rt2800_bbp_read(rt2x00dev, 30); bbp = rt2800_bbp_read(rt2x00dev, 30);
@@ -6249,46 +6282,6 @@ static int rt2800_init_registers(struct @@ -6275,46 +6308,6 @@ static int rt2800_init_registers(struct
return 0; return 0;
} }
@ -167,7 +167,7 @@ Acked-by: Stanislaw Gruszka <stf_xl@wp.pl>
static void rt2800_bbp4_mac_if_ctrl(struct rt2x00_dev *rt2x00dev) static void rt2800_bbp4_mac_if_ctrl(struct rt2x00_dev *rt2x00dev)
{ {
@@ -9110,7 +9103,7 @@ int rt2800_enable_radio(struct rt2x00_de @@ -9136,7 +9129,7 @@ int rt2800_enable_radio(struct rt2x00_de
/* /*
* Wait BBP/RF to wake up. * Wait BBP/RF to wake up.
*/ */

View File

@ -42,7 +42,7 @@ v2: use ++i instead of i = i + 1 in loops
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c --- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c +++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
@@ -8428,6 +8428,53 @@ static void rt2800_init_rfcsr_5592(struc @@ -8454,6 +8454,53 @@ static void rt2800_init_rfcsr_5592(struc
rt2800_led_open_drain_enable(rt2x00dev); rt2800_led_open_drain_enable(rt2x00dev);
} }
@ -96,7 +96,7 @@ v2: use ++i instead of i = i + 1 in loops
static void rt2800_bbp_core_soft_reset(struct rt2x00_dev *rt2x00dev, static void rt2800_bbp_core_soft_reset(struct rt2x00_dev *rt2x00dev,
bool set_bw, bool is_ht40) bool set_bw, bool is_ht40)
{ {
@@ -9035,6 +9082,7 @@ static void rt2800_init_rfcsr_6352(struc @@ -9061,6 +9108,7 @@ static void rt2800_init_rfcsr_6352(struc
rt2800_rfcsr_write_dccal(rt2x00dev, 5, 0x00); rt2800_rfcsr_write_dccal(rt2x00dev, 5, 0x00);
rt2800_rfcsr_write_dccal(rt2x00dev, 17, 0x7C); rt2800_rfcsr_write_dccal(rt2x00dev, 17, 0x7C);

View File

@ -54,7 +54,7 @@ v2: use rt2800_wait_bbp_rf_ready()
* PWR_PIN_CFG: * PWR_PIN_CFG:
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c --- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c +++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
@@ -8475,6 +8475,138 @@ static void rt2800_rf_self_txdc_cal(stru @@ -8501,6 +8501,138 @@ static void rt2800_rf_self_txdc_cal(stru
rt2800_register_write(rt2x00dev, RF_BYPASS2, mac052c); rt2800_register_write(rt2x00dev, RF_BYPASS2, mac052c);
} }
@ -193,7 +193,7 @@ v2: use rt2800_wait_bbp_rf_ready()
static void rt2800_bbp_core_soft_reset(struct rt2x00_dev *rt2x00dev, static void rt2800_bbp_core_soft_reset(struct rt2x00_dev *rt2x00dev,
bool set_bw, bool is_ht40) bool set_bw, bool is_ht40)
{ {
@@ -9082,6 +9214,7 @@ static void rt2800_init_rfcsr_6352(struc @@ -9108,6 +9240,7 @@ static void rt2800_init_rfcsr_6352(struc
rt2800_rfcsr_write_dccal(rt2x00dev, 5, 0x00); rt2800_rfcsr_write_dccal(rt2x00dev, 5, 0x00);
rt2800_rfcsr_write_dccal(rt2x00dev, 17, 0x7C); rt2800_rfcsr_write_dccal(rt2x00dev, 17, 0x7C);

View File

@ -41,7 +41,7 @@ Acked-by: Stanislaw Gruszka <stf_xl@wp.pl>
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c --- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c +++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
@@ -8607,6 +8607,65 @@ static void rt2800_r_calibration(struct @@ -8633,6 +8633,65 @@ static void rt2800_r_calibration(struct
rt2800_register_write(rt2x00dev, PWR_PIN_CFG, MAC_PWR_PIN_CFG); rt2800_register_write(rt2x00dev, PWR_PIN_CFG, MAC_PWR_PIN_CFG);
} }
@ -107,7 +107,7 @@ Acked-by: Stanislaw Gruszka <stf_xl@wp.pl>
static void rt2800_bbp_core_soft_reset(struct rt2x00_dev *rt2x00dev, static void rt2800_bbp_core_soft_reset(struct rt2x00_dev *rt2x00dev,
bool set_bw, bool is_ht40) bool set_bw, bool is_ht40)
{ {
@@ -9216,6 +9275,7 @@ static void rt2800_init_rfcsr_6352(struc @@ -9242,6 +9301,7 @@ static void rt2800_init_rfcsr_6352(struc
rt2800_r_calibration(rt2x00dev); rt2800_r_calibration(rt2x00dev);
rt2800_rf_self_txdc_cal(rt2x00dev); rt2800_rf_self_txdc_cal(rt2x00dev);

View File

@ -43,7 +43,7 @@ v2: use rt2800_wait_bbp_rf_ready(), fix indentation
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c --- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c +++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
@@ -8666,6 +8666,380 @@ static void rt2800_rxdcoc_calibration(st @@ -8692,6 +8692,380 @@ static void rt2800_rxdcoc_calibration(st
rt2800_rfcsr_write_bank(rt2x00dev, 0, 2, saverfb0r2); rt2800_rfcsr_write_bank(rt2x00dev, 0, 2, saverfb0r2);
} }
@ -424,7 +424,7 @@ v2: use rt2800_wait_bbp_rf_ready(), fix indentation
static void rt2800_bbp_core_soft_reset(struct rt2x00_dev *rt2x00dev, static void rt2800_bbp_core_soft_reset(struct rt2x00_dev *rt2x00dev,
bool set_bw, bool is_ht40) bool set_bw, bool is_ht40)
{ {
@@ -9278,6 +9652,7 @@ static void rt2800_init_rfcsr_6352(struc @@ -9304,6 +9678,7 @@ static void rt2800_init_rfcsr_6352(struc
rt2800_rxdcoc_calibration(rt2x00dev); rt2800_rxdcoc_calibration(rt2x00dev);
rt2800_bw_filter_calibration(rt2x00dev, true); rt2800_bw_filter_calibration(rt2x00dev, true);
rt2800_bw_filter_calibration(rt2x00dev, false); rt2800_bw_filter_calibration(rt2x00dev, false);

View File

@ -1,52 +0,0 @@
From patchwork Sat Sep 17 20:28:29 2022
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
X-Patchwork-Submitter: Daniel Golle <daniel@makrotopia.org>
X-Patchwork-Id: 12979250
X-Patchwork-Delegate: kvalo@adurom.com
Return-Path: <linux-wireless-owner@kernel.org>
Date: Sat, 17 Sep 2022 21:28:29 +0100
From: Daniel Golle <daniel@makrotopia.org>
To: linux-wireless@vger.kernel.org, Stanislaw Gruszka <stf_xl@wp.pl>,
Helmut Schaa <helmut.schaa@googlemail.com>
Cc: Kalle Valo <kvalo@kernel.org>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>,
Paolo Abeni <pabeni@redhat.com>,
Johannes Berg <johannes.berg@intel.com>
Subject: [PATCH v3 09/16] rt2x00: don't run Rt5592 IQ calibration on MT7620
Message-ID:
<31a1c34ddbd296b82f38c18c9ae7339059215fdc.1663445157.git.daniel@makrotopia.org>
References: <cover.1663445157.git.daniel@makrotopia.org>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <cover.1663445157.git.daniel@makrotopia.org>
Precedence: bulk
List-ID: <linux-wireless.vger.kernel.org>
X-Mailing-List: linux-wireless@vger.kernel.org
The function rt2800_iq_calibrate is intended for Rt5592 only.
Don't call it for MT7620 which has it's own calibration functions.
Reported-by: Serge Vasilugin <vasilugin@yandex.ru>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
---
v2: test for RT5592 instead of !RT6352
drivers/net/wireless/ralink/rt2x00/rt2800lib.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
@@ -4398,7 +4398,8 @@ static void rt2800_config_channel(struct
reg = (rf->channel <= 14 ? 0x1c : 0x24) + 2*rt2x00dev->lna_gain;
rt2800_bbp_write_with_rx_chain(rt2x00dev, 66, reg);
- rt2800_iq_calibrate(rt2x00dev, rf->channel);
+ if (rt2x00_rt(rt2x00dev, RT5592))
+ rt2800_iq_calibrate(rt2x00dev, rf->channel);
}
if (rt2x00_rt(rt2x00dev, RT6352)) {

View File

@ -45,7 +45,7 @@ Reported-by: kernel test robot <lkp@intel.com>
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c --- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c +++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
@@ -9041,6 +9041,907 @@ restore_value: @@ -9066,6 +9066,907 @@ restore_value:
rt2800_register_write(rt2x00dev, MAC_SYS_CTRL, savemacsysctrl); rt2800_register_write(rt2x00dev, MAC_SYS_CTRL, savemacsysctrl);
} }
@ -953,7 +953,7 @@ Reported-by: kernel test robot <lkp@intel.com>
static void rt2800_bbp_core_soft_reset(struct rt2x00_dev *rt2x00dev, static void rt2800_bbp_core_soft_reset(struct rt2x00_dev *rt2x00dev,
bool set_bw, bool is_ht40) bool set_bw, bool is_ht40)
{ {
@@ -9653,6 +10554,7 @@ static void rt2800_init_rfcsr_6352(struc @@ -9678,6 +10579,7 @@ static void rt2800_init_rfcsr_6352(struc
rt2800_rxdcoc_calibration(rt2x00dev); rt2800_rxdcoc_calibration(rt2x00dev);
rt2800_bw_filter_calibration(rt2x00dev, true); rt2800_bw_filter_calibration(rt2x00dev, true);
rt2800_bw_filter_calibration(rt2x00dev, false); rt2800_bw_filter_calibration(rt2x00dev, false);

View File

@ -65,7 +65,7 @@ Acked-by: Stanislaw Gruszka <stf_xl@wp.pl>
static u8 rt2800_rfcsr_read(struct rt2x00_dev *rt2x00dev, static u8 rt2800_rfcsr_read(struct rt2x00_dev *rt2x00dev,
const unsigned int word) const unsigned int word)
{ {
@@ -6947,26 +6967,6 @@ static void rt2800_init_bbp_5592(struct @@ -6972,26 +6992,6 @@ static void rt2800_init_bbp_5592(struct
rt2800_bbp_write(rt2x00dev, 103, 0xc0); rt2800_bbp_write(rt2x00dev, 103, 0xc0);
} }

View File

@ -1,52 +0,0 @@
From patchwork Sat Sep 17 20:29:26 2022
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
X-Patchwork-Submitter: Daniel Golle <daniel@makrotopia.org>
X-Patchwork-Id: 12979254
X-Patchwork-Delegate: kvalo@adurom.com
Return-Path: <linux-wireless-owner@kernel.org>
Date: Sat, 17 Sep 2022 21:29:26 +0100
From: Daniel Golle <daniel@makrotopia.org>
To: linux-wireless@vger.kernel.org, Stanislaw Gruszka <stf_xl@wp.pl>,
Helmut Schaa <helmut.schaa@googlemail.com>
Cc: Kalle Valo <kvalo@kernel.org>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>,
Paolo Abeni <pabeni@redhat.com>,
Johannes Berg <johannes.berg@intel.com>
Subject: [PATCH v3 13/16] rt2x00: set correct TX_SW_CFG1 MAC register for
MT7620
Message-ID:
<4be38975ce600a34249e12d09a3cb758c6e71071.1663445157.git.daniel@makrotopia.org>
References: <cover.1663445157.git.daniel@makrotopia.org>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <cover.1663445157.git.daniel@makrotopia.org>
Precedence: bulk
List-ID: <linux-wireless.vger.kernel.org>
X-Mailing-List: linux-wireless@vger.kernel.org
Set correct TX_SW_CFG1 MAC register as it is done also in v3 of the
vendor driver[1].
[1]: https://gitlab.com/dm38/padavan-ng/-/blob/master/trunk/proprietary/rt_wifi/rtpci/3.0.X.X/mt76x2/chips/rt6352.c#L531
Reported-by: Serge Vasilugin <vasilugin@yandex.ru>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Acked-by: Stanislaw Gruszka <stf_xl@wp.pl>
---
drivers/net/wireless/ralink/rt2x00/rt2800lib.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
@@ -5966,7 +5966,7 @@ static int rt2800_init_registers(struct
rt2800_register_write(rt2x00dev, TX_SW_CFG0, 0x00000404);
} else if (rt2x00_rt(rt2x00dev, RT6352)) {
rt2800_register_write(rt2x00dev, TX_SW_CFG0, 0x00000401);
- rt2800_register_write(rt2x00dev, TX_SW_CFG1, 0x000C0000);
+ rt2800_register_write(rt2x00dev, TX_SW_CFG1, 0x000C0001);
rt2800_register_write(rt2x00dev, TX_SW_CFG2, 0x00000000);
rt2800_register_write(rt2x00dev, TX_ALC_VGA3, 0x00000000);
rt2800_register_write(rt2x00dev, TX0_BB_GAIN_ATTEN, 0x0);

View File

@ -1,50 +0,0 @@
From patchwork Sat Sep 17 20:29:40 2022
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
X-Patchwork-Submitter: Daniel Golle <daniel@makrotopia.org>
X-Patchwork-Id: 12979255
X-Patchwork-Delegate: kvalo@adurom.com
Return-Path: <linux-wireless-owner@kernel.org>
Date: Sat, 17 Sep 2022 21:29:40 +0100
From: Daniel Golle <daniel@makrotopia.org>
To: linux-wireless@vger.kernel.org, Stanislaw Gruszka <stf_xl@wp.pl>,
Helmut Schaa <helmut.schaa@googlemail.com>
Cc: Kalle Valo <kvalo@kernel.org>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>,
Paolo Abeni <pabeni@redhat.com>,
Johannes Berg <johannes.berg@intel.com>
Subject: [PATCH v3 14/16] rt2x00: set VGC gain for both chains of MT7620
Message-ID:
<29e161397e5c9d9399da0fe87d44458aa2b90a78.1663445157.git.daniel@makrotopia.org>
References: <cover.1663445157.git.daniel@makrotopia.org>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <cover.1663445157.git.daniel@makrotopia.org>
Precedence: bulk
List-ID: <linux-wireless.vger.kernel.org>
X-Mailing-List: linux-wireless@vger.kernel.org
Set bbp66 for all chains of the MT7620.
Reported-by: Serge Vasilugin <vasilugin@yandex.ru>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Acked-by: Stanislaw Gruszka <stf_xl@wp.pl>
---
drivers/net/wireless/ralink/rt2x00/rt2800lib.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
@@ -5743,7 +5743,8 @@ static inline void rt2800_set_vgc(struct
if (qual->vgc_level != vgc_level) {
if (rt2x00_rt(rt2x00dev, RT3572) ||
rt2x00_rt(rt2x00dev, RT3593) ||
- rt2x00_rt(rt2x00dev, RT3883)) {
+ rt2x00_rt(rt2x00dev, RT3883) ||
+ rt2x00_rt(rt2x00dev, RT6352)) {
rt2800_bbp_write_with_rx_chain(rt2x00dev, 66,
vgc_level);
} else if (rt2x00_rt(rt2x00dev, RT5592)) {

View File

@ -1,70 +0,0 @@
From patchwork Sat Sep 17 20:29:55 2022
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
X-Patchwork-Submitter: Daniel Golle <daniel@makrotopia.org>
X-Patchwork-Id: 12979256
X-Patchwork-Delegate: kvalo@adurom.com
Return-Path: <linux-wireless-owner@kernel.org>
Date: Sat, 17 Sep 2022 21:29:55 +0100
From: Daniel Golle <daniel@makrotopia.org>
To: linux-wireless@vger.kernel.org, Stanislaw Gruszka <stf_xl@wp.pl>,
Helmut Schaa <helmut.schaa@googlemail.com>
Cc: Kalle Valo <kvalo@kernel.org>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>,
Paolo Abeni <pabeni@redhat.com>,
Johannes Berg <johannes.berg@intel.com>
Subject: [PATCH v3 15/16] rt2x00: set SoC wmac clock register
Message-ID:
<3e275d259f476f597dab91a9c395015ef3fe3284.1663445157.git.daniel@makrotopia.org>
References: <cover.1663445157.git.daniel@makrotopia.org>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <cover.1663445157.git.daniel@makrotopia.org>
Precedence: bulk
List-ID: <linux-wireless.vger.kernel.org>
X-Mailing-List: linux-wireless@vger.kernel.org
Instead of using the default value 33 (pci), set US_CYC_CNT init based
on Programming guide:
If available, set chipset bus clock with fallback to cpu clock/3.
Reported-by: Serge Vasilugin <vasilugin@yandex.ru>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Acked-by: Stanislaw Gruszka <stf_xl@wp.pl>
---
.../net/wireless/ralink/rt2x00/rt2800lib.c | 21 +++++++++++++++++++
1 file changed, 21 insertions(+)
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
@@ -6229,6 +6229,27 @@ static int rt2800_init_registers(struct
reg = rt2800_register_read(rt2x00dev, US_CYC_CNT);
rt2x00_set_field32(&reg, US_CYC_CNT_CLOCK_CYCLE, 125);
rt2800_register_write(rt2x00dev, US_CYC_CNT, reg);
+ } else if (rt2x00_is_soc(rt2x00dev)) {
+ struct clk *clk = clk_get_sys("bus", NULL);
+ int rate;
+
+ if (IS_ERR(clk)) {
+ clk = clk_get_sys("cpu", NULL);
+
+ if (IS_ERR(clk)) {
+ rate = 125;
+ } else {
+ rate = clk_get_rate(clk) / 3000000;
+ clk_put(clk);
+ }
+ } else {
+ rate = clk_get_rate(clk) / 1000000;
+ clk_put(clk);
+ }
+
+ reg = rt2800_register_read(rt2x00dev, US_CYC_CNT);
+ rt2x00_set_field32(&reg, US_CYC_CNT_CLOCK_CYCLE, rate);
+ rt2800_register_write(rt2x00dev, US_CYC_CNT, reg);
}
reg = rt2800_register_read(rt2x00dev, HT_FBK_CFG0);

View File

@ -1,79 +0,0 @@
From patchwork Sat Sep 17 20:30:09 2022
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
X-Patchwork-Submitter: Daniel Golle <daniel@makrotopia.org>
X-Patchwork-Id: 12979257
X-Patchwork-Delegate: kvalo@adurom.com
Return-Path: <linux-wireless-owner@kernel.org>
X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on
aws-us-west-2-korg-lkml-1.web.codeaurora.org
Received: from vger.kernel.org (vger.kernel.org [23.128.96.18])
by smtp.lore.kernel.org (Postfix) with ESMTP id E9118ECAAA1
for <linux-wireless@archiver.kernel.org>;
Sat, 17 Sep 2022 20:30:22 +0000 (UTC)
Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
id S229639AbiIQUaV (ORCPT
<rfc822;linux-wireless@archiver.kernel.org>);
Sat, 17 Sep 2022 16:30:21 -0400
Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53912 "EHLO
lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
with ESMTP id S229628AbiIQUaT (ORCPT
<rfc822;linux-wireless@vger.kernel.org>);
Sat, 17 Sep 2022 16:30:19 -0400
Received: from fudo.makrotopia.org (fudo.makrotopia.org
[IPv6:2a07:2ec0:3002::71])
by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1AEA822B27
for <linux-wireless@vger.kernel.org>;
Sat, 17 Sep 2022 13:30:16 -0700 (PDT)
Received: from local
by fudo.makrotopia.org with esmtpsa
(TLS1.3:TLS_AES_256_GCM_SHA384:256)
(Exim 4.96)
(envelope-from <daniel@makrotopia.org>)
id 1oZeS7-0003ra-0k;
Sat, 17 Sep 2022 22:30:15 +0200
Date: Sat, 17 Sep 2022 21:30:09 +0100
From: Daniel Golle <daniel@makrotopia.org>
To: linux-wireless@vger.kernel.org, Stanislaw Gruszka <stf_xl@wp.pl>,
Helmut Schaa <helmut.schaa@googlemail.com>
Cc: Kalle Valo <kvalo@kernel.org>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>,
Paolo Abeni <pabeni@redhat.com>,
Johannes Berg <johannes.berg@intel.com>
Subject: [PATCH v3 16/16] rt2x00: correctly set BBP register 86 for MT7620
Message-ID:
<257267247ee4fa7ebc6a5d0c4948b3f8119c0d77.1663445157.git.daniel@makrotopia.org>
References: <cover.1663445157.git.daniel@makrotopia.org>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <cover.1663445157.git.daniel@makrotopia.org>
Precedence: bulk
List-ID: <linux-wireless.vger.kernel.org>
X-Mailing-List: linux-wireless@vger.kernel.org
Instead of 0 set the correct value for BBP register 86 for MT7620.
Reported-by: Serge Vasilugin <vasilugin@yandex.ru>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Acked-by: Stanislaw Gruszka <stf_xl@wp.pl>
---
drivers/net/wireless/ralink/rt2x00/rt2800lib.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
@@ -4225,7 +4225,10 @@ static void rt2800_config_channel(struct
rt2800_bbp_write(rt2x00dev, 62, 0x37 - rt2x00dev->lna_gain);
rt2800_bbp_write(rt2x00dev, 63, 0x37 - rt2x00dev->lna_gain);
rt2800_bbp_write(rt2x00dev, 64, 0x37 - rt2x00dev->lna_gain);
- rt2800_bbp_write(rt2x00dev, 86, 0);
+ if (rt2x00_rt(rt2x00dev, RT6352))
+ rt2800_bbp_write(rt2x00dev, 86, 0x38);
+ else
+ rt2800_bbp_write(rt2x00dev, 86, 0);
}
if (rf->channel <= 14) {

View File

@ -52,7 +52,7 @@
fail_ifa: fail_ifa:
#endif #endif
wiphy_unregister(local->hw.wiphy); wiphy_unregister(local->hw.wiphy);
@@ -1371,10 +1371,10 @@ void ieee80211_unregister_hw(struct ieee @@ -1373,10 +1373,10 @@ void ieee80211_unregister_hw(struct ieee
tasklet_kill(&local->tx_pending_tasklet); tasklet_kill(&local->tx_pending_tasklet);
tasklet_kill(&local->tasklet); tasklet_kill(&local->tasklet);

View File

@ -11,7 +11,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/drivers/net/wireless/mac80211_hwsim.c --- a/drivers/net/wireless/mac80211_hwsim.c
+++ b/drivers/net/wireless/mac80211_hwsim.c +++ b/drivers/net/wireless/mac80211_hwsim.c
@@ -3003,15 +3003,19 @@ static void mac80211_hwsim_he_capab(stru @@ -3008,15 +3008,19 @@ static void mac80211_hwsim_he_capab(stru
{ {
u16 n_iftype_data; u16 n_iftype_data;
@ -34,7 +34,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
return; return;
} }
@@ -3301,6 +3305,12 @@ static int mac80211_hwsim_new_radio(stru @@ -3306,6 +3310,12 @@ static int mac80211_hwsim_new_radio(stru
sband->vht_cap.vht_mcs.tx_mcs_map = sband->vht_cap.vht_mcs.tx_mcs_map =
sband->vht_cap.vht_mcs.rx_mcs_map; sband->vht_cap.vht_mcs.rx_mcs_map;
break; break;
@ -47,7 +47,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
case NL80211_BAND_S1GHZ: case NL80211_BAND_S1GHZ:
memcpy(&sband->s1g_cap, &hwsim_s1g_cap, memcpy(&sband->s1g_cap, &hwsim_s1g_cap,
sizeof(sband->s1g_cap)); sizeof(sband->s1g_cap));
@@ -3311,6 +3321,13 @@ static int mac80211_hwsim_new_radio(stru @@ -3316,6 +3326,13 @@ static int mac80211_hwsim_new_radio(stru
continue; continue;
} }
@ -61,7 +61,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
sband->ht_cap.ht_supported = true; sband->ht_cap.ht_supported = true;
sband->ht_cap.cap = IEEE80211_HT_CAP_SUP_WIDTH_20_40 | sband->ht_cap.cap = IEEE80211_HT_CAP_SUP_WIDTH_20_40 |
IEEE80211_HT_CAP_GRN_FLD | IEEE80211_HT_CAP_GRN_FLD |
@@ -3324,10 +3341,6 @@ static int mac80211_hwsim_new_radio(stru @@ -3329,10 +3346,6 @@ static int mac80211_hwsim_new_radio(stru
sband->ht_cap.mcs.rx_mask[0] = 0xff; sband->ht_cap.mcs.rx_mask[0] = 0xff;
sband->ht_cap.mcs.rx_mask[1] = 0xff; sband->ht_cap.mcs.rx_mask[1] = 0xff;
sband->ht_cap.mcs.tx_params = IEEE80211_HT_MCS_TX_DEFINED; sband->ht_cap.mcs.tx_params = IEEE80211_HT_MCS_TX_DEFINED;

View File

@ -40,7 +40,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
struct ieee80211_vif *vif, struct ieee80211_vif *vif,
--- a/net/mac80211/cfg.c --- a/net/mac80211/cfg.c
+++ b/net/mac80211/cfg.c +++ b/net/mac80211/cfg.c
@@ -4344,6 +4344,18 @@ out: @@ -4341,6 +4341,18 @@ out:
return err; return err;
} }
@ -59,7 +59,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
const struct cfg80211_ops mac80211_config_ops = { const struct cfg80211_ops mac80211_config_ops = {
.add_virtual_intf = ieee80211_add_iface, .add_virtual_intf = ieee80211_add_iface,
.del_virtual_intf = ieee80211_del_iface, .del_virtual_intf = ieee80211_del_iface,
@@ -4448,4 +4460,5 @@ const struct cfg80211_ops mac80211_confi @@ -4445,4 +4457,5 @@ const struct cfg80211_ops mac80211_confi
.reset_tid_config = ieee80211_reset_tid_config, .reset_tid_config = ieee80211_reset_tid_config,
.set_sar_specs = ieee80211_set_sar_specs, .set_sar_specs = ieee80211_set_sar_specs,
.color_change = ieee80211_color_change, .color_change = ieee80211_color_change,

View File

@ -156,7 +156,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
NUM_NL80211_EXT_FEATURES, NUM_NL80211_EXT_FEATURES,
--- a/net/mac80211/cfg.c --- a/net/mac80211/cfg.c
+++ b/net/mac80211/cfg.c +++ b/net/mac80211/cfg.c
@@ -4345,15 +4345,15 @@ out: @@ -4342,15 +4342,15 @@ out:
} }
static int static int
@ -176,7 +176,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
} }
const struct cfg80211_ops mac80211_config_ops = { const struct cfg80211_ops mac80211_config_ops = {
@@ -4460,5 +4460,5 @@ const struct cfg80211_ops mac80211_confi @@ -4457,5 +4457,5 @@ const struct cfg80211_ops mac80211_confi
.reset_tid_config = ieee80211_reset_tid_config, .reset_tid_config = ieee80211_reset_tid_config,
.set_sar_specs = ieee80211_set_sar_specs, .set_sar_specs = ieee80211_set_sar_specs,
.color_change = ieee80211_color_change, .color_change = ieee80211_color_change,

View File

@ -195,7 +195,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
return err; return err;
} }
*changed |= err; *changed |= err;
@@ -3463,8 +3528,11 @@ static int ieee80211_set_csa_beacon(stru @@ -3460,8 +3525,11 @@ static int ieee80211_set_csa_beacon(stru
static void ieee80211_color_change_abort(struct ieee80211_sub_if_data *sdata) static void ieee80211_color_change_abort(struct ieee80211_sub_if_data *sdata)
{ {
sdata->vif.color_change_active = false; sdata->vif.color_change_active = false;
@ -209,7 +209,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
cfg80211_color_change_aborted_notify(sdata->dev); cfg80211_color_change_aborted_notify(sdata->dev);
} }
@@ -4202,8 +4270,11 @@ ieee80211_set_after_color_change_beacon( @@ -4199,8 +4267,11 @@ ieee80211_set_after_color_change_beacon(
ret = ieee80211_assign_beacon(sdata, sdata->u.ap.next_beacon, ret = ieee80211_assign_beacon(sdata, sdata->u.ap.next_beacon,
NULL, NULL); NULL, NULL);
@ -223,7 +223,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
if (ret < 0) if (ret < 0)
return ret; return ret;
@@ -4246,7 +4317,11 @@ ieee80211_set_color_change_beacon(struct @@ -4243,7 +4314,11 @@ ieee80211_set_color_change_beacon(struct
err = ieee80211_assign_beacon(sdata, &params->beacon_color_change, err = ieee80211_assign_beacon(sdata, &params->beacon_color_change,
NULL, &color_change); NULL, &color_change);
if (err < 0) { if (err < 0) {

View File

@ -77,7 +77,7 @@
static void ieee80211_rfkill_poll(struct wiphy *wiphy) static void ieee80211_rfkill_poll(struct wiphy *wiphy)
{ {
struct ieee80211_local *local = wiphy_priv(wiphy); struct ieee80211_local *local = wiphy_priv(wiphy);
@@ -4516,6 +4529,7 @@ const struct cfg80211_ops mac80211_confi @@ -4513,6 +4526,7 @@ const struct cfg80211_ops mac80211_confi
.set_wiphy_params = ieee80211_set_wiphy_params, .set_wiphy_params = ieee80211_set_wiphy_params,
.set_tx_power = ieee80211_set_tx_power, .set_tx_power = ieee80211_set_tx_power,
.get_tx_power = ieee80211_get_tx_power, .get_tx_power = ieee80211_get_tx_power,

View File

@ -8,9 +8,9 @@ PKG_LICENSE_FILES:=
PKG_SOURCE_URL:=https://github.com/openwrt/mt76 PKG_SOURCE_URL:=https://github.com/openwrt/mt76
PKG_SOURCE_PROTO:=git PKG_SOURCE_PROTO:=git
PKG_SOURCE_DATE:=2022-10-01 PKG_SOURCE_DATE:=2022-11-12
PKG_SOURCE_VERSION:=72b87836d368685a093b927229209b61d8272541 PKG_SOURCE_VERSION:=4bf2607362fc64fc4cb7d662feb736b7536c0811
PKG_MIRROR_HASH:=ea4dfe93f7632d5063ac2ccf0f5a3698e2bfeadbbef45910381b5ef07e334cfc PKG_MIRROR_HASH:=fd4291ac89e14750073cc8c345772883d756bf32cf19fc7205fa344b5b3b91d0
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name> PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
PKG_USE_NINJA:=0 PKG_USE_NINJA:=0

View File

@ -1,4 +1,4 @@
From ed0b9c38becdbf9379787ca0b4db557f03a31dd7 Mon Sep 17 00:00:00 2001 From fcddb155b538beb0ca7614260a1323d64bfc656a Mon Sep 17 00:00:00 2001
From: DENG Qingfang <dengqf6@mail2.sysu.edu.cn> From: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
Date: Mon, 23 Nov 2020 10:46:37 +0800 Date: Mon, 23 Nov 2020 10:46:37 +0800
Subject: [PATCH] mt76: allow VHT rate on 2.4GHz Subject: [PATCH] mt76: allow VHT rate on 2.4GHz
@ -7,14 +7,13 @@ Allow chips that support 11ac to use 256QAM on 2.4GHz
Signed-off-by: DENG Qingfang <dqfext@gmail.com> Signed-off-by: DENG Qingfang <dqfext@gmail.com>
--- ---
mac80211.c | 10 +++++----- mac80211.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-) mt7615/init.c | 2 ++
2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/mac80211.c b/mac80211.c
index 766681a4..06aa4228 100644
--- a/mac80211.c --- a/mac80211.c
+++ b/mac80211.c +++ b/mac80211.c
@@ -264,7 +264,7 @@ static void mt76_init_stream_cap(struct mt76_phy *phy, @@ -275,7 +275,7 @@ static void mt76_init_stream_cap(struct
void mt76_set_stream_caps(struct mt76_phy *phy, bool vht) void mt76_set_stream_caps(struct mt76_phy *phy, bool vht)
{ {
if (phy->cap.has_2ghz) if (phy->cap.has_2ghz)
@ -23,7 +22,7 @@ index 766681a4..06aa4228 100644
if (phy->cap.has_5ghz) if (phy->cap.has_5ghz)
mt76_init_stream_cap(phy, &phy->sband_5g.sband, vht); mt76_init_stream_cap(phy, &phy->sband_5g.sband, vht);
if (phy->cap.has_6ghz) if (phy->cap.has_6ghz)
@@ -333,13 +333,13 @@ mt76_init_sband(struct mt76_phy *phy, struct mt76_sband *msband, @@ -342,13 +342,13 @@ mt76_init_sband(struct mt76_phy *phy, st
static int static int
mt76_init_sband_2g(struct mt76_phy *phy, struct ieee80211_rate *rates, mt76_init_sband_2g(struct mt76_phy *phy, struct ieee80211_rate *rates,
@ -39,8 +38,8 @@ index 766681a4..06aa4228 100644
} }
static int static int
@@ -475,7 +475,7 @@ int mt76_register_phy(struct mt76_phy *phy, bool vht, @@ -496,7 +496,7 @@ int mt76_register_phy(struct mt76_phy *p
mt76_phy_init(phy, phy->hw); return ret;
if (phy->cap.has_2ghz) { if (phy->cap.has_2ghz) {
- ret = mt76_init_sband_2g(phy, rates, n_rates); - ret = mt76_init_sband_2g(phy, rates, n_rates);
@ -48,8 +47,8 @@ index 766681a4..06aa4228 100644
if (ret) if (ret)
return ret; return ret;
} }
@@ -594,7 +594,7 @@ int mt76_register_device(struct mt76_dev *dev, bool vht, @@ -621,7 +621,7 @@ int mt76_register_device(struct mt76_dev
mt76_phy_init(phy, hw); return ret;
if (phy->cap.has_2ghz) { if (phy->cap.has_2ghz) {
- ret = mt76_init_sband_2g(phy, rates, n_rates); - ret = mt76_init_sband_2g(phy, rates, n_rates);
@ -57,3 +56,14 @@ index 766681a4..06aa4228 100644
if (ret) if (ret)
return ret; return ret;
} }
--- a/mt7615/init.c
+++ b/mt7615/init.c
@@ -409,6 +409,8 @@ mt7615_init_wiphy(struct ieee80211_hw *h
hw->max_tx_fragments = MT_HW_TXP_MAX_BUF_NUM;
phy->mt76->sband_2g.sband.ht_cap.cap |= IEEE80211_HT_CAP_LDPC_CODING;
+ phy->mt76->sband_2g.sband.vht_cap.cap |=
+ IEEE80211_VHT_CAP_MAX_A_MPDU_LENGTH_EXPONENT_MASK;
phy->mt76->sband_5g.sband.ht_cap.cap |= IEEE80211_HT_CAP_LDPC_CODING;
phy->mt76->sband_5g.sband.vht_cap.cap |=
IEEE80211_VHT_CAP_MAX_A_MPDU_LENGTH_EXPONENT_MASK;

View File

@ -1,13 +0,0 @@
--- a/mt7915/init.c
+++ b/mt7915/init.c
@@ -327,8 +327,8 @@ mt7915_init_wiphy(struct ieee80211_hw *h
struct mt7915_dev *dev = phy->dev;
hw->queues = 4;
- hw->max_rx_aggregation_subframes = IEEE80211_MAX_AMPDU_BUF;
- hw->max_tx_aggregation_subframes = IEEE80211_MAX_AMPDU_BUF;
+ hw->max_rx_aggregation_subframes = IEEE80211_MAX_AMPDU_BUF_HE;
+ hw->max_tx_aggregation_subframes = IEEE80211_MAX_AMPDU_BUF_HE;
hw->netdev_features = NETIF_F_RXCSUM;
hw->radiotap_timestamp.units_pos =

View File

@ -28,7 +28,7 @@ define KernelPackage/r8101
AUTOLOAD:=$(call AutoProbe,r8101) AUTOLOAD:=$(call AutoProbe,r8101)
endef endef
define Package/r8101/description define KernelPackage/r8101/description
This package contains a driver for Realtek r8101 chipsets. This package contains a driver for Realtek r8101 chipsets.
endef endef

View File

@ -29,7 +29,7 @@ define KernelPackage/r8125
AUTOLOAD:=$(call AutoProbe,r8125) AUTOLOAD:=$(call AutoProbe,r8125)
endef endef
define Package/r8125/description define KernelPackage/r8125/description
This package contains a driver for Realtek r8125 chipsets. This package contains a driver for Realtek r8125 chipsets.
endef endef

View File

@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=r8152 PKG_NAME:=r8152
PKG_VERSION:=2.16.3.20220914 PKG_VERSION:=2.16.3.20221209
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/wget/realtek-r8152-linux/tar.gz/v$(PKG_VERSION)? PKG_SOURCE_URL:=https://codeload.github.com/wget/realtek-r8152-linux/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=61ed7af34c8882c6028ddd1a27bb78fb5bfba41211f84dd7a06e4dc84dbe9a9a PKG_HASH:=82f0a86519e6e185623009190bb85f3a8f3de2bf9e67222c43c1265e773c9f9c
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/realtek-$(PKG_NAME)-linux-$(PKG_VERSION) PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/realtek-$(PKG_NAME)-linux-$(PKG_VERSION)
PKG_LICENSE:=GPL-2.0-only PKG_LICENSE:=GPL-2.0-only

View File

@ -29,7 +29,7 @@ define KernelPackage/r8168
CONFLICTS:=kmod-r8169 CONFLICTS:=kmod-r8169
endef endef
define Package/r8168/description define KernelPackage/r8168/description
This package contains a driver for Realtek r8168 chipsets. This package contains a driver for Realtek r8168 chipsets.
endef endef

View File

@ -1,13 +1,13 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=ustream-ssl PKG_NAME:=ustream-ssl
PKG_RELEASE:=2 PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL=$(PROJECT_GIT)/project/ustream-ssl.git PKG_SOURCE_URL=$(PROJECT_GIT)/project/ustream-ssl.git
PKG_SOURCE_DATE:=2022-01-16 PKG_SOURCE_DATE:=2022-12-08
PKG_SOURCE_VERSION:=868fd8812f477c110f9c6c5252c0bd172167b94c PKG_SOURCE_VERSION:=9217ab46536353c7c792951b57163063f5ec7a3b
PKG_MIRROR_HASH:=dd28d5e846b391917cf83d66176653bdfa4e8a0d5b11144b65a012fe7693ddeb PKG_MIRROR_HASH:=cd4dc6a6c18290348b1f8b1c01df3320e4954dc46d714c797bef066f7a91248d
CMAKE_INSTALL:=1 CMAKE_INSTALL:=1
PKG_LICENSE:=ISC PKG_LICENSE:=ISC

View File

@ -81,7 +81,7 @@ if PACKAGE_libwolfssl
bool "AF_ALG" bool "AF_ALG"
config WOLFSSL_HAS_DEVCRYPTO_CBC config WOLFSSL_HAS_DEVCRYPTO_CBC
bool "/dev/crytpo - AES-CBC-only" bool "/dev/crypto - AES-CBC-only"
select WOLFSSL_HAS_DEVCRYPTO select WOLFSSL_HAS_DEVCRYPTO
config WOLFSSL_HAS_DEVCRYPTO_AES config WOLFSSL_HAS_DEVCRYPTO_AES

View File

@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=wolfssl PKG_NAME:=wolfssl
PKG_VERSION:=5.5.1-stable PKG_VERSION:=5.5.3-stable
PKG_RELEASE:=$(AUTORELEASE) PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/wolfSSL/wolfssl/archive/v$(PKG_VERSION) PKG_SOURCE_URL:=https://github.com/wolfSSL/wolfssl/archive/v$(PKG_VERSION)
PKG_HASH:=97339e6956c90e7c881ba5c748dd04f7c30e5dbe0c06da765418c51375a6dee3 PKG_HASH:=fd3135b8657d09fb96a8aad16585da850b96ea420ae8ce5ac4d5fdfc614c2683
PKG_FIXUP:=libtool libtool-abiver PKG_FIXUP:=libtool libtool-abiver
PKG_INSTALL:=1 PKG_INSTALL:=1

View File

@ -0,0 +1,33 @@
From dc9f46a3be00b5e82684a158605189d1278e324c Mon Sep 17 00:00:00 2001
From: Eric Blankenhorn <eric@wolfssl.com>
Date: Wed, 12 Oct 2022 16:05:17 -0500
Subject: [PATCH] Fix --enable-devcrypto build error for sys without u_int8_t
type
---
wolfcrypt/src/port/devcrypto/README.md | 2 +-
wolfcrypt/src/port/devcrypto/wc_devcrypto.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
--- a/wolfcrypt/src/port/devcrypto/README.md
+++ b/wolfcrypt/src/port/devcrypto/README.md
@@ -22,7 +22,7 @@ modprobe cryptodev
For default build with all supported features use:
```
-./configure --enable-cryptodev
+./configure --enable-devcrypto
```
Or for more control over features used:
--- a/wolfcrypt/src/port/devcrypto/wc_devcrypto.c
+++ b/wolfcrypt/src/port/devcrypto/wc_devcrypto.c
@@ -122,7 +122,7 @@ int wc_DevCryptoCreate(WC_CRYPTODEV* ctx
case CRYPTO_SHA2_512_HMAC:
ctx->sess.cipher = 0;
ctx->sess.mac = type;
- ctx->sess.mackey = (u_int8_t*)key;
+ ctx->sess.mackey = (byte*)key;
ctx->sess.mackeylen = keySz;
break;

View File

@ -1,6 +1,6 @@
--- a/wolfssl/wolfcrypt/settings.h --- a/wolfssl/wolfcrypt/settings.h
+++ b/wolfssl/wolfcrypt/settings.h +++ b/wolfssl/wolfcrypt/settings.h
@@ -2445,7 +2445,7 @@ extern void uITRON4_free(void *p) ; @@ -2455,7 +2455,7 @@ extern void uITRON4_free(void *p) ;
#endif #endif
/* warning for not using harden build options (default with ./configure) */ /* warning for not using harden build options (default with ./configure) */

View File

@ -1,5 +1,3 @@
diff --git a/configure.ac b/configure.ac
index 144c857e4..de7f6b45a 100644
--- a/configure.ac --- a/configure.ac
+++ b/configure.ac +++ b/configure.ac
@@ -32,7 +32,7 @@ AC_ARG_PROGRAM @@ -32,7 +32,7 @@ AC_ARG_PROGRAM
@ -10,4 +8,4 @@ index 144c857e4..de7f6b45a 100644
+LT_PREREQ([2.4]) +LT_PREREQ([2.4])
LT_INIT([disable-static win32-dll]) LT_INIT([disable-static win32-dll])
#shared library versioning AC_ARG_VAR(EXTRA_CFLAGS, [Extra CFLAGS to add to autoconf-computed arg list. Can also supply directly to make.])

View File

@ -1,50 +0,0 @@
Since commit 6467de5a8840 ("Randomize z ordinates in scalar
mult when timing resistant") wolfssl requires a RNG for an EC
key when the hardened built option is selected.
wc_ecc_set_rng is only available when built hardened, so there
is no safe way to install the RNG to the key regardless whether
or not wolfssl is compiled hardened.
Always export wc_ecc_set_rng so tools such as hostapd can install
RNG regardless of the built settings for wolfssl.
--- a/wolfcrypt/src/ecc.c
+++ b/wolfcrypt/src/ecc.c
@@ -12348,21 +12348,21 @@ void wc_ecc_fp_free(void)
#endif /* FP_ECC */
-#ifdef ECC_TIMING_RESISTANT
int wc_ecc_set_rng(ecc_key* key, WC_RNG* rng)
{
int err = 0;
+#ifdef ECC_TIMING_RESISTANT
if (key == NULL) {
err = BAD_FUNC_ARG;
}
else {
key->rng = rng;
}
+#endif
return err;
}
-#endif
#ifdef HAVE_ECC_ENCRYPT
--- a/wolfssl/wolfcrypt/ecc.h
+++ b/wolfssl/wolfcrypt/ecc.h
@@ -650,10 +650,8 @@ WOLFSSL_ABI WOLFSSL_API
void wc_ecc_fp_free(void);
WOLFSSL_LOCAL
void wc_ecc_fp_init(void);
-#ifdef ECC_TIMING_RESISTANT
WOLFSSL_API
int wc_ecc_set_rng(ecc_key* key, WC_RNG* rng);
-#endif
WOLFSSL_API
int wc_ecc_set_curve(ecc_key* key, int keysize, int curve_id);

View File

@ -9,7 +9,7 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=firewall PKG_NAME:=firewall
PKG_RELEASE:=1.1 PKG_RELEASE:=2
PKG_SOURCE_PROTO:=git PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL=$(PROJECT_GIT)/project/firewall3.git PKG_SOURCE_URL=$(PROJECT_GIT)/project/firewall3.git

View File

@ -10,7 +10,7 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=iptables PKG_NAME:=iptables
PKG_VERSION:=1.8.7 PKG_VERSION:=1.8.7
PKG_RELEASE:=1 PKG_RELEASE:=2
PKG_SOURCE_URL:=https://netfilter.org/projects/iptables/files PKG_SOURCE_URL:=https://netfilter.org/projects/iptables/files
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2

View File

@ -71,7 +71,7 @@ endef
define Build/InstallDev define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include/shortcut-fe $(INSTALL_DIR) $(1)/usr/include/shortcut-fe
$(CP) $(PKG_BUILD_DIR)/sfe.h $(1)/usr/include/shortcut-fe $(CP) $(PKG_BUILD_DIR)/sfe*.h $(1)/usr/include/shortcut-fe
endef endef
define KernelPackage/shortcut-fe/install define KernelPackage/shortcut-fe/install

View File

@ -0,0 +1,36 @@
From 2ddf0005298e08ba1e358d95be6b826c56a7d1fc Mon Sep 17 00:00:00 2001
From: Christian Marangi <ansuelsmth@gmail.com>
Date: Tue, 29 Nov 2022 16:33:23 +0100
Subject: [PATCH] uxc: fix compilation error caused by unused variable
Fix compilation error caused by unused verbose variable.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
---
uxc.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/uxc.c b/uxc.c
index eb40eb2..b22d838 100644
--- a/uxc.c
+++ b/uxc.c
@@ -80,6 +80,8 @@ static struct blob_buf conf;
static struct blob_buf state;
static struct ubus_context *ctx;
+static bool verbose = false;
+
static int usage(void) {
printf("syntax: uxc <command> [parameters ...]\n");
printf("commands:\n");
@@ -724,7 +726,6 @@ int main(int argc, char **argv)
char *pidfile = NULL;
bool autostart = false;
bool force = false;
- bool verbose = false;
int signal = SIGTERM;
int c;
--
2.37.2

View File

@ -8,7 +8,7 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=nvram PKG_NAME:=nvram
PKG_RELEASE:=10 PKG_RELEASE:=11
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME) PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
@ -44,7 +44,11 @@ define Package/nvram/install
$(INSTALL_BIN) $(PKG_BUILD_DIR)/nvram $(1)/usr/sbin/ $(INSTALL_BIN) $(PKG_BUILD_DIR)/nvram $(1)/usr/sbin/
ifneq ($(CONFIG_TARGET_bcm47xx),) ifneq ($(CONFIG_TARGET_bcm47xx),)
$(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/nvram.init $(1)/etc/init.d/nvram $(INSTALL_BIN) ./files/nvram-bcm47xx.init $(1)/etc/init.d/nvram
endif
ifneq ($(CONFIG_TARGET_bcm53xx),)
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/nvram-bcm53xx.init $(1)/etc/init.d/nvram
endif endif
endef endef

View File

@ -1,7 +1,7 @@
#!/bin/sh /etc/rc.common #!/bin/sh /etc/rc.common
# NVRAM setup # NVRAM setup
# #
# This file handles the NVRAM quirks of various hardware. # This file handles the NVRAM quirks of various hardware of the bcm47xx target.
START=02 START=02
alias debug=${DEBUG:-:} alias debug=${DEBUG:-:}
@ -71,7 +71,7 @@ fixup_linksys() {
esac esac
} }
start() { boot() {
# Don't do any fixups on the WGT634U # Don't do any fixups on the WGT634U
[ "$(cat /proc/diag/model)" = "Netgear WGT634U" ] && return [ "$(cat /proc/diag/model)" = "Netgear WGT634U" ] && return

View File

@ -0,0 +1,40 @@
#!/bin/sh /etc/rc.common
# NVRAM setup
#
# This file handles the NVRAM quirks of various hardware of the bcm53xx target.
START=02
clear_partialboots() {
# clear partialboots
case $(board_name) in
linksys,panamera)
COMMIT=1
nvram set partialboots=0
;;
esac
}
set_wireless_led_behaviour() {
# set Broadcom wireless LED behaviour for both radios
# 0:ledbh9 -> Behaviour of 2.4GHz LED
# 1:ledbh9 -> Behaviour of 5GHz LED
# 0x7 makes the wireless LEDs on, when radios are enabled, and blink when there's activity
case $(board_name) in
asus,rt-ac88u)
COMMIT=1
nvram set 0:ledbh9=0x7 set 1:ledbh9=0x7
;;
esac
}
boot() {
. /lib/functions.sh
clear_partialboots
set_wireless_led_behaviour
[ "$COMMIT" = "1" ] && nvram commit
}

View File

@ -212,7 +212,6 @@ ifndef DUMP
ifneq ($(TOOLCHAIN_LIB_DIRS),) ifneq ($(TOOLCHAIN_LIB_DIRS),)
TARGET_LDFLAGS+= $(patsubst %,-L%,$(TOOLCHAIN_LIB_DIRS)) TARGET_LDFLAGS+= $(patsubst %,-L%,$(TOOLCHAIN_LIB_DIRS))
endif endif
TARGET_PATH:=$(TOOLCHAIN_DIR)/bin:$(TARGET_PATH)
endif endif
endif endif
endif endif
@ -246,20 +245,13 @@ HOST_CPPFLAGS:=-I$(STAGING_DIR_HOST)/include $(if $(IS_PACKAGE_BUILD),-I$(STAGIN
HOST_CFLAGS:=-O2 $(HOST_CPPFLAGS) HOST_CFLAGS:=-O2 $(HOST_CPPFLAGS)
HOST_LDFLAGS:=-L$(STAGING_DIR_HOST)/lib $(if $(IS_PACKAGE_BUILD),-L$(STAGING_DIR_HOSTPKG)/lib -L$(STAGING_DIR)/host/lib) HOST_LDFLAGS:=-L$(STAGING_DIR_HOST)/lib $(if $(IS_PACKAGE_BUILD),-L$(STAGING_DIR_HOSTPKG)/lib -L$(STAGING_DIR)/host/lib)
ifeq ($(CONFIG_EXTERNAL_TOOLCHAIN),)
TARGET_AR:=$(TARGET_CROSS)gcc-ar
TARGET_RANLIB:=$(TARGET_CROSS)gcc-ranlib
TARGET_NM:=$(TARGET_CROSS)gcc-nm
else
TARGET_AR:=$(TARGET_CROSS)ar
TARGET_RANLIB:=$(TARGET_CROSS)ranlib
TARGET_NM:=$(TARGET_CROSS)nm
endif
BUILD_KEY=$(TOPDIR)/key-build BUILD_KEY=$(TOPDIR)/key-build
FAKEROOT:=$(STAGING_DIR_HOST)/bin/fakeroot FAKEROOT:=$(STAGING_DIR_HOST)/bin/fakeroot
TARGET_AR:=$(TARGET_CROSS)gcc-ar
TARGET_RANLIB:=$(TARGET_CROSS)gcc-ranlib
TARGET_NM:=$(TARGET_CROSS)gcc-nm
TARGET_CC:=$(TARGET_CROSS)gcc TARGET_CC:=$(TARGET_CROSS)gcc
TARGET_CXX:=$(TARGET_CROSS)g++ TARGET_CXX:=$(TARGET_CROSS)g++
KPATCH:=$(SCRIPT_DIR)/patch-kernel.sh KPATCH:=$(SCRIPT_DIR)/patch-kernel.sh

View File

@ -4697,7 +4697,7 @@ sub process {
## $line !~ /^.\s*$Type\s+$Ident(?:\s*=[^,{]*)?\s*,\s*$Type\s*$Ident.*/) { ## $line !~ /^.\s*$Type\s+$Ident(?:\s*=[^,{]*)?\s*,\s*$Type\s*$Ident.*/) {
## ##
## # Remove any bracketed sections to ensure we do not ## # Remove any bracketed sections to ensure we do not
## # falsly report the parameters of functions. ## # falsely report the parameters of functions.
## my $ln = $line; ## my $ln = $line;
## while ($ln =~ s/\([^\(\)]*\)//g) { ## while ($ln =~ s/\([^\(\)]*\)//g) {
## } ## }

View File

@ -207,7 +207,7 @@ class GitHubCommitTsCache(object):
class DownloadGitHubTarball(object): class DownloadGitHubTarball(object):
"""Download and repack archive tarabll from GitHub. """Download and repack archive tarball from GitHub.
Compared with the method of packing after cloning the whole repo, this Compared with the method of packing after cloning the whole repo, this
method is more friendly to users with fragile internet connection. method is more friendly to users with fragile internet connection.
@ -220,7 +220,7 @@ class DownloadGitHubTarball(object):
- GitHub archives do not contain source codes for submodules. - GitHub archives do not contain source codes for submodules.
- GitHub archives seem to respect .gitattributes and ignore pathes with - GitHub archives seem to respect .gitattributes and ignore paths with
export-ignore attributes. export-ignore attributes.
For the first two issues, the method will fail loudly to allow fallback to For the first two issues, the method will fail loudly to allow fallback to

View File

@ -206,11 +206,21 @@ foreach my $mirror (@ARGV) {
# use OpenWrt source server directly # use OpenWrt source server directly
} elsif ($mirror =~ /^\@IMMORTALWRT$/) { } elsif ($mirror =~ /^\@IMMORTALWRT$/) {
# use ImmortalWrt source server directly # use ImmortalWrt source server directly
} elsif ($mirror =~ /^\@DEBIAN\/(.+)$/) {
push @mirrors, "https://mirrors.tencent.com/debian/$1";
push @mirrors, "https://mirrors.aliyun.com/debian/$1";
push @mirrors, "https://mirrors.tuna.tsinghua.edu.cn/debian/$1";
push @mirrors, "https://mirrors.ustc.edu.cn/debian/$1";
push @mirrors, "https://ftp.debian.org/debian/$1";
push @mirrors, "https://mirror.leaseweb.com/debian/$1";
push @mirrors, "https://mirror.netcologne.de/debian/$1";
push @mirrors, "https://mirrors.tuna.tsinghua.edu.cn/debian/$1";
push @mirrors, "https://mirrors.ustc.edu.cn/debian/$1"
} elsif ($mirror =~ /^\@APACHE\/(.+)$/) { } elsif ($mirror =~ /^\@APACHE\/(.+)$/) {
push @mirrors, "https://mirrors.tencent.com/apache/$1"; push @mirrors, "https://mirrors.tencent.com/apache/$1";
push @mirrors, "https://mirrors.aliyun.com/apache/$1"; push @mirrors, "https://mirrors.aliyun.com/apache/$1";
# push @mirrors, "https://mirrors.tuna.tsinghua.edu.cn/apache/$1"; push @mirrors, "https://mirrors.tuna.tsinghua.edu.cn/apache/$1";
# push @mirrors, "https://mirrors.ustc.edu.cn/apache/$1"; push @mirrors, "https://mirrors.ustc.edu.cn/apache/$1";
push @mirrors, "https://mirror.netcologne.de/apache.org/$1"; push @mirrors, "https://mirror.netcologne.de/apache.org/$1";
push @mirrors, "https://mirror.aarnet.edu.au/pub/apache/$1"; push @mirrors, "https://mirror.aarnet.edu.au/pub/apache/$1";
push @mirrors, "https://mirror.csclub.uwaterloo.ca/apache/$1"; push @mirrors, "https://mirror.csclub.uwaterloo.ca/apache/$1";
@ -234,9 +244,8 @@ foreach my $mirror (@ARGV) {
} elsif ($mirror =~ /^\@GNU\/(.+)$/) { } elsif ($mirror =~ /^\@GNU\/(.+)$/) {
push @mirrors, "https://mirrors.tencent.com/gnu/$1"; push @mirrors, "https://mirrors.tencent.com/gnu/$1";
push @mirrors, "https://mirrors.aliyun.com/gnu/$1"; push @mirrors, "https://mirrors.aliyun.com/gnu/$1";
# push @mirrors, "https://mirrors.tuna.tsinghua.edu.cn/gnu/$1"; push @mirrors, "https://mirrors.tuna.tsinghua.edu.cn/gnu/$1";
# push @mirrors, "https://mirrors.cqu.edu.cn/gnu/$1"; push @mirrors, "https://mirrors.ustc.edu.cn/gnu/$1";
# push @mirrors, "https://mirrors.ustc.edu.cn/gnu/$1";
push @mirrors, "https://mirror.csclub.uwaterloo.ca/gnu/$1"; push @mirrors, "https://mirror.csclub.uwaterloo.ca/gnu/$1";
push @mirrors, "https://mirror.netcologne.de/gnu/$1"; push @mirrors, "https://mirror.netcologne.de/gnu/$1";
push @mirrors, "http://ftp.kddilabs.jp/GNU/gnu/$1"; push @mirrors, "http://ftp.kddilabs.jp/GNU/gnu/$1";
@ -261,8 +270,11 @@ foreach my $mirror (@ARGV) {
push @extra, "$extra[0]/longterm/v$1"; push @extra, "$extra[0]/longterm/v$1";
} }
foreach my $dir (@extra) { foreach my $dir (@extra) {
# push @mirrors, "https://mirrors.ustc.edu.cn/kernel.org/$dir"; push @mirrors, "https://mirror.iscas.ac.cn/kernel.org/$dir";
push @mirrors, "https://mirrors.ustc.edu.cn/kernel.org/$dir";
push @mirrors, "https://mirror.nju.edu.cn/kernel.org/$dir";
push @mirrors, "https://cdn.kernel.org/pub/$dir"; push @mirrors, "https://cdn.kernel.org/pub/$dir";
push @mirrors, "https://ftp.jaist.ac.jp/pub/Linux/kernel.org/$dir";
push @mirrors, "https://download.xs4all.nl/ftp.kernel.org/pub/$dir"; push @mirrors, "https://download.xs4all.nl/ftp.kernel.org/pub/$dir";
push @mirrors, "https://mirrors.mit.edu/kernel/$dir"; push @mirrors, "https://mirrors.mit.edu/kernel/$dir";
push @mirrors, "http://ftp.nara.wide.ad.jp/pub/kernel.org/$dir"; push @mirrors, "http://ftp.nara.wide.ad.jp/pub/kernel.org/$dir";
@ -271,7 +283,9 @@ foreach my $mirror (@ARGV) {
push @mirrors, "ftp://www.mirrorservice.org/sites/ftp.kernel.org/pub/$dir"; push @mirrors, "ftp://www.mirrorservice.org/sites/ftp.kernel.org/pub/$dir";
} }
} elsif ($mirror =~ /^\@GNOME\/(.+)$/) { } elsif ($mirror =~ /^\@GNOME\/(.+)$/) {
push @mirrors, "https://mirrors.ustc.edu.cn/gnome/sources/$1"; push @mirrors, "https://mirrors.ustc.edu.cn/gnome/sources/$1";
push @mirrors, "https://mirror.nju.edu.cn/gnome/$1";
push @mirrors, "https://download.gnome.org/sources/$1";
push @mirrors, "https://mirror.csclub.uwaterloo.ca/gnome/sources/$1"; push @mirrors, "https://mirror.csclub.uwaterloo.ca/gnome/sources/$1";
push @mirrors, "http://ftp.acc.umu.se/pub/GNOME/sources/$1"; push @mirrors, "http://ftp.acc.umu.se/pub/GNOME/sources/$1";
push @mirrors, "http://ftp.kaist.ac.kr/gnome/sources/$1"; push @mirrors, "http://ftp.kaist.ac.kr/gnome/sources/$1";
@ -286,6 +300,7 @@ foreach my $mirror (@ARGV) {
} }
# push @mirrors, 'https://mirror01.download.immortalwrt.eu.org'; # push @mirrors, 'https://mirror01.download.immortalwrt.eu.org';
push @mirrors, 'https://mirror2.immortalwrt.org/sources';
push @mirrors, 'https://mirror.immortalwrt.org/sources'; push @mirrors, 'https://mirror.immortalwrt.org/sources';
push @mirrors, 'https://sources.immortalwrt.org'; push @mirrors, 'https://sources.immortalwrt.org';
push @mirrors, 'https://sources.cdn.immortalwrt.org'; push @mirrors, 'https://sources.cdn.immortalwrt.org';

View File

@ -50,6 +50,7 @@ BIN_SPECS="
gdbserver: gdbserver gdbserver: gdbserver
" "
OVERWRITE_CONFIG=""
test_c() { test_c() {
cat <<-EOT | "${CC:-false}" $CFLAGS -o /dev/null -x c - 2>/dev/null cat <<-EOT | "${CC:-false}" $CFLAGS -o /dev/null -x c - 2>/dev/null
@ -281,8 +282,11 @@ print_config() {
local mksubtarget local mksubtarget
local target="$("$CC" $CFLAGS -dumpmachine)" local target="$("$CC" $CFLAGS -dumpmachine)"
local version="$("$CC" $CFLAGS -dumpversion)"
local cpuarch="${target%%-*}" local cpuarch="${target%%-*}"
local prefix="${CC##*/}"; prefix="${prefix%-*}-"
# get CC; strip version; strip gcc and add - suffix
local prefix="${CC##*/}"; prefix="${prefix%-$version}"; prefix="${prefix%-*}-"
local config="${0%/scripts/*}/.config" local config="${0%/scripts/*}/.config"
# if no target specified, print choice list and exit # if no target specified, print choice list and exit
@ -317,9 +321,13 @@ print_config() {
fi fi
# bail out if there is a .config already # bail out if there is a .config already
if [ -f "${0%/scripts/*}/.config" ]; then if [ -f "$config" ]; then
echo "There already is a .config file, refusing to overwrite!" >&2 if [ "$OVERWRITE_CONFIG" == "" ]; then
return 1 echo "There already is a .config file, refusing to overwrite!" >&2
return 1
else
echo "There already is a .config file, trying to overwrite!"
fi
fi fi
case "$mktarget" in */*) case "$mktarget" in */*)
@ -327,8 +335,11 @@ print_config() {
mktarget="${mktarget%/*}" mktarget="${mktarget%/*}"
;; esac ;; esac
if [ ! -f "$config" ]; then
touch "$config"
fi
echo "CONFIG_TARGET_${mktarget}=y" > "$config" echo "CONFIG_TARGET_${mktarget}=y" >> "$config"
if [ -n "$mksubtarget" ]; then if [ -n "$mksubtarget" ]; then
echo "CONFIG_TARGET_${mktarget}_${mksubtarget}=y" >> "$config" echo "CONFIG_TARGET_${mktarget}_${mksubtarget}=y" >> "$config"
@ -358,8 +369,18 @@ print_config() {
echo "CONFIG_TOOLCHAIN_PREFIX=\"$prefix\"" >> "$config" echo "CONFIG_TOOLCHAIN_PREFIX=\"$prefix\"" >> "$config"
echo "CONFIG_TARGET_NAME=\"$target\"" >> "$config" echo "CONFIG_TARGET_NAME=\"$target\"" >> "$config"
if [ "$LIBC_TYPE" != glibc ]; then if [ -f "$config" ]; then
echo "CONFIG_TOOLCHAIN_LIBC=\"$LIBC_TYPE\"" >> "$config" sed -i '/CONFIG_EXTERNAL_TOOLCHAIN_LIBC_USE_MUSL/d' "$config"
sed -i '/CONFIG_EXTERNAL_TOOLCHAIN_LIBC_USE_GLIBC/d' "$config"
fi
if [ "$LIBC_TYPE" == glibc ]; then
echo "CONFIG_EXTERNAL_TOOLCHAIN_LIBC_USE_GLIBC=y" >> "$config"
elif [ "$LIBC_TYPE" == musl ]; then
echo "CONFIG_EXTERNAL_TOOLCHAIN_LIBC_USE_MUSL=y" >> "$config"
else
echo "Can't detect LIBC type. Aborting!" >&2
return 1
fi fi
local lib local lib
@ -452,6 +473,13 @@ probe_cpp() {
} }
probe_libc() { probe_libc() {
if [ -f $TOOLCHAIN/info.mk ]; then
LIBC_TYPE=$(grep LIBC_TYPE $TOOLCHAIN/info.mk | sed 's/LIBC_TYPE=//')
return 0
fi
echo "Warning! Can't find info.mk, trying to detect with alternative way."
if [ -z "$LIBC_TYPE" ]; then if [ -z "$LIBC_TYPE" ]; then
if test_uclibc; then if test_uclibc; then
LIBC_TYPE="uclibc" LIBC_TYPE="uclibc"
@ -529,8 +557,13 @@ while [ -n "$1" ]; do
exit $? exit $?
;; ;;
--overwrite-config)
OVERWRITE_CONFIG=y
;;
--config) --config)
if probe_cc; then if probe_cc; then
probe_libc
print_config "$1" print_config "$1"
exit $? exit $?
fi fi
@ -569,7 +602,9 @@ while [ -n "$1" ]; do
echo -e " Most commands also take a --cflags parameter which " >&2 echo -e " Most commands also take a --cflags parameter which " >&2
echo -e " is used to specify C flags to be passed to the " >&2 echo -e " is used to specify C flags to be passed to the " >&2
echo -e " cross compiler when performing tests." >&2 echo -e " cross compiler when performing tests." >&2
echo -e " This paremter may be repeated multiple times." >&2 echo -e " This parameter may be repeated multiple times." >&2
echo -e " Use --overwrite-config before --config to overwrite" >&2
echo -e " an already present config with the required changes.">&2
exit 1 exit 1
;; ;;

98
scripts/ext-tools.sh Executable file
View File

@ -0,0 +1,98 @@
#!/usr/bin/env bash
TOOLS_TAR=""
HOST_BUILD_DIR=$(pwd)/"build_dir/host"
HOST_STAGING_DIR_STAMP=$(pwd)/"staging_dir/host/stamp"
refresh_timestamps() {
find "$1" -not -type l -print0 | xargs -0 touch
}
extract_prebuilt_tar() {
tar -xf "$1"
}
install_prebuilt_tools() {
extract_prebuilt_tar "$TOOLS_TAR"
if [ ! -d "$HOST_BUILD_DIR" ]; then
echo "Can't find Host Build Dir "$HOST_BUILD_DIR"" >&2
exit 1
fi
refresh_timestamps "$HOST_BUILD_DIR"
sleep 1
if [ ! -d "$HOST_STAGING_DIR_STAMP" ]; then
echo "Can't find Host Staging Dir Stamp "$HOST_STAGING_DIR_STAMP"" >&2
exit 1
fi
refresh_timestamps "$HOST_STAGING_DIR_STAMP"
return 0
}
while [ -n "$1" ]; do
arg="$1"; shift
case "$arg" in
--host-build-dir)
[ -d "$1" ] || {
echo "Directory '$1' does not exist." >&2
exit 1
}
HOST_BUILD_DIR="$(cd "$1"; pwd)"; shift
;;
--host-staging-dir-stamp)
[ -d "$1" ] || {
echo "Directory '$1' does not exist." >&2
exit 1
}
HOST_STAGING_DIR_STAMP="$(cd "$1"; pwd)"; shift
;;
--tools)
[ -f "$1" ] || {
echo "Tools tar file '$1' does not exist." >&2
exit 1
}
TOOLS_TAR="$1"; shift
install_prebuilt_tools
exit $?
;;
-h|--help)
me="$(basename "$0")"
echo -e "\nUsage:\n" >&2
echo -e " $me --host-build-dir {directory}" >&2
echo -e " Set to refresh timestamp of this build directory" >&2
echo -e " with --tools." >&2
echo -e " THIS OPTION MUST BE SET BEFORE --tools." >&2
echo -e " If not provided the default directory is:" >&2
echo -e " $(pwd)/build_dir/host\n" >&2
echo -e " $me --host-staging-dir-stamp {directory}" >&2
echo -e " Set to refresh staging timestamp present in this" >&2
echo -e " directory with --tools." >&2
echo -e " THIS OPTION MUST BE SET BEFORE --tools." >&2
echo -e " If not provided the default directory is:" >&2
echo -e " $(pwd)/staging_dir/host/stamp\n" >&2
echo -e " $me --tools {tar}" >&2
echo -e " Install the prebuilt tools present in the passed" >&2
echo -e " tar and prepare them." >&2
echo -e " To correctly use them it's needed to update the." >&2
echo -e " timestamp of each tools to skip recompilation.\n" >&2
echo -e " $me --help" >&2
echo -e " Display this help text and exit.\n\n" >&2
exit 1
;;
*)
echo "Unknown argument '$arg'" >&2
exec $0 --help
;;
esac
done
exec $0 --help

View File

@ -7,7 +7,7 @@ from sys import argv
import json import json
if len(argv) != 2: if len(argv) != 2:
print("JSON info files script requires ouput file as argument") print("JSON info files script requires output file as argument")
exit(1) exit(1)
output_path = Path(argv[1]) output_path = Path(argv[1])

View File

@ -11,11 +11,11 @@
# This is appended to the factory image and is tested by the Linksys Upgrader - as observed in civic. # This is appended to the factory image and is tested by the Linksys Upgrader - as observed in civic.
# The footer is 256 bytes. The format is: # The footer is 256 bytes. The format is:
# .LINKSYS. This is detected by the Linksys upgrader before continuing with upgrade. (9 bytes) # .LINKSYS. This is detected by the Linksys upgrader before continuing with upgrade. (9 bytes)
# <VERSION> The version number of upgrade. Not checked so use arbitary value (8 bytes) # <VERSION> The version number of upgrade. Not checked so use arbitrary value (8 bytes)
# <TYPE> Model of target device, padded (0x20) to (15 bytes) # <TYPE> Model of target device, padded (0x20) to (15 bytes)
# <CRC> CRC checksum of the image to flash (8 byte) # <CRC> CRC checksum of the image to flash (8 byte)
# <padding> Padding (0x20) (7 bytes) # <padding> Padding (0x20) (7 bytes)
# <signature> Signature of signer. Not checked so use Arbitary value (16 bytes) # <signature> Signature of signer. Not checked so use arbitrary value (16 bytes)
# <padding> Padding (0x00) (192 bytes) # <padding> Padding (0x00) (192 bytes)
# 0x0A (1 byte) # 0x0A (1 byte)

View File

@ -2,7 +2,7 @@
function usage { function usage {
echo "Usage: prepare_image image_type kernel_image rootfs_image header_size" echo "Usage: prepare_image image_type kernel_image rootfs_image header_size"
echo "Padd root and kernel image to the correct size and append the jffs2 start marker as needed" echo "Pad root and kernel image to the correct size and append the jffs2 start marker as needed"
exit 1 exit 1
} }

View File

@ -3,12 +3,12 @@
# directory where search for images # directory where search for images
TOP_DIR="${TOP_DIR:-./bin/targets}" TOP_DIR="${TOP_DIR:-./bin/targets}"
# key to sign images # key to sign images
BUILD_KEY="${BUILD_KEY:-key-build}" # TODO unifiy naming? BUILD_KEY="${BUILD_KEY:-key-build}" # TODO unify naming?
# remove other signatures (added e.g. by buildbot) # remove other signatures (added e.g. by buildbot)
REMOVE_OTER_SIGNATURES="${REMOVE_OTER_SIGNATURES:-1}" REMOVE_OTER_SIGNATURES="${REMOVE_OTER_SIGNATURES:-1}"
# find all sysupgrade images in TOP_DIR # find all sysupgrade images in TOP_DIR
# factory images don't need signatures as non OpenWrt system doen't check them anyway # factory images don't need signatures as non OpenWrt system doesn't check them anyway
for image in $(find $TOP_DIR -type f -name "*-sysupgrade.bin"); do for image in $(find $TOP_DIR -type f -name "*-sysupgrade.bin"); do
# check if image actually support metadata # check if image actually support metadata
if fwtool -i /dev/null "$image"; then if fwtool -i /dev/null "$image"; then

View File

@ -7,9 +7,9 @@
### ###
### The script compares locally compiled package with the package indexes ### The script compares locally compiled package with the package indexes
### available upstream. This way the storage impact of optimizations or ### available upstream. This way the storage impact of optimizations or
### feature modifiactions is easy to see. ### feature modifications is easy to see.
### ###
### If no environmental variables are set the scritp reads the current ### If no environmental variables are set the script reads the current
### .config file. The evaluated env variables are the following: ### .config file. The evaluated env variables are the following:
### ###
### TARGET SUBTARGET ARCH PACKAGES BIN_DIR BASE_URL CHECK_INSTALLED ### TARGET SUBTARGET ARCH PACKAGES BIN_DIR BASE_URL CHECK_INSTALLED

View File

@ -772,7 +772,7 @@ sub writeOutFirmware {
$_->{'name'}, $filename); $_->{'name'}, $filename);
} }
# If the next parition is before the end of the current image, then rewind. # If the next partition is before the end of the current image, then rewind.
elsif ($_->{'offset'} < $end_point) { elsif ($_->{'offset'} < $end_point) {
$debug and printf("Rewound %s before <%s> in \"%s\"\n", $debug and printf("Rewound %s before <%s> in \"%s\"\n",
(($end_point - $_->{'offset'}) >= $block_size ? (($end_point - $_->{'offset'}) >= $block_size ?
@ -971,7 +971,7 @@ if (!GetOptions("d|debug" => \$debug,
print " [-b|--redboot] <file> Input/Output RedBoot filename\n"; print " [-b|--redboot] <file> Input/Output RedBoot filename\n";
print " [-s|--sysconf] <file> Input/Output SysConf filename\n"; print " [-s|--sysconf] <file> Input/Output SysConf filename\n";
print " [-L|--loader] <file> Second stage boot loader filename\n"; print " [-L|--loader] <file> Second stage boot loader filename\n";
print " [-k|--kernel] <file> Input/Ouptut Kernel filename\n"; print " [-k|--kernel] <file> Input/Output Kernel filename\n";
print " [-r|--ramdisk] <file> Input/Output Ramdisk filename(s)\n"; print " [-r|--ramdisk] <file> Input/Output Ramdisk filename(s)\n";
print " [-f|--fisdir] <file> Input/Output FIS directory filename\n"; print " [-f|--fisdir] <file> Input/Output FIS directory filename\n";
print " [-m|--microcode] <file> Input/Output Microcode filename\n"; print " [-m|--microcode] <file> Input/Output Microcode filename\n";

View File

@ -267,7 +267,7 @@ Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
goto out; goto out;
--- a/drivers/mmc/core/core.c --- a/drivers/mmc/core/core.c
+++ b/drivers/mmc/core/core.c +++ b/drivers/mmc/core/core.c
@@ -1925,7 +1925,8 @@ EXPORT_SYMBOL(mmc_erase); @@ -1931,7 +1931,8 @@ EXPORT_SYMBOL(mmc_erase);
int mmc_can_erase(struct mmc_card *card) int mmc_can_erase(struct mmc_card *card)
{ {
if ((card->host->caps & MMC_CAP_ERASE) && if ((card->host->caps & MMC_CAP_ERASE) &&

View File

@ -1,5 +1,6 @@
CONFIG_64BIT=y CONFIG_64BIT=y
CONFIG_ARCH_BCM4908=y CONFIG_ARCH_BCM4908=y
CONFIG_ARCH_BCMBCA=y
CONFIG_ARCH_CLOCKSOURCE_DATA=y CONFIG_ARCH_CLOCKSOURCE_DATA=y
CONFIG_ARCH_DMA_ADDR_T_64BIT=y CONFIG_ARCH_DMA_ADDR_T_64BIT=y
CONFIG_ARCH_KEEP_MEMBLOCK=y CONFIG_ARCH_KEEP_MEMBLOCK=y
@ -211,7 +212,6 @@ CONFIG_QUEUED_SPINLOCKS=y
CONFIG_RATIONAL=y CONFIG_RATIONAL=y
CONFIG_RCU_NEED_SEGCBLIST=y CONFIG_RCU_NEED_SEGCBLIST=y
CONFIG_RCU_STALL_COMMON=y CONFIG_RCU_STALL_COMMON=y
CONFIG_REFCOUNT_FULL=y
CONFIG_REGMAP=y CONFIG_REGMAP=y
CONFIG_REGMAP_MMIO=y CONFIG_REGMAP_MMIO=y
CONFIG_RFS_ACCEL=y CONFIG_RFS_ACCEL=y

View File

@ -77,7 +77,7 @@ endef
define Device/asus_gt-ac5300 define Device/asus_gt-ac5300
DEVICE_VENDOR := Asus DEVICE_VENDOR := Asus
DEVICE_MODEL := GT-AC5300 DEVICE_MODEL := GT-AC5300
DEVICE_DTS := broadcom/bcm4908/bcm4908-asus-gt-ac5300 DEVICE_DTS := broadcom/bcmbca/bcm4908-asus-gt-ac5300
IMAGES := bin IMAGES := bin
IMAGE/bin := append-ubi | bcm4908img | bcm4908asus IMAGE/bin := append-ubi | bcm4908img | bcm4908asus
ASUS_PRODUCTID := GT-AC5300 ASUS_PRODUCTID := GT-AC5300
@ -90,7 +90,7 @@ TARGET_DEVICES += asus_gt-ac5300
define Device/asus_gt-ax6000 define Device/asus_gt-ax6000
DEVICE_VENDOR := Asus DEVICE_VENDOR := Asus
DEVICE_MODEL := GT-AX6000 DEVICE_MODEL := GT-AX6000
DEVICE_DTS := broadcom/bcmbca/bcm4912-asus-gt-ax6000 KERNEL := kernel-bin | bootfs
IMAGES := pkgtb IMAGES := pkgtb
IMAGE/pkgtb := append-rootfs | pkgtb IMAGE/pkgtb := append-rootfs | pkgtb
SOC := bcm4912 SOC := bcm4912
@ -100,7 +100,7 @@ endef
define Device/netgear_r8000p define Device/netgear_r8000p
DEVICE_VENDOR := Netgear DEVICE_VENDOR := Netgear
DEVICE_MODEL := R8000P DEVICE_MODEL := R8000P
DEVICE_DTS := broadcom/bcm4908/bcm4906-netgear-r8000p DEVICE_DTS := broadcom/bcmbca/bcm4906-netgear-r8000p
IMAGES := bin IMAGES := bin
IMAGE/chk := append-ubi | bcm4908img | netgear-chk IMAGE/chk := append-ubi | bcm4908img | netgear-chk
NETGEAR_BOARD_ID := U12H359T00_NETGEAR NETGEAR_BOARD_ID := U12H359T00_NETGEAR
@ -112,7 +112,7 @@ define Device/tplink_archer-c2300-v1
DEVICE_VENDOR := TP-Link DEVICE_VENDOR := TP-Link
DEVICE_MODEL := Archer C2300 DEVICE_MODEL := Archer C2300
DEVICE_VARIANT := v1 DEVICE_VARIANT := v1
DEVICE_DTS := broadcom/bcm4908/bcm4906-tplink-archer-c2300-v1 DEVICE_DTS := broadcom/bcmbca/bcm4906-tplink-archer-c2300-v1
IMAGES := bin IMAGES := bin
IMAGE/bin := append-ubi | bcm4908img IMAGE/bin := append-ubi | bcm4908img
BROKEN := y BROKEN := y

View File

@ -25,7 +25,7 @@
fdt_linux_RAX220 { fdt_linux_RAX220 {
description = "dtb"; description = "dtb";
data = /incbin/("${dts_dir}/broadcom/bcm4908/bcm4908-netgear-raxe500.dtb"); data = /incbin/("${dts_dir}/broadcom/bcmbca/bcm4908-netgear-raxe500.dtb");
arch = "arm64"; arch = "arm64";
type = "flat_dt"; type = "flat_dt";
compression = "none"; compression = "none";

View File

@ -12,9 +12,22 @@
data = /incbin/("${images_dir}/u-boot/u-boot-bcm4912.dtb"); data = /incbin/("${images_dir}/u-boot/u-boot-bcm4912.dtb");
}; };
fdt_GTAX6000 { fdt_uboot_GTAX6000 {
description = "dtb"; description = "dtb";
data = /incbin/("${images_dir}/u-boot/GTAX6000.dtb"); data = /incbin/("${images_dir}/u-boot/GTAX6000.dtb");
arch = "arm64";
type = "flat_dt";
compression = "none";
hash-1 {
algo = "sha256";
};
};
fdt_linux_GTAX6000 {
description = "dtb";
data = /incbin/("${dts_dir}/broadcom/bcmbca/bcm4912-asus-gt-ax6000.dtb");
arch = "arm64";
type = "flat_dt"; type = "flat_dt";
compression = "none"; compression = "none";
@ -27,8 +40,26 @@
configurations { configurations {
conf_ub_GTAX6000 { conf_ub_GTAX6000 {
description = "GTAX6000"; description = "GTAX6000";
fdt = "fdt_GTAX6000"; fdt = "fdt_uboot_GTAX6000";
loadables = "atf", "uboot"; loadables = "atf", "uboot";
}; };
conf_lx_GTAX6000 {
description = "BRCM 63xxx linux";
kernel = "kernel";
fdt = "fdt_linux_GTAX6000";
};
conf_ub_GTAX6000_50991 {
description = "GTAX6000_50991";
fdt = "fdt_uboot_GTAX6000";
loadables = "atf", "uboot";
};
conf_lx_GTAX6000_50991 {
description = "BRCM 63xxx linux";
kernel = "kernel";
fdt = "fdt_linux_GTAX6000";
};
}; };
}; };

View File

@ -0,0 +1,31 @@
From fdcd652ce2b6b819f5c4dc3cead5215c84ee6933 Mon Sep 17 00:00:00 2001
From: William Zhang <william.zhang@broadcom.com>
Date: Wed, 1 Jun 2022 15:56:50 -0700
Subject: [PATCH] arm64: bcmbca: add arch bcmbca machine entry
Add ARCH_BCMBCA config for Broadcom Broadband SoC chipsets
Signed-off-by: William Zhang <william.zhang@broadcom.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
---
arch/arm64/Kconfig.platforms | 9 +++++++++
1 file changed, 9 insertions(+)
--- a/arch/arm64/Kconfig.platforms
+++ b/arch/arm64/Kconfig.platforms
@@ -59,6 +59,15 @@ config ARCH_BCM_IPROC
help
This enables support for Broadcom iProc based SoCs
+config ARCH_BCMBCA
+ bool "Broadcom Broadband SoC"
+ help
+ Say Y if you intend to run the kernel on a Broadcom Broadband ARM-based
+ BCA chipset.
+
+ This enables support for Broadcom BCA ARM-based broadband chipsets,
+ including the DSL, PON and Wireless family of chips.
+
config ARCH_BERLIN
bool "Marvell Berlin SoC Family"
select DW_APB_ICTL

View File

@ -1,5 +1,6 @@
From 456b6dd1baadd2da10e28ffd1717b06d1fa17a97 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl> From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
Date: Mon, 18 Jul 2022 13:16:05 +0200 Date: Mon, 18 Jul 2022 15:20:58 +0200
Subject: [PATCH] arm64: dts: broadcom: bcm4908: add remaining LED pins Subject: [PATCH] arm64: dts: broadcom: bcm4908: add remaining LED pins
MIME-Version: 1.0 MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8 Content-Type: text/plain; charset=UTF-8
@ -8,6 +9,8 @@ Content-Transfer-Encoding: 8bit
Include all 32 pins. Include all 32 pins.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Link: https://lore.kernel.org/r/20220718132100.13277-1-zajec5@gmail.com
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
--- ---
.../boot/dts/broadcom/bcm4908/bcm4908.dtsi | 75 +++++++++++++++++++ .../boot/dts/broadcom/bcm4908/bcm4908.dtsi | 75 +++++++++++++++++++
1 file changed, 75 insertions(+) 1 file changed, 75 insertions(+)

View File

@ -1,5 +1,6 @@
From 7de56b1dc1149c702d4cc1e89ccc251bfb2bc246 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl> From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
Date: Mon, 18 Jul 2022 13:17:57 +0200 Date: Mon, 18 Jul 2022 15:20:59 +0200
Subject: [PATCH] arm64: dts: broadcom: bcm4908: add LEDs controller block Subject: [PATCH] arm64: dts: broadcom: bcm4908: add LEDs controller block
MIME-Version: 1.0 MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8 Content-Type: text/plain; charset=UTF-8
@ -9,6 +10,8 @@ BCM4908 includes LEDs controller that supports multiple brightness
levels & hardware blinking. levels & hardware blinking.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Link: https://lore.kernel.org/r/20220718132100.13277-2-zajec5@gmail.com
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
--- ---
arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi | 8 ++++++++ arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi | 8 ++++++++
1 file changed, 8 insertions(+) 1 file changed, 8 insertions(+)

View File

@ -1,5 +1,6 @@
From 3bcae3396e986b4ab97a69e8de517e32f9691a4b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl> From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
Date: Mon, 18 Jul 2022 13:21:54 +0200 Date: Mon, 18 Jul 2022 15:21:00 +0200
Subject: [PATCH] arm64: dts: broadcom: bcm4908: add Asus GT-AC5300 LEDs Subject: [PATCH] arm64: dts: broadcom: bcm4908: add Asus GT-AC5300 LEDs
MIME-Version: 1.0 MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8 Content-Type: text/plain; charset=UTF-8
@ -8,6 +9,8 @@ Content-Transfer-Encoding: 8bit
There are 5 software-controllable LEDs on PCB. There are 5 software-controllable LEDs on PCB.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Link: https://lore.kernel.org/r/20220718132100.13277-3-zajec5@gmail.com
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
--- ---
.../bcm4908/bcm4908-asus-gt-ac5300.dts | 48 +++++++++++++++++++ .../bcm4908/bcm4908-asus-gt-ac5300.dts | 48 +++++++++++++++++++
1 file changed, 48 insertions(+) 1 file changed, 48 insertions(+)

View File

@ -0,0 +1,66 @@
From 4fdcbde682291fba2c3f45a41decd656d92a314f Mon Sep 17 00:00:00 2001
From: William Zhang <william.zhang@broadcom.com>
Date: Wed, 3 Aug 2022 10:54:49 -0700
Subject: [PATCH] arm64: dts: bcmbca: update BCM4908 board dts files
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Append "brcm,bcmbca" to compatible strings based on the new bcmbca
binding rule for BCM4908 family based boards.
Signed-off-by: William Zhang <william.zhang@broadcom.com>
Acked-by: Rafał Miłecki <rafal@milecki.pl>
Link: https://lore.kernel.org/r/20220803175455.47638-4-william.zhang@broadcom.com
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
---
arch/arm64/boot/dts/broadcom/bcm4908/bcm4906-netgear-r8000p.dts | 2 +-
.../dts/broadcom/bcm4908/bcm4906-tplink-archer-c2300-v1.dts | 2 +-
arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-asus-gt-ac5300.dts | 2 +-
.../arm64/boot/dts/broadcom/bcm4908/bcm4908-netgear-raxe500.dts | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
--- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4906-netgear-r8000p.dts
+++ b/arch/arm64/boot/dts/broadcom/bcm4908/bcm4906-netgear-r8000p.dts
@@ -7,7 +7,7 @@
#include "bcm4906.dtsi"
/ {
- compatible = "netgear,r8000p", "brcm,bcm4906", "brcm,bcm4908";
+ compatible = "netgear,r8000p", "brcm,bcm4906", "brcm,bcm4908", "brcm,bcmbca";
model = "Netgear R8000P";
memory@0 {
--- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4906-tplink-archer-c2300-v1.dts
+++ b/arch/arm64/boot/dts/broadcom/bcm4908/bcm4906-tplink-archer-c2300-v1.dts
@@ -7,7 +7,7 @@
#include "bcm4906.dtsi"
/ {
- compatible = "tplink,archer-c2300-v1", "brcm,bcm4906", "brcm,bcm4908";
+ compatible = "tplink,archer-c2300-v1", "brcm,bcm4906", "brcm,bcm4908", "brcm,bcmbca";
model = "TP-Link Archer C2300 V1";
memory@0 {
--- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-asus-gt-ac5300.dts
+++ b/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-asus-gt-ac5300.dts
@@ -7,7 +7,7 @@
#include "bcm4908.dtsi"
/ {
- compatible = "asus,gt-ac5300", "brcm,bcm4908";
+ compatible = "asus,gt-ac5300", "brcm,bcm4908", "brcm,bcmbca";
model = "Asus GT-AC5300";
memory@0 {
--- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-netgear-raxe500.dts
+++ b/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-netgear-raxe500.dts
@@ -3,7 +3,7 @@
#include "bcm4908.dtsi"
/ {
- compatible = "netgear,raxe500", "brcm,bcm4908";
+ compatible = "netgear,raxe500", "brcm,bcm4908", "brcm,bcmbca";
model = "Netgear RAXE500";
memory@0 {

View File

@ -0,0 +1,62 @@
From 72e0bdb6d7edb1785d58f2e8e7c80e1d2f93a319 Mon Sep 17 00:00:00 2001
From: William Zhang <william.zhang@broadcom.com>
Date: Wed, 3 Aug 2022 10:54:51 -0700
Subject: [PATCH] arm64: dts: Add BCM4908 generic board dts
Add generic bare bone bcm94908.dts file to support any 4908 based
design. It supports cpu subsystem, memory and an uart console. This can
be useful for board bring-up and cpu subsystem and memory related kernel
test as well.
Signed-off-by: William Zhang <william.zhang@broadcom.com>
Link: https://lore.kernel.org/r/20220803175455.47638-6-william.zhang@broadcom.com
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
---
arch/arm64/boot/dts/broadcom/bcmbca/Makefile | 1 +
.../boot/dts/broadcom/bcmbca/bcm94908.dts | 30 +++++++++++++++++++
2 files changed, 31 insertions(+)
create mode 100644 arch/arm64/boot/dts/broadcom/bcmbca/bcm94908.dts
--- a/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
+++ b/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
@@ -4,6 +4,7 @@ dtb-$(CONFIG_ARCH_BCMBCA) += \
bcm4906-tplink-archer-c2300-v1.dtb \
bcm4908-asus-gt-ac5300.dtb \
bcm4908-netgear-raxe500.dtb \
+ bcm94908.dtb \
bcm4912-asus-gt-ax6000.dtb \
bcm94912.dtb \
bcm963158.dtb \
--- /dev/null
+++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm94908.dts
@@ -0,0 +1,30 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright 2022 Broadcom Ltd.
+ */
+
+/dts-v1/;
+
+#include "bcm4908.dtsi"
+
+/ {
+ model = "Broadcom BCM94908 Reference Board";
+ compatible = "brcm,bcm94908", "brcm,bcm4908", "brcm,bcmbca";
+
+ aliases {
+ serial0 = &uart0;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+
+ memory@0 {
+ device_type = "memory";
+ reg = <0x0 0x0 0x0 0x08000000>;
+ };
+};
+
+&uart0 {
+ status = "okay";
+};

View File

@ -0,0 +1,31 @@
From 68064196cffea33f090bd2e8d81cd5e20107ecf1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
Date: Thu, 3 Nov 2022 11:53:16 +0100
Subject: [PATCH] arm64: dts: broadcom: bcmbca: bcm4908: add TWD block timer
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
BCM4908 TWD contains block with 4 timers. Add binding for it.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Link: https://lore.kernel.org/r/20221103105316.21294-1-zajec5@gmail.com
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
---
arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi | 5 +++++
1 file changed, 5 insertions(+)
--- a/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
+++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
@@ -283,6 +283,11 @@
#address-cells = <1>;
#size-cells = <1>;
+ timer@0 {
+ compatible = "brcm,bcm63138-timer";
+ reg = <0x0 0x28>;
+ };
+
watchdog@28 {
compatible = "brcm,bcm6345-wdt";
reg = <0x28 0x8>;

View File

@ -0,0 +1,46 @@
From 4f9fb09175e87a233787a2dee1e5dabb14deb022 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
Date: Thu, 3 Nov 2022 12:00:15 +0100
Subject: [PATCH] arm64: dts: broadcom: bcmbca: bcm6858: add TWD block
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
BCM6858 contains TWD block with timers, watchdog, and reset subblocks.
Describe it.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Link: https://lore.kernel.org/r/20221103110015.21761-1-zajec5@gmail.com
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
---
.../boot/dts/broadcom/bcmbca/bcm6858.dtsi | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
--- a/arch/arm64/boot/dts/broadcom/bcmbca/bcm6858.dtsi
+++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm6858.dtsi
@@ -109,6 +109,25 @@
#size-cells = <1>;
ranges = <0x0 0x0 0xff800000 0x62000>;
+ twd: timer-mfd@400 {
+ compatible = "brcm,bcm4908-twd", "simple-mfd", "syscon";
+ reg = <0x400 0x4c>;
+ ranges = <0x0 0x400 0x4c>;
+
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ timer@0 {
+ compatible = "brcm,bcm63138-timer";
+ reg = <0x0 0x28>;
+ };
+
+ watchdog@28 {
+ compatible = "brcm,bcm6345-wdt";
+ reg = <0x28 0x8>;
+ };
+ };
+
uart0: serial@640 {
compatible = "brcm,bcm6345-uart";
reg = <0x640 0x18>;

View File

@ -26,7 +26,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
#include <linux/delay.h> #include <linux/delay.h>
#include <linux/export.h> #include <linux/export.h>
#include <linux/gpio.h> #include <linux/gpio.h>
@@ -2475,8 +2473,9 @@ int b53_switch_detect(struct b53_device @@ -2616,8 +2614,9 @@ int b53_switch_detect(struct b53_device
dev->chip_id = id32; dev->chip_id = id32;
break; break;
default: default:
@ -38,7 +38,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
return -ENODEV; return -ENODEV;
} }
} }
@@ -2506,7 +2505,8 @@ int b53_switch_register(struct b53_devic @@ -2647,7 +2646,8 @@ int b53_switch_register(struct b53_devic
if (ret) if (ret)
return ret; return ret;

View File

@ -15,7 +15,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/dsa/b53/b53_common.c --- a/drivers/net/dsa/b53/b53_common.c
+++ b/drivers/net/dsa/b53/b53_common.c +++ b/drivers/net/dsa/b53/b53_common.c
@@ -755,8 +755,11 @@ static int b53_switch_reset(struct b53_d @@ -783,8 +783,11 @@ static int b53_switch_reset(struct b53_d
usleep_range(1000, 2000); usleep_range(1000, 2000);
} while (timeout-- > 0); } while (timeout-- > 0);

View File

@ -23,7 +23,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
--- a/drivers/net/dsa/b53/b53_common.c --- a/drivers/net/dsa/b53/b53_common.c
+++ b/drivers/net/dsa/b53/b53_common.c +++ b/drivers/net/dsa/b53/b53_common.c
@@ -2271,6 +2271,22 @@ static const struct b53_chip_data b53_sw @@ -2409,6 +2409,22 @@ static const struct b53_chip_data b53_sw
.jumbo_pm_reg = B53_JUMBO_PORT_MASK, .jumbo_pm_reg = B53_JUMBO_PORT_MASK,
.jumbo_size_reg = B53_JUMBO_MAX_SIZE, .jumbo_size_reg = B53_JUMBO_MAX_SIZE,
}, },
@ -68,7 +68,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
offset = CORE_STS_OVERRIDE_IMP; offset = CORE_STS_OVERRIDE_IMP;
else else
offset = CORE_STS_OVERRIDE_IMP2; offset = CORE_STS_OVERRIDE_IMP2;
@@ -543,7 +544,8 @@ static void bcm_sf2_sw_mac_config(struct @@ -563,7 +564,8 @@ static void bcm_sf2_sw_mac_config(struct
if (port == core_readl(priv, CORE_IMP0_PRT_ID)) if (port == core_readl(priv, CORE_IMP0_PRT_ID))
return; return;
@ -78,7 +78,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
offset = CORE_STS_OVERRIDE_GMIIP_PORT(port); offset = CORE_STS_OVERRIDE_GMIIP_PORT(port);
else else
offset = CORE_STS_OVERRIDE_GMIIP2_PORT(port); offset = CORE_STS_OVERRIDE_GMIIP2_PORT(port);
@@ -990,6 +992,30 @@ struct bcm_sf2_of_data { @@ -1013,6 +1015,30 @@ struct bcm_sf2_of_data {
unsigned int num_cfp_rules; unsigned int num_cfp_rules;
}; };
@ -109,7 +109,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
/* Register offsets for the SWITCH_REG_* block */ /* Register offsets for the SWITCH_REG_* block */
static const u16 bcm_sf2_7445_reg_offsets[] = { static const u16 bcm_sf2_7445_reg_offsets[] = {
[REG_SWITCH_CNTRL] = 0x00, [REG_SWITCH_CNTRL] = 0x00,
@@ -1038,6 +1064,9 @@ static const struct bcm_sf2_of_data bcm_ @@ -1061,6 +1087,9 @@ static const struct bcm_sf2_of_data bcm_
}; };
static const struct of_device_id bcm_sf2_of_match[] = { static const struct of_device_id bcm_sf2_of_match[] = {

Some files were not shown because too many files have changed in this diff Show More