Merge Official Source

This commit is contained in:
CN_SZTL 2020-11-28 17:10:30 +08:00
commit 769ae66506
No known key found for this signature in database
GPG Key ID: 6850B6345C862176
245 changed files with 5932 additions and 35059 deletions

View File

@ -182,6 +182,14 @@ menu "Global build settings"
help
Specifies arguments passed to the strip command when stripping binaries.
config SSTRIP_ARGS
string
prompt "Sstrip arguments"
depends on USE_SSTRIP
default "-z"
help
Specifies arguments passed to the sstrip command when stripping binaries.
config STRIP_KERNEL_EXPORTS
bool "Strip unnecessary exports from the kernel image"
help
@ -282,11 +290,11 @@ menu "Global build settings"
bool "Strong"
endchoice
config KERNEL_STACKPROTECTOR
config KERNEL_STACKPROTECTOR
bool
default KERNEL_CC_STACKPROTECTOR_REGULAR || KERNEL_CC_STACKPROTECTOR_STRONG
config KERNEL_STACKPROTECTOR_STRONG
config KERNEL_STACKPROTECTOR_STRONG
bool
default KERNEL_CC_STACKPROTECTOR_STRONG

View File

@ -107,6 +107,11 @@ menuconfig DEVEL
It can be a git hash or a branch name.
If unused, the clone's repository HEAD will be checked-out.
config KERNEL_GIT_MIRROR_HASH
string "Enter hash of Git kernel tree source checkout tarball" if DEVEL
depends on (KERNEL_GIT_CLONE_URI != "")
default ""
config BUILD_LOG
bool "Enable log files during build process" if DEVEL
help

View File

@ -86,6 +86,8 @@ define Host/Configure/Default
LDFLAGS="$(HOST_LDFLAGS)" \
cmake \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_COMPILER="$(HOSTCC)" \
-DCMAKE_CXX_COMPILER="$(HOSTCXX)" \
-DCMAKE_C_FLAGS_RELEASE="-DNDEBUG" \
-DCMAKE_CXX_FLAGS_RELEASE="-DNDEBUG" \
-DCMAKE_EXE_LINKER_FLAGS:STRING="$(HOST_LDFLAGS)" \

View File

@ -186,6 +186,8 @@ ifndef DUMP
clean-build: host-clean-build
endif
$(DL_DIR)/$(FILE): FORCE
$(_host_target)host-prepare: $(HOST_STAMP_PREPARED)
$(_host_target)host-configure: $(HOST_STAMP_CONFIGURED)
$(_host_target)host-compile: $(HOST_STAMP_BUILT) $(HOST_STAMP_INSTALLED)

View File

@ -394,10 +394,17 @@ define Build/tplink-v2-image
endef
define Build/uImage
mkimage -A $(LINUX_KARCH) \
-O linux -T kernel \
-C $(1) -a $(KERNEL_LOADADDR) -e $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
-n '$(if $(UIMAGE_NAME),$(UIMAGE_NAME),$(call toupper,$(LINUX_KARCH)) $(VERSION_DIST) Linux-$(LINUX_VERSION))' -d $@ $@.new
mkimage \
-A $(LINUX_KARCH) \
-O linux \
-T kernel \
-C $(word 1,$(1)) \
-a $(KERNEL_LOADADDR) \
-e $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
-n '$(if $(UIMAGE_NAME),$(UIMAGE_NAME),$(call toupper,$(LINUX_KARCH)) $(VERSION_DIST) Linux-$(LINUX_VERSION))' \
$(if $(UIMAGE_MAGIC),-M $(UIMAGE_MAGIC)) \
$(wordlist 2,$(words $(1)),$(1)) \
-d $@ $@.new
mv $@.new $@
endef

View File

@ -400,6 +400,7 @@ define Device/Init
SOC :=
BOARD_NAME :=
UIMAGE_MAGIC :=
UIMAGE_NAME :=
DEVICE_COMPAT_VERSION := 1.0
DEVICE_COMPAT_MESSAGE :=
@ -419,7 +420,8 @@ DEFAULT_DEVICE_VARS := \
CMDLINE UBOOTENV_IN_UBI KERNEL_IN_UBI BLOCKSIZE PAGESIZE SUBPAGESIZE \
VID_HDR_OFFSET UBINIZE_OPTS UBINIZE_PARTS MKUBIFS_OPTS DEVICE_DTS \
DEVICE_DTS_CONFIG DEVICE_DTS_DIR DEVICE_FDT_NUM SOC BOARD_NAME \
UIMAGE_NAME SUPPORTED_DEVICES IMAGE_METADATA KERNEL_ENTRY KERNEL_LOADADDR \
UIMAGE_MAGIC UIMAGE_NAME \
SUPPORTED_DEVICES IMAGE_METADATA KERNEL_ENTRY KERNEL_LOADADDR \
UBOOT_PATH IMAGE_SIZE \
DEVICE_COMPAT_VERSION DEVICE_COMPAT_MESSAGE \
DEVICE_VENDOR DEVICE_MODEL DEVICE_VARIANT \

View File

@ -6,9 +6,9 @@ ifdef CONFIG_TESTING_KERNEL
KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
endif
LINUX_VERSION-5.4 = .79
LINUX_VERSION-5.4 = .80
LINUX_KERNEL_HASH-5.4.79 = a59091fb08ff66a344a7842b7c891f36cef609eed1d2944edf475cca8d91ce25
LINUX_KERNEL_HASH-5.4.80 = 49da425c1f3c530fd3ff31d85a0461f6b6dc6e459f7faf3eee23e49a98ce64c7
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))

View File

@ -218,8 +218,8 @@ $(_endef)
ifneq ($$(CONFIG_IPK_FILES_CHECKSUMS),)
(cd $$(IDIR_$(1)); \
( \
find . -type f \! -path ./CONTROL/\* -exec sha256sum \{\} \; 2> /dev/null | \
sed 's|\([[:blank:]]\)\./|\1/|' > $$(IDIR_$(1))/CONTROL/files-sha256sum \
find . -type f \! -path ./CONTROL/\* -exec mkhash sha256 -n \{\} \; 2> /dev/null | \
sed 's|\([[:blank:]]\)\./| \1/|' > $$(IDIR_$(1))/CONTROL/files-sha256sum \
) || true \
)
endif

View File

@ -189,6 +189,8 @@ define Build/CoreTargets
$(call Build/Autoclean)
$(call DefaultTargets)
$(DL_DIR)/$(FILE): FORCE
download:
$(foreach hook,$(Hooks/Download),
$(call $(hook))$(sep)

View File

@ -149,6 +149,7 @@ $(eval $(call SetupHostCommand,perl,Please install Perl 5.x, \
$(eval $(call CleanupPython2))
$(eval $(call SetupHostCommand,python,Please install Python >= 3.5, \
python3.9 -V 2>&1 | grep 'Python 3', \
python3.8 -V 2>&1 | grep 'Python 3', \
python3.7 -V 2>&1 | grep 'Python 3', \
python3.6 -V 2>&1 | grep 'Python 3', \
@ -156,6 +157,7 @@ $(eval $(call SetupHostCommand,python,Please install Python >= 3.5, \
python3 -V 2>&1 | grep -E 'Python 3\.[5-9]\.?'))
$(eval $(call SetupHostCommand,python3,Please install Python >= 3.5, \
python3.9 -V 2>&1 | grep 'Python 3', \
python3.8 -V 2>&1 | grep 'Python 3', \
python3.7 -V 2>&1 | grep 'Python 3', \
python3.6 -V 2>&1 | grep 'Python 3', \

View File

@ -23,7 +23,7 @@ define subtarget
endef
define ERROR
($(call MESSAGE, $(2)); $(if $(BUILD_LOG), echo "$(2)" >> $(BUILD_LOG_DIR)/$(1)/error.txt))
($(call MESSAGE, $(2)); $(if $(BUILD_LOG), echo "$(2)" >> $(BUILD_LOG_DIR)/$(1)/error.txt;) $(if $(3),, exit 1;))
endef
lastdir=$(word $(words $(subst /, ,$(1))),$(subst /, ,$(1)))
@ -66,7 +66,7 @@ define subdir
$(foreach btype,$(buildtypes-$(bd)),
$(call warn_eval,$(1)/$(bd),t,T,$(1)/$(bd)/$(btype)/$(target): $(if $(NO_DEPS)$(QUILT),,$($(1)/$(bd)/$(btype)/$(target)) $(call $(1)//$(btype)/$(target),$(1)/$(bd)/$(btype))))
$(call log_make,$(1)/$(bd),$(target),$(btype),$(filter-out __default,$(variant))) \
$(if $(findstring $(bd),$($(1)/builddirs-ignore-$(btype)-$(target))), || $(call ERROR,$(1), ERROR: $(1)/$(bd) [$(btype)] failed to build.))
|| $(call ERROR,$(2), ERROR: $(1)/$(bd) [$(btype)] failed to build.,$(findstring $(bd),$($(1)/builddirs-ignore-$(btype)-$(target))))
$(if $(call diralias,$(bd)),$(call warn_eval,$(1)/$(bd),l,T,$(1)/$(call diralias,$(bd))/$(btype)/$(target): $(1)/$(bd)/$(btype)/$(target)))
)
$(call warn_eval,$(1)/$(bd),t,T,$(1)/$(bd)/$(target): $(if $(NO_DEPS)$(QUILT),,$($(1)/$(bd)/$(target)) $(call $(1)//$(target),$(1)/$(bd))))
@ -74,7 +74,7 @@ define subdir
$(if $(BUILD_LOG),@mkdir -p $(BUILD_LOG_DIR)/$(1)/$(bd)/$(filter-out __default,$(variant)))
$(if $($(1)/autoremove),$(call rebuild_check,$(1)/$(bd),$(target),,$(filter-out __default,$(variant))))
$(call log_make,$(1)/$(bd),$(target),,$(filter-out __default,$(variant))) \
$(if $(findstring $(bd),$($(1)/builddirs-ignore-$(target))), || $(call ERROR,$(1), ERROR: $(1)/$(bd) failed to build$(if $(filter-out __default,$(variant)), (build variant: $(variant))).))
|| $(call ERROR,$(1), ERROR: $(1)/$(bd) failed to build$(if $(filter-out __default,$(variant)), (build variant: $(variant))).,$(findstring $(bd),$($(1)/builddirs-ignore-$(target))))
)
$(if $(PREREQ_ONLY)$(DUMP_TARGET_DB),,
# aliases

View File

@ -12,7 +12,7 @@ include $(INCLUDE_DIR)/version.mk
include $(INCLUDE_DIR)/feeds.mk
PKG_NAME:=base-files
PKG_RELEASE:=237
PKG_RELEASE:=238
PKG_FLAGS:=nonshared
PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/

View File

@ -108,7 +108,7 @@ config_unset() {
# config_get <section> <option>
config_get() {
case "$2${3:-$1}" in
*[^A-Za-z0-9_]*) : ;;
*[!A-Za-z0-9_]*) : ;;
*)
case "$3" in
"") eval echo "\"\${CONFIG_${1}_${2}:-\${4}}\"";;

View File

@ -20,11 +20,13 @@ do_mount_root() {
boot_run_hook preinit_mount_root
[ -f /sysupgrade.tgz ] && {
echo "- config restore -"
cp /etc/passwd /etc/group /etc/shadow /tmp
cd /
tar xzf /sysupgrade.tgz
missing_lines /rom/etc/passwd /etc/passwd >> /etc/passwd
missing_lines /rom/etc/group /etc/group >> /etc/group
missing_lines /rom/etc/shadow /etc/shadow >> /etc/shadow
missing_lines /tmp/passwd /etc/passwd >> /etc/passwd
missing_lines /tmp/group /etc/group >> /etc/group
missing_lines /tmp/shadow /etc/shadow >> /etc/shadow
rm /tmp/passwd /tmp/group /tmp/shadow
# Prevent configuration corruption on a power loss
sync
}

View File

@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=uboot-envtools
PKG_DISTNAME:=u-boot
PKG_VERSION:=2020.04
PKG_RELEASE:=6
PKG_RELEASE:=8
PKG_SOURCE:=$(PKG_DISTNAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:= \

View File

@ -23,6 +23,7 @@ allnet,all-wap02860ac|\
arduino,yun|\
buffalo,bhr-4grv2|\
devolo,magic-2-wifi|\
engenius,eap300-v2|\
engenius,ecb1750|\
engenius,enh202-v1|\
engenius,ens202ext-v1|\

View File

@ -31,6 +31,7 @@ mediatek,linkit-smart-7688|\
samknows,whitebox-v8|\
xiaomi,mir3g-v2|\
xiaomi,mi-router-4a-gigabit|\
xiaomi,mi-router-4c|\
xiaomi,miwifi-nano|\
zbtlink,zbt-wg2626)
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x1000" "0x10000"

View File

@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=ath10k-ct-firmware
PKG_VERSION:=2020-07-02
PKG_RELEASE:=1
PKG_RELEASE:=2
include $(INCLUDE_DIR)/package.mk
@ -226,13 +226,19 @@ $(Package/ath10k-ct-firmware-default)
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca988x
CONFLICTS:=ath10k-firmware-qca988x
endef
define Package/ath10k-firmware-qca988x-ct-full-htt
$(Package/ath10k-ct-firmware-default)
TITLE:=ath10k CT 10.1 full-htt-mgt fw for QCA988x
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca988x
PROVIDES:=\
ath10k-firmware-qca988x \
ath10k-firmware-qca988x-ct
CONFLICTS:=\
ath10k-firmware-qca988x \
ath10k-firmware-qca988x-ct
DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
endef
@ -242,13 +248,19 @@ $(Package/ath10k-ct-firmware-default)
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca9887
CONFLICTS:=ath10k-firmware-qca9887
endef
define Package/ath10k-firmware-qca9887-ct-full-htt
$(Package/ath10k-ct-firmware-default)
TITLE:=ath10k CT 10.1 full-htt-mgt fw for QCA9887
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca9887
PROVIDES:=\
ath10k-firmware-qca9887 \
ath10k-firmware-qca9887-ct
CONFLICTS:=\
ath10k-firmware-qca9887 \
ath10k-firmware-qca9887-ct
DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
endef
@ -258,13 +270,20 @@ $(Package/ath10k-ct-firmware-default)
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca99x0
CONFLICTS:=ath10k-firmware-qca99x0
endef
define Package/ath10k-firmware-qca99x0-ct-full-htt
$(Package/ath10k-ct-firmware-default)
TITLE:=ath10k CT 10.4 full-htt-mgt fw for QCA99x0
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca99x0
PROVIDES:=\
ath10k-firmware-qca99x0 \
ath10k-firmware-qca99x0-ct
CONFLICTS:=\
ath10k-firmware-qca99x0 \
ath10k-firmware-qca99x0-ct \
ath10k-firmware-qca99x0-ct-htt
DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
endef
define Package/ath10k-firmware-qca99x0-ct-htt
@ -272,7 +291,12 @@ $(Package/ath10k-firmware-default)
TITLE:=ath10k CT 10.4 htt-mgt fw for QCA99x0
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca99x0
PROVIDES:=\
ath10k-firmware-qca99x0 \
ath10k-firmware-qca99x0-ct
CONFLICTS:=\
ath10k-firmware-qca99x0 \
ath10k-firmware-qca99x0-ct
DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
endef
@ -282,13 +306,20 @@ $(Package/ath10k-ct-firmware-default)
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca9984
CONFLICTS:=ath10k-firmware-qca9984
endef
define Package/ath10k-firmware-qca9984-ct-full-htt
$(Package/ath10k-ct-firmware-default)
TITLE:=ath10k CT 10.4 full-htt-mgt fw for QCA9984
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca9984
PROVIDES:=\
ath10k-firmware-qca9984 \
ath10k-firmware-qca9984-ct
CONFLICTS:=\
ath10k-firmware-qca9984 \
ath10k-firmware-qca9984-ct \
ath10k-firmware-qca9984-ct-htt
DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
endef
define Package/ath10k-firmware-qca9984-ct-htt
@ -296,7 +327,12 @@ $(Package/ath10k-firmware-default)
TITLE:=ath10k CT 10.4 htt-mgt fw for QCA9984
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca9984
PROVIDES:=\
ath10k-firmware-qca9984 \
ath10k-firmware-qca9984-ct
CONFLICTS:=\
ath10k-firmware-qca9984 \
ath10k-firmware-qca9984-ct
DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
endef
@ -306,13 +342,20 @@ $(Package/ath10k-ct-firmware-default)
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca4019
CONFLICTS:=ath10k-firmware-qca4019
endef
define Package/ath10k-firmware-qca4019-ct-full-htt
$(Package/ath10k-ct-firmware-default)
TITLE:=ath10k CT 10.4 full-htt-mgt for QCA4018/9
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca4019
PROVIDES:=\
ath10k-firmware-qca4019 \
ath10k-firmware-qca4019-ct
CONFLICTS:=\
ath10k-firmware-qca4019 \
ath10k-firmware-qca4019-ct \
ath10k-firmware-qca4019-ct-htt
DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
endef
define Package/ath10k-firmware-qca4019-ct-htt
@ -320,7 +363,12 @@ $(Package/ath10k-firmware-default)
TITLE:=ath10k CT 10.4 htt-mgt for QCA4018/9
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca4019
PROVIDES:=\
ath10k-firmware-qca4019 \
ath10k-firmware-qca4019-ct
CONFLICTS:=\
ath10k-firmware-qca4019 \
ath10k-firmware-qca4019-ct
DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
endef
@ -330,13 +378,20 @@ $(Package/ath10k-ct-firmware-default)
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca9888
CONFLICTS:=ath10k-firmware-qca9888
endef
define Package/ath10k-firmware-qca9888-ct-full-htt
$(Package/ath10k-ct-firmware-default)
TITLE:=ath10k CT 10.4 full-htt-mgt fw for QCA9886/8
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca9888
PROVIDES:=\
ath10k-firmware-qca9888 \
ath10k-firmware-qca9888-ct
CONFLICTS:=\
ath10k-firmware-qca9888 \
ath10k-firmware-qca9888-ct \
ath10k-firmware-qca9888-ct-htt
DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
endef
define Package/ath10k-firmware-qca9888-ct-htt
@ -344,7 +399,12 @@ $(Package/ath10k-firmware-default)
TITLE:=ath10k CT 10.4 htt-mgt fw for QCA9886/8
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca9888
PROVIDES:=\
ath10k-firmware-qca9888 \
ath10k-firmware-qca9888-ct
CONFLICTS:=\
ath10k-firmware-qca9888 \
ath10k-firmware-qca9888-ct
DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
endef

View File

@ -11,7 +11,7 @@ UNPACK_CMD=unzip -q -p $(DL_DIR)/$(PKG_SOURCE) $(PKG_SOURCE_UNZIP) | gzip -dc |
PKG_NAME:=cypress-firmware
PKG_VERSION:=v5.4.18-2020_0402
PKG_RELEASE:=2
PKG_RELEASE:=3
PKG_SOURCE_UNZIP:=cypress-firmware-$(PKG_VERSION).tar.gz
PKG_SOURCE:=cypress-fmac-$(PKG_VERSION).zip
@ -70,6 +70,7 @@ define Package/cypress-firmware-43362-sdio
$(Package/cypress-firmware-default)
TITLE:=CYW43362 FullMac SDIO firmware
PROVIDES:=brcmfmac-firmware-43362-sdio
CONFLICTS:=brcmfmac-firmware-43362-sdio
endef
define Package/cypress-firmware-43362-sdio/install
@ -101,6 +102,7 @@ define Package/cypress-firmware-43430-sdio
$(Package/cypress-firmware-default)
TITLE:=CYW43430 FullMac SDIO firmware
PROVIDES:=brcmfmac-firmware-43430-sdio
CONFLICTS:=brcmfmac-firmware-43430-sdio
endef
define Package/cypress-firmware-43430-sdio/install
@ -120,6 +122,7 @@ define Package/cypress-firmware-43455-sdio
$(Package/cypress-firmware-default)
TITLE:=CYW43455 FullMac SDIO firmware
PROVIDES:=brcmfmac-firmware-43455-sdio
CONFLICTS:=brcmfmac-firmware-43455-sdio
endef
define Package/cypress-firmware-43455-sdio/install

View File

@ -11,7 +11,7 @@ PKG_NAME:=cypress-nvram
PKG_SOURCE_DATE:=2019-09-03
PKG_SOURCE_VERSION:=e7b78df22f2a0c5f56abb7b5880661611de35e5f
PKG_MIRROR_HASH:=1cb20a749696852be0a512d51961365dd9c031362af0af1a2b9f5a3fb894885f
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/openwrt/cypress-nvram.git
@ -35,6 +35,8 @@ define Package/cypress-nvram-43430-sdio-rpi-3b
$(Package/cypress-nvram-default)
TITLE:=CYW43430 NVRAM for Raspberry Pi 3B
DEPENDS:=@TARGET_bcm27xx
PROVIDES:=brcmfmac-firmware-43430-sdio-rpi-3b
CONFLICTS:=brcmfmac-firmware-43430-sdio-rpi-3b
endef
define Package/cypress-nvram-43430-sdio-rpi-3b/install
@ -51,6 +53,8 @@ define Package/cypress-nvram-43430-sdio-rpi-zero-w
$(Package/cypress-nvram-default)
TITLE:=CYW43430 NVRAM for Raspberry Pi Zero W
DEPENDS:=@TARGET_bcm27xx
PROVIDES:=brcmfmac-firmware-43430-sdio-rpi-zero-w
CONFLICTS:=brcmfmac-firmware-43430-sdio-rpi-zero-w
endef
define Package/cypress-nvram-43430-sdio-rpi-zero-w/install
@ -67,6 +71,8 @@ define Package/cypress-nvram-43455-sdio-rpi-3b-plus
$(Package/cypress-nvram-default)
TITLE:=CYW43455 NVRAM for Raspberry Pi 3B+
DEPENDS:=@TARGET_bcm27xx
PROVIDES:=brcmfmac-firmware-43455-sdio-rpi-3b-plus
CONFLICTS:=brcmfmac-firmware-43455-sdio-rpi-3b-plus
endef
define Package/cypress-nvram-43455-sdio-rpi-3b-plus/install
@ -83,6 +89,8 @@ define Package/cypress-nvram-43455-sdio-rpi-4b
$(Package/cypress-nvram-default)
TITLE:=CYW43455 NVRAM for Raspberry Pi 4B
DEPENDS:=@TARGET_bcm27xx
PROVIDES:=brcmfmac-firmware-43455-sdio-rpi-4b
CONFLICTS:=brcmfmac-firmware-43455-sdio-rpi-4b
endef
define Package/cypress-nvram-43455-sdio-rpi-4b/install

View File

@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=linux-firmware
PKG_VERSION:=20201118
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE_URL:=@KERNEL/linux/kernel/firmware
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz

View File

@ -101,9 +101,7 @@ Package/brcmfmac-firmware-43455-sdio-rpi-4b = $(call Package/firmware-default,Br
define Package/brcmfmac-firmware-43455-sdio-rpi-4b/install
$(INSTALL_DIR) $(1)/lib/firmware/brcm
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.txt \
$(1)/lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.txt
$(SED) 's/boardflags3=.*/boardflags3=0x44200100/g' \
$(PKG_BUILD_DIR)/brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.txt \
$(1)/lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.txt
endef
$(eval $(call BuildPackage,brcmfmac-firmware-43455-sdio-rpi-4b))

View File

@ -1,21 +1,21 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=ath10k-ct
PKG_RELEASE=1
PKG_RELEASE=2
PKG_LICENSE:=GPLv2
PKG_LICENSE_FILES:=
PKG_SOURCE_URL:=https://github.com/greearb/ath10k-ct.git
PKG_SOURCE_PROTO:=git
PKG_SOURCE_DATE:=2020-06-30
PKG_SOURCE_VERSION:=edfbf9161ab75e4831981284ab2d5b1b9fb6ef72
PKG_MIRROR_HASH:=98b7f88baea7314144fa8f8d141ad0dbbf2816f9606b0a89afb396761b558d14
PKG_SOURCE_DATE:=2020-10-08
PKG_SOURCE_VERSION:=1d28d176e5b6e63a6583f497adf68e1d9c1dc962
PKG_MIRROR_HASH:=f611762647822742f7c8f9da242e33d9bf6da0a14976b87408af28f280802ae0
# Build the 5.4 ath10k-ct driver version. Other option is "-4.19".
# Build the 5.8 ath10k-ct driver version.
# Probably this should match as closely as
# possible to whatever mac80211 backports version is being used.
CT_KVER="-5.4"
CT_KVER="-5.8"
PKG_MAINTAINER:=Ben Greear <greearb@candelatech.com>
PKG_BUILD_PARALLEL:=1

View File

@ -9,9 +9,17 @@ mcast_rate set for a wifi-iface.
Signed-off-by: Sven Eckelmann <sven@narfation.org>
--- a/ath10k-5.4/mac.c
+++ b/ath10k-5.4/mac.c
@@ -6793,6 +6793,7 @@ static void ath10k_bss_info_changed(stru
--- a/ath10k-5.8/mac.c
+++ b/ath10k-5.8/mac.c
@@ -6653,6 +6653,7 @@ static void ath10k_recalculate_mgmt_rate
return;
}
+ arvif->mgt_rate[def->chan->band] = hw_rate_code;
vdev_param = ar->wmi.vdev_param->mgmt_rate;
ret = ath10k_wmi_vdev_set_param(ar, arvif->vdev_id, vdev_param,
hw_rate_code);
@@ -6879,6 +6880,7 @@ static void ath10k_bss_info_changed(stru
"mac vdev %d mcast_rate %x\n",
arvif->vdev_id, rate);
@ -19,7 +27,7 @@ Signed-off-by: Sven Eckelmann <sven@narfation.org>
vdev_param = ar->wmi.vdev_param->mcast_data_rate;
ret = ath10k_wmi_vdev_set_param(ar, arvif->vdev_id,
vdev_param, rate);
@@ -6801,6 +6802,7 @@ static void ath10k_bss_info_changed(stru
@@ -6887,6 +6889,7 @@ static void ath10k_bss_info_changed(stru
"failed to set mcast rate on vdev %i: %d\n",
arvif->vdev_id, ret);
@ -27,11 +35,3 @@ Signed-off-by: Sven Eckelmann <sven@narfation.org>
vdev_param = ar->wmi.vdev_param->bcast_data_rate;
ret = ath10k_wmi_vdev_set_param(ar, arvif->vdev_id,
vdev_param, rate);
@@ -6827,6 +6829,7 @@ static void ath10k_bss_info_changed(stru
return;
}
+ arvif->mgt_rate[def.chan->band] = hw_rate_code;
vdev_param = ar->wmi.vdev_param->mgmt_rate;
ret = ath10k_wmi_vdev_set_param(ar, arvif->vdev_id, vdev_param,
hw_rate_code);

View File

@ -66,25 +66,25 @@ v13:
* cleanup includes
ath10k-5.4/Kconfig | 10 +++
ath10k-5.4/Makefile | 1 +
ath10k-5.4/core.c | 22 +++++++
ath10k-5.4/core.h | 9 ++-
ath10k-5.4/hw.h | 1 +
ath10k-5.4/leds.c | 103 ++++++++++++++++++++++++++++++
ath10k-5.4/leds.h | 45 +++++++++++++
ath10k-5.4/mac.c | 1 +
ath10k-5.4/wmi-ops.h | 32 ++++++++++
ath10k-5.4/wmi-tlv.c | 2 +
ath10k-5.4/wmi.c | 54 ++++++++++++++++
ath10k-5.4/wmi.h | 35 ++++++++++
ath10k-5.8/Kconfig | 10 +++
ath10k-5.8/Makefile | 1 +
ath10k-5.8/core.c | 22 +++++++
ath10k-5.8/core.h | 9 ++-
ath10k-5.8/hw.h | 1 +
ath10k-5.8/leds.c | 103 ++++++++++++++++++++++++++++++
ath10k-5.8/leds.h | 45 +++++++++++++
ath10k-5.8/mac.c | 1 +
ath10k-5.8/wmi-ops.h | 32 ++++++++++
ath10k-5.8/wmi-tlv.c | 2 +
ath10k-5.8/wmi.c | 54 ++++++++++++++++
ath10k-5.8/wmi.h | 35 ++++++++++
12 files changed, 314 insertions(+), 1 deletion(-)
create mode 100644 ath10k-5.4/leds.c
create mode 100644 ath10k-5.4/leds.h
create mode 100644 ath10k-5.8/leds.c
create mode 100644 ath10k-5.8/leds.h
--- a/ath10k-5.4/Kconfig
+++ b/ath10k-5.4/Kconfig
@@ -66,6 +66,16 @@ config ATH10K_DEBUGFS
--- a/ath10k-5.8/Kconfig
+++ b/ath10k-5.8/Kconfig
@@ -65,6 +65,16 @@ config ATH10K_DEBUGFS
If unsure, say Y to make it easier to debug problems.
@ -101,19 +101,19 @@ v13:
config ATH10K_SPECTRAL
bool "Atheros ath10k spectral scan support"
depends on ATH10K_DEBUGFS
--- a/ath10k-5.4/Makefile
+++ b/ath10k-5.4/Makefile
@@ -19,6 +19,7 @@ ath10k_core-$(CONFIG_ATH10K_SPECTRAL) +=
--- a/ath10k-5.8/Makefile
+++ b/ath10k-5.8/Makefile
@@ -20,6 +20,7 @@ ath10k_core-$(CONFIG_ATH10K_SPECTRAL) +=
ath10k_core-$(CONFIG_NL80211_TESTMODE) += testmode.o
ath10k_core-$(CONFIG_ATH10K_TRACING) += trace.o
ath10k_core-$(CONFIG_THERMAL) += thermal.o
+ath10k_core-$(CONFIG_ATH10K_LEDS) += leds.o
ath10k_core-$(CONFIG_MAC80211_DEBUGFS) += debugfs_sta.o
ath10k_core-$(CONFIG_PM) += wow.o
ath10k_core-$(CONFIG_DEV_COREDUMP) += coredump.o
--- a/ath10k-5.4/core.c
+++ b/ath10k-5.4/core.c
@@ -25,6 +25,7 @@
ath10k_core-$(CONFIG_ATH10K_CE) += ce.o
--- a/ath10k-5.8/core.c
+++ b/ath10k-5.8/core.c
@@ -26,6 +26,7 @@
#include "testmode.h"
#include "wmi-ops.h"
#include "coredump.h"
@ -121,7 +121,7 @@ v13:
/* Disable ath10k-ct DBGLOG output by default */
unsigned int ath10k_debug_mask = ATH10K_DBG_NO_DBGLOG;
@@ -67,6 +68,7 @@ static const struct ath10k_hw_params ath
@@ -68,6 +69,7 @@ static const struct ath10k_hw_params ath
.dev_id = QCA988X_2_0_DEVICE_ID,
.bus = ATH10K_BUS_PCI,
.name = "qca988x hw2.0",
@ -129,7 +129,7 @@ v13:
.patch_load_addr = QCA988X_HW_2_0_PATCH_LOAD_ADDR,
.uart_pin = 7,
.cc_wraparound_type = ATH10K_HW_CC_WRAP_SHIFTED_ALL,
@@ -137,6 +139,7 @@ static const struct ath10k_hw_params ath
@@ -138,6 +140,7 @@ static const struct ath10k_hw_params ath
.dev_id = QCA9887_1_0_DEVICE_ID,
.bus = ATH10K_BUS_PCI,
.name = "qca9887 hw1.0",
@ -137,7 +137,7 @@ v13:
.patch_load_addr = QCA9887_HW_1_0_PATCH_LOAD_ADDR,
.uart_pin = 7,
.cc_wraparound_type = ATH10K_HW_CC_WRAP_SHIFTED_ALL,
@@ -344,6 +347,7 @@ static const struct ath10k_hw_params ath
@@ -347,6 +350,7 @@ static const struct ath10k_hw_params ath
.dev_id = QCA99X0_2_0_DEVICE_ID,
.bus = ATH10K_BUS_PCI,
.name = "qca99x0 hw2.0",
@ -145,7 +145,7 @@ v13:
.patch_load_addr = QCA99X0_HW_2_0_PATCH_LOAD_ADDR,
.uart_pin = 7,
.otp_exe_param = 0x00000700,
@@ -385,6 +389,7 @@ static const struct ath10k_hw_params ath
@@ -388,6 +392,7 @@ static const struct ath10k_hw_params ath
.dev_id = QCA9984_1_0_DEVICE_ID,
.bus = ATH10K_BUS_PCI,
.name = "qca9984/qca9994 hw1.0",
@ -153,7 +153,7 @@ v13:
.patch_load_addr = QCA9984_HW_1_0_PATCH_LOAD_ADDR,
.uart_pin = 7,
.cc_wraparound_type = ATH10K_HW_CC_WRAP_SHIFTED_EACH,
@@ -433,6 +438,7 @@ static const struct ath10k_hw_params ath
@@ -436,6 +441,7 @@ static const struct ath10k_hw_params ath
.dev_id = QCA9888_2_0_DEVICE_ID,
.bus = ATH10K_BUS_PCI,
.name = "qca9888 hw2.0",
@ -161,7 +161,7 @@ v13:
.patch_load_addr = QCA9888_HW_2_0_PATCH_LOAD_ADDR,
.uart_pin = 7,
.cc_wraparound_type = ATH10K_HW_CC_WRAP_SHIFTED_EACH,
@@ -3573,6 +3579,10 @@ int ath10k_core_start(struct ath10k *ar,
@@ -3675,6 +3681,10 @@ int ath10k_core_start(struct ath10k *ar,
ath10k_wmi_check_apply_board_power_ctl_table(ar);
}
@ -172,7 +172,7 @@ v13:
return 0;
err_hif_stop:
@@ -3829,9 +3839,18 @@ static void ath10k_core_register_work(st
@@ -3933,9 +3943,18 @@ static void ath10k_core_register_work(st
goto err_spectral_destroy;
}
@ -191,7 +191,7 @@ v13:
err_spectral_destroy:
ath10k_spectral_destroy(ar);
err_debug_destroy:
@@ -3891,6 +3910,8 @@ void ath10k_core_unregister(struct ath10
@@ -3995,6 +4014,8 @@ void ath10k_core_unregister(struct ath10
if (!test_bit(ATH10K_FLAG_CORE_REGISTERED, &ar->dev_flags))
return;
@ -200,8 +200,8 @@ v13:
ath10k_thermal_unregister(ar);
/* Stop spectral before unregistering from mac80211 to remove the
* relayfs debugfs file cleanly. Otherwise the parent debugfs tree
--- a/ath10k-5.4/core.h
+++ b/ath10k-5.4/core.h
--- a/ath10k-5.8/core.h
+++ b/ath10k-5.8/core.h
@@ -14,6 +14,7 @@
#include <linux/pci.h>
#include <linux/uuid.h>
@ -210,7 +210,7 @@ v13:
#include "htt.h"
#include "htc.h"
@@ -1470,6 +1471,13 @@ struct ath10k {
@@ -1523,6 +1524,13 @@ struct ath10k {
} testmode;
struct {
@ -222,11 +222,11 @@ v13:
+
+ struct {
/* protected by data_lock */
u32 rx_crc_err_drop;
u32 fw_crash_counter;
u32 fw_warm_reset_counter;
--- a/ath10k-5.4/hw.h
+++ b/ath10k-5.4/hw.h
@@ -518,6 +518,7 @@ struct ath10k_hw_params {
--- a/ath10k-5.8/hw.h
+++ b/ath10k-5.8/hw.h
@@ -521,6 +521,7 @@ struct ath10k_hw_params {
const char *name;
u32 patch_load_addr;
int uart_pin;
@ -235,7 +235,7 @@ v13:
/* Type of hw cycle counter wraparound logic, for more info
--- /dev/null
+++ b/ath10k-5.4/leds.c
+++ b/ath10k-5.8/leds.c
@@ -0,0 +1,103 @@
+/*
+ * Copyright (c) 2005-2011 Atheros Communications Inc.
@ -341,7 +341,7 @@ v13:
+}
+
--- /dev/null
+++ b/ath10k-5.4/leds.h
+++ b/ath10k-5.8/leds.h
@@ -0,0 +1,41 @@
+/*
+ * Copyright (c) 2018, The Linux Foundation. All rights reserved.
@ -384,9 +384,9 @@ v13:
+
+#endif
+#endif /* _LEDS_H_ */
--- a/ath10k-5.4/mac.c
+++ b/ath10k-5.4/mac.c
@@ -24,6 +24,7 @@
--- a/ath10k-5.8/mac.c
+++ b/ath10k-5.8/mac.c
@@ -25,6 +25,7 @@
#include "wmi-tlv.h"
#include "wmi-ops.h"
#include "wow.h"
@ -394,9 +394,9 @@ v13:
/*********/
/* Rates */
--- a/ath10k-5.4/wmi-ops.h
+++ b/ath10k-5.4/wmi-ops.h
@@ -218,7 +218,10 @@ struct wmi_ops {
--- a/ath10k-5.8/wmi-ops.h
+++ b/ath10k-5.8/wmi-ops.h
@@ -226,7 +226,10 @@ struct wmi_ops {
struct sk_buff *(*gen_bb_timing)
(struct ath10k *ar,
const struct wmi_bb_timing_cfg_arg *arg);
@ -407,7 +407,7 @@ v13:
};
int ath10k_wmi_cmd_send(struct ath10k *ar, struct sk_buff *skb, u32 cmd_id);
@@ -1105,6 +1108,35 @@ ath10k_wmi_force_fw_hang(struct ath10k *
@@ -1145,6 +1148,35 @@ ath10k_wmi_force_fw_hang(struct ath10k *
return ath10k_wmi_cmd_send(ar, skb, ar->wmi.cmd->force_fw_hang_cmdid);
}
@ -443,9 +443,9 @@ v13:
static inline int
ath10k_wmi_dbglog_cfg(struct ath10k *ar, u64 module_enable, u32 log_level)
{
--- a/ath10k-5.4/wmi-tlv.c
+++ b/ath10k-5.4/wmi-tlv.c
@@ -4367,6 +4367,8 @@ static const struct wmi_ops wmi_tlv_ops
--- a/ath10k-5.8/wmi-tlv.c
+++ b/ath10k-5.8/wmi-tlv.c
@@ -4583,6 +4583,8 @@ static const struct wmi_ops wmi_tlv_ops
.gen_echo = ath10k_wmi_tlv_op_gen_echo,
.gen_vdev_spectral_conf = ath10k_wmi_tlv_op_gen_vdev_spectral_conf,
.gen_vdev_spectral_enable = ath10k_wmi_tlv_op_gen_vdev_spectral_enable,
@ -454,9 +454,9 @@ v13:
};
static const struct wmi_peer_flags_map wmi_tlv_peer_flags_map = {
--- a/ath10k-5.4/wmi.c
+++ b/ath10k-5.4/wmi.c
@@ -8305,6 +8305,49 @@ ath10k_wmi_op_gen_peer_set_param(struct
--- a/ath10k-5.8/wmi.c
+++ b/ath10k-5.8/wmi.c
@@ -8412,6 +8412,49 @@ ath10k_wmi_op_gen_peer_set_param(struct
return skb;
}
@ -506,7 +506,7 @@ v13:
static struct sk_buff *
ath10k_wmi_op_gen_set_psmode(struct ath10k *ar, u32 vdev_id,
enum wmi_sta_ps_mode psmode)
@@ -10104,6 +10147,9 @@ static const struct wmi_ops wmi_ops = {
@@ -10211,6 +10254,9 @@ static const struct wmi_ops wmi_ops = {
.fw_stats_fill = ath10k_wmi_main_op_fw_stats_fill,
.get_vdev_subtype = ath10k_wmi_op_get_vdev_subtype,
.gen_echo = ath10k_wmi_op_gen_echo,
@ -516,7 +516,7 @@ v13:
/* .gen_bcn_tmpl not implemented */
/* .gen_prb_tmpl not implemented */
/* .gen_p2p_go_bcn_ie not implemented */
@@ -10174,6 +10220,8 @@ static const struct wmi_ops wmi_10_1_ops
@@ -10281,6 +10327,8 @@ static const struct wmi_ops wmi_10_1_ops
.fw_stats_fill = ath10k_wmi_10x_op_fw_stats_fill,
.get_vdev_subtype = ath10k_wmi_op_get_vdev_subtype,
.gen_echo = ath10k_wmi_op_gen_echo,
@ -525,7 +525,7 @@ v13:
/* .gen_bcn_tmpl not implemented */
/* .gen_prb_tmpl not implemented */
/* .gen_p2p_go_bcn_ie not implemented */
@@ -10253,6 +10301,8 @@ static const struct wmi_ops wmi_10_2_ops
@@ -10360,6 +10408,8 @@ static const struct wmi_ops wmi_10_2_ops
.gen_delba_send = ath10k_wmi_op_gen_delba_send,
.fw_stats_fill = ath10k_wmi_10x_op_fw_stats_fill,
.get_vdev_subtype = ath10k_wmi_op_get_vdev_subtype,
@ -534,7 +534,7 @@ v13:
/* .gen_pdev_enable_adaptive_cca not implemented */
};
@@ -10324,6 +10374,8 @@ static const struct wmi_ops wmi_10_2_4_o
@@ -10431,6 +10481,8 @@ static const struct wmi_ops wmi_10_2_4_o
ath10k_wmi_op_gen_pdev_enable_adaptive_cca,
.get_vdev_subtype = ath10k_wmi_10_2_4_op_get_vdev_subtype,
.gen_bb_timing = ath10k_wmi_10_2_4_op_gen_bb_timing,
@ -543,7 +543,7 @@ v13:
/* .gen_bcn_tmpl not implemented */
/* .gen_prb_tmpl not implemented */
/* .gen_p2p_go_bcn_ie not implemented */
@@ -10405,6 +10457,8 @@ static const struct wmi_ops wmi_10_4_ops
@@ -10512,6 +10564,8 @@ static const struct wmi_ops wmi_10_4_ops
.gen_pdev_bss_chan_info_req = ath10k_wmi_10_2_op_gen_pdev_bss_chan_info,
.gen_echo = ath10k_wmi_op_gen_echo,
.gen_pdev_get_tpc_config = ath10k_wmi_10_2_4_op_gen_pdev_get_tpc_config,
@ -552,9 +552,9 @@ v13:
};
int ath10k_wmi_attach(struct ath10k *ar)
--- a/ath10k-5.4/wmi.h
+++ b/ath10k-5.4/wmi.h
@@ -3110,6 +3110,41 @@ enum wmi_10_4_feature_mask {
--- a/ath10k-5.8/wmi.h
+++ b/ath10k-5.8/wmi.h
@@ -3121,6 +3121,41 @@ enum wmi_10_4_feature_mask {
};

View File

@ -9,14 +9,14 @@ traffic.
Signed-off-by: Mathias Kresin <dev@kresin.me>
---
ath10k-5.4/core.h | 4 ++++
ath10k-5.4/leds.c | 4 +---
ath10k-5.4/mac.c | 2 +-
ath10k-5.8/core.h | 4 ++++
ath10k-5.8/leds.c | 4 +---
ath10k-5.8/mac.c | 2 +-
3 files changed, 6 insertions(+), 4 deletions(-)
--- a/ath10k-5.4/core.h
+++ b/ath10k-5.4/core.h
@@ -1574,6 +1574,10 @@ struct ath10k {
--- a/ath10k-5.8/core.h
+++ b/ath10k-5.8/core.h
@@ -1631,6 +1631,10 @@ struct ath10k {
u8 csi_data[4096];
u16 csi_data_len;
@ -25,10 +25,10 @@ Signed-off-by: Mathias Kresin <dev@kresin.me>
+#endif
+
/* must be last */
u8 drv_priv[0] __aligned(sizeof(void *));
u8 drv_priv[] __aligned(sizeof(void *));
};
--- a/ath10k-5.4/leds.c
+++ b/ath10k-5.4/leds.c
--- a/ath10k-5.8/leds.c
+++ b/ath10k-5.8/leds.c
@@ -81,9 +81,7 @@ int ath10k_leds_register(struct ath10k *
ar->leds.cdev.name = ar->leds.label;
@ -40,9 +40,9 @@ Signed-off-by: Mathias Kresin <dev@kresin.me>
ret = led_classdev_register(wiphy_dev(ar->hw->wiphy), &ar->leds.cdev);
if (ret)
--- a/ath10k-5.4/mac.c
+++ b/ath10k-5.4/mac.c
@@ -10383,7 +10383,7 @@ int ath10k_mac_register(struct ath10k *a
--- a/ath10k-5.8/mac.c
+++ b/ath10k-5.8/mac.c
@@ -10680,7 +10680,7 @@ int ath10k_mac_register(struct ath10k *a
ar->hw->weight_multiplier = ATH10K_AIRTIME_WEIGHT_MULTIPLIER;
#ifdef CPTCFG_MAC80211_LEDS

View File

@ -1,10 +0,0 @@
--- a/ath10k-5.4/mac.c
+++ b/ath10k-5.4/mac.c
@@ -10182,6 +10182,7 @@ int ath10k_mac_register(struct ath10k *a
wiphy_ext_feature_set(ar->hw->wiphy, NL80211_EXT_FEATURE_VHT_IBSS);
wiphy_ext_feature_set(ar->hw->wiphy,
NL80211_EXT_FEATURE_SET_SCAN_DWELL);
+ wiphy_ext_feature_set(ar->hw->wiphy, NL80211_EXT_FEATURE_AQL);
if (test_bit(WMI_SERVICE_TX_DATA_ACK_RSSI, ar->wmi.svc_map) ||
test_bit(WMI_SERVICE_HTT_MGMT_TX_COMP_VALID_FLAGS, ar->wmi.svc_map))

View File

@ -1,6 +1,6 @@
--- a/ath10k-5.4/htt.h
+++ b/ath10k-5.4/htt.h
@@ -225,7 +225,11 @@ enum htt_rx_ring_flags {
--- a/ath10k-5.8/htt.h
+++ b/ath10k-5.8/htt.h
@@ -237,7 +237,11 @@ enum htt_rx_ring_flags {
};
#define HTT_RX_RING_SIZE_MIN 128

View File

@ -1,6 +1,6 @@
--- a/ath10k-5.4/pci.c
+++ b/ath10k-5.4/pci.c
@@ -131,7 +131,11 @@ static struct ce_attr host_ce_config_wla
--- a/ath10k-5.8/pci.c
+++ b/ath10k-5.8/pci.c
@@ -131,7 +131,11 @@ static const struct ce_attr pci_host_ce_
.flags = CE_ATTR_FLAGS,
.src_nentries = 0,
.src_sz_max = 2048,
@ -12,7 +12,7 @@
.recv_cb = ath10k_pci_htt_htc_rx_cb,
},
@@ -140,7 +144,11 @@ static struct ce_attr host_ce_config_wla
@@ -140,7 +144,11 @@ static const struct ce_attr pci_host_ce_
.flags = CE_ATTR_FLAGS,
.src_nentries = 0,
.src_sz_max = 2048,
@ -24,7 +24,7 @@
.recv_cb = ath10k_pci_htc_rx_cb,
},
@@ -167,7 +175,11 @@ static struct ce_attr host_ce_config_wla
@@ -167,7 +175,11 @@ static const struct ce_attr pci_host_ce_
.flags = CE_ATTR_FLAGS,
.src_nentries = 0,
.src_sz_max = 512,
@ -36,7 +36,7 @@
.recv_cb = ath10k_pci_htt_rx_cb,
},
@@ -192,7 +204,11 @@ static struct ce_attr host_ce_config_wla
@@ -192,7 +204,11 @@ static const struct ce_attr pci_host_ce_
.flags = CE_ATTR_FLAGS,
.src_nentries = 0,
.src_sz_max = 2048,

View File

@ -7,26 +7,25 @@ include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=exfat
PKG_VERSION:=5.8.7
PKG_VERSION:=5.10.1
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/namjaejeon/linux-exfat-oot/tar.gz/$(PKG_VERSION)?
PKG_HASH:=20254677bed3f456e89cc9d757c1a47abbadab4d75640eef4a995370a37be3f4
PKG_HASH:=0ff77dd7d39eb231d00c3c4909b9fad31ebeeb618bd6fa18fce142becc9c1f98
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/linux-exfat-oot-$(PKG_VERSION)
PKG_MAINTAINER:=
PKG_LICENSE:=GPL-2.0-only
include $(INCLUDE_DIR)/package.mk
TAR_OPTIONS+= --strip-components 1
TAR_CMD=$(HOST_TAR) -C $(1) $(TAR_OPTIONS)
define KernelPackage/fs-exfat
SECTION:=kernel
CATEGORY:=Kernel modules
SUBMENU:=Filesystems
TITLE:=exFAT kernel module
URL:=https://github.com/namjaejeon/linux-exfat-oot
FILES:=$(PKG_BUILD_DIR)/exfat.ko
AUTOLOAD:=$(call AutoProbe,exfat)
DEPENDS:= +kmod-nls-base

View File

@ -1218,10 +1218,10 @@ define KernelPackage/sfc
DEPENDS:=@PCI_SUPPORT +kmod-mdio +kmod-lib-crc32c +kmod-ptp +kmod-hwmon-core
KCONFIG:= \
CONFIG_SFC \
CONFIG_SFC_MTD \
CONFIG_SFC_MCDI_MON \
CONFIG_SFC_MCDI_LOGGING \
CONFIG_SFC_SRIOV
CONFIG_SFC_MTD=y \
CONFIG_SFC_MCDI_MON=y \
CONFIG_SFC_MCDI_LOGGING=y \
CONFIG_SFC_SRIOV=y
FILES:=$(LINUX_DIR)/drivers/net/ethernet/sfc/sfc.ko
AUTOLOAD:=$(call AutoProbe,sfc)
endef
@ -1239,7 +1239,7 @@ define KernelPackage/sfc-falcon
DEPENDS:=@PCI_SUPPORT +kmod-mdio +kmod-lib-crc32c +kmod-i2c-algo-bit
KCONFIG:= \
CONFIG_SFC_FALCON \
CONFIG_SFC_FALCON_MTD
CONFIG_SFC_FALCON_MTD=y
FILES:=$(LINUX_DIR)/drivers/net/ethernet/sfc/falcon/sfc-falcon.ko
AUTOLOAD:=$(call AutoProbe,sfc-falcon)
endef

View File

@ -8,24 +8,26 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libiconv-full
PKG_VERSION:=1.11.1
PKG_RELEASE:=4
PKG_MAINTAINER:=Jo-Philipp Wich <jo@mein.io>
PKG_VERSION:=1.16
PKG_RELEASE:=1
PKG_SOURCE:=libiconv-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@GNU/libiconv
PKG_HASH:=e78c347a1a0cb15f2648519e9799151f4b4a934b61ad9ee7424478efe2b8257f
PKG_HASH:=e6a1b1b589654277ee790cce3734f07876ac4ccfaecbee8afa0b649cf529cc04
PKG_BUILD_DIR:=$(BUILD_DIR)/libiconv-$(PKG_VERSION)
PKG_LICENSE:=LGPL-2.0
PKG_MAINTAINER:=Jo-Philipp Wich <jo@mein.io>
PKG_LICENSE:=LGPL-2.1-or-later
PKG_LICENSE_FILES:=COPYING.LIB
PKG_FIXUP:=patch-libtool
PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1
include $(INCLUDE_DIR)/package.mk
define Package/libiconv-full/Default
URL:=http://www.gnu.org/software/libiconv/
URL:=https://www.gnu.org/software/libiconv/
TITLE:=Character set conversion
endef
@ -53,21 +55,12 @@ define Package/iconv
TITLE+= utility
endef
TARGET_CFLAGS += $(FPIC) -DUSE_DOS -std=gnu89
CONFIGURE_ARGS += \
--enable-shared \
--enable-static \
--disable-rpath \
--enable-relocatable
define Build/Compile
$(MAKE) -C $(PKG_BUILD_DIR) \
CC="$(TARGET_CC)" \
DESTDIR="$(PKG_INSTALL_DIR)" \
install
endef
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/lib/libiconv-full/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/iconv.h $(1)/usr/lib/libiconv-full/include/

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,31 +0,0 @@
--- /dev/null
+++ b/Makefile.am
@@ -0,0 +1,2 @@
+ACLOCAL_AMFLAGS = -I m4
+SUBDIRS = .
--- /dev/null
+++ b/libcharset/Makefile.am
@@ -0,0 +1 @@
+ACLOCAL_AMFLAGS = -I m4
--- a/configure.ac
+++ b/configure.ac
@@ -54,7 +54,7 @@ AC_ISC_POSIX
dnl checks for installer options
-AC_RELOCATABLE
+gl_RELOCATABLE
AC_ARG_ENABLE([extra-encodings],
[AC_HELP_STRING([--enable-extra-encodings],
--- a/libcharset/configure.ac
+++ b/libcharset/configure.ac
@@ -41,7 +41,7 @@ AC_CANONICAL_HOST
dnl checks for installer options
-AC_RELOCATABLE_LIBRARY
+gl_RELOCATABLE_LIBRARY
dnl checks for programs

View File

@ -1,17 +0,0 @@
Make iconv 1.11.x link correctly with libtool2 - argument "-Xcompiler" ensures "-shared" is passed to $(CC) when used as linker. Otherwise $(CC) tries to create an executable and fails while looking for a main()-function
diff -ruN libiconv-1.11.1/lib/Makefile.in libiconv-1.11.1.mod/lib/Makefile.in
--- libiconv-1.11.1/lib/Makefile.in 2006-07-14 15:18:42.000000000 +0200
+++ libiconv-1.11.1.mod/lib/Makefile.in 2010-12-01 20:47:57.000000000 +0100
@@ -70,9 +70,9 @@
preloadable_libiconv_linux.so : $(SOURCES)
if test -n "@GCC@"; then \
- $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -fPIC -DPIC -DLIBICONV_PLUG $(SOURCES) -shared -o preloadable_libiconv_linux.so; \
+ $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -fPIC -DPIC -DLIBICONV_PLUG $(SOURCES) -Xcompiler -shared -o preloadable_libiconv_linux.so; \
else \
- $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -KPIC -DPIC -DLIBICONV_PLUG $(SOURCES) -shared -o preloadable_libiconv_linux.so; \
+ $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -KPIC -DPIC -DLIBICONV_PLUG $(SOURCES) -Xcompiler -shared -o preloadable_libiconv_linux.so; \
fi
preloadable_libiconv_solaris.so : $(SOURCES)

View File

@ -1,23 +0,0 @@
--- a/m4/canonicalize.m4
+++ b/m4/canonicalize.m4
@@ -11,8 +11,6 @@ AC_DEFUN([gl_CANONICALIZE],
AC_CHECK_FUNCS(canonicalize_file_name)
if test $ac_cv_func_canonicalize_file_name = no; then
AC_LIBOBJ(canonicalize)
- AC_DEFINE([realpath], [rpl_realpath],
- [Define to a replacement function name for realpath().])
gl_PREREQ_CANONICALIZE
fi
])
--- a/configure
+++ b/configure
@@ -35532,9 +35532,6 @@ done
if test $ac_cv_func_canonicalize_file_name = no; then
SRCLIBOBJS="$SRCLIBOBJS canonicalize.$ac_objext"
-cat >>confdefs.h <<\_ACEOF
-#define realpath rpl_realpath
-_ACEOF

View File

@ -1,48 +0,0 @@
#
# Copyright (C) 2014 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=libroxml
PKG_VERSION:=3.0.2
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://download.libroxml.net/pool/v3.x
PKG_HASH:=ed6d68d1bceabf98e5e76907411e2e4d93b2dbd48479ab41dede851f59dad6a3
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1
PKG_LICENSE:=LGPL-2.1+
include $(INCLUDE_DIR)/package.mk
define Package/libroxml
SECTION:=libs
CATEGORY:=Libraries
TITLE:=Minimum, easy-to-use, C implementation for xml file parsing
URL:=http://www.libroxml.net/
ABI_VERSION:=3.0.2
endef
CONFIGURE_ARGS += \
--enable-shared \
--enable-static \
--disable-roxml
define Build/InstallDev
$(INSTALL_DIR) $(1)
$(CP) $(PKG_INSTALL_DIR)/* $(1)/
endef
define Package/libroxml/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libroxml.so.* $(1)/usr/lib/
endef
$(eval $(call BuildPackage,libroxml))

View File

@ -1,54 +0,0 @@
#
# Copyright (C) 2010-2015 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=libusb-compat
PKG_VERSION:=0.1.5
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=@SF/libusb
PKG_HASH:=404ef4b6b324be79ac1bfb3d839eac860fbc929e6acb1ef88793a6ea328bc55a
PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1
PKG_LICENSE:=LGPL-2.1
PKG_MAINTAINER := Felix Fietkau <nbd@nbd.name>
include $(INCLUDE_DIR)/package.mk
define Package/libusb-compat
SECTION:=libs
CATEGORY:=Libraries
TITLE:=libusb-0.1 compatibility library
DEPENDS:=+libusb-1.0
URL:=http://libusb.wiki.sourceforge.net/
ABI_VERSION:=4
endef
define Package/libusb-compat/description
libusb is a C library that gives applications easy access to USB devices on
many different operating systems.
endef
TARGET_CFLAGS += $(FPIC)
define Build/InstallDev
$(INSTALL_DIR) $(1)
$(CP) $(PKG_INSTALL_DIR)/* $(1)/
$(INSTALL_DIR) $(2)/bin
$(CP) $(PKG_INSTALL_DIR)/usr/bin/libusb-config $(2)/bin/
endef
define Package/libusb-compat/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libusb-0.1.so* $(1)/usr/lib/
endef
$(eval $(call BuildPackage,libusb-compat))

View File

@ -1,185 +0,0 @@
--- a/libusb/usb.h
+++ b/libusb/usb.h
@@ -27,6 +27,7 @@
#include <unistd.h>
#include <stdlib.h>
+#include <stdint.h>
#include <limits.h>
#include <dirent.h>
@@ -78,40 +79,40 @@
/* All standard descriptors have these 2 fields in common */
struct usb_descriptor_header {
- u_int8_t bLength;
- u_int8_t bDescriptorType;
+ uint8_t bLength;
+ uint8_t bDescriptorType;
};
/* String descriptor */
struct usb_string_descriptor {
- u_int8_t bLength;
- u_int8_t bDescriptorType;
- u_int16_t wData[1];
+ uint8_t bLength;
+ uint8_t bDescriptorType;
+ uint16_t wData[1];
};
/* HID descriptor */
struct usb_hid_descriptor {
- u_int8_t bLength;
- u_int8_t bDescriptorType;
- u_int16_t bcdHID;
- u_int8_t bCountryCode;
- u_int8_t bNumDescriptors;
- /* u_int8_t bReportDescriptorType; */
- /* u_int16_t wDescriptorLength; */
+ uint8_t bLength;
+ uint8_t bDescriptorType;
+ uint16_t bcdHID;
+ uint8_t bCountryCode;
+ uint8_t bNumDescriptors;
+ /* uint8_t bReportDescriptorType; */
+ /* uint16_t wDescriptorLength; */
/* ... */
};
/* Endpoint descriptor */
#define USB_MAXENDPOINTS 32
struct usb_endpoint_descriptor {
- u_int8_t bLength;
- u_int8_t bDescriptorType;
- u_int8_t bEndpointAddress;
- u_int8_t bmAttributes;
- u_int16_t wMaxPacketSize;
- u_int8_t bInterval;
- u_int8_t bRefresh;
- u_int8_t bSynchAddress;
+ uint8_t bLength;
+ uint8_t bDescriptorType;
+ uint8_t bEndpointAddress;
+ uint8_t bmAttributes;
+ uint16_t wMaxPacketSize;
+ uint8_t bInterval;
+ uint8_t bRefresh;
+ uint8_t bSynchAddress;
unsigned char *extra; /* Extra descriptors */
int extralen;
@@ -129,15 +130,15 @@ struct usb_endpoint_descriptor {
/* Interface descriptor */
#define USB_MAXINTERFACES 32
struct usb_interface_descriptor {
- u_int8_t bLength;
- u_int8_t bDescriptorType;
- u_int8_t bInterfaceNumber;
- u_int8_t bAlternateSetting;
- u_int8_t bNumEndpoints;
- u_int8_t bInterfaceClass;
- u_int8_t bInterfaceSubClass;
- u_int8_t bInterfaceProtocol;
- u_int8_t iInterface;
+ uint8_t bLength;
+ uint8_t bDescriptorType;
+ uint8_t bInterfaceNumber;
+ uint8_t bAlternateSetting;
+ uint8_t bNumEndpoints;
+ uint8_t bInterfaceClass;
+ uint8_t bInterfaceSubClass;
+ uint8_t bInterfaceProtocol;
+ uint8_t iInterface;
struct usb_endpoint_descriptor *endpoint;
@@ -155,14 +156,14 @@ struct usb_interface {
/* Configuration descriptor information.. */
#define USB_MAXCONFIG 8
struct usb_config_descriptor {
- u_int8_t bLength;
- u_int8_t bDescriptorType;
- u_int16_t wTotalLength;
- u_int8_t bNumInterfaces;
- u_int8_t bConfigurationValue;
- u_int8_t iConfiguration;
- u_int8_t bmAttributes;
- u_int8_t MaxPower;
+ uint8_t bLength;
+ uint8_t bDescriptorType;
+ uint16_t wTotalLength;
+ uint8_t bNumInterfaces;
+ uint8_t bConfigurationValue;
+ uint8_t iConfiguration;
+ uint8_t bmAttributes;
+ uint8_t MaxPower;
struct usb_interface *interface;
@@ -172,28 +173,28 @@ struct usb_config_descriptor {
/* Device descriptor */
struct usb_device_descriptor {
- u_int8_t bLength;
- u_int8_t bDescriptorType;
- u_int16_t bcdUSB;
- u_int8_t bDeviceClass;
- u_int8_t bDeviceSubClass;
- u_int8_t bDeviceProtocol;
- u_int8_t bMaxPacketSize0;
- u_int16_t idVendor;
- u_int16_t idProduct;
- u_int16_t bcdDevice;
- u_int8_t iManufacturer;
- u_int8_t iProduct;
- u_int8_t iSerialNumber;
- u_int8_t bNumConfigurations;
+ uint8_t bLength;
+ uint8_t bDescriptorType;
+ uint16_t bcdUSB;
+ uint8_t bDeviceClass;
+ uint8_t bDeviceSubClass;
+ uint8_t bDeviceProtocol;
+ uint8_t bMaxPacketSize0;
+ uint16_t idVendor;
+ uint16_t idProduct;
+ uint16_t bcdDevice;
+ uint8_t iManufacturer;
+ uint8_t iProduct;
+ uint8_t iSerialNumber;
+ uint8_t bNumConfigurations;
};
struct usb_ctrl_setup {
- u_int8_t bRequestType;
- u_int8_t bRequest;
- u_int16_t wValue;
- u_int16_t wIndex;
- u_int16_t wLength;
+ uint8_t bRequestType;
+ uint8_t bRequest;
+ uint16_t wValue;
+ uint16_t wIndex;
+ uint16_t wLength;
};
/*
@@ -254,7 +255,7 @@ struct usb_device {
void *dev; /* Darwin support */
- u_int8_t devnum;
+ uint8_t devnum;
unsigned char num_children;
struct usb_device **children;
@@ -266,7 +267,7 @@ struct usb_bus {
char dirname[PATH_MAX + 1];
struct usb_device *devices;
- u_int32_t location;
+ uint32_t location;
struct usb_device *root_dev;
};

View File

@ -0,0 +1,34 @@
--- a/configure
+++ b/configure
@@ -4635,6 +4635,7 @@ $as_echo_n "checking build system compil
# remove anything that might look like compiler output to our "||" expression
rm -f conftest* a.out b.out a.exe a_out.exe
cat >conftest.c <<EOF
+#include <stdlib.h>
int
main ()
{
@@ -4667,6 +4668,7 @@ $as_echo_n "checking build system compil
# remove anything that might look like compiler output to our "||" expression
rm -f conftest* a.out b.out a.exe a_out.exe
cat >conftest.c <<EOF
+#include <stdlib.h>
int
main ()
{
@@ -4703,6 +4705,7 @@ $as_echo_n "checking build system compil
# remove anything that might look like compiler output to our "||" expression
rm -f conftest* a.out b.out a.exe a_out.exe
cat >conftest.c <<EOF
+#include <stdlib.h>
int
main ()
{
@@ -4753,6 +4756,7 @@ else
gmp_cv_prog_exeext_for_build="$EXEEXT"
else
cat >conftest.c <<EOF
+#include <stdlib.h>
int
main ()
{

View File

@ -659,6 +659,8 @@ hostapd_set_bss_options() {
}
json_get_vars time_advertisement time_zone wnm_sleep_mode bss_transition
set_default bss_transition 0
set_default wnm_sleep_mode 0
[ -n "$time_advertisement" ] && append bss_conf "time_advertisement=$time_advertisement" "$N"
[ -n "$time_zone" ] && append bss_conf "time_zone=$time_zone" "$N"
@ -670,13 +672,18 @@ hostapd_set_bss_options() {
if [ "$ieee80211k" -eq "1" ]; then
set_default rrm_neighbor_report 1
set_default rrm_beacon_report 1
else
set_default rrm_neighbor_report 0
set_default rrm_beacon_report 0
fi
[ "$rrm_neighbor_report" -eq "1" ] && append bss_conf "rrm_neighbor_report=1" "$N"
[ "$rrm_beacon_report" -eq "1" ] && append bss_conf "rrm_beacon_report=1" "$N"
json_get_vars ftm_responder stationary_ap lci civic
set_default ftm_responder 0
if [ "$ftm_responder" -eq "1" ]; then
set_default stationary_ap 0
iw phy "$phy" info | grep -q "ENABLE_FTM_RESPONDER" && {
append bss_conf "ftm_responder=1" "$N"
[ "$stationary_ap" -eq "1" ] && append bss_conf "stationary_ap=1" "$N"

View File

@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=lldpd
PKG_VERSION:=1.0.5
PKG_RELEASE:=2
PKG_VERSION:=1.0.7
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://media.luffy.cx/files/lldpd
PKG_HASH:=2dd3b212f4dbabfcbb2794c0010b245f9f8e74b387984e757be6243a74c6cb99
PKG_HASH:=1df79179d489c841b49265f2ab5ff05f284a647e95862d2f3c02b3fb079a87e1
PKG_MAINTAINER:=Stijn Tintel <stijn@linux-ipv6.be>
PKG_LICENSE:=ISC

View File

@ -8,7 +8,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=umdns
PKG_RELEASE:=2
PKG_RELEASE:=3
PKG_SOURCE_URL=$(PROJECT_GIT)/project/mdnsd.git
PKG_SOURCE_PROTO:=git

View File

@ -5,6 +5,7 @@
"names": [
"read",
"write",
"writev",
"open",
"close",
"time",

View File

@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=tcpdump
PKG_VERSION:=4.9.3
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://www.us.tcpdump.org/release/ \

View File

@ -0,0 +1,47 @@
--- a/print-ppp.c
+++ b/print-ppp.c
@@ -1368,19 +1368,29 @@ trunc:
}
#ifndef TCPDUMP_MINI
+/*
+ * Un-escape RFC 1662 PPP in HDLC-like framing, with octet escapes.
+ * The length argument is the on-the-wire length, not the captured
+ * length; we can only un-escape the captured part.
+ */
static void
ppp_hdlc(netdissect_options *ndo,
const u_char *p, int length)
{
+ u_int caplen = ndo->ndo_snapend - p;
u_char *b, *t, c;
const u_char *s;
- int i, proto;
+ u_int i;
+ int proto;
const void *se;
+ if (caplen == 0)
+ return;
+
if (length <= 0)
return;
- b = (u_char *)malloc(length);
+ b = (u_char *)malloc(caplen);
if (b == NULL)
return;
@@ -1389,10 +1399,10 @@ ppp_hdlc(netdissect_options *ndo,
* Do this so that we dont overwrite the original packet
* contents.
*/
- for (s = p, t = b, i = length; i > 0 && ND_TTEST(*s); i--) {
+ for (s = p, t = b, i = caplen; i != 0; i--) {
c = *s++;
if (c == 0x7d) {
- if (i <= 1 || !ND_TTEST(*s))
+ if (i <= 1)
break;
i--;
c = *s++ ^ 0x20;

View File

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

View File

@ -30,7 +30,7 @@ proto_qmi_init_config() {
proto_qmi_setup() {
local interface="$1"
local dataformat connstat
local dataformat connstat plmn_mode mcc mnc
local device apn auth username password pincode delay modes pdptype
local profile dhcp dhcpv6 autoconnect plmn timeout mtu $PROTO_DEFAULT_OPTIONS
local ip4table ip6table
@ -152,24 +152,38 @@ proto_qmi_setup() {
esac
fi
[ -n "$plmn" ] && {
local mcc mnc
if [ "$plmn" = 0 ]; then
if [ -n "$plmn" ]; then
json_load "$(uqmi -s -d "$device" --get-plmn)"
json_get_var plmn_mode mode
json_get_vars mcc mnc || {
mcc=0
mnc=0
echo "Setting PLMN to auto"
else
}
if [ "$plmn" = "0" ]; then
if [ "$plmn_mode" != "automatic" ]; then
mcc=0
mnc=0
echo "Setting PLMN to auto"
fi
elif [ "$mcc" -ne "${plmn:0:3}" -o "$mnc" -ne "${plmn:3}" ]; then
mcc=${plmn:0:3}
mnc=${plmn:3}
echo "Setting PLMN to $plmn"
else
mcc=""
mnc=""
fi
fi
if [ -n "$mcc" -a -n "$mnc" ]; then
uqmi -s -d "$device" --set-plmn --mcc "$mcc" --mnc "$mnc" > /dev/null 2>&1 || {
echo "Unable to set PLMN"
proto_notify_error "$interface" PLMN_FAILED
proto_block_restart "$interface"
return 1
}
}
fi
# Cleanup current state if any
uqmi -s -d "$device" --stop-network 0xffffffff --autoconnect > /dev/null 2>&1

View File

@ -9,14 +9,14 @@ include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=opkg
PKG_RELEASE:=2
PKG_RELEASE:=1
PKG_FLAGS:=essential
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://git.openwrt.org/project/opkg-lede.git
PKG_SOURCE_DATE:=2020-11-03
PKG_SOURCE_VERSION:=da9746aaa28fdc63a6e062bf00b25eba52bc8e5f
PKG_MIRROR_HASH:=9c42a8f7dbce4d50b01c3cd10e1974611ffdd9547c27f8f5725b6237433f54e2
PKG_SOURCE_DATE:=2020-11-25
PKG_SOURCE_VERSION:=66f458decf9fd2839d77bf420e93d9c78025488a
PKG_MIRROR_HASH:=932cf0002fd05e8a231df6d3e2c807b2c62501aa36ac2a3e20665622872e262d
PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=COPYING

View File

@ -12,9 +12,9 @@ PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL=$(PROJECT_GIT)/project/procd.git
PKG_SOURCE_DATE:=2020-11-23
PKG_SOURCE_VERSION:=e935c0c043b12415fa36aca01cfc757cadb9fac4
PKG_MIRROR_HASH:=6bb79a7b5c87afbfc7227758cffbebcc5c9752e791bb5a39280a9aebd159250b
PKG_SOURCE_DATE:=2020-11-27
PKG_SOURCE_VERSION:=31e0a46ded22a517c03cb899f890207f0db75fb8
PKG_MIRROR_HASH:=66014cf40e87f45b3dce23b10ed0218fc458ec620e6ab1fd33e4af0c2aca2442
CMAKE_INSTALL:=1
PKG_LICENSE:=GPL-2.0

View File

@ -1105,7 +1105,7 @@ config BUSYBOX_DEFAULT_FEATURE_FIND_MTIME
default y
config BUSYBOX_DEFAULT_FEATURE_FIND_MMIN
bool
default n
default y
config BUSYBOX_DEFAULT_FEATURE_FIND_PERM
bool
default y

View File

@ -174,8 +174,6 @@ TARGET_CFLAGS:=$(TARGET_OPTIMIZATION)$(if $(CONFIG_DEBUG), -g3) $(call qstrip,$(
TARGET_CXXFLAGS = $(TARGET_CFLAGS)
TARGET_ASFLAGS_DEFAULT = $(TARGET_CFLAGS)
TARGET_ASFLAGS = $(TARGET_ASFLAGS_DEFAULT)
TARGET_CPPFLAGS:=-I$(STAGING_DIR)/usr/include
TARGET_LDFLAGS:=-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib
ifneq ($(CONFIG_EXTERNAL_TOOLCHAIN),)
LIBGCC_S_PATH=$(realpath $(wildcard $(call qstrip,$(CONFIG_LIBGCC_ROOT_DIR))/$(call qstrip,$(CONFIG_LIBGCC_FILE_SPEC))))
LIBGCC_S=$(if $(LIBGCC_S_PATH),-L$(dir $(LIBGCC_S_PATH)) -lgcc_s)
@ -328,7 +326,7 @@ else
STRIP:=$(TARGET_CROSS)strip $(call qstrip,$(CONFIG_STRIP_ARGS))
else
ifneq ($(CONFIG_USE_SSTRIP),)
STRIP:=$(STAGING_DIR_HOST)/bin/sstrip
STRIP:=$(STAGING_DIR_HOST)/bin/sstrip $(call qstrip,$(CONFIG_SSTRIP_ARGS))
endif
endif
RSTRIP= \

View File

@ -277,6 +277,24 @@ foreach my $mirror (@ARGV) {
push @mirrors, 'https://sources.openwrt.org';
push @mirrors, 'https://mirror2.openwrt.org/sources';
if (-f "$target/$filename") {
$hash_cmd and do {
if (system("cat '$target/$filename' | $hash_cmd > '$target/$filename.hash'")) {
die "Failed to generate hash for $filename\n";
}
my $sum = `cat "$target/$filename.hash"`;
$sum =~ /^(\w+)\s*/ or die "Could not generate file hash\n";
$sum = $1;
cleanup();
exit 0 if $sum eq $file_hash;
die "Hash of the local file $filename does not match (file: $sum, requested: $file_hash) - deleting download.\n";
unlink "$target/$filename";
};
}
while (!-f "$target/$filename") {
my $mirror = shift @mirrors;
$mirror or die "No more mirrors to try - giving up.\n";

View File

@ -158,8 +158,8 @@ my %update_method = (
'init' => "git clone --depth 1 '%s' '%s'",
'init_branch' => "git clone --depth 1 --branch '%s' '%s' '%s'",
'init_commit' => "git clone '%s' '%s' && cd '%s' && git checkout -b '%s' '%s' && cd -",
'update' => "git pull --ff",
'update_force' => "git pull --ff || (git reset --hard HEAD; git pull --ff; exit 1)",
'update' => "git pull --ff-only",
'update_force' => "git pull --ff-only || (git reset --hard HEAD; git pull --ff-only; exit 1)",
'post_update' => "git submodule update --init --recursive",
'controldir' => ".git",
'revision' => "git rev-parse --short HEAD | tr -d '\n'"},

View File

@ -79,7 +79,12 @@
#ifndef __FreeBSD__
#include <endian.h>
#else
#include <sys/endian.h>
#endif
#include <stdio.h>
#include <string.h>
#include <stdint.h>
@ -89,6 +94,7 @@
#define ARRAY_SIZE(_n) (sizeof(_n) / sizeof((_n)[0]))
#ifndef __FreeBSD__
static void
be32enc(void *buf, uint32_t u)
{
@ -99,6 +105,7 @@ be32enc(void *buf, uint32_t u)
p[2] = ((uint8_t) ((u >> 8) & 0xff));
p[3] = ((uint8_t) (u & 0xff));
}
#endif
static void
be64enc(void *buf, uint64_t u)

151
scripts/size_compare.sh Executable file
View File

@ -0,0 +1,151 @@
# SPDX-License-Identifier: GPL-2.0-or-later
#
# Copyright (C) 2020 Paul Spooren <mail@aparcar.org>
#
###
### size_compare - compare size of OpenWrt packages against upstream
###
### The script compares locally compiled package with the package indexes
### available upstream. This way the storage impact of optimizations or
### feature modifiactions is easy to see.
###
### If no environmental variables are set the scritp reads the current
### .config file. The evaluated env variables are the following:
###
### TARGET SUBTARGET ARCH PACKAGES BIN_DIR BASE_URL CHECK_INSTALLED
###
### Usage:
### ./scripts/size_compare.sh
###
### Options:
### -p --package-size Check IPK package size and not installed size
### -h --help This message
CONFIG_TARGET=$(sed -n 's/^CONFIG_TARGET_BOARD="\(.*\)"$/\1/p' .config)
CONFIG_SUBTARGET=$(sed -n 's/^CONFIG_TARGET_SUBTARGET="\(.*\)"$/\1/p' .config)
CONFIG_ARCH=$(sed -n 's/^CONFIG_TARGET_ARCH_PACKAGES="\(.*\)"$/\1/p' .config)
CONFIG_PACKAGES=$(sed -n 's/^CONFIG_PACKAGE_\(.*\)=y$/\1/p' .config | tr '\n' ' ')
CONFIG_BIN_DIR=$(sed -n 's/^CONFIG_BINARY_DIR="\(.*\)"$/\1/p' .config)
TARGET=${TARGET:-$CONFIG_TARGET}
SUBTARGET=${SUBTARGET:-$CONFIG_SUBTARGET}
ARCH=${ARCH:-$CONFIG_ARCH}
PACKAGES=${PACKAGES:-$CONFIG_PACKAGES}
BIN_DIR=${CONFIG_BIN_DIR:-./bin}
BASE_URL="${BASE_URL:-https://downloads.openwrt.org/snapshots}"
CHECK_INSTALLED="${CHECK_INSTALLED:-y}"
TARGET_URL="$BASE_URL/targets/$TARGET/$SUBTARGET/packages/Packages.gz"
CONFIG_URL="$BASE_URL/targets/$TARGET/$SUBTARGET/config.buildinfo"
PACKAGES_URL="$BASE_URL/packages/$ARCH/base/Packages.gz"
if command -v curl > /dev/null; then
DOWNLOAD_METHOD="curl"
else
DOWNLOAD_METHOD="wget --output-document=-"
fi
help() {
sed -rn 's/^### ?//;T;p' "$0"
}
package_size () {
FOUND_PACKAGE=
if [ -z "$CHECK_INSTALLED" ]; then
SEARCH_PATTERN="Size"
else
SEARCH_PATTERN="Installed-Size"
fi
while IFS= read -r line; do
if [ "$line" = "Package: $2" ]; then
FOUND_PACKAGE=y
fi
if [ -n "$FOUND_PACKAGE" ]; then
case $line in
"$SEARCH_PATTERN"*)
echo "$line" | cut -d ' ' -f 2
break
;;
esac
fi
done < "$1"
}
compare_sizes () {
for PACKAGE in $PACKAGES; do
if [ "$PACKAGE" = "libc" ]; then
continue
fi
PACKAGE_FILE=$(find "$BIN_DIR/packages/$ARCH/" \
"$BIN_DIR/targets/$TARGET/$SUBTARGET/" \
-name "${PACKAGE}_*.ipk" 2>/dev/null | head -n1)
if [ -z "$PACKAGE_FILE" ]; then
continue
fi
if [ -z "$CHECK_INSTALLED" ]; then
SIZE_LOCAL=$(stat -c '%s' "$PACKAGE_FILE")
else
SIZE_LOCAL=$(tar tzvf "$PACKAGE_FILE" ./data.tar.gz | awk '{ print $3 }')
fi
SIZE_UPSTREAM=$(package_size "$TMP_INDEX" "$PACKAGE")
SIZE_DIFF="$((SIZE_LOCAL-SIZE_UPSTREAM))"
if [ "$SIZE_DIFF" -gt 0 ]; then
SIZE_DIFF="+$SIZE_DIFF"
fi
if [ -n "$SIZE_UPSTREAM" ]; then
echo "${SIZE_DIFF} ${SIZE_LOCAL} ${SIZE_UPSTREAM} $PACKAGE"
else
echo "$PACKAGE is missing upstream"
fi
done
}
if [ "$1" = "-h" ]; then
help
exit 0
fi
if [ "$1" = "-p" ]; then
CHECK_INSTALLED=
fi
echo "Compare packages of $TARGET/$SUBTARGET/$ARCH":
echo "$PACKAGES"
echo
echo "Checking configuration difference"
TMP_CONFIG=$(mktemp /tmp/config.XXXXXX)
sed -n 's/^ \+config \(.*\)/\1/p' config/Config-build.in config/Config-devel.in > "${TMP_CONFIG}-FOCUS"
sort .config | grep -f "${TMP_CONFIG}-FOCUS" | grep -v "^#" | sort > "${TMP_CONFIG}-LOCAL"
mv .config .config.bak
"$DOWNLOAD_METHOD" "$CONFIG_URL" > .config
make defconfig > /dev/null 2> /dev/null
grep -f "${TMP_CONFIG}-FOCUS" .config | grep -v "^#" | sort > "${TMP_CONFIG}-UPSTREAM"
mv .config.bak .config
echo
echo " --- start config diff ---"
diff -u "${TMP_CONFIG}-LOCAL" "${TMP_CONFIG}-UPSTREAM"
echo " --- end config diff ---"
rm "${TMP_CONFIG}-FOCUS" "${TMP_CONFIG}-UPSTREAM" "${TMP_CONFIG}-LOCAL"
echo
if [ -z "$CHECK_INSTALLED" ]; then
echo "Checking IPK package size"
else
echo "Checking installed size"
fi
echo
echo "Fetching latest package indexes..."
TMP_INDEX=$(mktemp /tmp/size_compare_package_index.XXXXXX)
"$DOWNLOAD_METHOD" "$TARGET_URL" | gzip -d > "$TMP_INDEX" || exit 1
"$DOWNLOAD_METHOD" "$PACKAGES_URL" | gzip -d >> "$TMP_INDEX" || exit 1
echo
echo "Comparing package sizes..."
echo "Change Local Remote Package"
compare_sizes | sort -g -r
rm "$TMP_INDEX"

View File

@ -89,6 +89,8 @@ endif
$(CP) -L $(LINUX_DIR)/arch/$(LINUX_KARCH)/boot/dts/* $(IB_DTSDIR); \
fi
$(SED) 's,^# REVISION:=.*,REVISION:=$(REVISION),g' $(PKG_BUILD_DIR)/include/version.mk
$(SED) 's,^# SOURCE_DATE_EPOCH:=.*,SOURCE_DATE_EPOCH:=$(SOURCE_DATE_EPOCH),g' $(PKG_BUILD_DIR)/include/version.mk
$(SED) '/LINUX_VERMAGIC:=/ { s,unknown,$(LINUX_VERMAGIC),g }' $(PKG_BUILD_DIR)/include/kernel.mk
find $(PKG_BUILD_DIR) -name CVS -o -name .git -o -name .svn \
| $(XARGS) rm -rf
$(INSTALL_DIR) $(IB_IDIR)

View File

@ -8,7 +8,7 @@ ARCH:=powerpc
BOARD:=apm821xx
BOARDNAME:=AppliedMicro APM821xx
CPU_TYPE:=464fp
FEATURES:=fpu dt gpio
FEATURES:=fpu dt gpio ramdisk squashfs usb
SUBTARGETS:=nand sata
KERNEL_PATCHVER:=5.4

View File

@ -1,5 +1,5 @@
BOARDNAME:=Devices with NAND flash (Routers)
FEATURES += nand pcie ramdisk squashfs usb
FEATURES += nand pcie
DEFAULT_PACKAGES += kmod-ath9k swconfig wpad-basic-wolfssl

View File

@ -1,6 +1,6 @@
BOARDNAME := Devices which boot from SATA (NAS)
DEVICE_TYPE := nas
FEATURES += ext4 usb ramdisk squashfs rootfs-part boot-part
FEATURES += boot-part ext4 rootfs-part
DEFAULT_PACKAGES += badblocks block-mount e2fsprogs kmod-hwmon-drivetemp \
kmod-dm kmod-md-mod partx-utils mkf2fs f2fsck

View File

@ -0,0 +1,169 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
#include "ar9341.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
/ {
model = "Engenius EAP300 v2";
compatible = "engenius,eap300-v2", "qca,ar9341";
aliases {
serial0 = &uart;
led-boot = &led_power;
led-failsafe = &led_power;
led-running = &led_power;
led-upgrade = &led_power;
};
keys {
compatible = "gpio-keys";
reset {
label = "reset";
gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
debounce-interval = <60>;
linux,code = <KEY_RESTART>;
};
};
leds {
compatible = "gpio-leds";
led_power: power {
label = "blue:power";
gpios = <&gpio 0 GPIO_ACTIVE_LOW>;
default-state = "on";
};
wlan {
label = "blue:wlan";
gpios = <&gpio 17 GPIO_ACTIVE_LOW>;
linux,default-trigger = "phy0tpt";
};
lan {
label = "blue:lan";
gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
};
};
virtual_flash {
compatible = "mtd-concat";
devices = <&firmware1 &firmware2>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
compatible = "openwrt,okli";
label = "firmware";
reg = <0x0 0x0>;
};
};
};
};
&ref {
clock-frequency = <40000000>;
};
&uart {
status = "okay";
};
&spi {
status = "okay";
num-cs = <1>;
flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <20000000>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "u-boot";
reg = <0x000000 0x040000>;
read-only;
};
partition@40000 {
label = "u-boot-env";
reg = <0x040000 0x010000>;
};
partition@50000 {
label = "custom";
reg = <0x050000 0x050000>;
read-only;
};
partition@a0000 {
label = "loader";
reg = <0x0a0000 0x010000>;
read-only;
};
firmware2: partition@b0000 {
label = "firmware2";
reg = <0x0b0000 0x170000>;
};
partition@220000 {
label = "fakeroot";
reg = <0x220000 0x010000>;
read-only;
};
firmware1: partition@230000 {
label = "firmware1";
reg = <0x230000 0xbc0000>;
};
partition@df0000 {
label = "failsafe";
reg = <0xdf0000 0x200000>;
read-only;
};
art: partition@ff0000 {
label = "art";
reg = <0xff0000 0x010000>;
read-only;
};
};
};
};
&eth0 {
status = "okay";
mtd-mac-address = <&art 0x0>;
phy-handle = <&swphy0>;
gmac-config {
device = <&gmac>;
switch-phy-swap = <1>;
};
};
&eth1 {
compatible = "syscon", "simple-mfd";
};
&wmac {
status = "okay";
mtd-cal-data = <&art 0x1000>;
};

View File

@ -150,6 +150,7 @@ telco,t1)
ucidef_set_led_netdev "wan" "WAN" "blue:wan" "eth1"
;;
comfast,cf-wr752ac-v1|\
engenius,eap300-v2|\
engenius,ecb1750|\
enterasys,ws-ap3705i)
ucidef_set_led_netdev "lan" "LAN" "blue:lan" "eth0"

View File

@ -28,6 +28,7 @@ ath79_setup_interfaces()
dlink,dap-1330-a1|\
dlink,dap-1365-a1|\
dlink,dir-505|\
engenius,eap300-v2|\
engenius,ecb1750|\
enterasys,ws-ap3705i|\
glinet,gl-ar300m-lite|\
@ -425,6 +426,7 @@ ath79_setup_macs()
alfa-network,n5q|\
alfa-network,pi-wifi4|\
alfa-network,r36a|\
engenius,eap300-v2|\
engenius,ens202ext-v1)
label_mac=$(mtd_get_mac_binary art 0x1002)
;;

View File

@ -1,9 +1,9 @@
DEVICE_VARS += NETGEAR_KERNEL_MAGIC NETGEAR_BOARD_ID NETGEAR_HW_ID
DEVICE_VARS += NETGEAR_BOARD_ID NETGEAR_HW_ID
define Build/netgear-rootfs
mkimage \
-A mips -O linux -T filesystem -C none \
-M $(NETGEAR_KERNEL_MAGIC) \
$(if $(UIMAGE_MAGIC),-M $(UIMAGE_MAGIC)) \
-n '$(VERSION_DIST) filesystem' \
-d $(IMAGE_ROOTFS) $@.fs
cat $@.fs >> $@
@ -22,21 +22,17 @@ define Build/netgear-squashfs
dd if=/dev/zero bs=1k count=1 >> $@.squashfs
mkimage \
-A mips -O linux -T filesystem -C none \
-M $(NETGEAR_KERNEL_MAGIC) \
$(if $(UIMAGE_MAGIC),-M $(UIMAGE_MAGIC)) \
-a 0xbf070000 -e 0xbf070000 \
-n 'MIPS $(VERSION_DIST) Linux-$(LINUX_VERSION)' \
-d $@.squashfs $@
rm -rf $@.squashfs $@.fs
endef
define Build/netgear-uImage
$(call Build/uImage,$(1) -M $(NETGEAR_KERNEL_MAGIC))
endef
define Device/netgear_generic
DEVICE_VENDOR := NETGEAR
KERNEL := kernel-bin | append-dtb | lzma -d20 | netgear-uImage lzma
KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma -d20 | netgear-uImage lzma
KERNEL := kernel-bin | append-dtb | lzma -d20 | uImage lzma
KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma -d20 | uImage lzma
IMAGES += factory.img
IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | netgear-squashfs | \
append-rootfs | pad-rootfs

View File

@ -889,6 +889,17 @@ define Device/engenius_loader_okli
check-size | engenius-tar-gz $$$$(ENGENIUS_IMGNAME)
endef
define Device/engenius_eap300-v2
$(Device/engenius_loader_okli)
SOC := ar9341
DEVICE_MODEL := EAP300
DEVICE_VARIANT := v2
IMAGE_SIZE := 12032k
LOADER_FLASH_OFFS := 0x230000
ENGENIUS_IMGNAME := senao-eap300v2
endef
TARGET_DEVICES += engenius_eap300-v2
define Device/engenius_ecb1750
SOC := qca9558
DEVICE_VENDOR := EnGenius
@ -1241,7 +1252,7 @@ TARGET_DEVICES += nec_wg800hp
define Device/netgear_ex6400_ex7300
$(Device/netgear_generic)
SOC := qca9558
NETGEAR_KERNEL_MAGIC := 0x27051956
UIMAGE_MAGIC := 0x27051956
NETGEAR_BOARD_ID := EX7300series
NETGEAR_HW_ID := 29765104+16+0+128
IMAGE_SIZE := 15552k
@ -1277,7 +1288,7 @@ define Device/netgear_wndr3700
$(Device/netgear_wndr3x00)
DEVICE_MODEL := WNDR3700
DEVICE_VARIANT := v1
NETGEAR_KERNEL_MAGIC := 0x33373030
UIMAGE_MAGIC := 0x33373030
NETGEAR_BOARD_ID := WNDR3700
IMAGE_SIZE := 7680k
IMAGES += factory-NA.img
@ -1291,7 +1302,7 @@ define Device/netgear_wndr3700-v2
$(Device/netgear_wndr3x00)
DEVICE_MODEL := WNDR3700
DEVICE_VARIANT := v2
NETGEAR_KERNEL_MAGIC := 0x33373031
UIMAGE_MAGIC := 0x33373031
NETGEAR_BOARD_ID := WNDR3700v2
NETGEAR_HW_ID := 29763654+16+64
IMAGE_SIZE := 15872k
@ -1302,7 +1313,7 @@ TARGET_DEVICES += netgear_wndr3700-v2
define Device/netgear_wndr3800
$(Device/netgear_wndr3x00)
DEVICE_MODEL := WNDR3800
NETGEAR_KERNEL_MAGIC := 0x33373031
UIMAGE_MAGIC := 0x33373031
NETGEAR_BOARD_ID := WNDR3800
NETGEAR_HW_ID := 29763654+16+128
IMAGE_SIZE := 15872k
@ -1313,7 +1324,7 @@ TARGET_DEVICES += netgear_wndr3800
define Device/netgear_wndr3800ch
$(Device/netgear_wndr3x00)
DEVICE_MODEL := WNDR3800CH
NETGEAR_KERNEL_MAGIC := 0x33373031
UIMAGE_MAGIC := 0x33373031
NETGEAR_BOARD_ID := WNDR3800CH
NETGEAR_HW_ID := 29763654+16+128
IMAGE_SIZE := 15872k
@ -1325,7 +1336,7 @@ define Device/netgear_wndrmac-v1
$(Device/netgear_wndr3x00)
DEVICE_MODEL := WNDRMAC
DEVICE_VARIANT := v1
NETGEAR_KERNEL_MAGIC := 0x33373031
UIMAGE_MAGIC := 0x33373031
NETGEAR_BOARD_ID := WNDRMAC
NETGEAR_HW_ID := 29763654+16+64
IMAGE_SIZE := 15872k
@ -1337,7 +1348,7 @@ define Device/netgear_wndrmac-v2
$(Device/netgear_wndr3x00)
DEVICE_MODEL := WNDRMAC
DEVICE_VARIANT := v2
NETGEAR_KERNEL_MAGIC := 0x33373031
UIMAGE_MAGIC := 0x33373031
NETGEAR_BOARD_ID := WNDRMACv2
NETGEAR_HW_ID := 29763654+16+128
IMAGE_SIZE := 15872k
@ -1350,7 +1361,7 @@ define Device/netgear_wnr2200_common
SOC := ar7241
DEVICE_MODEL := WNR2200
DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
NETGEAR_KERNEL_MAGIC := 0x32323030
UIMAGE_MAGIC := 0x32323030
NETGEAR_BOARD_ID := wnr2200
endef

View File

@ -1,5 +1,3 @@
include ./common-netgear.mk # for netgear-uImage
DEVICE_VARS += RAS_ROOTFS_SIZE RAS_BOARD RAS_VERSION
# attention: only zlib compression is allowed for the boot fs
@ -163,10 +161,10 @@ define Device/netgear_ath79_nand
PAGESIZE := 2048
IMAGE_SIZE := 25600k
KERNEL := kernel-bin | append-dtb | lzma -d20 | \
pad-offset $$(KERNEL_SIZE) 129 | netgear-uImage lzma | \
pad-offset $$(KERNEL_SIZE) 129 | uImage lzma | \
append-string -e '\xff' | \
append-uImage-fakehdr filesystem $$(NETGEAR_KERNEL_MAGIC)
KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma -d20 | netgear-uImage lzma
append-uImage-fakehdr filesystem $$(UIMAGE_MAGIC)
KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma -d20 | uImage lzma
IMAGES := sysupgrade.bin factory.img
IMAGE/factory.img := append-kernel | append-ubi | netgear-dni | \
check-size
@ -179,7 +177,7 @@ define Device/netgear_wndr3700-v4
SOC := ar9344
DEVICE_MODEL := WNDR3700
DEVICE_VARIANT := v4
NETGEAR_KERNEL_MAGIC := 0x33373033
UIMAGE_MAGIC := 0x33373033
NETGEAR_BOARD_ID := WNDR3700v4
NETGEAR_HW_ID := 29763948+128+128
$(Device/netgear_ath79_nand)
@ -189,7 +187,7 @@ TARGET_DEVICES += netgear_wndr3700-v4
define Device/netgear_wndr4300
SOC := ar9344
DEVICE_MODEL := WNDR4300
NETGEAR_KERNEL_MAGIC := 0x33373033
UIMAGE_MAGIC := 0x33373033
NETGEAR_BOARD_ID := WNDR4300
NETGEAR_HW_ID := 29763948+0+128+128+2x2+3x3
$(Device/netgear_ath79_nand)
@ -199,7 +197,7 @@ TARGET_DEVICES += netgear_wndr4300
define Device/netgear_wndr4300sw
SOC := ar9344
DEVICE_MODEL := WNDR4300SW
NETGEAR_KERNEL_MAGIC := 0x33373033
UIMAGE_MAGIC := 0x33373033
NETGEAR_BOARD_ID := WNDR4300SW
NETGEAR_HW_ID := 29763948+0+128+128+2x2+3x3
$(Device/netgear_ath79_nand)
@ -209,7 +207,7 @@ TARGET_DEVICES += netgear_wndr4300sw
define Device/netgear_wndr4300tn
SOC := ar9344
DEVICE_MODEL := WNDR4300TN
NETGEAR_KERNEL_MAGIC := 0x33373033
UIMAGE_MAGIC := 0x33373033
NETGEAR_BOARD_ID := WNDR4300TN
NETGEAR_HW_ID := 29763948+0+128+128+2x2+3x3
$(Device/netgear_ath79_nand)
@ -220,7 +218,7 @@ define Device/netgear_wndr4300-v2
SOC := qca9563
DEVICE_MODEL := WNDR4300
DEVICE_VARIANT := v2
NETGEAR_KERNEL_MAGIC := 0x27051956
UIMAGE_MAGIC := 0x27051956
NETGEAR_BOARD_ID := WNDR4500series
NETGEAR_HW_ID := 29764821+2+128+128+3x3+3x3+5508012175
$(Device/netgear_ath79_nand)
@ -231,7 +229,7 @@ define Device/netgear_wndr4500-v3
SOC := qca9563
DEVICE_MODEL := WNDR4500
DEVICE_VARIANT := v3
NETGEAR_KERNEL_MAGIC := 0x27051956
UIMAGE_MAGIC := 0x27051956
NETGEAR_BOARD_ID := WNDR4500series
NETGEAR_HW_ID := 29764821+2+128+128+3x3+3x3+5508012173
$(Device/netgear_ath79_nand)

View File

@ -6,7 +6,7 @@ define Device/netgear_wnr612-v2
DEVICE_MODEL := WNR612
DEVICE_VARIANT := v2
DEVICE_DTS := ar7240_netgear_wnr612-v2
NETGEAR_KERNEL_MAGIC := 0x32303631
UIMAGE_MAGIC := 0x32303631
NETGEAR_BOARD_ID := REALWNR612V2
IMAGE_SIZE := 3712k
SUPPORTED_DEVICES += wnr612-v2
@ -19,7 +19,7 @@ define Device/on_n150r
SOC := ar7240
DEVICE_VENDOR := On Networks
DEVICE_MODEL := N150R
NETGEAR_KERNEL_MAGIC := 0x32303631
UIMAGE_MAGIC := 0x32303631
NETGEAR_BOARD_ID := N150R
IMAGE_SIZE := 3712k
SUPPORTED_DEVICES += n150r
@ -32,7 +32,7 @@ define Device/netgear_wnr1000-v2
SOC := ar7240
DEVICE_MODEL := WNR1000
DEVICE_VARIANT := v2
NETGEAR_KERNEL_MAGIC := 0x31303031
UIMAGE_MAGIC := 0x31303031
NETGEAR_BOARD_ID := WNR1000V2
NETGEAR_HW_ID := 29763331+4+32
IMAGE_SIZE := 3712k
@ -46,7 +46,7 @@ define Device/netgear_wnr2000-v3
SOC := ar7241
DEVICE_MODEL := WNR2000
DEVICE_VARIANT := v3
NETGEAR_KERNEL_MAGIC := 0x32303033
UIMAGE_MAGIC := 0x32303033
NETGEAR_BOARD_ID := WNR2000V3
NETGEAR_HW_ID := 29763551+04+32
IMAGE_SIZE := 3712k

View File

@ -754,7 +754,7 @@
ptr = ip6hoff + sizeof(struct ipv6hdr);
--- a/include/net/neighbour.h
+++ b/include/net/neighbour.h
@@ -273,8 +273,10 @@ static inline bool neigh_key_eq128(const
@@ -274,8 +274,10 @@ static inline bool neigh_key_eq128(const
const u32 *n32 = (const u32 *)n->primary_key;
const u32 *p32 = pkey;

View File

@ -14,7 +14,7 @@ Signed-off-by: Eric Anholt <eric@anholt.net>
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -8489,8 +8489,6 @@ int alloc_contig_range(unsigned long sta
@@ -8511,8 +8511,6 @@ int alloc_contig_range(unsigned long sta
/* Make sure the range is really isolated. */
if (test_pages_isolated(outer_start, end, false)) {

View File

@ -23,7 +23,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
--- a/drivers/spi/spi.c
+++ b/drivers/spi/spi.c
@@ -3058,6 +3058,7 @@ static int __spi_validate_bits_per_word(
@@ -3114,6 +3114,7 @@ static int __spi_validate_bits_per_word(
*/
int spi_setup(struct spi_device *spi)
{
@ -31,7 +31,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
unsigned bad_bits, ugly_bits;
int status;
@@ -3075,6 +3076,14 @@ int spi_setup(struct spi_device *spi)
@@ -3131,6 +3132,14 @@ int spi_setup(struct spi_device *spi)
(SPI_TX_DUAL | SPI_TX_QUAD | SPI_TX_OCTAL |
SPI_RX_DUAL | SPI_RX_QUAD | SPI_RX_OCTAL)))
return -EINVAL;

View File

@ -15,7 +15,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
--- a/drivers/spi/spi.c
+++ b/drivers/spi/spi.c
@@ -3070,8 +3070,8 @@ int spi_setup(struct spi_device *spi)
@@ -3126,8 +3126,8 @@ int spi_setup(struct spi_device *spi)
if (ctlr->use_gpio_descriptors && ctlr->cs_gpiods &&
ctlr->cs_gpiods[spi->chip_select] && !(spi->mode & SPI_CS_HIGH)) {

View File

@ -99,7 +99,7 @@ Subject: [PATCH 210/210] b44: register adm switch
dev_info(sdev->dev,
"could not find PHY at %i, use fixed one\n",
bp->phy_addr);
@@ -2480,6 +2548,7 @@ static void b44_remove_one(struct ssb_de
@@ -2481,6 +2549,7 @@ static void b44_remove_one(struct ssb_de
unregister_netdev(dev);
if (bp->flags & B44_FLAG_EXTERNAL_PHY)
b44_unregister_phy_one(bp);

View File

@ -1,29 +0,0 @@
From df8d85d8c69d6837817e54dcb73c84a8b5a13877 Mon Sep 17 00:00:00 2001
From: Filip Moc <dev@moc6.cz>
Date: Tue, 17 Nov 2020 18:36:31 +0100
Subject: net: usb: qmi_wwan: Set DTR quirk for MR400
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
LTE module MR400 embedded in TL-MR6400 v4 requires DTR to be set.
Signed-off-by: Filip Moc <dev@moc6.cz>
Acked-by: Bjørn Mork <bjorn@mork.no>
Link: https://lore.kernel.org/r/20201117173631.GA550981@moc6.cz
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
drivers/net/usb/qmi_wwan.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/drivers/net/usb/qmi_wwan.c
+++ b/drivers/net/usb/qmi_wwan.c
@@ -1092,7 +1092,7 @@ static const struct usb_device_id produc
{QMI_FIXED_INTF(0x05c6, 0x9011, 4)},
{QMI_FIXED_INTF(0x05c6, 0x9021, 1)},
{QMI_FIXED_INTF(0x05c6, 0x9022, 2)},
- {QMI_FIXED_INTF(0x05c6, 0x9025, 4)}, /* Alcatel-sbell ASB TL131 TDD LTE (China Mobile) */
+ {QMI_QUIRK_SET_DTR(0x05c6, 0x9025, 4)}, /* Alcatel-sbell ASB TL131 TDD LTE (China Mobile) */
{QMI_FIXED_INTF(0x05c6, 0x9026, 3)},
{QMI_FIXED_INTF(0x05c6, 0x902e, 5)},
{QMI_FIXED_INTF(0x05c6, 0x9031, 5)},

View File

@ -258,6 +258,7 @@ static struct mtd_part_parser uimage_generic_parser = {
.type = MTD_PARSER_TYPE_FIRMWARE,
};
#define FW_MAGIC_GS110TPPV1 0x4e474520
#define FW_MAGIC_WNR2000V1 0x32303031
#define FW_MAGIC_WNR2000V3 0x32303033
#define FW_MAGIC_WNR2000V4 0x32303034
@ -275,6 +276,10 @@ static ssize_t uimage_verify_wndr3700(u_char *buf, size_t len, int *extralen)
uint8_t expected_type = IH_TYPE_FILESYSTEM;
switch (be32_to_cpu(header->ih_magic)) {
case FW_MAGIC_GS110TPPV1:
case FW_MAGIC_WNR2000V4:
expected_type = IH_TYPE_KERNEL;
break;
case FW_MAGIC_WNR612V2:
case FW_MAGIC_WNR1000V2:
case FW_MAGIC_WNR1000V2_VC:
@ -285,9 +290,6 @@ static ssize_t uimage_verify_wndr3700(u_char *buf, size_t len, int *extralen)
case FW_MAGIC_WNDR3700V2:
case FW_MAGIC_WPN824N:
break;
case FW_MAGIC_WNR2000V4:
expected_type = IH_TYPE_KERNEL;
break;
default:
return -EINVAL;
}

View File

@ -1,4 +1,14 @@
#!/bin/sh
# Copyright (C) 2006 OpenWrt.org
export INITRAMFS=1
exec /sbin/init
# switch to tmpfs to allow run daemons in jail on initramfs boot
DIRS=$(echo *)
NEW_ROOT=/new_root
mkdir -p $NEW_ROOT
mount -t tmpfs tmpfs $NEW_ROOT
cp -pr $DIRS $NEW_ROOT
exec switch_root $NEW_ROOT /sbin/init

View File

@ -71,7 +71,7 @@ Signed-off-by: Tobias Wolf <dev-NTEO@vplace.de>
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -6861,7 +6861,7 @@ static void __ref alloc_node_mem_map(str
@@ -6883,7 +6883,7 @@ static void __ref alloc_node_mem_map(str
mem_map = NODE_DATA(0)->node_mem_map;
#if defined(CONFIG_HAVE_MEMBLOCK_NODE_MAP) || defined(CONFIG_FLATMEM)
if (page_to_pfn(mem_map) != pgdat->node_start_pfn)

View File

@ -20,7 +20,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
#include <linux/uaccess.h>
#include "br_private.h"
@@ -375,6 +379,28 @@ static const struct ethtool_ops br_ethto
@@ -376,6 +380,28 @@ static const struct ethtool_ops br_ethto
.get_link = ethtool_op_get_link,
};
@ -49,7 +49,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
static const struct net_device_ops br_netdev_ops = {
.ndo_open = br_dev_open,
.ndo_stop = br_dev_stop,
@@ -403,6 +429,9 @@ static const struct net_device_ops br_ne
@@ -404,6 +430,9 @@ static const struct net_device_ops br_ne
.ndo_bridge_setlink = br_setlink,
.ndo_bridge_dellink = br_dellink,
.ndo_features_check = passthru_features_check,

View File

@ -7,7 +7,7 @@
ARCH:=mips
SUBTARGET:=ase
BOARDNAME:=Amazon-SE
FEATURES:=squashfs atm mips16 small_flash
FEATURES:=atm mips16 small_flash
CPU_TYPE:=mips32
DEFAULT_PACKAGES+=kmod-leds-gpio kmod-gpio-button-hotplug \

View File

@ -1,7 +1,7 @@
ARCH:=mips
SUBTARGET:=falcon
BOARDNAME:=Falcon
FEATURES:=squashfs nand
FEATURES:=nand
CPU_TYPE:=24kc
DEFAULT_PACKAGES+= kmod-leds-gpio \

View File

@ -1,7 +1,7 @@
ARCH:=mips
SUBTARGET:=xrx200
BOARDNAME:=XRX200
FEATURES:=squashfs atm nand ramdisk
FEATURES:=atm nand ramdisk
CPU_TYPE:=24kc
DEFAULT_PACKAGES+=kmod-leds-gpio \

View File

@ -1,7 +1,7 @@
ARCH:=mips
SUBTARGET:=xway
BOARDNAME:=XWAY
FEATURES:=squashfs atm nand ramdisk
FEATURES:=atm nand ramdisk
CPU_TYPE:=24kc
DEFAULT_PACKAGES+=kmod-leds-gpio kmod-gpio-button-hotplug swconfig

View File

@ -1,7 +1,7 @@
ARCH:=mips
SUBTARGET:=xway_legacy
BOARDNAME:=XWAY Legacy
FEATURES:=squashfs atm ramdisk small_flash
FEATURES:=atm ramdisk small_flash
CPU_TYPE:=24kc
DEFAULT_PACKAGES+=kmod-leds-gpio kmod-gpio-button-hotplug swconfig

View File

@ -295,7 +295,7 @@ This reverts commit cf9441adb1a35506d7606866c382b9d8614169b5.
ret = devm_request_irq(&pdev->dev, irq, mxs_saif_irq, 0,
--- a/sound/soc/qcom/lpass-platform.c
+++ b/sound/soc/qcom/lpass-platform.c
@@ -565,8 +565,11 @@ int asoc_qcom_lpass_platform_register(st
@@ -568,8 +568,11 @@ int asoc_qcom_lpass_platform_register(st
int ret;
drvdata->lpaif_irq = platform_get_irq_byname(pdev, "lpass-irq-lpaif");

View File

@ -25,7 +25,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
--- a/drivers/net/can/flexcan.c
+++ b/drivers/net/can/flexcan.c
@@ -783,16 +783,23 @@ static inline struct flexcan_priv *rx_of
@@ -785,16 +785,23 @@ static inline struct flexcan_priv *rx_of
return container_of(offload, struct flexcan_priv, offload);
}
@ -52,7 +52,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
mb = flexcan_get_mb(priv, n);
if (priv->devtype_data->quirks & FLEXCAN_QUIRK_USE_OFF_TIMESTAMP) {
@@ -806,7 +813,7 @@ static unsigned int flexcan_mailbox_read
@@ -808,7 +815,7 @@ static unsigned int flexcan_mailbox_read
code = reg_ctrl & FLEXCAN_MB_CODE_MASK;
if ((code != FLEXCAN_MB_CODE_RX_FULL) &&
(code != FLEXCAN_MB_CODE_RX_OVERRUN))
@ -61,7 +61,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
if (code == FLEXCAN_MB_CODE_RX_OVERRUN) {
/* This MB was overrun, we lost data */
@@ -816,11 +823,17 @@ static unsigned int flexcan_mailbox_read
@@ -818,11 +825,17 @@ static unsigned int flexcan_mailbox_read
} else {
reg_iflag1 = priv->read(&regs->iflag1);
if (!(reg_iflag1 & FLEXCAN_IFLAG_RX_FIFO_AVAILABLE))
@ -80,7 +80,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
/* increase timstamp to full 32 bit */
*timestamp = reg_ctrl << 16;
@@ -839,7 +852,7 @@ static unsigned int flexcan_mailbox_read
@@ -841,7 +854,7 @@ static unsigned int flexcan_mailbox_read
*(__be32 *)(cf->data + i) = data;
}
@ -89,7 +89,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
if (priv->devtype_data->quirks & FLEXCAN_QUIRK_USE_OFF_TIMESTAMP) {
/* Clear IRQ */
if (n < 32)
@@ -856,7 +869,7 @@ static unsigned int flexcan_mailbox_read
@@ -858,7 +871,7 @@ static unsigned int flexcan_mailbox_read
*/
priv->read(&regs->timer);

View File

@ -17,7 +17,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
--- a/drivers/net/can/flexcan.c
+++ b/drivers/net/can/flexcan.c
@@ -1569,7 +1569,6 @@ static int flexcan_probe(struct platform
@@ -1573,7 +1573,6 @@ static int flexcan_probe(struct platform
struct net_device *dev;
struct flexcan_priv *priv;
struct regulator *reg_xceiver;
@ -25,7 +25,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
struct clk *clk_ipg = NULL, *clk_per = NULL;
struct flexcan_regs __iomem *regs;
int err, irq;
@@ -1604,12 +1603,11 @@ static int flexcan_probe(struct platform
@@ -1608,12 +1607,11 @@ static int flexcan_probe(struct platform
clock_freq = clk_get_rate(clk_per);
}

View File

@ -18,7 +18,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
--- a/drivers/net/can/flexcan.c
+++ b/drivers/net/can/flexcan.c
@@ -743,8 +743,6 @@ static void flexcan_irq_state(struct net
@@ -745,8 +745,6 @@ static void flexcan_irq_state(struct net
u32 timestamp;
int err;
@ -27,7 +27,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
flt = reg_esr & FLEXCAN_ESR_FLT_CONF_MASK;
if (likely(flt == FLEXCAN_ESR_FLT_CONF_ACTIVE)) {
tx_state = unlikely(reg_esr & FLEXCAN_ESR_TX_WRN) ?
@@ -764,6 +762,8 @@ static void flexcan_irq_state(struct net
@@ -766,6 +764,8 @@ static void flexcan_irq_state(struct net
if (likely(new_state == priv->can.state))
return;

View File

@ -23,7 +23,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
#define FLEXCAN_IFLAG_RX_FIFO_OVERFLOW BIT(7)
#define FLEXCAN_IFLAG_RX_FIFO_WARN BIT(6)
#define FLEXCAN_IFLAG_RX_FIFO_AVAILABLE BIT(5)
@@ -879,7 +879,7 @@ static inline u64 flexcan_read_reg_iflag
@@ -881,7 +881,7 @@ static inline u64 flexcan_read_reg_iflag
u32 iflag1, iflag2;
iflag2 = priv->read(&regs->iflag2) & priv->reg_imask2_default &
@ -32,7 +32,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
iflag1 = priv->read(&regs->iflag1) & priv->reg_imask1_default;
return (u64)iflag2 << 32 | iflag1;
@@ -929,7 +929,7 @@ static irqreturn_t flexcan_irq(int irq,
@@ -931,7 +931,7 @@ static irqreturn_t flexcan_irq(int irq,
reg_iflag2 = priv->read(&regs->iflag2);
/* transmission complete interrupt */
@ -41,7 +41,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
u32 reg_ctrl = priv->read(&priv->tx_mb->can_ctrl);
handled = IRQ_HANDLED;
@@ -941,7 +941,7 @@ static irqreturn_t flexcan_irq(int irq,
@@ -943,7 +943,7 @@ static irqreturn_t flexcan_irq(int irq,
/* after sending a RTR frame MB is in RX mode */
priv->write(FLEXCAN_MB_CODE_TX_INACTIVE,
&priv->tx_mb->can_ctrl);
@ -50,7 +50,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
netif_wake_queue(dev);
}
@@ -1320,7 +1320,7 @@ static int flexcan_open(struct net_devic
@@ -1321,7 +1321,7 @@ static int flexcan_open(struct net_devic
priv->tx_mb = flexcan_get_mb(priv, priv->tx_mb_idx);
priv->reg_imask1_default = 0;

View File

@ -16,7 +16,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
--- a/drivers/net/can/flexcan.c
+++ b/drivers/net/can/flexcan.c
@@ -897,13 +897,13 @@ static irqreturn_t flexcan_irq(int irq,
@@ -899,13 +899,13 @@ static irqreturn_t flexcan_irq(int irq,
/* reception interrupt */
if (priv->devtype_data->quirks & FLEXCAN_QUIRK_USE_OFF_TIMESTAMP) {

View File

@ -49,7 +49,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
struct clk *clk_ipg;
struct clk *clk_per;
@@ -878,9 +878,9 @@ static inline u64 flexcan_read_reg_iflag
@@ -880,9 +880,9 @@ static inline u64 flexcan_read_reg_iflag
struct flexcan_regs __iomem *regs = priv->regs;
u32 iflag1, iflag2;
@ -61,7 +61,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
return (u64)iflag2 << 32 | iflag1;
}
@@ -1227,8 +1227,8 @@ static int flexcan_chip_start(struct net
@@ -1225,8 +1225,8 @@ static int flexcan_chip_start(struct net
/* enable interrupts atomically */
disable_irq(dev->irq);
priv->write(priv->reg_ctrl_default, &regs->ctrl);
@ -72,7 +72,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
enable_irq(dev->irq);
/* print chip status */
@@ -1319,8 +1319,8 @@ static int flexcan_open(struct net_devic
@@ -1320,8 +1320,8 @@ static int flexcan_open(struct net_devic
priv->tx_mb_idx = priv->mb_count - 1;
priv->tx_mb = flexcan_get_mb(priv, priv->tx_mb_idx);
@ -83,7 +83,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
priv->offload.mailbox_read = flexcan_mailbox_read;
@@ -1332,12 +1332,12 @@ static int flexcan_open(struct net_devic
@@ -1333,12 +1333,12 @@ static int flexcan_open(struct net_devic
imask = GENMASK_ULL(priv->offload.mb_last,
priv->offload.mb_first);

View File

@ -24,7 +24,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
--- a/drivers/net/can/flexcan.c
+++ b/drivers/net/can/flexcan.c
@@ -878,8 +878,7 @@ static inline u64 flexcan_read_reg_iflag
@@ -880,8 +880,7 @@ static inline u64 flexcan_read_reg_iflag
struct flexcan_regs __iomem *regs = priv->regs;
u32 iflag1, iflag2;
@ -34,7 +34,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
iflag1 = priv->read(&regs->iflag1) & priv->rx_mask1;
return (u64)iflag2 << 32 | iflag1;
@@ -1228,7 +1227,7 @@ static int flexcan_chip_start(struct net
@@ -1226,7 +1225,7 @@ static int flexcan_chip_start(struct net
disable_irq(dev->irq);
priv->write(priv->reg_ctrl_default, &regs->ctrl);
priv->write(priv->rx_mask1, &regs->imask1);
@ -43,7 +43,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
enable_irq(dev->irq);
/* print chip status */
@@ -1319,9 +1318,6 @@ static int flexcan_open(struct net_devic
@@ -1320,9 +1319,6 @@ static int flexcan_open(struct net_devic
priv->tx_mb_idx = priv->mb_count - 1;
priv->tx_mb = flexcan_get_mb(priv, priv->tx_mb_idx);
@ -53,7 +53,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
priv->offload.mailbox_read = flexcan_mailbox_read;
if (priv->devtype_data->quirks & FLEXCAN_QUIRK_USE_OFF_TIMESTAMP) {
@@ -1332,12 +1328,12 @@ static int flexcan_open(struct net_devic
@@ -1333,12 +1329,12 @@ static int flexcan_open(struct net_devic
imask = GENMASK_ULL(priv->offload.mb_last,
priv->offload.mb_first);

View File

@ -41,7 +41,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
struct clk *clk_ipg;
struct clk *clk_per;
@@ -872,16 +872,15 @@ static struct sk_buff *flexcan_mailbox_r
@@ -874,16 +874,15 @@ static struct sk_buff *flexcan_mailbox_r
return skb;
}
@ -62,7 +62,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
}
static irqreturn_t flexcan_irq(int irq, void *dev_id)
@@ -1052,6 +1051,7 @@ static int flexcan_chip_start(struct net
@@ -1054,6 +1053,7 @@ static int flexcan_chip_start(struct net
struct flexcan_priv *priv = netdev_priv(dev);
struct flexcan_regs __iomem *regs = priv->regs;
u32 reg_mcr, reg_ctrl, reg_ctrl2, reg_mecr;
@ -70,7 +70,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
int err, i;
struct flexcan_mb __iomem *mb;
@@ -1226,8 +1226,9 @@ static int flexcan_chip_start(struct net
@@ -1224,8 +1224,9 @@ static int flexcan_chip_start(struct net
/* enable interrupts atomically */
disable_irq(dev->irq);
priv->write(priv->reg_ctrl_default, &regs->ctrl);
@ -82,7 +82,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
enable_irq(dev->irq);
/* print chip status */
@@ -1321,19 +1322,14 @@ static int flexcan_open(struct net_devic
@@ -1322,19 +1323,14 @@ static int flexcan_open(struct net_devic
priv->offload.mailbox_read = flexcan_mailbox_read;
if (priv->devtype_data->quirks & FLEXCAN_QUIRK_USE_OFF_TIMESTAMP) {

View File

@ -39,7 +39,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
u32 reg_ctrl_default;
struct clk *clk_ipg;
@@ -890,7 +890,8 @@ static irqreturn_t flexcan_irq(int irq,
@@ -892,7 +892,8 @@ static irqreturn_t flexcan_irq(int irq,
struct flexcan_priv *priv = netdev_priv(dev);
struct flexcan_regs __iomem *regs = priv->regs;
irqreturn_t handled = IRQ_NONE;
@ -49,7 +49,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
enum can_state last_state = priv->can.state;
/* reception interrupt */
@@ -924,10 +925,10 @@ static irqreturn_t flexcan_irq(int irq,
@@ -926,10 +927,10 @@ static irqreturn_t flexcan_irq(int irq,
}
}
@ -62,7 +62,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
u32 reg_ctrl = priv->read(&priv->tx_mb->can_ctrl);
handled = IRQ_HANDLED;
@@ -939,7 +940,7 @@ static irqreturn_t flexcan_irq(int irq,
@@ -941,7 +942,7 @@ static irqreturn_t flexcan_irq(int irq,
/* after sending a RTR frame MB is in RX mode */
priv->write(FLEXCAN_MB_CODE_TX_INACTIVE,
&priv->tx_mb->can_ctrl);
@ -71,7 +71,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
netif_wake_queue(dev);
}
@@ -1226,7 +1227,7 @@ static int flexcan_chip_start(struct net
@@ -1224,7 +1225,7 @@ static int flexcan_chip_start(struct net
/* enable interrupts atomically */
disable_irq(dev->irq);
priv->write(priv->reg_ctrl_default, &regs->ctrl);
@ -80,7 +80,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
priv->write(upper_32_bits(reg_imask), &regs->imask2);
priv->write(lower_32_bits(reg_imask), &regs->imask1);
enable_irq(dev->irq);
@@ -1318,6 +1319,7 @@ static int flexcan_open(struct net_devic
@@ -1319,6 +1320,7 @@ static int flexcan_open(struct net_devic
flexcan_get_mb(priv, FLEXCAN_TX_MB_RESERVED_OFF_FIFO);
priv->tx_mb_idx = priv->mb_count - 1;
priv->tx_mb = flexcan_get_mb(priv, priv->tx_mb_idx);

View File

@ -24,7 +24,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
--- a/drivers/net/can/flexcan.c
+++ b/drivers/net/can/flexcan.c
@@ -778,6 +778,23 @@ static void flexcan_irq_state(struct net
@@ -780,6 +780,23 @@ static void flexcan_irq_state(struct net
dev->stats.rx_fifo_errors++;
}
@ -48,7 +48,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
static inline struct flexcan_priv *rx_offload_to_priv(struct can_rx_offload *offload)
{
return container_of(offload, struct flexcan_priv, offload);
@@ -872,17 +889,6 @@ static struct sk_buff *flexcan_mailbox_r
@@ -874,17 +891,6 @@ static struct sk_buff *flexcan_mailbox_r
return skb;
}

View File

@ -28,7 +28,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
--- a/drivers/net/can/flexcan.c
+++ b/drivers/net/can/flexcan.c
@@ -790,11 +790,24 @@ static inline u64 flexcan_read64_mask(st
@@ -792,11 +792,24 @@ static inline u64 flexcan_read64_mask(st
return reg & mask;
}
@ -53,7 +53,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
static inline struct flexcan_priv *rx_offload_to_priv(struct can_rx_offload *offload)
{
return container_of(offload, struct flexcan_priv, offload);
@@ -931,7 +944,7 @@ static irqreturn_t flexcan_irq(int irq,
@@ -933,7 +946,7 @@ static irqreturn_t flexcan_irq(int irq,
}
}
@ -62,7 +62,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
/* transmission complete interrupt */
if (reg_iflag_tx & priv->tx_mask) {
@@ -946,7 +959,7 @@ static irqreturn_t flexcan_irq(int irq,
@@ -948,7 +961,7 @@ static irqreturn_t flexcan_irq(int irq,
/* after sending a RTR frame MB is in RX mode */
priv->write(FLEXCAN_MB_CODE_TX_INACTIVE,
&priv->tx_mb->can_ctrl);

View File

@ -16,7 +16,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
--- a/drivers/net/can/flexcan.c
+++ b/drivers/net/can/flexcan.c
@@ -883,15 +883,10 @@ static struct sk_buff *flexcan_mailbox_r
@@ -885,15 +885,10 @@ static struct sk_buff *flexcan_mailbox_r
}
mark_as_read:

View File

@ -15,7 +15,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
--- a/drivers/net/can/flexcan.c
+++ b/drivers/net/can/flexcan.c
@@ -627,10 +627,10 @@ static int flexcan_get_berr_counter(cons
@@ -629,10 +629,10 @@ static int flexcan_get_berr_counter(cons
static netdev_tx_t flexcan_start_xmit(struct sk_buff *skb, struct net_device *dev)
{
const struct flexcan_priv *priv = netdev_priv(dev);
@ -28,7 +28,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
int i;
if (can_dropped_invalid_skb(dev, skb))
@@ -638,18 +638,18 @@ static netdev_tx_t flexcan_start_xmit(st
@@ -640,18 +640,18 @@ static netdev_tx_t flexcan_start_xmit(st
netif_stop_queue(dev);
@ -53,7 +53,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
priv->write(data, &priv->tx_mb->data[i / sizeof(u32)]);
}
@@ -821,7 +821,7 @@ static struct sk_buff *flexcan_mailbox_r
@@ -823,7 +823,7 @@ static struct sk_buff *flexcan_mailbox_r
struct flexcan_regs __iomem *regs = priv->regs;
struct flexcan_mb __iomem *mb;
struct sk_buff *skb;
@ -62,7 +62,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
u32 reg_ctrl, reg_id, reg_iflag1;
int i;
@@ -858,8 +858,8 @@ static struct sk_buff *flexcan_mailbox_r
@@ -860,8 +860,8 @@ static struct sk_buff *flexcan_mailbox_r
reg_ctrl = priv->read(&mb->can_ctrl);
}
@ -73,7 +73,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
skb = ERR_PTR(-ENOMEM);
goto mark_as_read;
}
@@ -869,17 +869,17 @@ static struct sk_buff *flexcan_mailbox_r
@@ -871,17 +871,17 @@ static struct sk_buff *flexcan_mailbox_r
reg_id = priv->read(&mb->can_id);
if (reg_ctrl & FLEXCAN_MB_CNT_IDE)

View File

@ -124,7 +124,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
/* FlexCAN module is essentially modelled as a little-endian IP in most
* SoCs, i.e the registers as well as the message buffer areas are
* implemented in a little-endian fashion.
@@ -630,7 +684,7 @@ static netdev_tx_t flexcan_start_xmit(st
@@ -632,7 +686,7 @@ static netdev_tx_t flexcan_start_xmit(st
struct canfd_frame *cfd = (struct canfd_frame *)skb->data;
u32 can_id;
u32 data;
@ -133,7 +133,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
int i;
if (can_dropped_invalid_skb(dev, skb))
@@ -648,6 +702,9 @@ static netdev_tx_t flexcan_start_xmit(st
@@ -650,6 +704,9 @@ static netdev_tx_t flexcan_start_xmit(st
if (cfd->can_id & CAN_RTR_FLAG)
ctrl |= FLEXCAN_MB_CNT_RTR;
@ -143,7 +143,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
for (i = 0; i < cfd->len; i += sizeof(u32)) {
data = be32_to_cpup((__be32 *)&cfd->data[i]);
priv->write(data, &priv->tx_mb->data[i / sizeof(u32)]);
@@ -858,7 +915,10 @@ static struct sk_buff *flexcan_mailbox_r
@@ -860,7 +917,10 @@ static struct sk_buff *flexcan_mailbox_r
reg_ctrl = priv->read(&mb->can_ctrl);
}
@ -155,7 +155,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
if (unlikely(!skb)) {
skb = ERR_PTR(-ENOMEM);
goto mark_as_read;
@@ -873,9 +933,17 @@ static struct sk_buff *flexcan_mailbox_r
@@ -875,9 +935,17 @@ static struct sk_buff *flexcan_mailbox_r
else
cfd->can_id = (reg_id >> 18) & CAN_SFF_MASK;
@ -176,7 +176,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
for (i = 0; i < cfd->len; i += sizeof(u32)) {
__be32 data = cpu_to_be32(priv->read(&mb->data[i / sizeof(u32)]));
@@ -1020,27 +1088,14 @@ static irqreturn_t flexcan_irq(int irq,
@@ -1022,27 +1090,14 @@ static irqreturn_t flexcan_irq(int irq,
static void flexcan_set_bittiming(struct net_device *dev)
{
@ -209,7 +209,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
if (priv->can.ctrlmode & CAN_CTRLMODE_LOOPBACK)
reg |= FLEXCAN_CTRL_LPB;
if (priv->can.ctrlmode & CAN_CTRLMODE_LISTENONLY)
@@ -1051,9 +1106,102 @@ static void flexcan_set_bittiming(struct
@@ -1053,9 +1108,102 @@ static void flexcan_set_bittiming(struct
netdev_dbg(dev, "writing ctrl=0x%08x\n", reg);
priv->write(reg, &regs->ctrl);
@ -315,7 +315,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
}
/* flexcan_chip_start
@@ -1065,7 +1213,7 @@ static int flexcan_chip_start(struct net
@@ -1067,7 +1215,7 @@ static int flexcan_chip_start(struct net
{
struct flexcan_priv *priv = netdev_priv(dev);
struct flexcan_regs __iomem *regs = priv->regs;
@ -324,7 +324,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
u64 reg_imask;
int err, i;
struct flexcan_mb __iomem *mb;
@@ -1162,6 +1310,26 @@ static int flexcan_chip_start(struct net
@@ -1164,6 +1312,26 @@ static int flexcan_chip_start(struct net
netdev_dbg(dev, "%s: writing ctrl=0x%08x", __func__, reg_ctrl);
priv->write(reg_ctrl, &regs->ctrl);
@ -351,7 +351,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
if ((priv->devtype_data->quirks & FLEXCAN_QUIRK_ENABLE_EACEN_RRS)) {
reg_ctrl2 = priv->read(&regs->ctrl2);
reg_ctrl2 |= FLEXCAN_CTRL2_EACEN | FLEXCAN_CTRL2_RRS;
@@ -1309,6 +1477,12 @@ static int flexcan_open(struct net_devic
@@ -1304,6 +1472,12 @@ static int flexcan_open(struct net_devic
struct flexcan_priv *priv = netdev_priv(dev);
int err;
@ -362,11 +362,11 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
+ }
+
err = pm_runtime_get_sync(priv->dev);
if (err < 0)
return err;
@@ -1321,7 +1495,10 @@ static int flexcan_open(struct net_devic
if (err < 0) {
pm_runtime_put_noidle(priv->dev);
@@ -1322,7 +1496,10 @@ static int flexcan_open(struct net_devic
if (err)
goto out_close;
goto out_transceiver_disable;
- priv->mb_size = sizeof(struct flexcan_mb) + CAN_MAX_DLEN;
+ if (priv->can.ctrlmode & CAN_CTRLMODE_FD)
@ -376,7 +376,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
priv->mb_count = (sizeof(priv->regs->mb[0]) / priv->mb_size) +
(sizeof(priv->regs->mb[1]) / priv->mb_size);
@@ -1666,6 +1843,18 @@ static int flexcan_probe(struct platform
@@ -1670,6 +1847,18 @@ static int flexcan_probe(struct platform
priv->devtype_data = devtype_data;
priv->reg_xceiver = reg_xceiver;

View File

@ -13,7 +13,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
--- a/drivers/net/can/flexcan.c
+++ b/drivers/net/can/flexcan.c
@@ -702,9 +702,13 @@ static netdev_tx_t flexcan_start_xmit(st
@@ -704,9 +704,13 @@ static netdev_tx_t flexcan_start_xmit(st
if (cfd->can_id & CAN_RTR_FLAG)
ctrl |= FLEXCAN_MB_CNT_RTR;
@ -28,7 +28,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
for (i = 0; i < cfd->len; i += sizeof(u32)) {
data = be32_to_cpup((__be32 *)&cfd->data[i]);
priv->write(data, &priv->tx_mb->data[i / sizeof(u32)]);
@@ -935,6 +939,9 @@ static struct sk_buff *flexcan_mailbox_r
@@ -937,6 +941,9 @@ static struct sk_buff *flexcan_mailbox_r
if (reg_ctrl & FLEXCAN_MB_CNT_EDL) {
cfd->len = can_dlc2len(get_canfd_dlc((reg_ctrl >> 16) & 0xf));

View File

@ -31,7 +31,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
/* FLEXCAN memory error control register (MECR) bits */
#define FLEXCAN_MECR_ECRWRDIS BIT(31)
@@ -1322,6 +1323,7 @@ static int flexcan_chip_start(struct net
@@ -1324,6 +1325,7 @@ static int flexcan_chip_start(struct net
reg_fdctrl = priv->read(&regs->fdctrl) & ~FLEXCAN_FDCTRL_FDRATE;
reg_fdctrl &= ~(FLEXCAN_FDCTRL_MBDSR1(0x3) | FLEXCAN_FDCTRL_MBDSR0(0x3));
reg_mcr = priv->read(&regs->mcr) & ~FLEXCAN_MCR_FDEN;
@ -39,7 +39,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
/* support BRS when set CAN FD mode
* 64 bytes payload per MB and 7 MBs per RAM block by default
@@ -1331,10 +1333,14 @@ static int flexcan_chip_start(struct net
@@ -1333,10 +1335,14 @@ static int flexcan_chip_start(struct net
reg_fdctrl |= FLEXCAN_FDCTRL_FDRATE;
reg_fdctrl |= FLEXCAN_FDCTRL_MBDSR1(0x3) | FLEXCAN_FDCTRL_MBDSR0(0x3);
reg_mcr |= FLEXCAN_MCR_FDEN;
@ -54,7 +54,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
}
if ((priv->devtype_data->quirks & FLEXCAN_QUIRK_ENABLE_EACEN_RRS)) {
@@ -1852,7 +1858,7 @@ static int flexcan_probe(struct platform
@@ -1856,7 +1862,7 @@ static int flexcan_probe(struct platform
if (priv->devtype_data->quirks & FLEXCAN_QUIRK_TIMESTAMP_SUPPORT_FD) {
if (priv->devtype_data->quirks & FLEXCAN_QUIRK_USE_OFF_TIMESTAMP) {

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