Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
This commit is contained in:
commit
e197182f1e
@ -233,7 +233,7 @@ menu "Global build settings"
|
|||||||
|
|
||||||
config STRIP_KERNEL_EXPORTS
|
config STRIP_KERNEL_EXPORTS
|
||||||
bool "Strip unnecessary exports from the kernel image"
|
bool "Strip unnecessary exports from the kernel image"
|
||||||
depends on !LINUX_6_6
|
depends on BROKEN
|
||||||
help
|
help
|
||||||
Reduces kernel size by stripping unused kernel exports from the kernel
|
Reduces kernel size by stripping unused kernel exports from the kernel
|
||||||
image. Note that this might make the kernel incompatible with any kernel
|
image. Note that this might make the kernel incompatible with any kernel
|
||||||
|
|||||||
@ -1,2 +0,0 @@
|
|||||||
LINUX_VERSION-6.1 = .109
|
|
||||||
LINUX_KERNEL_HASH-6.1.109 = 732ff40ac63642c5ddbb7d65c24c90ed08b95af0e8c92df4739e9703eec01ac1
|
|
||||||
@ -53,7 +53,6 @@ ac_cv_have_control_in_msghdr=yes
|
|||||||
ac_cv_have_decl_sys_siglist=no
|
ac_cv_have_decl_sys_siglist=no
|
||||||
ac_cv_have_openpty_ctty_bug=yes
|
ac_cv_have_openpty_ctty_bug=yes
|
||||||
ac_cv_have_space_d_name_in_struct_dirent=yes
|
ac_cv_have_space_d_name_in_struct_dirent=yes
|
||||||
ac_cv_header_netinet_sctp_h=no
|
|
||||||
ac_cv_header_netinet_sctp_uio_h=no
|
ac_cv_header_netinet_sctp_uio_h=no
|
||||||
ac_cv_int64_t=yes
|
ac_cv_int64_t=yes
|
||||||
ac_cv_lbl_unaligned_fail=no
|
ac_cv_lbl_unaligned_fail=no
|
||||||
|
|||||||
@ -8,13 +8,13 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=tfa-layerscape
|
PKG_NAME:=tfa-layerscape
|
||||||
PKG_VERSION:=6.6.3.1.0.0
|
PKG_VERSION:=6.6.23.2.0.0
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_URL:=https://github.com/nxp-qoriq/atf
|
PKG_SOURCE_URL:=https://github.com/nxp-qoriq/atf
|
||||||
PKG_SOURCE_VERSION:=lf-6.6.3-1.0.0
|
PKG_SOURCE_VERSION:=lf-6.6.23-2.0.0
|
||||||
PKG_MIRROR_HASH:=28b731c1c4cc3226ccaef2142c61127f213c03cbd219df556c1d191e95f8470c
|
PKG_MIRROR_HASH:=628a95ba60a593ae0575ee9ede1154445ec3a86a07b18e4947e06e13c2b67859
|
||||||
PKG_BUILD_DEPENDS:=tfa-layerscape/host
|
PKG_BUILD_DEPENDS:=tfa-layerscape/host
|
||||||
|
|
||||||
include $(INCLUDE_DIR)/host-build.mk
|
include $(INCLUDE_DIR)/host-build.mk
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
--- a/Makefile
|
--- a/Makefile
|
||||||
+++ b/Makefile
|
+++ b/Makefile
|
||||||
@@ -953,10 +953,6 @@ CRTTOOL ?= ${CRTTOOLPATH}/cert_create$
|
@@ -128,10 +128,6 @@ CRTTOOL ?= ${CRTTOOLPATH}/cert_create$
|
||||||
ENCTOOLPATH ?= tools/encrypt_fw
|
ENCTOOLPATH ?= tools/encrypt_fw
|
||||||
ENCTOOL ?= ${ENCTOOLPATH}/encrypt_fw${BIN_EXT}
|
ENCTOOL ?= ${ENCTOOLPATH}/encrypt_fw${BIN_EXT}
|
||||||
|
|
||||||
@ -11,7 +11,7 @@
|
|||||||
# Variables for use with sptool
|
# Variables for use with sptool
|
||||||
SPTOOLPATH ?= tools/sptool
|
SPTOOLPATH ?= tools/sptool
|
||||||
SPTOOL ?= ${SPTOOLPATH}/sptool.py
|
SPTOOL ?= ${SPTOOLPATH}/sptool.py
|
||||||
@@ -1409,13 +1405,6 @@ endif
|
@@ -1597,13 +1593,6 @@ endif #(CHECKPATCH)
|
||||||
clean:
|
clean:
|
||||||
@echo " CLEAN"
|
@echo " CLEAN"
|
||||||
$(call SHELL_REMOVE_DIR,${BUILD_PLAT})
|
$(call SHELL_REMOVE_DIR,${BUILD_PLAT})
|
||||||
@ -21,11 +21,11 @@
|
|||||||
-# Clear the MAKEFLAGS as we do not want
|
-# Clear the MAKEFLAGS as we do not want
|
||||||
-# to pass the gnumake flags to nmake.
|
-# to pass the gnumake flags to nmake.
|
||||||
- ${Q}set MAKEFLAGS= && ${MSVC_NMAKE} /nologo /f ${FIPTOOLPATH}/Makefile.msvc FIPTOOLPATH=$(subst /,\,$(FIPTOOLPATH)) FIPTOOL=$(subst /,\,$(FIPTOOL)) clean
|
- ${Q}set MAKEFLAGS= && ${MSVC_NMAKE} /nologo /f ${FIPTOOLPATH}/Makefile.msvc FIPTOOLPATH=$(subst /,\,$(FIPTOOLPATH)) FIPTOOL=$(subst /,\,$(FIPTOOL)) clean
|
||||||
-endif
|
-endif #(UNIX_MK)
|
||||||
${Q}${MAKE} PLAT=${PLAT} --no-print-directory -C ${CRTTOOLPATH} clean
|
${Q}${MAKE} PLAT=${PLAT} --no-print-directory -C ${CRTTOOLPATH} clean
|
||||||
${Q}${MAKE} PLAT=${PLAT} --no-print-directory -C ${ENCTOOLPATH} clean
|
${Q}${MAKE} PLAT=${PLAT} --no-print-directory -C ${ENCTOOLPATH} clean
|
||||||
${Q}${MAKE} --no-print-directory -C ${ROMLIBPATH} clean
|
${Q}${MAKE} --no-print-directory -C ${ROMLIBPATH} clean
|
||||||
@@ -1424,13 +1413,6 @@ realclean distclean:
|
@@ -1612,13 +1601,6 @@ realclean distclean:
|
||||||
@echo " REALCLEAN"
|
@echo " REALCLEAN"
|
||||||
$(call SHELL_REMOVE_DIR,${BUILD_BASE})
|
$(call SHELL_REMOVE_DIR,${BUILD_BASE})
|
||||||
$(call SHELL_DELETE_ALL, ${CURDIR}/cscope.*)
|
$(call SHELL_DELETE_ALL, ${CURDIR}/cscope.*)
|
||||||
@ -35,29 +35,29 @@
|
|||||||
-# Clear the MAKEFLAGS as we do not want
|
-# Clear the MAKEFLAGS as we do not want
|
||||||
-# to pass the gnumake flags to nmake.
|
-# to pass the gnumake flags to nmake.
|
||||||
- ${Q}set MAKEFLAGS= && ${MSVC_NMAKE} /nologo /f ${FIPTOOLPATH}/Makefile.msvc FIPTOOLPATH=$(subst /,\,$(FIPTOOLPATH)) FIPTOOL=$(subst /,\,$(FIPTOOL)) realclean
|
- ${Q}set MAKEFLAGS= && ${MSVC_NMAKE} /nologo /f ${FIPTOOLPATH}/Makefile.msvc FIPTOOLPATH=$(subst /,\,$(FIPTOOLPATH)) FIPTOOL=$(subst /,\,$(FIPTOOL)) realclean
|
||||||
-endif
|
-endif #(UNIX_MK)
|
||||||
${Q}${MAKE} PLAT=${PLAT} --no-print-directory -C ${CRTTOOLPATH} realclean
|
${Q}${MAKE} PLAT=${PLAT} --no-print-directory -C ${CRTTOOLPATH} realclean
|
||||||
${Q}${MAKE} PLAT=${PLAT} --no-print-directory -C ${ENCTOOLPATH} realclean
|
${Q}${MAKE} PLAT=${PLAT} --no-print-directory -C ${ENCTOOLPATH} realclean
|
||||||
${Q}${MAKE} --no-print-directory -C ${ROMLIBPATH} clean
|
${Q}${MAKE} --no-print-directory -C ${ROMLIBPATH} clean
|
||||||
@@ -1486,7 +1468,7 @@ certificates: ${CRT_DEPS} ${CRTTOOL}
|
@@ -1674,7 +1656,7 @@ certificates: ${CRT_DEPS} ${CRTTOOL}
|
||||||
@${ECHO_BLANK_LINE}
|
@${ECHO_BLANK_LINE}
|
||||||
endif
|
endif #(GENERATE_COT)
|
||||||
|
|
||||||
-${BUILD_PLAT}/${FIP_NAME}: ${FIP_DEPS} ${FIPTOOL}
|
-${BUILD_PLAT}/${FIP_NAME}: ${FIP_DEPS} ${FIPTOOL}
|
||||||
+${BUILD_PLAT}/${FIP_NAME}: ${FIP_DEPS}
|
+${BUILD_PLAT}/${FIP_NAME}: ${FIP_DEPS}
|
||||||
$(eval ${CHECK_FIP_CMD})
|
$(eval ${CHECK_FIP_CMD})
|
||||||
${Q}${FIPTOOL} create ${FIP_ARGS} $@
|
${Q}${FIPTOOL} create ${FIP_ARGS} $@
|
||||||
${Q}${FIPTOOL} info $@
|
${Q}${FIPTOOL} info $@
|
||||||
@@ -1503,7 +1485,7 @@ fwu_certificates: ${FWU_CRT_DEPS} ${CRTT
|
@@ -1691,7 +1673,7 @@ fwu_certificates: ${FWU_CRT_DEPS} ${CRTT
|
||||||
@${ECHO_BLANK_LINE}
|
@${ECHO_BLANK_LINE}
|
||||||
endif
|
endif #(GENERATE_COT)
|
||||||
|
|
||||||
-${BUILD_PLAT}/${FWU_FIP_NAME}: ${FWU_FIP_DEPS} ${FIPTOOL}
|
-${BUILD_PLAT}/${FWU_FIP_NAME}: ${FWU_FIP_DEPS} ${FIPTOOL}
|
||||||
+${BUILD_PLAT}/${FWU_FIP_NAME}: ${FWU_FIP_DEPS}
|
+${BUILD_PLAT}/${FWU_FIP_NAME}: ${FWU_FIP_DEPS}
|
||||||
$(eval ${CHECK_FWU_FIP_CMD})
|
$(eval ${CHECK_FWU_FIP_CMD})
|
||||||
${Q}${FIPTOOL} create ${FWU_FIP_ARGS} $@
|
${Q}${FIPTOOL} create ${FWU_FIP_ARGS} $@
|
||||||
${Q}${FIPTOOL} info $@
|
${Q}${FIPTOOL} info $@
|
||||||
@@ -1511,19 +1493,9 @@ ${BUILD_PLAT}/${FWU_FIP_NAME}: ${FWU_FIP
|
@@ -1699,19 +1681,9 @@ ${BUILD_PLAT}/${FWU_FIP_NAME}: ${FWU_FIP
|
||||||
@echo "Built $@ successfully"
|
@echo "Built $@ successfully"
|
||||||
@${ECHO_BLANK_LINE}
|
@${ECHO_BLANK_LINE}
|
||||||
|
|
||||||
@ -72,26 +72,26 @@
|
|||||||
-# Clear the MAKEFLAGS as we do not want
|
-# Clear the MAKEFLAGS as we do not want
|
||||||
-# to pass the gnumake flags to nmake.
|
-# to pass the gnumake flags to nmake.
|
||||||
- ${Q}set MAKEFLAGS= && ${MSVC_NMAKE} /nologo /f ${FIPTOOLPATH}/Makefile.msvc FIPTOOLPATH=$(subst /,\,$(FIPTOOLPATH)) FIPTOOL=$(subst /,\,$(FIPTOOL))
|
- ${Q}set MAKEFLAGS= && ${MSVC_NMAKE} /nologo /f ${FIPTOOLPATH}/Makefile.msvc FIPTOOLPATH=$(subst /,\,$(FIPTOOLPATH)) FIPTOOL=$(subst /,\,$(FIPTOOL))
|
||||||
-endif
|
-endif #(UNIX_MK)
|
||||||
-
|
-
|
||||||
romlib.bin: libraries FORCE
|
romlib.bin: libraries FORCE
|
||||||
${Q}${MAKE} PLAT_DIR=${PLAT_DIR} BUILD_PLAT=${BUILD_PLAT} ENABLE_BTI=${ENABLE_BTI} ARM_ARCH_MINOR=${ARM_ARCH_MINOR} INCLUDES='${INCLUDES}' DEFINES='${DEFINES}' --no-print-directory -C ${ROMLIBPATH} all
|
${Q}${MAKE} PLAT_DIR=${PLAT_DIR} BUILD_PLAT=${BUILD_PLAT} ENABLE_BTI=${ENABLE_BTI} ARM_ARCH_MINOR=${ARM_ARCH_MINOR} INCLUDES='${INCLUDES}' DEFINES='${DEFINES}' --no-print-directory -C ${ROMLIBPATH} all
|
||||||
|
|
||||||
--- a/tools/fiptool/Makefile
|
--- a/tools/fiptool/Makefile
|
||||||
+++ b/tools/fiptool/Makefile
|
+++ b/tools/fiptool/Makefile
|
||||||
@@ -67,7 +67,7 @@ all: ${PROJECT}
|
@@ -81,7 +81,7 @@ all: --openssl ${PROJECT}
|
||||||
|
|
||||||
${PROJECT}: --openssl ${OBJECTS} Makefile
|
${PROJECT}: ${OBJECTS} Makefile
|
||||||
@echo " HOSTLD $@"
|
@echo " HOSTLD $@"
|
||||||
- ${Q}${HOSTCC} ${OBJECTS} -o $@ ${LDLIBS}
|
- ${Q}${HOSTCC} ${OBJECTS} -o $@ $(LDOPTS)
|
||||||
+ ${Q}${HOSTCC} ${OBJECTS} -o $@ ${LDLIBS} $(LDFLAGS)
|
+ ${Q}${HOSTCC} ${OBJECTS} -o $@ $(LDOPTS) $(LDFLAGS)
|
||||||
@${ECHO_BLANK_LINE}
|
@${ECHO_BLANK_LINE}
|
||||||
@echo "Built $@ successfully"
|
@echo "Built $@ successfully"
|
||||||
@${ECHO_BLANK_LINE}
|
@${ECHO_BLANK_LINE}
|
||||||
--- a/tools/nxp/plat_fiptool/plat_fiptool.mk
|
--- a/tools/fiptool/plat_fiptool/nxp/plat_fiptool.mk
|
||||||
+++ b/tools/nxp/plat_fiptool/plat_fiptool.mk
|
+++ b/tools/fiptool/plat_fiptool/nxp/plat_fiptool.mk
|
||||||
@@ -22,11 +22,11 @@ INCLUDE_PATHS += -I${PLAT_DEF_UUID_OID_C
|
@@ -21,11 +21,11 @@ INCLUDE_PATHS += -I${PLAT_DEF_UUID_OID_C
|
||||||
$(shell rm ${PLAT_DEF_UUID_CONFIG_FILE_PATH}/${PLAT_DEF_UUID_CONFIG_FILE_NAME}.o)
|
-I./
|
||||||
|
|
||||||
ifeq (${PLAT_DEF_OID},yes)
|
ifeq (${PLAT_DEF_OID},yes)
|
||||||
-HOSTCCFLAGS += -DPLAT_DEF_OID
|
-HOSTCCFLAGS += -DPLAT_DEF_OID
|
||||||
|
|||||||
@ -92,6 +92,8 @@ comfast,cf-e393ax)
|
|||||||
dlink,aquila-pro-ai-m30-a1)
|
dlink,aquila-pro-ai-m30-a1)
|
||||||
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x40000" "0x40000"
|
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x40000" "0x40000"
|
||||||
;;
|
;;
|
||||||
|
glinet,gl-x3000|\
|
||||||
|
glinet,gl-xe3000|\
|
||||||
glinet,gl-mt2500|\
|
glinet,gl-mt2500|\
|
||||||
glinet,gl-mt6000)
|
glinet,gl-mt6000)
|
||||||
local envdev=$(find_mmc_part "u-boot-env")
|
local envdev=$(find_mmc_part "u-boot-env")
|
||||||
|
|||||||
@ -8,13 +8,13 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=uboot-layerscape
|
PKG_NAME:=uboot-layerscape
|
||||||
PKG_VERSION:=6.6.3.1.0.0
|
PKG_VERSION:=6.6.23.2.0.0
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_URL:=https://github.com/nxp-qoriq/u-boot
|
PKG_SOURCE_URL:=https://github.com/nxp-qoriq/u-boot
|
||||||
PKG_SOURCE_VERSION:=lf-6.6.3-1.0.0
|
PKG_SOURCE_VERSION:=lf-6.6.23-2.0.0
|
||||||
PKG_MIRROR_HASH:=dec5b6e4fe328b930f201fbf06a0a7b71a9dd72f38f16c9570188c0a7fea916a
|
PKG_MIRROR_HASH:=41e089fde1d0b3b0998e6af33d5f4c2b62860bda6cd1e6a0e8d47dfd5749005d
|
||||||
|
|
||||||
include $(INCLUDE_DIR)/u-boot.mk
|
include $(INCLUDE_DIR)/u-boot.mk
|
||||||
include $(INCLUDE_DIR)/package.mk
|
include $(INCLUDE_DIR)/package.mk
|
||||||
|
|||||||
@ -17,16 +17,16 @@ Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
|
|||||||
|
|
||||||
--- a/configs/ls1021aiot_sdcard_defconfig
|
--- a/configs/ls1021aiot_sdcard_defconfig
|
||||||
+++ b/configs/ls1021aiot_sdcard_defconfig
|
+++ b/configs/ls1021aiot_sdcard_defconfig
|
||||||
@@ -24,7 +24,7 @@ CONFIG_AHCI=y
|
@@ -14,7 +14,7 @@ CONFIG_SYS_I2C_MXC_I2C3=y
|
||||||
CONFIG_LAYERSCAPE_NS_ACCESS=y
|
CONFIG_DM_GPIO=y
|
||||||
CONFIG_PCIE1=y
|
CONFIG_DEFAULT_DEVICE_TREE="ls1021a-iot-duart"
|
||||||
CONFIG_PCIE2=y
|
CONFIG_SPL_TEXT_BASE=0x10000000
|
||||||
-CONFIG_SYS_MONITOR_LEN=524288
|
-CONFIG_SYS_MONITOR_LEN=524288
|
||||||
+CONFIG_SYS_MONITOR_LEN=786432
|
+CONFIG_SYS_MONITOR_LEN=786432
|
||||||
CONFIG_OF_BOARD_SETUP=y
|
CONFIG_SPL_MMC=y
|
||||||
CONFIG_OF_STDOUT_VIA_ALIAS=y
|
CONFIG_SPL_SERIAL=y
|
||||||
CONFIG_RAMBOOT_PBL=y
|
CONFIG_SPL_STACK=0x1001d000
|
||||||
@@ -40,7 +40,7 @@ CONFIG_SPL_MAX_SIZE=0x1a000
|
@@ -43,7 +43,7 @@ CONFIG_SPL_MAX_SIZE=0x1a000
|
||||||
CONFIG_SPL_PAD_TO=0x1c000
|
CONFIG_SPL_PAD_TO=0x1c000
|
||||||
CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
|
CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
|
||||||
CONFIG_SPL_BSS_START_ADDR=0x80100000
|
CONFIG_SPL_BSS_START_ADDR=0x80100000
|
||||||
@ -34,8 +34,8 @@ Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
|
|||||||
+CONFIG_SPL_BSS_MAX_SIZE=0xc0000
|
+CONFIG_SPL_BSS_MAX_SIZE=0xc0000
|
||||||
CONFIG_SPL_FSL_PBL=y
|
CONFIG_SPL_FSL_PBL=y
|
||||||
# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
|
# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
|
||||||
CONFIG_SYS_SPL_MALLOC=y
|
CONFIG_SPL_SYS_MALLOC=y
|
||||||
@@ -66,8 +66,11 @@ CONFIG_CMD_MII=y
|
@@ -67,8 +67,11 @@ CONFIG_CMD_MII=y
|
||||||
# CONFIG_CMD_MDIO is not set
|
# CONFIG_CMD_MDIO is not set
|
||||||
CONFIG_CMD_PING=y
|
CONFIG_CMD_PING=y
|
||||||
CONFIG_CMD_EXT2=y
|
CONFIG_CMD_EXT2=y
|
||||||
|
|||||||
@ -279,6 +279,30 @@ define U-Boot/mt7981_cmcc_rax3000m-nand
|
|||||||
DEPENDS:=+trusted-firmware-a-mt7981-spim-nand-ddr4
|
DEPENDS:=+trusted-firmware-a-mt7981-spim-nand-ddr4
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
define U-Boot/mt7981_glinet_gl-x3000
|
||||||
|
NAME:=GL.iNet GL-X3000
|
||||||
|
BUILD_SUBTARGET:=filogic
|
||||||
|
BUILD_DEVICES:=glinet_gl-x3000
|
||||||
|
UBOOT_CONFIG:=mt7981_glinet_gl-x3000
|
||||||
|
UBOOT_IMAGE:=u-boot.fip
|
||||||
|
BL2_BOOTDEV:=emmc
|
||||||
|
BL2_SOC:=mt7981
|
||||||
|
BL2_DDRTYPE:=ddr4
|
||||||
|
DEPENDS:=+trusted-firmware-a-mt7981-emmc-ddr4
|
||||||
|
endef
|
||||||
|
|
||||||
|
define U-Boot/mt7981_glinet_gl-xe3000
|
||||||
|
NAME:=GL.iNet GL-XE3000
|
||||||
|
BUILD_SUBTARGET:=filogic
|
||||||
|
BUILD_DEVICES:=glinet_gl-xe3000
|
||||||
|
UBOOT_CONFIG:=mt7981_glinet_gl-x3000
|
||||||
|
UBOOT_IMAGE:=u-boot.fip
|
||||||
|
BL2_BOOTDEV:=emmc
|
||||||
|
BL2_SOC:=mt7981
|
||||||
|
BL2_DDRTYPE:=ddr4
|
||||||
|
DEPENDS:=+trusted-firmware-a-mt7981-emmc-ddr4
|
||||||
|
endef
|
||||||
|
|
||||||
define U-Boot/mt7981_h3c_magic-nx30-pro
|
define U-Boot/mt7981_h3c_magic-nx30-pro
|
||||||
NAME:=H3C Magic NX30 Pro
|
NAME:=H3C Magic NX30 Pro
|
||||||
BUILD_SUBTARGET:=filogic
|
BUILD_SUBTARGET:=filogic
|
||||||
@ -823,6 +847,8 @@ UBOOT_TARGETS := \
|
|||||||
mt7981_cmcc_a10 \
|
mt7981_cmcc_a10 \
|
||||||
mt7981_cmcc_rax3000m-emmc \
|
mt7981_cmcc_rax3000m-emmc \
|
||||||
mt7981_cmcc_rax3000m-nand \
|
mt7981_cmcc_rax3000m-nand \
|
||||||
|
mt7981_glinet_gl-x3000 \
|
||||||
|
mt7981_glinet_gl-xe3000 \
|
||||||
mt7981_h3c_magic-nx30-pro \
|
mt7981_h3c_magic-nx30-pro \
|
||||||
mt7981_imou_lc-hx3001 \
|
mt7981_imou_lc-hx3001 \
|
||||||
mt7981_jcg_q30-pro \
|
mt7981_jcg_q30-pro \
|
||||||
|
|||||||
288
package/boot/uboot-mediatek/patches/454-add-glinet-x3000.patch
Normal file
288
package/boot/uboot-mediatek/patches/454-add-glinet-x3000.patch
Normal file
@ -0,0 +1,288 @@
|
|||||||
|
diff --git a/arch/arm/dts/mt7981-glinet-gl-x3000.dts b/arch/arm/dts/mt7981-glinet-gl-x3000.dts
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..911a702
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/arch/arm/dts/mt7981-glinet-gl-x3000.dts
|
||||||
|
@@ -0,0 +1,144 @@
|
||||||
|
+// SPDX-License-Identifier: GPL-2.0
|
||||||
|
+
|
||||||
|
+/dts-v1/;
|
||||||
|
+#include "mt7981.dtsi"
|
||||||
|
+#include <dt-bindings/gpio/gpio.h>
|
||||||
|
+#include <dt-bindings/input/linux-event-codes.h>
|
||||||
|
+
|
||||||
|
+/ {
|
||||||
|
+ #address-cells = <1>;
|
||||||
|
+ #size-cells = <1>;
|
||||||
|
+ model = "GL.iNet GL-X3000";
|
||||||
|
+ compatible = "glinet,gl-x3000", "mediatek,mt7981";
|
||||||
|
+
|
||||||
|
+ chosen {
|
||||||
|
+ stdout-path = &uart0;
|
||||||
|
+ tick-timer = &timer0;
|
||||||
|
+ };
|
||||||
|
+
|
||||||
|
+ memory@40000000 {
|
||||||
|
+ device_type = "memory";
|
||||||
|
+ reg = <0x40000000 0x20000000>;
|
||||||
|
+ };
|
||||||
|
+
|
||||||
|
+ reg_3p3v: regulator-3p3v {
|
||||||
|
+ compatible = "regulator-fixed";
|
||||||
|
+ regulator-name = "fixed-3.3V";
|
||||||
|
+ regulator-min-microvolt = <3300000>;
|
||||||
|
+ regulator-max-microvolt = <3300000>;
|
||||||
|
+ regulator-boot-on;
|
||||||
|
+ regulator-always-on;
|
||||||
|
+ };
|
||||||
|
+
|
||||||
|
+ keys {
|
||||||
|
+ compatible = "gpio-keys";
|
||||||
|
+
|
||||||
|
+ reset {
|
||||||
|
+ label = "reset";
|
||||||
|
+ linux,code = <KEY_RESTART>;
|
||||||
|
+ gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
|
||||||
|
+ };
|
||||||
|
+ };
|
||||||
|
+
|
||||||
|
+ leds {
|
||||||
|
+ compatible = "gpio-leds";
|
||||||
|
+
|
||||||
|
+ wifi2g {
|
||||||
|
+ label = "green:wifi2g";
|
||||||
|
+ gpios = <&gpio 30 GPIO_ACTIVE_LOW>;
|
||||||
|
+ };
|
||||||
|
+
|
||||||
|
+ wifi5g {
|
||||||
|
+ label = "green:wifi5g";
|
||||||
|
+ gpios = <&gpio 38 GPIO_ACTIVE_LOW>;
|
||||||
|
+ };
|
||||||
|
+
|
||||||
|
+ 5g_led1 {
|
||||||
|
+ label = "green:5g:led1";
|
||||||
|
+ gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
|
||||||
|
+ };
|
||||||
|
+
|
||||||
|
+ 5g_led2 {
|
||||||
|
+ label = "green:5g:led2";
|
||||||
|
+ gpios = <&gpio 7 GPIO_ACTIVE_LOW>;
|
||||||
|
+ };
|
||||||
|
+
|
||||||
|
+ 5g_led3 {
|
||||||
|
+ label = "green:5g:led3";
|
||||||
|
+ gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
|
||||||
|
+ };
|
||||||
|
+
|
||||||
|
+ 5g_led4 {
|
||||||
|
+ label = "green:5g:led4";
|
||||||
|
+ gpios = <&gpio 4 GPIO_ACTIVE_HIGH>;
|
||||||
|
+ };
|
||||||
|
+
|
||||||
|
+ power {
|
||||||
|
+ label = "green:power";
|
||||||
|
+ gpios = <&gpio 39 GPIO_ACTIVE_LOW>;
|
||||||
|
+ };
|
||||||
|
+
|
||||||
|
+ wan {
|
||||||
|
+ label = "green:wan";
|
||||||
|
+ gpios = <&gpio 31 GPIO_ACTIVE_LOW>;
|
||||||
|
+ };
|
||||||
|
+ };
|
||||||
|
+};
|
||||||
|
+
|
||||||
|
+ð {
|
||||||
|
+ status = "okay";
|
||||||
|
+ mediatek,gmac-id = <1>;
|
||||||
|
+ phy-mode = "gmii";
|
||||||
|
+ phy-handle = <&phy0>;
|
||||||
|
+
|
||||||
|
+ mdio {
|
||||||
|
+ phy0: ethernet-phy@0 {
|
||||||
|
+ compatible = "ethernet-phy-id03a2.9461";
|
||||||
|
+ reg = <0x0>;
|
||||||
|
+ phy-mode = "gmii";
|
||||||
|
+ };
|
||||||
|
+ };
|
||||||
|
+};
|
||||||
|
+
|
||||||
|
+&mmc0 {
|
||||||
|
+ pinctrl-names = "default";
|
||||||
|
+ pinctrl-0 = <&mmc0_pins_default>;
|
||||||
|
+ max-frequency = <52000000>;
|
||||||
|
+ bus-width = <8>;
|
||||||
|
+ cap-mmc-hw-highspeed;
|
||||||
|
+ cap-mmc-hw-reset;
|
||||||
|
+ vmmc-supply = <®_3p3v>;
|
||||||
|
+ non-removable;
|
||||||
|
+ status = "okay";
|
||||||
|
+};
|
||||||
|
+
|
||||||
|
+&pinctrl {
|
||||||
|
+ mmc0_pins_default: mmc0-pins-default {
|
||||||
|
+ mux {
|
||||||
|
+ function = "flash";
|
||||||
|
+ groups = "emmc_45";
|
||||||
|
+ };
|
||||||
|
+ conf-cmd-dat {
|
||||||
|
+ pins = "SPI0_CLK", "SPI0_MOSI", "SPI0_MISO",
|
||||||
|
+ "SPI0_CS", "SPI0_HOLD", "SPI0_WP",
|
||||||
|
+ "SPI1_CLK", "SPI1_MOSI", "SPI1_MISO";
|
||||||
|
+ input-enable;
|
||||||
|
+ drive-strength = <MTK_DRIVE_4mA>;
|
||||||
|
+ bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
|
||||||
|
+ };
|
||||||
|
+ conf-clk {
|
||||||
|
+ pins = "SPI1_CS";
|
||||||
|
+ drive-strength = <MTK_DRIVE_6mA>;
|
||||||
|
+ bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
|
||||||
|
+ };
|
||||||
|
+ conf-rst {
|
||||||
|
+ pins = "GPIO_WPS";
|
||||||
|
+ drive-strength = <MTK_DRIVE_4mA>;
|
||||||
|
+ bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
|
||||||
|
+ };
|
||||||
|
+ };
|
||||||
|
+};
|
||||||
|
+
|
||||||
|
+&uart0 {
|
||||||
|
+ status = "okay";
|
||||||
|
+};
|
||||||
|
diff --git a/configs/mt7981_glinet_gl-x3000_defconfig b/configs/mt7981_glinet_gl-x3000_defconfig
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..96ad96f
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/configs/mt7981_glinet_gl-x3000_defconfig
|
||||||
|
@@ -0,0 +1,100 @@
|
||||||
|
+CONFIG_ARM=y
|
||||||
|
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
|
||||||
|
+CONFIG_POSITION_INDEPENDENT=y
|
||||||
|
+CONFIG_ARCH_MEDIATEK=y
|
||||||
|
+CONFIG_TEXT_BASE=0x41e00000
|
||||||
|
+CONFIG_SYS_MALLOC_F_LEN=0x4000
|
||||||
|
+CONFIG_NR_DRAM_BANKS=1
|
||||||
|
+CONFIG_ENV_SIZE=0x80000
|
||||||
|
+CONFIG_ENV_OFFSET=0x400000
|
||||||
|
+CONFIG_DEFAULT_DEVICE_TREE="mt7981-glinet-gl-x3000"
|
||||||
|
+CONFIG_OF_LIBFDT_OVERLAY=y
|
||||||
|
+CONFIG_TARGET_MT7981=y
|
||||||
|
+CONFIG_DEBUG_UART_BASE=0x11002000
|
||||||
|
+CONFIG_DEBUG_UART_CLOCK=40000000
|
||||||
|
+CONFIG_SYS_LOAD_ADDR=0x46000000
|
||||||
|
+CONFIG_DEBUG_UART=y
|
||||||
|
+CONFIG_ENV_VARS_UBOOT_CONFIG=y
|
||||||
|
+# CONFIG_EXPERT is not set
|
||||||
|
+CONFIG_FIT=y
|
||||||
|
+# CONFIG_BOOTSTD is not set
|
||||||
|
+# CONFIG_LEGACY_IMAGE_FORMAT is not set
|
||||||
|
+CONFIG_AUTOBOOT_MENU_SHOW=y
|
||||||
|
+CONFIG_USE_BOOTCOMMAND=y
|
||||||
|
+CONFIG_DEFAULT_FDT_FILE="mediatek/mt7981-glinet-gl-x3000.dtb"
|
||||||
|
+CONFIG_LOGLEVEL=7
|
||||||
|
+CONFIG_BOARD_LATE_INIT=y
|
||||||
|
+CONFIG_HUSH_PARSER=y
|
||||||
|
+CONFIG_SYS_PROMPT="MT7981> "
|
||||||
|
+CONFIG_SYS_CBSIZE=512
|
||||||
|
+CONFIG_SYS_PBSIZE=1049
|
||||||
|
+CONFIG_CMD_CPU=y
|
||||||
|
+CONFIG_CMD_LICENSE=y
|
||||||
|
+# CONFIG_BOOTM_NETBSD is not set
|
||||||
|
+# CONFIG_BOOTM_PLAN9 is not set
|
||||||
|
+# CONFIG_BOOTM_RTEMS is not set
|
||||||
|
+# CONFIG_BOOTM_VXWORKS is not set
|
||||||
|
+CONFIG_CMD_BOOTMENU=y
|
||||||
|
+# CONFIG_CMD_ELF is not set
|
||||||
|
+CONFIG_CMD_ASKENV=y
|
||||||
|
+CONFIG_CMD_ERASEENV=y
|
||||||
|
+CONFIG_CMD_ENV_FLAGS=y
|
||||||
|
+CONFIG_CMD_STRINGS=y
|
||||||
|
+# CONFIG_CMD_UNLZ4 is not set
|
||||||
|
+# CONFIG_CMD_UNZIP is not set
|
||||||
|
+CONFIG_CMD_DM=y
|
||||||
|
+CONFIG_CMD_GPIO=y
|
||||||
|
+CONFIG_CMD_GPT=y
|
||||||
|
+CONFIG_CMD_GPT_RENAME=y
|
||||||
|
+CONFIG_CMD_MMC=y
|
||||||
|
+CONFIG_CMD_PART=y
|
||||||
|
+CONFIG_CMD_READ=y
|
||||||
|
+CONFIG_CMD_WRITE=y
|
||||||
|
+CONFIG_CMD_DHCP=y
|
||||||
|
+CONFIG_CMD_TFTPSRV=y
|
||||||
|
+CONFIG_CMD_RARP=y
|
||||||
|
+CONFIG_CMD_PING=y
|
||||||
|
+CONFIG_CMD_CDP=y
|
||||||
|
+CONFIG_CMD_SNTP=y
|
||||||
|
+CONFIG_CMD_DNS=y
|
||||||
|
+CONFIG_CMD_LINK_LOCAL=y
|
||||||
|
+CONFIG_CMD_PXE=y
|
||||||
|
+CONFIG_CMD_CACHE=y
|
||||||
|
+CONFIG_CMD_PSTORE=y
|
||||||
|
+CONFIG_CMD_PSTORE_MEM_ADDR=0x42ff0000
|
||||||
|
+CONFIG_CMD_UUID=y
|
||||||
|
+CONFIG_CMD_HASH=y
|
||||||
|
+CONFIG_CMD_SMC=y
|
||||||
|
+CONFIG_PARTITION_TYPE_GUID=y
|
||||||
|
+CONFIG_ENV_OVERWRITE=y
|
||||||
|
+CONFIG_ENV_IS_IN_MMC=y
|
||||||
|
+CONFIG_USE_DEFAULT_ENV_FILE=y
|
||||||
|
+CONFIG_DEFAULT_ENV_FILE="glinet_gl-x3000_env"
|
||||||
|
+CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
|
||||||
|
+CONFIG_NET_RANDOM_ETHADDR=y
|
||||||
|
+CONFIG_REGMAP=y
|
||||||
|
+CONFIG_SYSCON=y
|
||||||
|
+CONFIG_BUTTON=y
|
||||||
|
+CONFIG_BUTTON_GPIO=y
|
||||||
|
+CONFIG_CLK=y
|
||||||
|
+CONFIG_GPIO_HOG=y
|
||||||
|
+CONFIG_LED=y
|
||||||
|
+CONFIG_LED_BLINK=y
|
||||||
|
+CONFIG_LED_GPIO=y
|
||||||
|
+CONFIG_MMC_HS200_SUPPORT=y
|
||||||
|
+CONFIG_MMC_MTK=y
|
||||||
|
+CONFIG_PHY_FIXED=y
|
||||||
|
+CONFIG_MEDIATEK_ETH=y
|
||||||
|
+CONFIG_PINCTRL=y
|
||||||
|
+CONFIG_PINCONF=y
|
||||||
|
+CONFIG_PINCTRL_MT7981=y
|
||||||
|
+CONFIG_POWER_DOMAIN=y
|
||||||
|
+CONFIG_MTK_POWER_DOMAIN=y
|
||||||
|
+CONFIG_DM_REGULATOR=y
|
||||||
|
+CONFIG_DM_REGULATOR_FIXED=y
|
||||||
|
+CONFIG_DM_SERIAL=y
|
||||||
|
+CONFIG_MTK_SERIAL=y
|
||||||
|
+CONFIG_HEXDUMP=y
|
||||||
|
+# CONFIG_EFI_LOADER is not set
|
||||||
|
+CONFIG_LMB_MAX_REGIONS=64
|
||||||
|
+# CONFIG_TOOLS_LIBCRYPTO is not set
|
||||||
|
diff --git a/glinet_gl-x3000_env b/glinet_gl-x3000_env
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..e624e41
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/glinet_gl-x3000_env
|
||||||
|
@@ -0,0 +1,26 @@
|
||||||
|
+ipaddr=192.168.1.1
|
||||||
|
+serverip=192.168.1.254
|
||||||
|
+loadaddr=0x46000000
|
||||||
|
+bootdelay=3
|
||||||
|
+bootfile_bl2=openwrt-mediatek-filogic-glinet_gl-x3000-preloader.bin
|
||||||
|
+bootfile_fip=openwrt-mediatek-filogic-glinet_gl-x3000-bl31-uboot.fip
|
||||||
|
+bootfile_firmware=openwrt-mediatek-filogic-glinet_gl-x3000-squashfs-factory.bin
|
||||||
|
+bootmenu_confirm_return=askenv - Press ENTER to return to menu ; bootmenu 60
|
||||||
|
+bootmenu_title= *** U-Boot Boot Menu for GL-iNet GL-X3000 ***
|
||||||
|
+bootmenu_0=Startup system (Default).=run boot_system
|
||||||
|
+bootmenu_1=Load Firmware via TFTP then write to eMMC.=run boot_tftp_firmware ; run bootmenu_confirm_return
|
||||||
|
+bootmenu_2=Load BL31+U-Boot FIP via TFTP then write to eMMC.=run boot_tftp_write_fip ; run bootmenu_confirm_return
|
||||||
|
+bootmenu_3=Load BL2 preloader via TFTP then write to eMMC.=run boot_tftp_write_bl2 ; run bootmenu_confirm_return
|
||||||
|
+bootmenu_4=Reboot.=reset
|
||||||
|
+bootmenu_5=Reset all settings to factory defaults.=run reset_factory ; reset
|
||||||
|
+filesize_to_blk=setexpr cnt $filesize + 0x1ff && setexpr cnt $cnt / 0x200
|
||||||
|
+mmc_read_kernel=mmc read $loadaddr $part_addr 0x100 && imszb $loadaddr image_size && test 0x$image_size -le 0x$part_size && mmc read $loadaddr $part_addr $image_size
|
||||||
|
+boot_system=run init_modem && part start mmc 0 kernel part_addr && part size mmc 0 kernel part_size && run mmc_read_kernel && bootm
|
||||||
|
+boot_tftp_firmware=tftpboot $loadaddr $bootfile_firmware && run emmc_write_firmware
|
||||||
|
+boot_tftp_write_fip=tftpboot $loadaddr $bootfile_fip && run emmc_write_fip
|
||||||
|
+boot_tftp_write_bl2=tftpboot $loadaddr $bootfile_bl2 && run emmc_write_bl2
|
||||||
|
+emmc_write_firmware=part start mmc 0 kernel part_addr && run filesize_to_blk && mmc write $loadaddr $part_addr $cnt
|
||||||
|
+emmc_write_bl2=run filesize_to_blk && test 0x$cnt -le 0x800 && mmc partconf 0 1 1 1 && mmc write $loadaddr 0x0 0x800 ; mmc partconf 0 1 1 0
|
||||||
|
+emmc_write_fip=part start mmc 0 fip part_addr && part size mmc 0 fip part_size && run filesize_to_blk && test 0x$cnt -le 0x$part_size && mmc write $loadaddr $part_addr $cnt
|
||||||
|
+init_modem=gpio set 10; gpio set 5; gpio set 9; gpio set 11; sleep 0.1; gpio clear 10; sleep 1
|
||||||
|
+reset_factory=eraseenv && reset
|
||||||
@ -1,3 +1,15 @@
|
|||||||
|
From 6bb92fcf7d2fea2314d616e5e2391a8bf2b0fdfa Mon Sep 17 00:00:00 2001
|
||||||
|
From: Tom Rini <trini@konsulko.com>
|
||||||
|
Date: Mon, 20 May 2024 09:54:58 -0600
|
||||||
|
Subject: [PATCH] Squashed 'dts/upstream/' changes from
|
||||||
|
b35b9bd1d4ee..7e08733c96c8
|
||||||
|
---
|
||||||
|
.../src/arm64/rockchip/rk3588s-nanopi-r6c.dts | 14 +
|
||||||
|
.../src/arm64/rockchip/rk3588s-nanopi-r6s.dts | 764 ++++++++++++++++++
|
||||||
|
2 files changed, 778 insertions(+)
|
||||||
|
create mode 100644 dts/upstream/src/arm64/rockchip/rk3588s-nanopi-r6c.dts
|
||||||
|
create mode 100644 dts/upstream/src/arm64/rockchip/rk3588s-nanopi-r6s.dts
|
||||||
|
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/dts/upstream/src/arm64/rockchip/rk3588-armsom-sige7.dts
|
+++ b/dts/upstream/src/arm64/rockchip/rk3588-armsom-sige7.dts
|
||||||
@@ -0,0 +1,691 @@
|
@@ -0,0 +1,691 @@
|
||||||
@ -8,13 +8,13 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=ls-dpl
|
PKG_NAME:=ls-dpl
|
||||||
PKG_VERSION:=10.38.0
|
PKG_VERSION:=10.39.0
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_URL:=https://github.com/nxp-qoriq/mc-utils
|
PKG_SOURCE_URL:=https://github.com/nxp-qoriq/mc-utils
|
||||||
PKG_SOURCE_VERSION:=mc_release_10.38.0
|
PKG_SOURCE_VERSION:=mc_release_10.39.0
|
||||||
PKG_MIRROR_HASH:=9ada83ac4cc259cdf2ea2ebfc2328292f7dace701bfac2b5514749bd9f8315f0
|
PKG_MIRROR_HASH:=48e0ad66f536689bf8cfd115420422a1c746cd609816bd9b07ef8ef358a85cf4
|
||||||
|
|
||||||
PKG_FLAGS:=nonshared
|
PKG_FLAGS:=nonshared
|
||||||
|
|
||||||
|
|||||||
@ -8,13 +8,13 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=ls-mc
|
PKG_NAME:=ls-mc
|
||||||
PKG_VERSION:=10.38.0
|
PKG_VERSION:=10.39.0
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_URL:=https://github.com/NXP/qoriq-mc-binary.git
|
PKG_SOURCE_URL:=https://github.com/NXP/qoriq-mc-binary.git
|
||||||
PKG_SOURCE_VERSION:=mc_release_10.38.0
|
PKG_SOURCE_VERSION:=mc_release_10.39.0
|
||||||
PKG_MIRROR_HASH:=4bd0eab4b600d6dee67b4c5b32624a92fd84e6c93f506e46a4fe52217e2d1593
|
PKG_MIRROR_HASH:=0676072ec3fcb7ad3ec101ea279f5e7b41b292b44426563aba9062668f9855ab
|
||||||
|
|
||||||
PKG_FLAGS:=nonshared
|
PKG_FLAGS:=nonshared
|
||||||
|
|
||||||
|
|||||||
@ -8,13 +8,13 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=ls-rcw
|
PKG_NAME:=ls-rcw
|
||||||
PKG_VERSION:=6.6.3.1.0.0
|
PKG_VERSION:=6.6.23.2.0.0
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_URL:=https://github.com/nxp-qoriq/rcw
|
PKG_SOURCE_URL:=https://github.com/nxp-qoriq/rcw
|
||||||
PKG_SOURCE_VERSION:=lf-6.6.3-1.0.0
|
PKG_SOURCE_VERSION:=lf-6.6.23-2.0.0
|
||||||
PKG_MIRROR_HASH:=da45ce99a0ff85375673fa8c05110c3bda36dedca4ac66190809328f79878a0a
|
PKG_MIRROR_HASH:=f5e62ac040564eb97f4d1c58496a1586a470008469cb4daee6d7c70be7fdfa07
|
||||||
|
|
||||||
PKG_FLAGS:=nonshared
|
PKG_FLAGS:=nonshared
|
||||||
|
|
||||||
|
|||||||
7
package/firmware/linux-firmware/qca_ath12k.mk
Normal file
7
package/firmware/linux-firmware/qca_ath12k.mk
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
Package/ath12k-firmware-wcn7850 = $(call Package/firmware-default,WCN7850 ath12k firmware)
|
||||||
|
define Package/ath12k-firmware-wcn7850/install
|
||||||
|
$(INSTALL_DIR) $(1)/lib/firmware/ath12k/WCN7850/hw2.0
|
||||||
|
$(INSTALL_DATA) \
|
||||||
|
$(PKG_BUILD_DIR)/ath12k/WCN7850/hw2.0/* $(1)/lib/firmware/ath12k/WCN7850/hw2.0/
|
||||||
|
endef
|
||||||
|
$(eval $(call BuildPackage,ath12k-firmware-wcn7850))
|
||||||
@ -109,7 +109,8 @@ define KernelPackage/gpio-pca953x
|
|||||||
SUBMENU:=$(GPIO_MENU)
|
SUBMENU:=$(GPIO_MENU)
|
||||||
DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core +kmod-regmap-i2c
|
DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core +kmod-regmap-i2c
|
||||||
TITLE:=PCA95xx, TCA64xx, and MAX7310 I/O ports
|
TITLE:=PCA95xx, TCA64xx, and MAX7310 I/O ports
|
||||||
KCONFIG:=CONFIG_GPIO_PCA953X
|
KCONFIG:=CONFIG_GPIO_PCA953X \
|
||||||
|
CONFIG_GPIO_PCA953X_IRQ=y
|
||||||
FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pca953x.ko
|
FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pca953x.ko
|
||||||
AUTOLOAD:=$(call AutoLoad,55,gpio-pca953x)
|
AUTOLOAD:=$(call AutoLoad,55,gpio-pca953x)
|
||||||
endef
|
endef
|
||||||
|
|||||||
@ -33,6 +33,33 @@ endef
|
|||||||
$(eval $(call KernelPackage,skge))
|
$(eval $(call KernelPackage,skge))
|
||||||
|
|
||||||
|
|
||||||
|
define KernelPackage/ag71xx
|
||||||
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
|
TITLE:=Atheros AR7XXX/AR9XXX ethernet mac support
|
||||||
|
DEPENDS:=@PCI_SUPPORT||TARGET_ath79 +kmod-phylink +kmod-mdio-devres +kmod-net-selftests
|
||||||
|
KCONFIG:=CONFIG_AG71XX
|
||||||
|
FILES:=$(LINUX_DIR)/drivers/net/ethernet/atheros/ag71xx.ko
|
||||||
|
AUTOLOAD:=$(call AutoLoad,50,ag71xx,1)
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call KernelPackage,ag71xx))
|
||||||
|
|
||||||
|
|
||||||
|
define KernelPackage/ag71xx-legacy
|
||||||
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
|
TITLE:=Downstream Atheros AR7XXX/AR9XXX ethernet mac support
|
||||||
|
DEPENDS:=@TARGET_ath79 +kmod-libphy +kmod-mdio-devres
|
||||||
|
KCONFIG:=CONFIG_AG71XX_LEGACY \
|
||||||
|
CONFIG_AG71XX_LEGACY_DEBUG=n \
|
||||||
|
CONFIG_AG71XX_LEGACY_DEBUG_FS=y
|
||||||
|
FILES:=$(LINUX_DIR)/drivers/net/ethernet/atheros/ag71xx/ag71xx_legacy.ko \
|
||||||
|
$(LINUX_DIR)/drivers/net/ethernet/atheros/ag71xx/ag71xx_legacy_mdio.ko
|
||||||
|
AUTOLOAD:=$(call AutoLoad,50,ag71xx-legacy ag71xx-legacy-mdio,1)
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call KernelPackage,ag71xx-legacy))
|
||||||
|
|
||||||
|
|
||||||
define KernelPackage/alx
|
define KernelPackage/alx
|
||||||
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
TITLE:=Qualcomm Atheros AR816x/AR817x PCI-E Ethernet Network Driver
|
TITLE:=Qualcomm Atheros AR816x/AR817x PCI-E Ethernet Network Driver
|
||||||
@ -96,7 +123,8 @@ $(eval $(call KernelPackage,atl1e))
|
|||||||
define KernelPackage/libphy
|
define KernelPackage/libphy
|
||||||
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
TITLE:=PHY library
|
TITLE:=PHY library
|
||||||
KCONFIG:=CONFIG_PHYLIB
|
KCONFIG:=CONFIG_PHYLIB \
|
||||||
|
CONFIG_PHYLIB_LEDS=y
|
||||||
FILES:=$(LINUX_DIR)/drivers/net/phy/libphy.ko
|
FILES:=$(LINUX_DIR)/drivers/net/phy/libphy.ko
|
||||||
AUTOLOAD:=$(call AutoLoad,15,libphy,1)
|
AUTOLOAD:=$(call AutoLoad,15,libphy,1)
|
||||||
endef
|
endef
|
||||||
@ -224,6 +252,19 @@ endef
|
|||||||
$(eval $(call KernelPackage,phylib-broadcom))
|
$(eval $(call KernelPackage,phylib-broadcom))
|
||||||
|
|
||||||
|
|
||||||
|
define KernelPackage/phylib-qcom
|
||||||
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
|
TITLE:=Qualcomm Ethernet PHY library
|
||||||
|
KCONFIG:=CONFIG_QCOM_NET_PHYLIB
|
||||||
|
HIDDEN:=1
|
||||||
|
DEPENDS:=+kmod-libphy
|
||||||
|
FILES:=$(LINUX_DIR)/drivers/net/phy/qcom/qcom-phy-lib.ko
|
||||||
|
AUTOLOAD:=$(call AutoLoad,17,qcom-phy-lib)
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call KernelPackage,phylib-qcom))
|
||||||
|
|
||||||
|
|
||||||
define KernelPackage/phy-amd
|
define KernelPackage/phy-amd
|
||||||
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
TITLE:=AMD PHY driver
|
TITLE:=AMD PHY driver
|
||||||
@ -240,6 +281,18 @@ endef
|
|||||||
$(eval $(call KernelPackage,phy-amd))
|
$(eval $(call KernelPackage,phy-amd))
|
||||||
|
|
||||||
|
|
||||||
|
define KernelPackage/phy-at803x
|
||||||
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
|
TITLE:=Qualcomm Atheros 8337 internal PHY
|
||||||
|
KCONFIG:=CONFIG_AT803X_PHY
|
||||||
|
DEPENDS:=+kmod-phylib-qcom
|
||||||
|
FILES:=$(LINUX_DIR)/drivers/net/phy/qcom/at803x.ko
|
||||||
|
AUTOLOAD:=$(call AutoLoad,18,at803x,1)
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call KernelPackage,phy-at803x))
|
||||||
|
|
||||||
|
|
||||||
define KernelPackage/phy-ax88796b
|
define KernelPackage/phy-ax88796b
|
||||||
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
TITLE:=Asix PHY driver
|
TITLE:=Asix PHY driver
|
||||||
@ -290,6 +343,37 @@ endef
|
|||||||
$(eval $(call KernelPackage,phy-bcm84881))
|
$(eval $(call KernelPackage,phy-bcm84881))
|
||||||
|
|
||||||
|
|
||||||
|
define KernelPackage/phy-intel-xway
|
||||||
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
|
TITLE:=Intel XWAY PHYs
|
||||||
|
KCONFIG:=CONFIG_INTEL_XWAY_PHY
|
||||||
|
DEPENDS:=+kmod-libphy
|
||||||
|
FILES:=$(LINUX_DIR)/drivers/net/phy/intel-xway.ko
|
||||||
|
AUTOLOAD:=$(call AutoLoad,18,intel-xway,1)
|
||||||
|
endef
|
||||||
|
|
||||||
|
define KernelPackage/phy-intel-xway/description
|
||||||
|
Supports the Intel XWAY (former Lantiq) 11G and 22E PHYs.
|
||||||
|
These PHYs are marked as standalone chips under the names
|
||||||
|
PEF 7061, PEF 7071 and PEF 7072 or integrated into the Intel
|
||||||
|
SoCs xRX200, xRX300, xRX330, xRX350 and xRX550.
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call KernelPackage,phy-intel-xway))
|
||||||
|
|
||||||
|
|
||||||
|
define KernelPackage/phy-qca83xx
|
||||||
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
|
TITLE:=Qualcomm Atheros QCA833x PHY driver
|
||||||
|
KCONFIG:=CONFIG_QCA83XX_PHY
|
||||||
|
DEPENDS:=+kmod-phylib-qcom
|
||||||
|
FILES:=$(LINUX_DIR)/drivers/net/phy/qcom/qca83xx.ko
|
||||||
|
AUTOLOAD:=$(call AutoLoad,18,qca83xx,1)
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call KernelPackage,phy-qca83xx))
|
||||||
|
|
||||||
|
|
||||||
define KernelPackage/phy-marvell
|
define KernelPackage/phy-marvell
|
||||||
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
TITLE:=Marvell Gigabit Ethernet PHY driver
|
TITLE:=Marvell Gigabit Ethernet PHY driver
|
||||||
@ -343,6 +427,23 @@ endef
|
|||||||
|
|
||||||
$(eval $(call KernelPackage,phy-marvell-10g))
|
$(eval $(call KernelPackage,phy-marvell-10g))
|
||||||
|
|
||||||
|
|
||||||
|
define KernelPackage/phy-micrel
|
||||||
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
|
TITLE:=Micrel PHYs
|
||||||
|
KCONFIG:=CONFIG_MICREL_PHY
|
||||||
|
DEPENDS:=+kmod-libphy +kmod-ptp
|
||||||
|
FILES:=$(LINUX_DIR)/drivers/net/phy/micrel.ko
|
||||||
|
AUTOLOAD:=$(call AutoLoad,18,micrel,1)
|
||||||
|
endef
|
||||||
|
|
||||||
|
define KernelPackage/phy-micrel/description
|
||||||
|
Supports the KSZ9021, VSC8201, KS8001 PHYs.
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call KernelPackage,phy-micrel))
|
||||||
|
|
||||||
|
|
||||||
define KernelPackage/phy-realtek
|
define KernelPackage/phy-realtek
|
||||||
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
TITLE:=Realtek Ethernet PHY driver
|
TITLE:=Realtek Ethernet PHY driver
|
||||||
@ -375,6 +476,22 @@ endef
|
|||||||
$(eval $(call KernelPackage,phy-smsc))
|
$(eval $(call KernelPackage,phy-smsc))
|
||||||
|
|
||||||
|
|
||||||
|
define KernelPackage/phy-vitesse
|
||||||
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
|
TITLE:=Vitesse PHYs
|
||||||
|
KCONFIG:=CONFIG_VITESSE_PHY
|
||||||
|
DEPENDS:=+kmod-libphy
|
||||||
|
FILES:=$(LINUX_DIR)/drivers/net/phy/vitesse.ko
|
||||||
|
AUTOLOAD:=$(call AutoLoad,18,vitesse,1)
|
||||||
|
endef
|
||||||
|
|
||||||
|
define KernelPackage/phy-vitesse/description
|
||||||
|
Currently supports the vsc8244
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call KernelPackage,phy-vitesse))
|
||||||
|
|
||||||
|
|
||||||
define KernelPackage/phy-airoha-en8811h
|
define KernelPackage/phy-airoha-en8811h
|
||||||
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
TITLE:=Airoha EN8811H 2.5G Ethernet PHY
|
TITLE:=Airoha EN8811H 2.5G Ethernet PHY
|
||||||
@ -407,13 +524,27 @@ endef
|
|||||||
|
|
||||||
$(eval $(call KernelPackage,phy-aquantia))
|
$(eval $(call KernelPackage,phy-aquantia))
|
||||||
|
|
||||||
|
define KernelPackage/dsa
|
||||||
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
|
TITLE:=Distributed Switch Architecture support
|
||||||
|
DEPENDS:=+kmod-mdio-devres +kmod-net-selftests +kmod-phylink
|
||||||
|
KCONFIG:=CONFIG_NET_DSA
|
||||||
|
FILES:=$(LINUX_DIR)/net/dsa/dsa_core.ko
|
||||||
|
endef
|
||||||
|
|
||||||
|
define KernelPackage/dsa/description
|
||||||
|
Kernel module support for Distributed Switch Architecture
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call KernelPackage,dsa))
|
||||||
|
|
||||||
define KernelPackage/dsa-tag-dsa
|
define KernelPackage/dsa-tag-dsa
|
||||||
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
TITLE:=Marvell DSA type DSA and EDSA taggers
|
TITLE:=Marvell DSA type DSA and EDSA taggers
|
||||||
|
DEPENDS:=+kmod-dsa
|
||||||
KCONFIG:= CONFIG_NET_DSA_TAG_DSA_COMMON \
|
KCONFIG:= CONFIG_NET_DSA_TAG_DSA_COMMON \
|
||||||
CONFIG_NET_DSA_TAG_DSA \
|
CONFIG_NET_DSA_TAG_DSA \
|
||||||
CONFIG_NET_DSA_TAG_EDSA \
|
CONFIG_NET_DSA_TAG_EDSA
|
||||||
CONFIG_NET_DSA=y
|
|
||||||
FILES:=$(LINUX_DIR)/net/dsa/tag_dsa.ko
|
FILES:=$(LINUX_DIR)/net/dsa/tag_dsa.ko
|
||||||
AUTOLOAD:=$(call AutoLoad,40,tag_dsa,1)
|
AUTOLOAD:=$(call AutoLoad,40,tag_dsa,1)
|
||||||
endef
|
endef
|
||||||
@ -427,10 +558,9 @@ $(eval $(call KernelPackage,dsa-tag-dsa))
|
|||||||
define KernelPackage/dsa-mv88e6xxx
|
define KernelPackage/dsa-mv88e6xxx
|
||||||
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
TITLE:=Marvell MV88E6XXX DSA Switch
|
TITLE:=Marvell MV88E6XXX DSA Switch
|
||||||
DEPENDS:=+kmod-ptp +kmod-phy-marvell +kmod-dsa-tag-dsa
|
DEPENDS:=+kmod-dsa +kmod-ptp +kmod-phy-marvell +kmod-dsa-tag-dsa
|
||||||
KCONFIG:=CONFIG_NET_DSA_MV88E6XXX \
|
KCONFIG:=CONFIG_NET_DSA_MV88E6XXX \
|
||||||
CONFIG_NET_DSA_MV88E6XXX_PTP=y \
|
CONFIG_NET_DSA_MV88E6XXX_PTP=y
|
||||||
CONFIG_NET_DSA=y
|
|
||||||
FILES:=$(LINUX_DIR)/drivers/net/dsa/mv88e6xxx/mv88e6xxx.ko
|
FILES:=$(LINUX_DIR)/drivers/net/dsa/mv88e6xxx/mv88e6xxx.ko
|
||||||
AUTOLOAD:=$(call AutoLoad,41,mv88e6xxx,1)
|
AUTOLOAD:=$(call AutoLoad,41,mv88e6xxx,1)
|
||||||
endef
|
endef
|
||||||
@ -441,12 +571,32 @@ endef
|
|||||||
|
|
||||||
$(eval $(call KernelPackage,dsa-mv88e6xxx))
|
$(eval $(call KernelPackage,dsa-mv88e6xxx))
|
||||||
|
|
||||||
|
define KernelPackage/dsa-qca8k
|
||||||
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
|
TITLE:=Qualcomm Atheros QCA8xxx switch family DSA support
|
||||||
|
DEPENDS:=+kmod-dsa +kmod-regmap-core
|
||||||
|
KCONFIG:= \
|
||||||
|
CONFIG_NET_DSA_QCA8K \
|
||||||
|
CONFIG_NET_DSA_QCA8K_LEDS_SUPPORT=y \
|
||||||
|
CONFIG_NET_DSA_TAG_QCA
|
||||||
|
FILES:= \
|
||||||
|
$(LINUX_DIR)/drivers/net/dsa/qca/qca8k.ko \
|
||||||
|
$(LINUX_DIR)/net/dsa/tag_qca.ko
|
||||||
|
AUTOLOAD:=$(call AutoLoad,42,qca8k,1)
|
||||||
|
endef
|
||||||
|
|
||||||
|
define KernelPackage/dsa-qca8k/description
|
||||||
|
DSA based kernel modules for the Qualcomm Atheros QCA8xxx switch family
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call KernelPackage,dsa-qca8k))
|
||||||
|
|
||||||
define KernelPackage/swconfig
|
define KernelPackage/swconfig
|
||||||
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
TITLE:=switch configuration API
|
TITLE:=switch configuration API
|
||||||
DEPENDS:=+kmod-libphy
|
DEPENDS:=+kmod-libphy
|
||||||
KCONFIG:=CONFIG_SWCONFIG
|
KCONFIG:=CONFIG_SWCONFIG \
|
||||||
|
CONFIG_SWCONFIG_LEDS=y
|
||||||
FILES:=$(LINUX_DIR)/drivers/net/phy/swconfig.ko
|
FILES:=$(LINUX_DIR)/drivers/net/phy/swconfig.ko
|
||||||
AUTOLOAD:=$(call AutoLoad,41,swconfig)
|
AUTOLOAD:=$(call AutoLoad,41,swconfig)
|
||||||
endef
|
endef
|
||||||
@ -604,7 +754,8 @@ define KernelPackage/switch-ar8xxx
|
|||||||
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
SUBMENU:=$(NETWORK_DEVICES_MENU)
|
||||||
TITLE:=Atheros AR8216/8327 switch support
|
TITLE:=Atheros AR8216/8327 switch support
|
||||||
DEPENDS:=+kmod-swconfig +kmod-mdio-devres
|
DEPENDS:=+kmod-swconfig +kmod-mdio-devres
|
||||||
KCONFIG:=CONFIG_AR8216_PHY
|
KCONFIG:=CONFIG_AR8216_PHY \
|
||||||
|
CONFIG_AR8216_PHY_LEDS=y
|
||||||
FILES:=$(LINUX_DIR)/drivers/net/phy/ar8xxx.ko
|
FILES:=$(LINUX_DIR)/drivers/net/phy/ar8xxx.ko
|
||||||
AUTOLOAD:=$(call AutoLoad,43,ar8xxx,1)
|
AUTOLOAD:=$(call AutoLoad,43,ar8xxx,1)
|
||||||
endef
|
endef
|
||||||
|
|||||||
@ -272,13 +272,13 @@ $(eval $(call KernelPackage,usb-uhci,1))
|
|||||||
define KernelPackage/usb-ohci
|
define KernelPackage/usb-ohci
|
||||||
TITLE:=Support for OHCI controllers
|
TITLE:=Support for OHCI controllers
|
||||||
DEPENDS:= \
|
DEPENDS:= \
|
||||||
|
+TARGET_ath79:kmod-phy-ath79-usb \
|
||||||
+TARGET_bcm53xx:kmod-usb-bcma \
|
+TARGET_bcm53xx:kmod-usb-bcma \
|
||||||
+TARGET_bcm47xx:kmod-usb-bcma \
|
+TARGET_bcm47xx:kmod-usb-bcma \
|
||||||
+TARGET_bcm47xx:kmod-usb-ssb
|
+TARGET_bcm47xx:kmod-usb-ssb
|
||||||
KCONFIG:= \
|
KCONFIG:= \
|
||||||
CONFIG_USB_OHCI \
|
CONFIG_USB_OHCI \
|
||||||
CONFIG_USB_OHCI_HCD \
|
CONFIG_USB_OHCI_HCD \
|
||||||
CONFIG_USB_OHCI_ATH79=y \
|
|
||||||
CONFIG_USB_OHCI_HCD_AT91=y \
|
CONFIG_USB_OHCI_HCD_AT91=y \
|
||||||
CONFIG_USB_OHCI_BCM63XX=y \
|
CONFIG_USB_OHCI_BCM63XX=y \
|
||||||
CONFIG_USB_OCTEON_OHCI=y \
|
CONFIG_USB_OCTEON_OHCI=y \
|
||||||
|
|||||||
@ -348,6 +348,7 @@ define Build/Patch
|
|||||||
$(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/ath9k,ath9k/)
|
$(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/ath9k,ath9k/)
|
||||||
$(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/ath10k,ath10k/)
|
$(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/ath10k,ath10k/)
|
||||||
$(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/ath11k,ath11k/)
|
$(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/ath11k,ath11k/)
|
||||||
|
$(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/ath12k,ath12k/)
|
||||||
$(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/rt2x00,rt2x00/)
|
$(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/rt2x00,rt2x00/)
|
||||||
$(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/mt7601u,mt7601u/)
|
$(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/mt7601u,mt7601u/)
|
||||||
$(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/mwl,mwl/)
|
$(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/mwl,mwl/)
|
||||||
@ -364,6 +365,7 @@ define Quilt/Refresh/Package
|
|||||||
$(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/ath9k,ath9k/)
|
$(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/ath9k,ath9k/)
|
||||||
$(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/ath10k,ath10k/)
|
$(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/ath10k,ath10k/)
|
||||||
$(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/ath11k,ath11k/)
|
$(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/ath11k,ath11k/)
|
||||||
|
$(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/ath12k,ath12k/)
|
||||||
$(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/rt2x00,rt2x00/)
|
$(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/rt2x00,rt2x00/)
|
||||||
$(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/mt7601u,mt7601u/)
|
$(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/mt7601u,mt7601u/)
|
||||||
$(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/mwl,mwl/)
|
$(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/mwl,mwl/)
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
PKG_DRIVERS += \
|
PKG_DRIVERS += \
|
||||||
ath ath5k ath6kl ath6kl-sdio ath6kl-usb ath9k ath9k-common ath9k-htc ath10k ath10k-sdio ath10k-smallbuffers \
|
ath ath5k ath6kl ath6kl-sdio ath6kl-usb ath9k ath9k-common ath9k-htc ath10k ath10k-sdio ath10k-smallbuffers \
|
||||||
ath11k ath11k-ahb ath11k-pci carl9170 owl-loader ar5523 wil6210
|
ath11k ath11k-ahb ath11k-pci ath12k carl9170 owl-loader ar5523 wil6210 qcom-qmi-helpers
|
||||||
|
|
||||||
PKG_CONFIG_DEPENDS += \
|
PKG_CONFIG_DEPENDS += \
|
||||||
CONFIG_PACKAGE_ATH_DEBUG \
|
CONFIG_PACKAGE_ATH_DEBUG \
|
||||||
@ -21,6 +21,7 @@ ifdef CONFIG_PACKAGE_MAC80211_DEBUGFS
|
|||||||
ATH9K_HTC_DEBUGFS \
|
ATH9K_HTC_DEBUGFS \
|
||||||
ATH10K_DEBUGFS \
|
ATH10K_DEBUGFS \
|
||||||
ATH11K_DEBUGFS \
|
ATH11K_DEBUGFS \
|
||||||
|
ATH12K_DEBUGFS \
|
||||||
CARL9170_DEBUGFS \
|
CARL9170_DEBUGFS \
|
||||||
ATH5K_DEBUG \
|
ATH5K_DEBUG \
|
||||||
ATH6KL_DEBUG \
|
ATH6KL_DEBUG \
|
||||||
@ -31,14 +32,16 @@ ifdef CONFIG_PACKAGE_MAC80211_TRACING
|
|||||||
config-y += \
|
config-y += \
|
||||||
ATH10K_TRACING \
|
ATH10K_TRACING \
|
||||||
ATH11K_TRACING \
|
ATH11K_TRACING \
|
||||||
|
ATH12K_TRACING \
|
||||||
ATH6KL_TRACING \
|
ATH6KL_TRACING \
|
||||||
ATH_TRACEPOINTS \
|
ATH_TRACEPOINTS \
|
||||||
ATH5K_TRACER \
|
ATH5K_TRACER \
|
||||||
WIL6210_TRACING
|
WIL6210_TRACING
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
config-$(call config_package,qcom-qmi-helpers) += QCOM_QMI_HELPERS
|
||||||
config-$(call config_package,ath,regular sdio smallbuffers) += ATH_CARDS ATH_COMMON
|
config-$(call config_package,ath,regular sdio smallbuffers) += ATH_CARDS ATH_COMMON
|
||||||
config-$(CONFIG_PACKAGE_ATH_DEBUG) += ATH_DEBUG ATH10K_DEBUG ATH11K_DEBUG ATH9K_STATION_STATISTICS
|
config-$(CONFIG_PACKAGE_ATH_DEBUG) += ATH_DEBUG ATH10K_DEBUG ATH11K_DEBUG ATH12K_DEBUG ATH9K_STATION_STATISTICS
|
||||||
config-$(CONFIG_PACKAGE_ATH_DFS) += ATH9K_DFS_CERTIFIED ATH10K_DFS_CERTIFIED
|
config-$(CONFIG_PACKAGE_ATH_DFS) += ATH9K_DFS_CERTIFIED ATH10K_DFS_CERTIFIED
|
||||||
config-$(CONFIG_PACKAGE_ATH_SPECTRAL) += ATH9K_COMMON_SPECTRAL ATH10K_SPECTRAL ATH11K_SPECTRAL
|
config-$(CONFIG_PACKAGE_ATH_SPECTRAL) += ATH9K_COMMON_SPECTRAL ATH10K_SPECTRAL ATH11K_SPECTRAL
|
||||||
config-$(CONFIG_PACKAGE_ATH_DYNACK) += ATH9K_DYNACK
|
config-$(CONFIG_PACKAGE_ATH_DYNACK) += ATH9K_DYNACK
|
||||||
@ -64,6 +67,7 @@ config-$(call config_package,ath10k-smallbuffers,smallbuffers) += ATH10K ATH10K_
|
|||||||
config-$(call config_package,ath11k) += ATH11K
|
config-$(call config_package,ath11k) += ATH11K
|
||||||
config-$(call config_package,ath11k-ahb) += ATH11K_AHB
|
config-$(call config_package,ath11k-ahb) += ATH11K_AHB
|
||||||
config-$(call config_package,ath11k-pci) += ATH11K_PCI
|
config-$(call config_package,ath11k-pci) += ATH11K_PCI
|
||||||
|
config-$(call config_package,ath12k) += ATH12K
|
||||||
|
|
||||||
config-$(call config_package,ath5k) += ATH5K ATH5K_PCI
|
config-$(call config_package,ath5k) += ATH5K ATH5K_PCI
|
||||||
|
|
||||||
@ -126,6 +130,14 @@ define KernelPackage/ath/config
|
|||||||
endif
|
endif
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
define KernelPackage/qcom-qmi-helpers
|
||||||
|
$(call KernelPackage/mac80211/Default)
|
||||||
|
TITLE:=Qualcomm QMI backports helpers
|
||||||
|
HIDDEN:=1
|
||||||
|
FILES:=$(PKG_BUILD_DIR)/drivers/soc/qcom/qmi_helpers.ko
|
||||||
|
AUTOLOAD:=$(call AutoProbe,qmi_helpers)
|
||||||
|
endef
|
||||||
|
|
||||||
define KernelPackage/ath
|
define KernelPackage/ath
|
||||||
$(call KernelPackage/mac80211/Default)
|
$(call KernelPackage/mac80211/Default)
|
||||||
TITLE:=Atheros common driver part
|
TITLE:=Atheros common driver part
|
||||||
@ -318,9 +330,9 @@ define KernelPackage/ath11k
|
|||||||
TITLE:=Qualcomm 802.11ax wireless chipset support (common code)
|
TITLE:=Qualcomm 802.11ax wireless chipset support (common code)
|
||||||
URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath11k
|
URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath11k
|
||||||
DEPENDS+= +kmod-ath +@DRIVER_11AC_SUPPORT +@DRIVER_11AX_SUPPORT \
|
DEPENDS+= +kmod-ath +@DRIVER_11AC_SUPPORT +@DRIVER_11AX_SUPPORT \
|
||||||
+kmod-crypto-michael-mic +ATH11K_THERMAL:kmod-hwmon-core +ATH11K_THERMAL:kmod-thermal
|
+kmod-crypto-michael-mic +ATH11K_THERMAL:kmod-hwmon-core \
|
||||||
FILES:=$(PKG_BUILD_DIR)/drivers/soc/qcom/qmi_helpers.ko \
|
+ATH11K_THERMAL:kmod-thermal +kmod-qcom-qmi-helpers
|
||||||
$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath11k/ath11k.ko
|
FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath11k/ath11k.ko
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define KernelPackage/ath11k/description
|
define KernelPackage/ath11k/description
|
||||||
@ -365,6 +377,22 @@ This module adds support for Qualcomm Technologies 802.11ax family of
|
|||||||
chipsets with PCI bus.
|
chipsets with PCI bus.
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
define KernelPackage/ath12k
|
||||||
|
$(call KernelPackage/mac80211/Default)
|
||||||
|
TITLE:=Qualcomm 802.11be wireless chipset support
|
||||||
|
URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath12k
|
||||||
|
DEPENDS+= +kmod-ath +@DRIVER_11AC_SUPPORT +@DRIVER_11AX_SUPPORT \
|
||||||
|
+kmod-crypto-michael-mic +kmod-qrtr-mhi \
|
||||||
|
+kmod-qcom-qmi-helpers
|
||||||
|
FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath12k/ath12k.ko
|
||||||
|
AUTOLOAD:=$(call AutoProbe,ath12k)
|
||||||
|
endef
|
||||||
|
|
||||||
|
define KernelPackage/ath12k/description
|
||||||
|
This module adds support for Qualcomm Technologies 802.11be family of
|
||||||
|
chipsets with PCI bus.
|
||||||
|
endef
|
||||||
|
|
||||||
define KernelPackage/carl9170
|
define KernelPackage/carl9170
|
||||||
$(call KernelPackage/mac80211/Default)
|
$(call KernelPackage/mac80211/Default)
|
||||||
TITLE:=Driver for Atheros AR9170 USB sticks
|
TITLE:=Driver for Atheros AR9170 USB sticks
|
||||||
|
|||||||
@ -0,0 +1,17 @@
|
|||||||
|
Fix ltssm crashes on BPI-Rx boards.
|
||||||
|
Seems read32/write32 using wrong address which
|
||||||
|
is not a problem on x86/64 PCI controllers.
|
||||||
|
But have issues on BPI-Rx boards.
|
||||||
|
|
||||||
|
--- a/drivers/net/wireless/ath/ath12k/pci.c
|
||||||
|
+++ b/drivers/net/wireless/ath/ath12k/pci.c
|
||||||
|
@@ -277,6 +277,9 @@ static void ath12k_pci_enable_ltssm(stru
|
||||||
|
u32 val;
|
||||||
|
int i;
|
||||||
|
|
||||||
|
+ /* Prevent startup crash on BPI-Rx */
|
||||||
|
+ return;
|
||||||
|
+
|
||||||
|
val = ath12k_pci_read32(ab, PCIE_PCIE_PARF_LTSSM);
|
||||||
|
|
||||||
|
/* PCIE link seems very unstable after the Hot Reset*/
|
||||||
@ -198,11 +198,23 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
|||||||
rt2x00_set_chip_intf(rt2x00dev, RT2X00_CHIP_INTF_SOC);
|
rt2x00_set_chip_intf(rt2x00dev, RT2X00_CHIP_INTF_SOC);
|
||||||
|
|
||||||
retval = rt2x00soc_alloc_reg(rt2x00dev);
|
retval = rt2x00soc_alloc_reg(rt2x00dev);
|
||||||
--- a/drivers/net/wireless/ralink/rt2x00/rt2x00soc.h
|
--- a/drivers/net/wireless/ralink/rt2x00/rt2800pci.c
|
||||||
+++ b/drivers/net/wireless/ralink/rt2x00/rt2x00soc.h
|
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800pci.c
|
||||||
@@ -26,4 +26,13 @@ int rt2x00soc_resume(struct platform_dev
|
@@ -278,6 +278,9 @@ static int rt2800pci_read_eeprom(struct
|
||||||
#define rt2x00soc_resume NULL
|
{
|
||||||
#endif /* CONFIG_PM */
|
int retval;
|
||||||
|
|
||||||
|
+ if (!rt2x00lib_read_eeprom(rt2x00dev))
|
||||||
|
+ return 0;
|
||||||
|
+
|
||||||
|
if (rt2800pci_efuse_detect(rt2x00dev))
|
||||||
|
retval = rt2800pci_read_eeprom_efuse(rt2x00dev);
|
||||||
|
else
|
||||||
|
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.h
|
||||||
|
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.h
|
||||||
|
@@ -270,4 +270,13 @@ void rt2800_get_txwi_rxwi_size(struct rt
|
||||||
|
unsigned short *rxwi_size);
|
||||||
|
void rt2800_pre_reset_hw(struct rt2x00_dev *rt2x00dev);
|
||||||
|
|
||||||
+/*
|
+/*
|
||||||
+ * EEPROM file handlers.
|
+ * EEPROM file handlers.
|
||||||
@ -213,4 +225,4 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
|||||||
+#define rt2x00lib_read_eeprom NULL
|
+#define rt2x00lib_read_eeprom NULL
|
||||||
+#endif /* CPTCFG_RT2X00_LIB_EEPROM */
|
+#endif /* CPTCFG_RT2X00_LIB_EEPROM */
|
||||||
+
|
+
|
||||||
#endif /* RT2X00SOC_H */
|
#endif /* RT2800LIB_H */
|
||||||
|
|||||||
@ -40,7 +40,7 @@
|
|||||||
const u8 arg0, const u8 arg1);
|
const u8 arg0, const u8 arg1);
|
||||||
--- a/drivers/net/wireless/ralink/rt2x00/rt2800pci.c
|
--- a/drivers/net/wireless/ralink/rt2x00/rt2800pci.c
|
||||||
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800pci.c
|
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800pci.c
|
||||||
@@ -286,6 +286,10 @@ static int rt2800pci_read_eeprom(struct
|
@@ -289,6 +289,10 @@ static int rt2800pci_read_eeprom(struct
|
||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -51,7 +51,7 @@
|
|||||||
static const struct ieee80211_ops rt2800pci_mac80211_ops = {
|
static const struct ieee80211_ops rt2800pci_mac80211_ops = {
|
||||||
.add_chanctx = ieee80211_emulate_add_chanctx,
|
.add_chanctx = ieee80211_emulate_add_chanctx,
|
||||||
.remove_chanctx = ieee80211_emulate_remove_chanctx,
|
.remove_chanctx = ieee80211_emulate_remove_chanctx,
|
||||||
@@ -333,6 +337,9 @@ static const struct rt2800_ops rt2800pci
|
@@ -336,6 +340,9 @@ static const struct rt2800_ops rt2800pci
|
||||||
.drv_init_registers = rt2800mmio_init_registers,
|
.drv_init_registers = rt2800mmio_init_registers,
|
||||||
.drv_get_txwi = rt2800mmio_get_txwi,
|
.drv_get_txwi = rt2800mmio_get_txwi,
|
||||||
.drv_get_dma_done = rt2800mmio_get_dma_done,
|
.drv_get_dma_done = rt2800mmio_get_dma_done,
|
||||||
|
|||||||
@ -8,12 +8,12 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=libpcap
|
PKG_NAME:=libpcap
|
||||||
PKG_VERSION:=1.10.4
|
PKG_VERSION:=1.10.5
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||||
PKG_SOURCE_URL:=https://www.tcpdump.org/release/
|
PKG_SOURCE_URL:=https://www.tcpdump.org/release/
|
||||||
PKG_HASH:=ed19a0383fad72e3ad435fd239d7cd80d64916b87269550159d20e47160ebe5f
|
PKG_HASH:=37ced90a19a302a7f32e458224a00c365c117905c2cd35ac544b6880a81488f0
|
||||||
|
|
||||||
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
||||||
PKG_LICENSE:=BSD-3-Clause
|
PKG_LICENSE:=BSD-3-Clause
|
||||||
|
|||||||
@ -1,10 +1,10 @@
|
|||||||
--- a/CMakeLists.txt
|
--- a/CMakeLists.txt
|
||||||
+++ b/CMakeLists.txt
|
+++ b/CMakeLists.txt
|
||||||
@@ -1325,7 +1325,6 @@ endif()
|
@@ -1441,7 +1441,6 @@ if(ENABLE_REMOTE)
|
||||||
#
|
|
||||||
# OpenSSL/libressl.
|
|
||||||
#
|
|
||||||
-find_package(OpenSSL)
|
|
||||||
if(OPENSSL_FOUND)
|
|
||||||
#
|
#
|
||||||
# We have OpenSSL.
|
# OpenSSL/libressl.
|
||||||
|
#
|
||||||
|
- find_package(OpenSSL)
|
||||||
|
if(OPENSSL_FOUND)
|
||||||
|
#
|
||||||
|
# We have OpenSSL.
|
||||||
|
|||||||
@ -9,7 +9,7 @@ Subject: [PATCH] skip manpages
|
|||||||
|
|
||||||
--- a/CMakeLists.txt
|
--- a/CMakeLists.txt
|
||||||
+++ b/CMakeLists.txt
|
+++ b/CMakeLists.txt
|
||||||
@@ -3325,57 +3325,6 @@ if(NOT MSVC)
|
@@ -3548,57 +3548,6 @@ if(NOT MSVC)
|
||||||
if(MINGW)
|
if(MINGW)
|
||||||
find_program(LINK_EXECUTABLE ln)
|
find_program(LINK_EXECUTABLE ln)
|
||||||
endif(MINGW)
|
endif(MINGW)
|
||||||
|
|||||||
@ -36,7 +36,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||||||
|
|
||||||
--- a/Makefile.in
|
--- a/Makefile.in
|
||||||
+++ b/Makefile.in
|
+++ b/Makefile.in
|
||||||
@@ -133,6 +133,8 @@ PUBHDR = \
|
@@ -130,6 +130,8 @@ PUBHDR = \
|
||||||
HDR = $(PUBHDR) \
|
HDR = $(PUBHDR) \
|
||||||
arcnet.h \
|
arcnet.h \
|
||||||
atmuni31.h \
|
atmuni31.h \
|
||||||
@ -220,7 +220,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||||||
#endif
|
#endif
|
||||||
--- a/gencode.c
|
--- a/gencode.c
|
||||||
+++ b/gencode.c
|
+++ b/gencode.c
|
||||||
@@ -60,6 +60,8 @@
|
@@ -58,6 +58,8 @@
|
||||||
#include "sunatmpos.h"
|
#include "sunatmpos.h"
|
||||||
#include "pflog.h"
|
#include "pflog.h"
|
||||||
#include "ppp.h"
|
#include "ppp.h"
|
||||||
@ -229,7 +229,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||||||
#include "pcap/sll.h"
|
#include "pcap/sll.h"
|
||||||
#include "pcap/ipnet.h"
|
#include "pcap/ipnet.h"
|
||||||
#include "arcnet.h"
|
#include "arcnet.h"
|
||||||
@@ -9436,6 +9438,168 @@ gen_geneve(compiler_state_t *cstate, bpf
|
@@ -9704,6 +9706,168 @@ gen_geneve(compiler_state_t *cstate, bpf
|
||||||
return b1;
|
return b1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -412,7 +412,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||||||
struct block *gen_atmtype_abbrev(compiler_state_t *, int);
|
struct block *gen_atmtype_abbrev(compiler_state_t *, int);
|
||||||
--- a/grammar.y.in
|
--- a/grammar.y.in
|
||||||
+++ b/grammar.y.in
|
+++ b/grammar.y.in
|
||||||
@@ -375,6 +375,7 @@ DIAG_OFF_BISON_BYACC
|
@@ -383,6 +383,7 @@ DIAG_OFF_BISON_BYACC
|
||||||
%type <i> mtp2type
|
%type <i> mtp2type
|
||||||
%type <blk> mtp3field
|
%type <blk> mtp3field
|
||||||
%type <blk> mtp3fieldvalue mtp3value mtp3listvalue
|
%type <blk> mtp3fieldvalue mtp3value mtp3listvalue
|
||||||
@ -420,7 +420,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||||||
|
|
||||||
|
|
||||||
%token DST SRC HOST GATEWAY
|
%token DST SRC HOST GATEWAY
|
||||||
@@ -393,7 +394,7 @@ DIAG_OFF_BISON_BYACC
|
@@ -401,7 +402,7 @@ DIAG_OFF_BISON_BYACC
|
||||||
%token LEN
|
%token LEN
|
||||||
%token IPV6 ICMPV6 AH ESP
|
%token IPV6 ICMPV6 AH ESP
|
||||||
%token VLAN MPLS
|
%token VLAN MPLS
|
||||||
@ -429,7 +429,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||||||
%token ISO ESIS CLNP ISIS L1 L2 IIH LSP SNP CSNP PSNP
|
%token ISO ESIS CLNP ISIS L1 L2 IIH LSP SNP CSNP PSNP
|
||||||
%token STP
|
%token STP
|
||||||
%token IPX
|
%token IPX
|
||||||
@@ -620,11 +621,40 @@ other: pqual TK_BROADCAST { CHECK_PTR_
|
@@ -698,11 +699,40 @@ other: pqual TK_BROADCAST { CHECK_PTR_
|
||||||
| PPPOES { CHECK_PTR_VAL(($$ = gen_pppoes(cstate, 0, 0))); }
|
| PPPOES { CHECK_PTR_VAL(($$ = gen_pppoes(cstate, 0, 0))); }
|
||||||
| GENEVE pnum { CHECK_PTR_VAL(($$ = gen_geneve(cstate, $2, 1))); }
|
| GENEVE pnum { CHECK_PTR_VAL(($$ = gen_geneve(cstate, $2, 1))); }
|
||||||
| GENEVE { CHECK_PTR_VAL(($$ = gen_geneve(cstate, 0, 0))); }
|
| GENEVE { CHECK_PTR_VAL(($$ = gen_geneve(cstate, 0, 0))); }
|
||||||
@ -472,7 +472,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||||||
| PF_RNR NUM { CHECK_PTR_VAL(($$ = gen_pf_rnr(cstate, $2))); }
|
| PF_RNR NUM { CHECK_PTR_VAL(($$ = gen_pf_rnr(cstate, $2))); }
|
||||||
--- a/nametoaddr.c
|
--- a/nametoaddr.c
|
||||||
+++ b/nametoaddr.c
|
+++ b/nametoaddr.c
|
||||||
@@ -136,8 +136,12 @@
|
@@ -134,8 +134,12 @@
|
||||||
|
|
||||||
#include "diag-control.h"
|
#include "diag-control.h"
|
||||||
|
|
||||||
@ -484,8 +484,8 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||||||
+
|
+
|
||||||
#include "nametoaddr.h"
|
#include "nametoaddr.h"
|
||||||
|
|
||||||
#ifdef HAVE_OS_PROTO_H
|
#include "thread-local.h"
|
||||||
@@ -604,6 +608,7 @@ PCAP_API_DEF struct eproto eproto_db[] =
|
@@ -597,6 +601,7 @@ PCAP_API_DEF struct eproto eproto_db[] =
|
||||||
{ "moprc", ETHERTYPE_MOPRC },
|
{ "moprc", ETHERTYPE_MOPRC },
|
||||||
{ "rarp", ETHERTYPE_REVARP },
|
{ "rarp", ETHERTYPE_REVARP },
|
||||||
{ "sca", ETHERTYPE_SCA },
|
{ "sca", ETHERTYPE_SCA },
|
||||||
@ -493,7 +493,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||||||
{ (char *)0, 0 }
|
{ (char *)0, 0 }
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -638,6 +643,60 @@ pcap_nametollc(const char *s)
|
@@ -631,6 +636,60 @@ pcap_nametollc(const char *s)
|
||||||
|
|
||||||
while (p->s != 0) {
|
while (p->s != 0) {
|
||||||
if (strcmp(p->s, s) == 0)
|
if (strcmp(p->s, s) == 0)
|
||||||
@ -582,7 +582,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||||||
Abbreviations for:
|
Abbreviations for:
|
||||||
.in +.5i
|
.in +.5i
|
||||||
.nf
|
.nf
|
||||||
@@ -792,6 +793,36 @@ For example:
|
@@ -795,6 +796,36 @@ For example:
|
||||||
filters IPv4 protocol encapsulated in Geneve with VNI 0xb. This will
|
filters IPv4 protocol encapsulated in Geneve with VNI 0xb. This will
|
||||||
match both IPv4 directly encapsulated in Geneve as well as IPv4 contained
|
match both IPv4 directly encapsulated in Geneve as well as IPv4 contained
|
||||||
inside an Ethernet frame.
|
inside an Ethernet frame.
|
||||||
@ -621,18 +621,18 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||||||
\fIProtocol\fP can be a number or one of the names
|
\fIProtocol\fP can be a number or one of the names
|
||||||
--- a/pcap/namedb.h
|
--- a/pcap/namedb.h
|
||||||
+++ b/pcap/namedb.h
|
+++ b/pcap/namedb.h
|
||||||
@@ -70,6 +70,8 @@ PCAP_API int pcap_nametoportrange(const
|
@@ -94,6 +94,8 @@ PCAP_API int pcap_nametoeproto(const cha
|
||||||
PCAP_API int pcap_nametoproto(const char *);
|
|
||||||
PCAP_API int pcap_nametoeproto(const char *);
|
PCAP_AVAILABLE_0_9
|
||||||
PCAP_API int pcap_nametollc(const char *);
|
PCAP_API int pcap_nametollc(const char *);
|
||||||
+PCAP_API int pcap_nametobatadvtype_v14(const char *);
|
+PCAP_API int pcap_nametobatadvtype_v14(const char *);
|
||||||
+PCAP_API int pcap_nametobatadvtype_v15(const char *);
|
+PCAP_API int pcap_nametobatadvtype_v15(const char *);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* If a protocol is unknown, PROTO_UNDEF is returned.
|
* If a protocol is unknown, PROTO_UNDEF is returned.
|
||||||
* Also, pcap_nametoport() returns the protocol along with the port number.
|
|
||||||
--- a/scanner.l
|
--- a/scanner.l
|
||||||
+++ b/scanner.l
|
+++ b/scanner.l
|
||||||
@@ -347,6 +347,7 @@ mpls return MPLS;
|
@@ -365,6 +365,7 @@ mpls return MPLS;
|
||||||
pppoed return PPPOED;
|
pppoed return PPPOED;
|
||||||
pppoes return PPPOES;
|
pppoes return PPPOES;
|
||||||
geneve return GENEVE;
|
geneve return GENEVE;
|
||||||
|
|||||||
@ -8,14 +8,12 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=libusb
|
PKG_NAME:=libusb
|
||||||
PKG_VERSION:=1.0.26
|
PKG_VERSION:=1.0.27
|
||||||
PKG_RELEASE:=3
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
|
||||||
PKG_SOURCE_URL:=\
|
PKG_SOURCE_URL:=https://github.com/libusb/libusb/releases/download/v$(PKG_VERSION)
|
||||||
https://github.com/libusb/libusb/releases/download/v$(PKG_VERSION) \
|
PKG_HASH:=ffaa41d741a8a3bee244ac8e54a72ea05bf2879663c098c82fc5757853441575
|
||||||
@SF/$(PKG_NAME)
|
|
||||||
PKG_HASH:=12ce7a61fc9854d1d2a1ffe095f7b5fac19ddba095c259e6067a46500381b5a5
|
|
||||||
|
|
||||||
PKG_MAINTAINER:= Felix Fietkau <nbd@nbd.name>
|
PKG_MAINTAINER:= Felix Fietkau <nbd@nbd.name>
|
||||||
PKG_LICENSE:=LGPL-2.1-or-later
|
PKG_LICENSE:=LGPL-2.1-or-later
|
||||||
@ -32,7 +30,7 @@ define Package/libusb-1.0
|
|||||||
CATEGORY:=Libraries
|
CATEGORY:=Libraries
|
||||||
TITLE:=A library for accessing Linux USB devices
|
TITLE:=A library for accessing Linux USB devices
|
||||||
DEPENDS:=+libpthread +librt +libatomic
|
DEPENDS:=+libpthread +librt +libatomic
|
||||||
URL:=http://libusb.info/
|
URL:=https://libusb.info/
|
||||||
ABI_VERSION:=0
|
ABI_VERSION:=0
|
||||||
endef
|
endef
|
||||||
|
|
||||||
@ -45,7 +43,7 @@ define Package/fxload
|
|||||||
SECTION:=utils
|
SECTION:=utils
|
||||||
CATEGORY:=Utilities
|
CATEGORY:=Utilities
|
||||||
TITLE:=fxload firmware loader
|
TITLE:=fxload firmware loader
|
||||||
URL:=http://linux-hotplug.sourceforge.net
|
URL:=https://linux-hotplug.sourceforge.net
|
||||||
DEPENDS:=+libusb-1.0
|
DEPENDS:=+libusb-1.0
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
|||||||
@ -8,17 +8,16 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=mbedtls
|
PKG_NAME:=mbedtls
|
||||||
PKG_VERSION:=3.6.0
|
PKG_VERSION:=3.6.1
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=1
|
||||||
PKG_BUILD_FLAGS:=no-mips16 gc-sections no-lto
|
PKG_BUILD_FLAGS:=no-mips16 gc-sections no-lto
|
||||||
|
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
|
||||||
PKG_SOURCE_URL=https://github.com/Mbed-TLS/mbedtls.git
|
PKG_SOURCE_URL=https://github.com/Mbed-TLS/$(PKG_NAME)/releases/download/$(PKG_NAME)-$(PKG_VERSION)
|
||||||
PKG_SOURCE_VERSION:=2ca6c285a0dd3f33982dd57299012dacab1ff206
|
PKG_HASH:=fc8bef0991b43629b7e5319de6f34f13359011105e08e3e16eed3a9fe6ffd3a3
|
||||||
PKG_MIRROR_HASH:=a684012126590b4e0b6ab41e244cc2af0d2bcfc4b6c94bf42fc37d2d08f0553e
|
|
||||||
|
|
||||||
PKG_LICENSE:=GPL-2.0-or-later
|
PKG_LICENSE:=GPL-2.0-or-later
|
||||||
PKG_LICENSE_FILES:=gpl-2.0.txt
|
PKG_LICENSE_FILES:=LICENSE
|
||||||
PKG_CPE_ID:=cpe:/a:arm:mbed_tls
|
PKG_CPE_ID:=cpe:/a:arm:mbed_tls
|
||||||
|
|
||||||
MBEDTLS_BUILD_OPTS_CURVES= \
|
MBEDTLS_BUILD_OPTS_CURVES= \
|
||||||
@ -90,7 +89,7 @@ include $(INCLUDE_DIR)/cmake.mk
|
|||||||
|
|
||||||
define Package/mbedtls/Default
|
define Package/mbedtls/Default
|
||||||
TITLE:=Embedded SSL
|
TITLE:=Embedded SSL
|
||||||
URL:=https://tls.mbed.org
|
URL:=https://www.trustedfirmware.org/projects/mbed-tls/
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/mbedtls/Default/description
|
define Package/mbedtls/Default/description
|
||||||
|
|||||||
@ -5,9 +5,9 @@ PKG_RELEASE:=1
|
|||||||
|
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_URL=$(PROJECT_GIT)/project/netifd.git
|
PKG_SOURCE_URL=$(PROJECT_GIT)/project/netifd.git
|
||||||
PKG_SOURCE_DATE:=2024-09-12
|
PKG_SOURCE_DATE:=2024-09-21
|
||||||
PKG_SOURCE_VERSION:=02aa43d82d587d87523231be5a5e0bf956435725
|
PKG_SOURCE_VERSION:=24f9a93a9559c93cf1e794fdfcd87a38d27a8e0e
|
||||||
PKG_MIRROR_HASH:=a0e997ed9b0191417e65aaf43fbfd3a51b734ce1ea83f87e2d71b904b5a368ca
|
PKG_MIRROR_HASH:=a3baa049b86f65cf9709d57bb5a9ea7a5b7405f63c77e2bd641fe9b59865838c
|
||||||
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
||||||
|
|
||||||
PKG_LICENSE:=GPL-2.0
|
PKG_LICENSE:=GPL-2.0
|
||||||
|
|||||||
@ -378,8 +378,8 @@ hostapd_common_add_bss_config() {
|
|||||||
config_add_array radius_auth_req_attr
|
config_add_array radius_auth_req_attr
|
||||||
config_add_array radius_acct_req_attr
|
config_add_array radius_acct_req_attr
|
||||||
|
|
||||||
config_add_int eap_server
|
config_add_int eap_server radius_server_auth_port
|
||||||
config_add_string eap_user_file ca_cert server_cert private_key private_key_passwd server_id
|
config_add_string eap_user_file ca_cert server_cert private_key private_key_passwd server_id radius_server_clients
|
||||||
|
|
||||||
config_add_boolean fils
|
config_add_boolean fils
|
||||||
config_add_string fils_dhcp
|
config_add_string fils_dhcp
|
||||||
@ -573,7 +573,7 @@ hostapd_set_bss_options() {
|
|||||||
multi_ap multi_ap_backhaul_ssid multi_ap_backhaul_key skip_inactivity_poll \
|
multi_ap multi_ap_backhaul_ssid multi_ap_backhaul_key skip_inactivity_poll \
|
||||||
ppsk airtime_bss_weight airtime_bss_limit airtime_sta_weight \
|
ppsk airtime_bss_weight airtime_bss_limit airtime_sta_weight \
|
||||||
multicast_to_unicast_all proxy_arp per_sta_vif \
|
multicast_to_unicast_all proxy_arp per_sta_vif \
|
||||||
eap_server eap_user_file ca_cert server_cert private_key private_key_passwd server_id \
|
eap_server eap_user_file ca_cert server_cert private_key private_key_passwd server_id radius_server_clients radius_server_auth_port \
|
||||||
vendor_elements fils ocv apup
|
vendor_elements fils ocv apup
|
||||||
|
|
||||||
set_default fils 0
|
set_default fils 0
|
||||||
@ -1153,6 +1153,8 @@ hostapd_set_bss_options() {
|
|||||||
[ -n "$private_key" ] && append bss_conf "private_key=$private_key" "$N"
|
[ -n "$private_key" ] && append bss_conf "private_key=$private_key" "$N"
|
||||||
[ -n "$private_key_passwd" ] && append bss_conf "private_key_passwd=$private_key_passwd" "$N"
|
[ -n "$private_key_passwd" ] && append bss_conf "private_key_passwd=$private_key_passwd" "$N"
|
||||||
[ -n "$server_id" ] && append bss_conf "server_id=$server_id" "$N"
|
[ -n "$server_id" ] && append bss_conf "server_id=$server_id" "$N"
|
||||||
|
[ -n "$radius_server_clients" ] && append bss_conf "radius_server_clients=$radius_server_clients" "$N"
|
||||||
|
[ -n "$radius_server_auth_port" ] && append bss_conf "radius_server_auth_port=$radius_server_auth_port" "$N"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
set_default multicast_to_unicast_all 0
|
set_default multicast_to_unicast_all 0
|
||||||
|
|||||||
@ -896,6 +896,7 @@ wpa_supplicant_set_config() {
|
|||||||
json_set_namespace wpa_supp prev
|
json_set_namespace wpa_supp prev
|
||||||
json_close_array
|
json_close_array
|
||||||
json_add_string phy "$phy"
|
json_add_string phy "$phy"
|
||||||
|
json_add_int num_global_macaddr "$num_global_macaddr"
|
||||||
json_add_boolean defer 1
|
json_add_boolean defer 1
|
||||||
local data="$(json_dump)"
|
local data="$(json_dump)"
|
||||||
|
|
||||||
@ -938,7 +939,7 @@ wpa_supplicant_start() {
|
|||||||
|
|
||||||
[ -n "$wpa_supp_init" ] || return 0
|
[ -n "$wpa_supp_init" ] || return 0
|
||||||
|
|
||||||
ubus_call wpa_supplicant config_set '{ "phy": "'"$phy"'" }' > /dev/null
|
ubus_call wpa_supplicant config_set '{ "phy": "'"$phy"'", "num_global_macaddr": '"$num_global_macaddr"' }' > /dev/null
|
||||||
}
|
}
|
||||||
|
|
||||||
mac80211_setup_supplicant() {
|
mac80211_setup_supplicant() {
|
||||||
|
|||||||
@ -8,7 +8,7 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=6in4
|
PKG_NAME:=6in4
|
||||||
PKG_RELEASE:=28
|
PKG_RELEASE:=29
|
||||||
PKG_LICENSE:=GPL-2.0
|
PKG_LICENSE:=GPL-2.0
|
||||||
|
|
||||||
include $(INCLUDE_DIR)/package.mk
|
include $(INCLUDE_DIR)/package.mk
|
||||||
@ -16,7 +16,7 @@ include $(INCLUDE_DIR)/package.mk
|
|||||||
define Package/6in4
|
define Package/6in4
|
||||||
SECTION:=net
|
SECTION:=net
|
||||||
CATEGORY:=Network
|
CATEGORY:=Network
|
||||||
DEPENDS:=@IPV6 +kmod-sit +uclient-fetch
|
DEPENDS:=@IPV6 +kmod-sit +uclient-fetch +resolveip
|
||||||
TITLE:=IPv6-in-IPv4 configuration support
|
TITLE:=IPv6-in-IPv4 configuration support
|
||||||
MAINTAINER:=Jo-Philipp Wich <jo@mein.io>
|
MAINTAINER:=Jo-Philipp Wich <jo@mein.io>
|
||||||
PKGARCH:=all
|
PKGARCH:=all
|
||||||
|
|||||||
@ -44,18 +44,35 @@ proto_6in4_setup() {
|
|||||||
local cfg="$1"
|
local cfg="$1"
|
||||||
local iface="$2"
|
local iface="$2"
|
||||||
local link="6in4-$cfg"
|
local link="6in4-$cfg"
|
||||||
|
local remoteip
|
||||||
|
|
||||||
local mtu ttl tos ipaddr peeraddr ip6addr ip6prefix ip6prefixes tunlink tunnelid username password updatekey
|
local mtu ttl tos ipaddr peeraddr ip6addr ip6prefix ip6prefixes tunlink tunnelid username password updatekey device nohostroute
|
||||||
json_get_vars mtu ttl tos ipaddr peeraddr ip6addr tunlink tunnelid username password updatekey
|
json_get_vars mtu ttl tos ipaddr peeraddr ip6addr tunlink tunnelid username password updatekey device nohostroute
|
||||||
json_for_each_item proto_6in4_add_prefix ip6prefix ip6prefixes
|
json_for_each_item proto_6in4_add_prefix ip6prefix ip6prefixes
|
||||||
|
|
||||||
|
[ -n "$device" ] && link="$device"
|
||||||
|
|
||||||
[ -z "$peeraddr" ] && {
|
[ -z "$peeraddr" ] && {
|
||||||
proto_notify_error "$cfg" "MISSING_ADDRESS"
|
proto_notify_error "$cfg" "MISSING_PEER_ADDRESS"
|
||||||
proto_block_restart "$cfg"
|
proto_block_restart "$cfg"
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
( proto_add_host_dependency "$cfg" "$peeraddr" "$tunlink" )
|
remoteip=$(resolveip -t 10 -4 "$peeraddr")
|
||||||
|
|
||||||
|
if [ -z "$remoteip" ]; then
|
||||||
|
proto_notify_error "$cfg" "PEER_RESOLVE_FAIL"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
for ip in $remoteip; do
|
||||||
|
peeraddr=$ip
|
||||||
|
break
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ "${nohostroute}" != "1" ]; then
|
||||||
|
( proto_add_host_dependency "$cfg" "$peeraddr" "$tunlink" )
|
||||||
|
fi
|
||||||
|
|
||||||
[ -z "$ipaddr" ] && {
|
[ -z "$ipaddr" ] && {
|
||||||
local wanif="$tunlink"
|
local wanif="$tunlink"
|
||||||
@ -156,6 +173,8 @@ proto_6in4_init_config() {
|
|||||||
proto_config_add_int "mtu"
|
proto_config_add_int "mtu"
|
||||||
proto_config_add_int "ttl"
|
proto_config_add_int "ttl"
|
||||||
proto_config_add_string "tos"
|
proto_config_add_string "tos"
|
||||||
|
proto_config_add_string "device"
|
||||||
|
proto_config_add_boolean "nohostroute"
|
||||||
}
|
}
|
||||||
|
|
||||||
[ -n "$INCLUDE_ONLY" ] || {
|
[ -n "$INCLUDE_ONLY" ] || {
|
||||||
|
|||||||
@ -229,6 +229,16 @@ function iface_pending_init(phydev, config)
|
|||||||
pending.next();
|
pending.next();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function iface_macaddr_init(phydev, config, macaddr_list)
|
||||||
|
{
|
||||||
|
let macaddr_data = {
|
||||||
|
num_global: config.num_global_macaddr ?? 1,
|
||||||
|
mbssid: config.mbssid ?? 0,
|
||||||
|
};
|
||||||
|
|
||||||
|
return phydev.macaddr_init(macaddr_list, macaddr_data);
|
||||||
|
}
|
||||||
|
|
||||||
function iface_restart(phydev, config, old_config)
|
function iface_restart(phydev, config, old_config)
|
||||||
{
|
{
|
||||||
let phy = phydev.name;
|
let phy = phydev.name;
|
||||||
@ -246,7 +256,7 @@ function iface_restart(phydev, config, old_config)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
phydev.macaddr_init(iface_config_macaddr_list(config));
|
iface_macaddr_init(phydev, config, iface_config_macaddr_list(config));
|
||||||
for (let i = 0; i < length(config.bss); i++) {
|
for (let i = 0; i < length(config.bss); i++) {
|
||||||
let bss = config.bss[i];
|
let bss = config.bss[i];
|
||||||
if (bss.default_macaddr)
|
if (bss.default_macaddr)
|
||||||
@ -500,11 +510,7 @@ function iface_reload_config(phydev, config, old_config)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Step 6: assign BSSID for newly created interfaces
|
// Step 6: assign BSSID for newly created interfaces
|
||||||
let macaddr_data = {
|
macaddr_list = iface_macaddr_init(phydev, config, macaddr_list);
|
||||||
num_global: config.num_global_macaddr ?? 1,
|
|
||||||
mbssid: config.mbssid ?? 0,
|
|
||||||
};
|
|
||||||
macaddr_list = phydev.macaddr_init(macaddr_list, macaddr_data);
|
|
||||||
for (let i = 0; i < length(config.bss); i++) {
|
for (let i = 0; i < length(config.bss); i++) {
|
||||||
if (bss_list[i])
|
if (bss_list[i])
|
||||||
continue;
|
continue;
|
||||||
@ -675,7 +681,7 @@ function iface_load_config(filename)
|
|||||||
|
|
||||||
if (val[0] == "#num_global_macaddr" ||
|
if (val[0] == "#num_global_macaddr" ||
|
||||||
val[0] == "mbssid")
|
val[0] == "mbssid")
|
||||||
config[val[0]] = int(val[1]);
|
config[substr(val[0], 1)] = int(val[1]);
|
||||||
|
|
||||||
push(config.radio.data, line);
|
push(config.radio.data, line);
|
||||||
}
|
}
|
||||||
@ -889,13 +895,13 @@ return {
|
|||||||
hostapd.udebug_set(null);
|
hostapd.udebug_set(null);
|
||||||
hostapd.ubus.disconnect();
|
hostapd.ubus.disconnect();
|
||||||
},
|
},
|
||||||
bss_add: function(name, obj) {
|
bss_add: function(phy, name, obj) {
|
||||||
bss_event("add", name);
|
bss_event("add", name);
|
||||||
},
|
},
|
||||||
bss_reload: function(name, obj, reconf) {
|
bss_reload: function(phy, name, obj, reconf) {
|
||||||
bss_event("reload", name, { reconf: reconf != 0 });
|
bss_event("reload", name, { reconf: reconf != 0 });
|
||||||
},
|
},
|
||||||
bss_remove: function(name, obj) {
|
bss_remove: function(phy, name, obj) {
|
||||||
bss_event("remove", name);
|
bss_event("remove", name);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@ -68,7 +68,7 @@ function prepare_config(config)
|
|||||||
return { config: config };
|
return { config: config };
|
||||||
}
|
}
|
||||||
|
|
||||||
function set_config(phy_name, config_list)
|
function set_config(phy_name, num_global_macaddr, config_list)
|
||||||
{
|
{
|
||||||
let phy = wpas.data.config[phy_name];
|
let phy = wpas.data.config[phy_name];
|
||||||
|
|
||||||
@ -77,6 +77,8 @@ function set_config(phy_name, config_list)
|
|||||||
wpas.data.config[phy_name] = phy;
|
wpas.data.config[phy_name] = phy;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
phy.num_global_macaddr = num_global_macaddr;
|
||||||
|
|
||||||
let values = [];
|
let values = [];
|
||||||
for (let config in config_list)
|
for (let config in config_list)
|
||||||
push(values, [ config.iface, prepare_config(config) ]);
|
push(values, [ config.iface, prepare_config(config) ]);
|
||||||
@ -99,7 +101,7 @@ function start_pending(phy_name)
|
|||||||
}
|
}
|
||||||
|
|
||||||
let macaddr_list = wpas.data.macaddr_list[phy_name];
|
let macaddr_list = wpas.data.macaddr_list[phy_name];
|
||||||
phydev.macaddr_init(macaddr_list);
|
phydev.macaddr_init(macaddr_list, { num_global: phy.num_global_macaddr });
|
||||||
|
|
||||||
for (let ifname in phy.data)
|
for (let ifname in phy.data)
|
||||||
iface_start(phydev, phy.data[ifname]);
|
iface_start(phydev, phy.data[ifname]);
|
||||||
@ -185,6 +187,7 @@ let main_obj = {
|
|||||||
config_set: {
|
config_set: {
|
||||||
args: {
|
args: {
|
||||||
phy: "",
|
phy: "",
|
||||||
|
num_global_macaddr: 0,
|
||||||
config: [],
|
config: [],
|
||||||
defer: true,
|
defer: true,
|
||||||
},
|
},
|
||||||
@ -195,7 +198,7 @@ let main_obj = {
|
|||||||
wpas.printf(`Set new config for phy ${req.args.phy}`);
|
wpas.printf(`Set new config for phy ${req.args.phy}`);
|
||||||
try {
|
try {
|
||||||
if (req.args.config)
|
if (req.args.config)
|
||||||
set_config(req.args.phy, req.args.config);
|
set_config(req.args.phy, req.args.num_global_macaddr, req.args.config);
|
||||||
|
|
||||||
if (!req.args.defer)
|
if (!req.args.defer)
|
||||||
start_pending(req.args.phy);
|
start_pending(req.args.phy);
|
||||||
|
|||||||
@ -0,0 +1,26 @@
|
|||||||
|
--- a/src/ap/hostapd.c
|
||||||
|
+++ b/src/ap/hostapd.c
|
||||||
|
@@ -2420,7 +2420,11 @@ static int hostapd_owe_iface_iter(struct
|
||||||
|
if (!bss->conf->ssid.ssid_set || !bss->conf->ssid.ssid_len ||
|
||||||
|
is_zero_ether_addr(bss->own_addr))
|
||||||
|
continue;
|
||||||
|
-
|
||||||
|
+ if (!os_memcmp(hapd->conf->owe_transition_bssid, bss->own_addr, ETH_ALEN) &&
|
||||||
|
+ hapd->conf->owe_transition_ssid_len == bss->conf->ssid.ssid_len &&
|
||||||
|
+ !os_memcmp(hapd->conf->owe_transition_ssid, bss->conf->ssid.ssid,
|
||||||
|
+ bss->conf->ssid.ssid_len))
|
||||||
|
+ return 0;
|
||||||
|
os_memcpy(hapd->conf->owe_transition_bssid, bss->own_addr,
|
||||||
|
ETH_ALEN);
|
||||||
|
os_memcpy(hapd->conf->owe_transition_ssid,
|
||||||
|
@@ -2437,10 +2441,6 @@ static int hostapd_owe_iface_iter(struct
|
||||||
|
|
||||||
|
int hostapd_owe_trans_get_info(struct hostapd_data *hapd)
|
||||||
|
{
|
||||||
|
- if (hapd->conf->owe_transition_ssid_len > 0 &&
|
||||||
|
- !is_zero_ether_addr(hapd->conf->owe_transition_bssid))
|
||||||
|
- return 0;
|
||||||
|
-
|
||||||
|
/* Find transition mode SSID/BSSID information from a BSS operated by
|
||||||
|
* this hostapd instance. */
|
||||||
|
if (!hapd->iface->interfaces ||
|
||||||
@ -139,7 +139,25 @@ as adding/removing interfaces.
|
|||||||
{
|
{
|
||||||
struct hostapd_bss_config *conf = hapd->conf;
|
struct hostapd_bss_config *conf = hapd->conf;
|
||||||
u8 ssid[SSID_MAX_LEN + 1];
|
u8 ssid[SSID_MAX_LEN + 1];
|
||||||
@@ -2954,7 +2958,7 @@ hostapd_alloc_bss_data(struct hostapd_if
|
@@ -1510,6 +1514,8 @@ setup_mld:
|
||||||
|
}
|
||||||
|
#endif /* CONFIG_IEEE80211BE */
|
||||||
|
|
||||||
|
+ hostapd_ucode_create_bss(hapd);
|
||||||
|
+
|
||||||
|
if (conf->wmm_enabled < 0)
|
||||||
|
conf->wmm_enabled = hapd->iconf->ieee80211n |
|
||||||
|
hapd->iconf->ieee80211ax;
|
||||||
|
@@ -2487,7 +2493,7 @@ static int hostapd_owe_iface_iter2(struc
|
||||||
|
#endif /* CONFIG_OWE */
|
||||||
|
|
||||||
|
|
||||||
|
-static void hostapd_owe_update_trans(struct hostapd_iface *iface)
|
||||||
|
+void hostapd_owe_update_trans(struct hostapd_iface *iface)
|
||||||
|
{
|
||||||
|
#ifdef CONFIG_OWE
|
||||||
|
/* Check whether the enabled BSS can complete OWE transition mode
|
||||||
|
@@ -2954,7 +2960,7 @@ hostapd_alloc_bss_data(struct hostapd_if
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -148,7 +166,7 @@ as adding/removing interfaces.
|
|||||||
{
|
{
|
||||||
if (!hapd)
|
if (!hapd)
|
||||||
return;
|
return;
|
||||||
@@ -4015,7 +4019,8 @@ int hostapd_remove_iface(struct hapd_int
|
@@ -4015,7 +4021,8 @@ int hostapd_remove_iface(struct hapd_int
|
||||||
hapd_iface = interfaces->iface[i];
|
hapd_iface = interfaces->iface[i];
|
||||||
if (hapd_iface == NULL)
|
if (hapd_iface == NULL)
|
||||||
return -1;
|
return -1;
|
||||||
@ -204,6 +222,14 @@ as adding/removing interfaces.
|
|||||||
void hostapd_new_assoc_sta(struct hostapd_data *hapd, struct sta_info *sta,
|
void hostapd_new_assoc_sta(struct hostapd_data *hapd, struct sta_info *sta,
|
||||||
int reassoc);
|
int reassoc);
|
||||||
void hostapd_interface_deinit_free(struct hostapd_iface *iface);
|
void hostapd_interface_deinit_free(struct hostapd_iface *iface);
|
||||||
|
@@ -815,6 +824,7 @@ hostapd_switch_channel_fallback(struct h
|
||||||
|
void hostapd_cleanup_cs_params(struct hostapd_data *hapd);
|
||||||
|
void hostapd_periodic_iface(struct hostapd_iface *iface);
|
||||||
|
int hostapd_owe_trans_get_info(struct hostapd_data *hapd);
|
||||||
|
+void hostapd_owe_update_trans(struct hostapd_iface *iface);;
|
||||||
|
void hostapd_ocv_check_csa_sa_query(void *eloop_ctx, void *timeout_ctx);
|
||||||
|
|
||||||
|
void hostapd_switch_color(struct hostapd_data *hapd, u64 bitmap);
|
||||||
--- a/src/drivers/driver.h
|
--- a/src/drivers/driver.h
|
||||||
+++ b/src/drivers/driver.h
|
+++ b/src/drivers/driver.h
|
||||||
@@ -3928,6 +3928,25 @@ struct wpa_driver_ops {
|
@@ -3928,6 +3928,25 @@ struct wpa_driver_ops {
|
||||||
|
|||||||
@ -79,9 +79,9 @@ full device, e.g. in order to deal with hardware/driver limitations
|
|||||||
{
|
{
|
||||||
--- a/src/ap/hostapd.h
|
--- a/src/ap/hostapd.h
|
||||||
+++ b/src/ap/hostapd.h
|
+++ b/src/ap/hostapd.h
|
||||||
@@ -825,6 +825,7 @@ void hostapd_cleanup_cs_params(struct ho
|
@@ -826,6 +826,7 @@ void hostapd_periodic_iface(struct hosta
|
||||||
void hostapd_periodic_iface(struct hostapd_iface *iface);
|
|
||||||
int hostapd_owe_trans_get_info(struct hostapd_data *hapd);
|
int hostapd_owe_trans_get_info(struct hostapd_data *hapd);
|
||||||
|
void hostapd_owe_update_trans(struct hostapd_iface *iface);;
|
||||||
void hostapd_ocv_check_csa_sa_query(void *eloop_ctx, void *timeout_ctx);
|
void hostapd_ocv_check_csa_sa_query(void *eloop_ctx, void *timeout_ctx);
|
||||||
+int hostapd_check_max_sta(struct hostapd_data *hapd);
|
+int hostapd_check_max_sta(struct hostapd_data *hapd);
|
||||||
|
|
||||||
|
|||||||
@ -29,7 +29,7 @@ a VLAN interface on top of the bridge, instead of using the bridge directly
|
|||||||
int bridge_hairpin; /* hairpin_mode on bridge members */
|
int bridge_hairpin; /* hairpin_mode on bridge members */
|
||||||
--- a/src/ap/wpa_auth_glue.c
|
--- a/src/ap/wpa_auth_glue.c
|
||||||
+++ b/src/ap/wpa_auth_glue.c
|
+++ b/src/ap/wpa_auth_glue.c
|
||||||
@@ -1815,8 +1815,12 @@ int hostapd_setup_wpa(struct hostapd_dat
|
@@ -1821,8 +1821,12 @@ int hostapd_setup_wpa(struct hostapd_dat
|
||||||
wpa_key_mgmt_ft(hapd->conf->wpa_key_mgmt)) {
|
wpa_key_mgmt_ft(hapd->conf->wpa_key_mgmt)) {
|
||||||
const char *ft_iface;
|
const char *ft_iface;
|
||||||
|
|
||||||
|
|||||||
@ -164,7 +164,7 @@ Hotfix-by: Sebastian Gottschall https://github.com/mirror/dd-wrt/commit/0c3001a6
|
|||||||
int hostapd_sta_add(struct hostapd_data *hapd,
|
int hostapd_sta_add(struct hostapd_data *hapd,
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/src/ap/apup.c
|
+++ b/src/ap/apup.c
|
||||||
@@ -0,0 +1,152 @@
|
@@ -0,0 +1,168 @@
|
||||||
+/*
|
+/*
|
||||||
+ * hostapd / APuP Access Point Micro Peering
|
+ * hostapd / APuP Access Point Micro Peering
|
||||||
+ *
|
+ *
|
||||||
@ -190,6 +190,14 @@ Hotfix-by: Sebastian Gottschall https://github.com/mirror/dd-wrt/commit/0c3001a6
|
|||||||
+#include "ap_drv_ops.h"
|
+#include "ap_drv_ops.h"
|
||||||
+#include "sta_info.h"
|
+#include "sta_info.h"
|
||||||
+
|
+
|
||||||
|
+#ifdef UBUS_SUPPORT
|
||||||
|
+# include "ubus.h"
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
+#ifdef UCODE_SUPPORT
|
||||||
|
+# include "ucode.h"
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
+void apup_process_beacon(struct hostapd_data *hapd,
|
+void apup_process_beacon(struct hostapd_data *hapd,
|
||||||
+ const struct ieee80211_mgmt *mgmt, size_t len,
|
+ const struct ieee80211_mgmt *mgmt, size_t len,
|
||||||
+ const struct ieee802_11_elems *elems )
|
+ const struct ieee802_11_elems *elems )
|
||||||
@ -316,6 +324,14 @@ Hotfix-by: Sebastian Gottschall https://github.com/mirror/dd-wrt/commit/0c3001a6
|
|||||||
+ "apup_process_beacon(...) Added APuP peer at %s with flags: %d,"
|
+ "apup_process_beacon(...) Added APuP peer at %s with flags: %d,"
|
||||||
+ " capabilities %d",
|
+ " capabilities %d",
|
||||||
+ mIfname, sta_ret->flags, sta_ret->capability);
|
+ mIfname, sta_ret->flags, sta_ret->capability);
|
||||||
|
+
|
||||||
|
+#ifdef UBUS_SUPPORT
|
||||||
|
+ hostapd_ubus_notify_apup_newpeer(hapd, mgmt->bssid, mIfname);
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
+#ifdef UCODE_SUPPORT
|
||||||
|
+ hostapd_ucode_apup_newpeer(hapd, mIfname);
|
||||||
|
+#endif
|
||||||
+}
|
+}
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/src/ap/apup.h
|
+++ b/src/ap/apup.h
|
||||||
@ -356,7 +372,7 @@ Hotfix-by: Sebastian Gottschall https://github.com/mirror/dd-wrt/commit/0c3001a6
|
|||||||
|
|
||||||
#ifdef CONFIG_FILS
|
#ifdef CONFIG_FILS
|
||||||
static struct wpabuf *
|
static struct wpabuf *
|
||||||
@@ -3588,8 +3591,8 @@ static u16 check_multi_ap(struct hostapd
|
@@ -3615,8 +3618,8 @@ static u16 check_multi_ap(struct hostapd
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -367,7 +383,7 @@ Hotfix-by: Sebastian Gottschall https://github.com/mirror/dd-wrt/commit/0c3001a6
|
|||||||
{
|
{
|
||||||
/* Supported rates not used in IEEE 802.11ad/DMG */
|
/* Supported rates not used in IEEE 802.11ad/DMG */
|
||||||
if (hapd->iface->current_mode &&
|
if (hapd->iface->current_mode &&
|
||||||
@@ -3976,7 +3979,7 @@ static int __check_assoc_ies(struct host
|
@@ -4003,7 +4006,7 @@ static int __check_assoc_ies(struct host
|
||||||
elems->ext_capab_len);
|
elems->ext_capab_len);
|
||||||
if (resp != WLAN_STATUS_SUCCESS)
|
if (resp != WLAN_STATUS_SUCCESS)
|
||||||
return resp;
|
return resp;
|
||||||
@ -376,7 +392,7 @@ Hotfix-by: Sebastian Gottschall https://github.com/mirror/dd-wrt/commit/0c3001a6
|
|||||||
if (resp != WLAN_STATUS_SUCCESS)
|
if (resp != WLAN_STATUS_SUCCESS)
|
||||||
return resp;
|
return resp;
|
||||||
|
|
||||||
@@ -6031,6 +6034,11 @@ static void handle_beacon(struct hostapd
|
@@ -6058,6 +6061,11 @@ static void handle_beacon(struct hostapd
|
||||||
0);
|
0);
|
||||||
|
|
||||||
ap_list_process_beacon(hapd->iface, mgmt, &elems, fi);
|
ap_list_process_beacon(hapd->iface, mgmt, &elems, fi);
|
||||||
|
|||||||
@ -1,72 +0,0 @@
|
|||||||
From 9a265f70b5e4e048c568564aed5f9ac4a4fd76b0 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Gioacchino Mazzurco <gio@polymathes.cc>
|
|
||||||
Date: Tue, 7 May 2024 10:37:54 +0200
|
|
||||||
Subject: [PATCH 2/3] APuP add ubus notification when a peer comes up
|
|
||||||
|
|
||||||
The notification ones get looks like
|
|
||||||
{ "apup-newpeer": {"address":"02:0a:ab:45:5a:ab","ifname":"wlan0.peer1"} }
|
|
||||||
|
|
||||||
Signed-off-by: Gioacchino Mazzurco <gio@polymathes.cc>
|
|
||||||
---
|
|
||||||
src/ap/apup.c | 8 ++++++++
|
|
||||||
src/ap/ubus.c | 15 +++++++++++++++
|
|
||||||
src/ap/ubus.h | 5 +++++
|
|
||||||
3 files changed, 28 insertions(+)
|
|
||||||
|
|
||||||
--- a/src/ap/apup.c
|
|
||||||
+++ b/src/ap/apup.c
|
|
||||||
@@ -23,6 +23,10 @@
|
|
||||||
#include "ap_drv_ops.h"
|
|
||||||
#include "sta_info.h"
|
|
||||||
|
|
||||||
+#ifdef UBUS_SUPPORT
|
|
||||||
+# include "ubus.h"
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
void apup_process_beacon(struct hostapd_data *hapd,
|
|
||||||
const struct ieee80211_mgmt *mgmt, size_t len,
|
|
||||||
const struct ieee802_11_elems *elems )
|
|
||||||
@@ -149,4 +153,8 @@ void apup_process_beacon(struct hostapd_
|
|
||||||
"apup_process_beacon(...) Added APuP peer at %s with flags: %d,"
|
|
||||||
" capabilities %d",
|
|
||||||
mIfname, sta_ret->flags, sta_ret->capability);
|
|
||||||
+
|
|
||||||
+#ifdef UBUS_SUPPORT
|
|
||||||
+ hostapd_ubus_notify_apup_newpeer(hapd, mgmt->bssid, mIfname);
|
|
||||||
+#endif
|
|
||||||
}
|
|
||||||
--- a/src/ap/ubus.c
|
|
||||||
+++ b/src/ap/ubus.c
|
|
||||||
@@ -2004,3 +2004,18 @@ int hostapd_ubus_notify_bss_transition_q
|
|
||||||
return ureq.resp;
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
+
|
|
||||||
+#ifdef CONFIG_APUP
|
|
||||||
+void hostapd_ubus_notify_apup_newpeer(
|
|
||||||
+ struct hostapd_data *hapd, const u8 *addr, const char *ifname)
|
|
||||||
+{
|
|
||||||
+ if (!hapd->ubus.obj.has_subscribers)
|
|
||||||
+ return;
|
|
||||||
+
|
|
||||||
+ blob_buf_init(&b, 0);
|
|
||||||
+ blobmsg_add_macaddr(&b, "address", addr);
|
|
||||||
+ blobmsg_add_string(&b, "ifname", ifname);
|
|
||||||
+
|
|
||||||
+ ubus_notify(ctx, &hapd->ubus.obj, "apup-newpeer", b.head, -1);
|
|
||||||
+}
|
|
||||||
+#endif // def CONFIG_APUP
|
|
||||||
--- a/src/ap/ubus.h
|
|
||||||
+++ b/src/ap/ubus.h
|
|
||||||
@@ -71,6 +71,11 @@ int hostapd_ubus_notify_bss_transition_q
|
|
||||||
void hostapd_ubus_notify_authorized(struct hostapd_data *hapd, struct sta_info *sta,
|
|
||||||
const char *auth_alg);
|
|
||||||
|
|
||||||
+#ifdef CONFIG_APUP
|
|
||||||
+void hostapd_ubus_notify_apup_newpeer(
|
|
||||||
+ struct hostapd_data *hapd, const u8 *addr, const char *ifname);
|
|
||||||
+#endif // def CONFIG_APUP
|
|
||||||
+
|
|
||||||
#else
|
|
||||||
|
|
||||||
struct hostapd_ubus_bss {};
|
|
||||||
@ -1,70 +0,0 @@
|
|||||||
From aaeb60b39a72774c651187208ec47efd0daeb75b Mon Sep 17 00:00:00 2001
|
|
||||||
From: Gioacchino Mazzurco <gio@polymathes.cc>
|
|
||||||
Date: Tue, 7 May 2024 11:54:23 +0200
|
|
||||||
Subject: [PATCH 3/3] APuP add ucode hook for when a peer comes up
|
|
||||||
|
|
||||||
Signed-off-by: Gioacchino Mazzurco <gio@polymathes.cc>
|
|
||||||
---
|
|
||||||
src/ap/apup.c | 8 ++++++++
|
|
||||||
src/ap/ucode.c | 17 +++++++++++++++++
|
|
||||||
src/ap/ucode.h | 4 ++++
|
|
||||||
3 files changed, 29 insertions(+)
|
|
||||||
|
|
||||||
--- a/src/ap/apup.c
|
|
||||||
+++ b/src/ap/apup.c
|
|
||||||
@@ -27,6 +27,10 @@
|
|
||||||
# include "ubus.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
+#ifdef UCODE_SUPPORT
|
|
||||||
+# include "ucode.h"
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
void apup_process_beacon(struct hostapd_data *hapd,
|
|
||||||
const struct ieee80211_mgmt *mgmt, size_t len,
|
|
||||||
const struct ieee802_11_elems *elems )
|
|
||||||
@@ -157,4 +161,8 @@ void apup_process_beacon(struct hostapd_
|
|
||||||
#ifdef UBUS_SUPPORT
|
|
||||||
hostapd_ubus_notify_apup_newpeer(hapd, mgmt->bssid, mIfname);
|
|
||||||
#endif
|
|
||||||
+
|
|
||||||
+#ifdef UCODE_SUPPORT
|
|
||||||
+ hostapd_ucode_apup_newpeer(hapd, mIfname);
|
|
||||||
+#endif
|
|
||||||
}
|
|
||||||
--- a/src/ap/ucode.c
|
|
||||||
+++ b/src/ap/ucode.c
|
|
||||||
@@ -815,3 +815,20 @@ void hostapd_ucode_free_bss(struct hosta
|
|
||||||
ucv_put(wpa_ucode_call(2));
|
|
||||||
ucv_gc(vm);
|
|
||||||
}
|
|
||||||
+
|
|
||||||
+#ifdef CONFIG_APUP
|
|
||||||
+void hostapd_ucode_apup_newpeer(struct hostapd_data *hapd, const char *ifname)
|
|
||||||
+{
|
|
||||||
+ uc_value_t *val;
|
|
||||||
+
|
|
||||||
+ if (wpa_ucode_call_prepare("apup_newpeer"))
|
|
||||||
+ return;
|
|
||||||
+
|
|
||||||
+ val = hostapd_ucode_bss_get_uval(hapd);
|
|
||||||
+ uc_value_push(ucv_get(ucv_string_new(hapd->conf->iface))); // BSS ifname
|
|
||||||
+ uc_value_push(ucv_get(val));
|
|
||||||
+ uc_value_push(ucv_get(ucv_string_new(ifname))); // APuP peer ifname
|
|
||||||
+ ucv_put(wpa_ucode_call(2));
|
|
||||||
+ ucv_gc(vm);
|
|
||||||
+}
|
|
||||||
+#endif // def CONFIG_APUP
|
|
||||||
--- a/src/ap/ucode.h
|
|
||||||
+++ b/src/ap/ucode.h
|
|
||||||
@@ -27,6 +27,10 @@ void hostapd_ucode_add_bss(struct hostap
|
|
||||||
void hostapd_ucode_free_bss(struct hostapd_data *hapd);
|
|
||||||
void hostapd_ucode_reload_bss(struct hostapd_data *hapd);
|
|
||||||
|
|
||||||
+#ifdef CONFIG_APUP
|
|
||||||
+void hostapd_ucode_apup_newpeer(struct hostapd_data *hapd, const char *ifname);
|
|
||||||
+#endif // def CONFIG_APUP
|
|
||||||
+
|
|
||||||
#else
|
|
||||||
|
|
||||||
static inline int hostapd_ucode_init(struct hapd_interfaces *ifaces)
|
|
||||||
@ -2004,3 +2004,18 @@ int hostapd_ubus_notify_bss_transition_query(
|
|||||||
return ureq.resp;
|
return ureq.resp;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef CONFIG_APUP
|
||||||
|
void hostapd_ubus_notify_apup_newpeer(
|
||||||
|
struct hostapd_data *hapd, const u8 *addr, const char *ifname)
|
||||||
|
{
|
||||||
|
if (!hapd->ubus.obj.has_subscribers)
|
||||||
|
return;
|
||||||
|
|
||||||
|
blob_buf_init(&b, 0);
|
||||||
|
blobmsg_add_macaddr(&b, "address", addr);
|
||||||
|
blobmsg_add_string(&b, "ifname", ifname);
|
||||||
|
|
||||||
|
ubus_notify(ctx, &hapd->ubus.obj, "apup-newpeer", b.head, -1);
|
||||||
|
}
|
||||||
|
#endif // def CONFIG_APUP
|
||||||
|
|||||||
@ -69,6 +69,11 @@ int hostapd_ubus_notify_bss_transition_query(
|
|||||||
void hostapd_ubus_notify_authorized(struct hostapd_data *hapd, struct sta_info *sta,
|
void hostapd_ubus_notify_authorized(struct hostapd_data *hapd, struct sta_info *sta,
|
||||||
const char *auth_alg);
|
const char *auth_alg);
|
||||||
|
|
||||||
|
#ifdef CONFIG_APUP
|
||||||
|
void hostapd_ubus_notify_apup_newpeer(
|
||||||
|
struct hostapd_data *hapd, const u8 *addr, const char *ifname);
|
||||||
|
#endif // def CONFIG_APUP
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
struct hostapd_ubus_bss {};
|
struct hostapd_ubus_bss {};
|
||||||
|
|||||||
@ -259,6 +259,7 @@ uc_hostapd_bss_set_config(uc_vm_t *vm, size_t nargs)
|
|||||||
|
|
||||||
hostapd_setup_bss(hapd, hapd == iface->bss[0], true);
|
hostapd_setup_bss(hapd, hapd == iface->bss[0], true);
|
||||||
hostapd_ucode_update_interfaces();
|
hostapd_ucode_update_interfaces();
|
||||||
|
hostapd_owe_update_trans(iface);
|
||||||
|
|
||||||
done:
|
done:
|
||||||
ret = 0;
|
ret = 0;
|
||||||
@ -379,6 +380,7 @@ uc_hostapd_iface_add_bss(uc_vm_t *vm, size_t nargs)
|
|||||||
conf->bss[idx] = NULL;
|
conf->bss[idx] = NULL;
|
||||||
ret = hostapd_ucode_bss_get_uval(hapd);
|
ret = hostapd_ucode_bss_get_uval(hapd);
|
||||||
hostapd_ucode_update_interfaces();
|
hostapd_ucode_update_interfaces();
|
||||||
|
hostapd_owe_update_trans(iface);
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
deinit_ctrl:
|
deinit_ctrl:
|
||||||
@ -531,10 +533,12 @@ uc_hostapd_iface_start(uc_vm_t *vm, size_t nargs)
|
|||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
#define UPDATE_VAL(field, name) \
|
#define UPDATE_VAL(field, name) \
|
||||||
if ((intval = ucv_int64_get(ucv_object_get(info, name, NULL))) && \
|
do { \
|
||||||
!errno && intval != conf->field) do { \
|
intval = ucv_int64_get(ucv_object_get(info, name, NULL)); \
|
||||||
conf->field = intval; \
|
if (!errno && intval != conf->field) { \
|
||||||
changed = true; \
|
conf->field = intval; \
|
||||||
|
changed = true; \
|
||||||
|
} \
|
||||||
} while(0)
|
} while(0)
|
||||||
|
|
||||||
conf = iface->conf;
|
conf = iface->conf;
|
||||||
@ -607,6 +611,7 @@ out:
|
|||||||
|
|
||||||
ieee802_11_set_beacon(hapd);
|
ieee802_11_set_beacon(hapd);
|
||||||
}
|
}
|
||||||
|
hostapd_owe_update_trans(iface);
|
||||||
|
|
||||||
return ucv_boolean_new(true);
|
return ucv_boolean_new(true);
|
||||||
}
|
}
|
||||||
@ -698,6 +703,7 @@ uc_hostapd_bss_rename(uc_vm_t *vm, size_t nargs)
|
|||||||
hostapd_ubus_add_bss(hapd);
|
hostapd_ubus_add_bss(hapd);
|
||||||
|
|
||||||
hostapd_ucode_update_interfaces();
|
hostapd_ucode_update_interfaces();
|
||||||
|
hostapd_owe_update_trans(hapd->iface);
|
||||||
out:
|
out:
|
||||||
if (interfaces->ctrl_iface_init)
|
if (interfaces->ctrl_iface_init)
|
||||||
interfaces->ctrl_iface_init(hapd);
|
interfaces->ctrl_iface_init(hapd);
|
||||||
@ -770,31 +776,18 @@ void hostapd_ucode_free_iface(struct hostapd_iface *iface)
|
|||||||
wpa_ucode_registry_remove(iface_registry, iface->ucode.idx);
|
wpa_ucode_registry_remove(iface_registry, iface->ucode.idx);
|
||||||
}
|
}
|
||||||
|
|
||||||
void hostapd_ucode_add_bss(struct hostapd_data *hapd)
|
void hostapd_ucode_bss_cb(struct hostapd_data *hapd, const char *type)
|
||||||
{
|
{
|
||||||
uc_value_t *val;
|
uc_value_t *val;
|
||||||
|
|
||||||
if (wpa_ucode_call_prepare("bss_add"))
|
if (wpa_ucode_call_prepare(type))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
val = hostapd_ucode_bss_get_uval(hapd);
|
val = hostapd_ucode_bss_get_uval(hapd);
|
||||||
|
uc_value_push(ucv_get(ucv_string_new(hapd->iface->phy)));
|
||||||
uc_value_push(ucv_get(ucv_string_new(hapd->conf->iface)));
|
uc_value_push(ucv_get(ucv_string_new(hapd->conf->iface)));
|
||||||
uc_value_push(ucv_get(val));
|
uc_value_push(ucv_get(val));
|
||||||
ucv_put(wpa_ucode_call(2));
|
ucv_put(wpa_ucode_call(3));
|
||||||
ucv_gc(vm);
|
|
||||||
}
|
|
||||||
|
|
||||||
void hostapd_ucode_reload_bss(struct hostapd_data *hapd)
|
|
||||||
{
|
|
||||||
uc_value_t *val;
|
|
||||||
|
|
||||||
if (wpa_ucode_call_prepare("bss_reload"))
|
|
||||||
return;
|
|
||||||
|
|
||||||
val = hostapd_ucode_bss_get_uval(hapd);
|
|
||||||
uc_value_push(ucv_get(ucv_string_new(hapd->conf->iface)));
|
|
||||||
uc_value_push(ucv_get(val));
|
|
||||||
ucv_put(wpa_ucode_call(2));
|
|
||||||
ucv_gc(vm);
|
ucv_gc(vm);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -815,3 +808,20 @@ void hostapd_ucode_free_bss(struct hostapd_data *hapd)
|
|||||||
ucv_put(wpa_ucode_call(2));
|
ucv_put(wpa_ucode_call(2));
|
||||||
ucv_gc(vm);
|
ucv_gc(vm);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef CONFIG_APUP
|
||||||
|
void hostapd_ucode_apup_newpeer(struct hostapd_data *hapd, const char *ifname)
|
||||||
|
{
|
||||||
|
uc_value_t *val;
|
||||||
|
|
||||||
|
if (wpa_ucode_call_prepare("apup_newpeer"))
|
||||||
|
return;
|
||||||
|
|
||||||
|
val = hostapd_ucode_bss_get_uval(hapd);
|
||||||
|
uc_value_push(ucv_get(ucv_string_new(hapd->conf->iface))); // BSS ifname
|
||||||
|
uc_value_push(ucv_get(val));
|
||||||
|
uc_value_push(ucv_get(ucv_string_new(ifname))); // APuP peer ifname
|
||||||
|
ucv_put(wpa_ucode_call(2));
|
||||||
|
ucv_gc(vm);
|
||||||
|
}
|
||||||
|
#endif // def CONFIG_APUP
|
||||||
|
|||||||
@ -23,9 +23,12 @@ int hostapd_ucode_init(struct hapd_interfaces *ifaces);
|
|||||||
|
|
||||||
void hostapd_ucode_free(void);
|
void hostapd_ucode_free(void);
|
||||||
void hostapd_ucode_free_iface(struct hostapd_iface *iface);
|
void hostapd_ucode_free_iface(struct hostapd_iface *iface);
|
||||||
void hostapd_ucode_add_bss(struct hostapd_data *hapd);
|
|
||||||
void hostapd_ucode_free_bss(struct hostapd_data *hapd);
|
void hostapd_ucode_free_bss(struct hostapd_data *hapd);
|
||||||
void hostapd_ucode_reload_bss(struct hostapd_data *hapd);
|
void hostapd_ucode_bss_cb(struct hostapd_data *hapd, const char *type);
|
||||||
|
|
||||||
|
#ifdef CONFIG_APUP
|
||||||
|
void hostapd_ucode_apup_newpeer(struct hostapd_data *hapd, const char *ifname);
|
||||||
|
#endif // def CONFIG_APUP
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
@ -39,10 +42,7 @@ static inline void hostapd_ucode_free(void)
|
|||||||
static inline void hostapd_ucode_free_iface(struct hostapd_iface *iface)
|
static inline void hostapd_ucode_free_iface(struct hostapd_iface *iface)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
static inline void hostapd_ucode_reload_bss(struct hostapd_data *hapd)
|
static inline void hostapd_ucode_bss_cb(struct hostapd_data *hapd, const char *type)
|
||||||
{
|
|
||||||
}
|
|
||||||
static inline void hostapd_ucode_add_bss(struct hostapd_data *hapd)
|
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
static inline void hostapd_ucode_free_bss(struct hostapd_data *hapd)
|
static inline void hostapd_ucode_free_bss(struct hostapd_data *hapd)
|
||||||
@ -51,4 +51,19 @@ static inline void hostapd_ucode_free_bss(struct hostapd_data *hapd)
|
|||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
static inline void hostapd_ucode_create_bss(struct hostapd_data *hapd)
|
||||||
|
{
|
||||||
|
hostapd_ucode_bss_cb(hapd, "bss_create");
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline void hostapd_ucode_add_bss(struct hostapd_data *hapd)
|
||||||
|
{
|
||||||
|
hostapd_ucode_bss_cb(hapd, "bss_add");
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline void hostapd_ucode_reload_bss(struct hostapd_data *hapd)
|
||||||
|
{
|
||||||
|
hostapd_ucode_bss_cb(hapd, "bss_reload");
|
||||||
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
|
|||||||
include $(INCLUDE_DIR)/kernel.mk
|
include $(INCLUDE_DIR)/kernel.mk
|
||||||
|
|
||||||
PKG_NAME:=ppp
|
PKG_NAME:=ppp
|
||||||
PKG_RELEASE:=8
|
PKG_RELEASE:=9
|
||||||
|
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_URL:=https://github.com/paulusmack/ppp
|
PKG_SOURCE_URL:=https://github.com/paulusmack/ppp
|
||||||
|
|||||||
@ -28,6 +28,7 @@ if [ -n "$AUTOIPV6" ]; then
|
|||||||
[ -n "$IP6TABLE" ] && json_add_string ip6table $IP6TABLE
|
[ -n "$IP6TABLE" ] && json_add_string ip6table $IP6TABLE
|
||||||
[ -n "$PEERDNS" ] && json_add_boolean peerdns $PEERDNS
|
[ -n "$PEERDNS" ] && json_add_boolean peerdns $PEERDNS
|
||||||
[ "$NOSOURCEFILTER" = "1" ] && json_add_boolean sourcefilter "0"
|
[ "$NOSOURCEFILTER" = "1" ] && json_add_boolean sourcefilter "0"
|
||||||
|
[ "$DELEGATE" = "0" ] && json_add_boolean delegate "0"
|
||||||
json_close_object
|
json_close_object
|
||||||
ubus call network add_dynamic "$(json_dump)"
|
ubus call network add_dynamic "$(json_dump)"
|
||||||
fi
|
fi
|
||||||
|
|||||||
@ -83,13 +83,14 @@ ppp_generic_init_config() {
|
|||||||
proto_config_add_int maxfail
|
proto_config_add_int maxfail
|
||||||
proto_config_add_int holdoff
|
proto_config_add_int holdoff
|
||||||
proto_config_add_boolean sourcefilter
|
proto_config_add_boolean sourcefilter
|
||||||
|
proto_config_add_boolean delegate
|
||||||
}
|
}
|
||||||
|
|
||||||
ppp_generic_setup() {
|
ppp_generic_setup() {
|
||||||
local config="$1"; shift
|
local config="$1"; shift
|
||||||
local localip
|
local localip
|
||||||
|
|
||||||
json_get_vars ipv6 ip6table demand keepalive keepalive_adaptive username password pppd_options pppname unnumbered persist maxfail holdoff peerdns sourcefilter
|
json_get_vars ipv6 ip6table demand keepalive keepalive_adaptive username password pppd_options pppname unnumbered persist maxfail holdoff peerdns sourcefilter delegate
|
||||||
|
|
||||||
if [ "$ipv6" = 0 ]; then
|
if [ "$ipv6" = 0 ]; then
|
||||||
ipv6=""
|
ipv6=""
|
||||||
@ -133,6 +134,7 @@ ppp_generic_setup() {
|
|||||||
[ -n "$connect" ] || json_get_var connect connect
|
[ -n "$connect" ] || json_get_var connect connect
|
||||||
[ -n "$disconnect" ] || json_get_var disconnect disconnect
|
[ -n "$disconnect" ] || json_get_var disconnect disconnect
|
||||||
[ "$sourcefilter" = "0" ] || sourcefilter=""
|
[ "$sourcefilter" = "0" ] || sourcefilter=""
|
||||||
|
[ "$delegate" != "0" ] && delegate=""
|
||||||
|
|
||||||
proto_run_command "$config" /usr/sbin/pppd \
|
proto_run_command "$config" /usr/sbin/pppd \
|
||||||
nodetach ipparam "$config" \
|
nodetach ipparam "$config" \
|
||||||
@ -144,6 +146,7 @@ ppp_generic_setup() {
|
|||||||
${ip6table:+set IP6TABLE=$ip6table} \
|
${ip6table:+set IP6TABLE=$ip6table} \
|
||||||
${peerdns:+set PEERDNS=$peerdns} \
|
${peerdns:+set PEERDNS=$peerdns} \
|
||||||
${sourcefilter:+set NOSOURCEFILTER=1} \
|
${sourcefilter:+set NOSOURCEFILTER=1} \
|
||||||
|
${delegate:+set DELEGATE=0} \
|
||||||
nodefaultroute \
|
nodefaultroute \
|
||||||
usepeerdns \
|
usepeerdns \
|
||||||
$demand $persist maxfail $maxfail \
|
$demand $persist maxfail $maxfail \
|
||||||
|
|||||||
@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
|
|||||||
|
|
||||||
PKG_NAME:=comgt
|
PKG_NAME:=comgt
|
||||||
PKG_VERSION:=0.32
|
PKG_VERSION:=0.32
|
||||||
PKG_RELEASE:=35
|
PKG_RELEASE:=36
|
||||||
|
|
||||||
PKG_SOURCE:=$(PKG_NAME).$(PKG_VERSION).tgz
|
PKG_SOURCE:=$(PKG_NAME).$(PKG_VERSION).tgz
|
||||||
PKG_SOURCE_URL:=@SF/comgt
|
PKG_SOURCE_URL:=@SF/comgt
|
||||||
|
|||||||
@ -15,6 +15,8 @@ proto_directip_init_config() {
|
|||||||
proto_config_add_string "auth"
|
proto_config_add_string "auth"
|
||||||
proto_config_add_string "username"
|
proto_config_add_string "username"
|
||||||
proto_config_add_string "password"
|
proto_config_add_string "password"
|
||||||
|
proto_config_add_boolean sourcefilter
|
||||||
|
proto_config_add_boolean delegate
|
||||||
proto_config_add_defaults
|
proto_config_add_defaults
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -22,8 +24,8 @@ proto_directip_setup() {
|
|||||||
local interface="$1"
|
local interface="$1"
|
||||||
local chat devpath devname
|
local chat devpath devname
|
||||||
|
|
||||||
local device apn pincode ifname auth username password $PROTO_DEFAULT_OPTIONS
|
local device apn pincode ifname auth username password sourcefilter delegate $PROTO_DEFAULT_OPTIONS
|
||||||
json_get_vars device apn pincode auth username password $PROTO_DEFAULT_OPTIONS
|
json_get_vars device apn pincode auth username password sourcefilter delegate $PROTO_DEFAULT_OPTIONS
|
||||||
|
|
||||||
[ -n "$ctl_device" ] && device=$ctl_device
|
[ -n "$ctl_device" ] && device=$ctl_device
|
||||||
|
|
||||||
@ -89,6 +91,8 @@ proto_directip_setup() {
|
|||||||
json_add_string ifname "@$interface"
|
json_add_string ifname "@$interface"
|
||||||
json_add_string proto "dhcpv6"
|
json_add_string proto "dhcpv6"
|
||||||
json_add_string extendprefix 1
|
json_add_string extendprefix 1
|
||||||
|
[ "$delegate" = "0" ] && json_add_boolean delegate "0"
|
||||||
|
[ "$sourcefilter" = "0" ] && json_add_boolean sourcefilter "0"
|
||||||
proto_add_dynamic_defaults
|
proto_add_dynamic_defaults
|
||||||
ubus call network add_dynamic "$(json_dump)"
|
ubus call network add_dynamic "$(json_dump)"
|
||||||
|
|
||||||
|
|||||||
@ -20,6 +20,7 @@ proto_ncm_init_config() {
|
|||||||
proto_config_add_string mode
|
proto_config_add_string mode
|
||||||
proto_config_add_string pdptype
|
proto_config_add_string pdptype
|
||||||
proto_config_add_boolean sourcefilter
|
proto_config_add_boolean sourcefilter
|
||||||
|
proto_config_add_boolean delegate
|
||||||
proto_config_add_int profile
|
proto_config_add_int profile
|
||||||
proto_config_add_defaults
|
proto_config_add_defaults
|
||||||
}
|
}
|
||||||
@ -30,7 +31,7 @@ proto_ncm_setup() {
|
|||||||
local manufacturer initialize setmode connect finalize devname devpath ifpath
|
local manufacturer initialize setmode connect finalize devname devpath ifpath
|
||||||
|
|
||||||
local device ifname apn auth username password pincode delay mode pdptype profile $PROTO_DEFAULT_OPTIONS
|
local device ifname apn auth username password pincode delay mode pdptype profile $PROTO_DEFAULT_OPTIONS
|
||||||
json_get_vars device ifname apn auth username password pincode delay mode pdptype sourcefilter profile $PROTO_DEFAULT_OPTIONS
|
json_get_vars device ifname apn auth username password pincode delay mode pdptype sourcefilter delegate profile $PROTO_DEFAULT_OPTIONS
|
||||||
|
|
||||||
local context_type
|
local context_type
|
||||||
|
|
||||||
@ -203,6 +204,7 @@ proto_ncm_setup() {
|
|||||||
json_add_string ifname "@$interface"
|
json_add_string ifname "@$interface"
|
||||||
json_add_string proto "dhcpv6"
|
json_add_string proto "dhcpv6"
|
||||||
json_add_string extendprefix 1
|
json_add_string extendprefix 1
|
||||||
|
[ "$delegate" = "0" ] && json_add_boolean delegate "0"
|
||||||
[ "$sourcefilter" = "0" ] && json_add_boolean sourcefilter "0"
|
[ "$sourcefilter" = "0" ] && json_add_boolean sourcefilter "0"
|
||||||
proto_add_dynamic_defaults
|
proto_add_dynamic_defaults
|
||||||
[ -n "$zone" ] && {
|
[ -n "$zone" ] && {
|
||||||
|
|||||||
@ -8,13 +8,13 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=restool
|
PKG_NAME:=restool
|
||||||
PKG_VERSION:=21.08
|
PKG_VERSION:=6.6.23.2.0.0
|
||||||
PKG_RELEASE:=4
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_URL:=https://github.com/nxp-qoriq/restool
|
PKG_SOURCE_URL:=https://github.com/nxp-qoriq/restool
|
||||||
PKG_SOURCE_VERSION:=LSDK-21.08
|
PKG_SOURCE_VERSION:=lf-6.6.23-2.0.0
|
||||||
PKG_MIRROR_HASH:=3c289e6c9adc2c61445473ecd8b1b1a7b6dfd19a66d3c65f3b83b669e4c3e25b
|
PKG_MIRROR_HASH:=e669c9faf5a00e36d763dbbd6dd866d878b0101df086582c38908d281fa3b465
|
||||||
|
|
||||||
PKG_FLAGS:=nonshared
|
PKG_FLAGS:=nonshared
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
--- a/Makefile
|
--- a/Makefile
|
||||||
+++ b/Makefile
|
+++ b/Makefile
|
||||||
@@ -53,14 +53,13 @@ restool: $(OBJ)
|
@@ -55,14 +55,13 @@ restool: $(OBJ)
|
||||||
%.1: %.md
|
%.1: %.md
|
||||||
pandoc --standalone --to man $^ -o $@
|
pandoc --standalone --to man $^ -o $@
|
||||||
|
|
||||||
|
|||||||
@ -8,12 +8,12 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=tcpdump
|
PKG_NAME:=tcpdump
|
||||||
PKG_VERSION:=4.99.4
|
PKG_VERSION:=4.99.5
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||||
PKG_SOURCE_URL:=https://www.tcpdump.org/release/
|
PKG_SOURCE_URL:=https://www.tcpdump.org/release/
|
||||||
PKG_HASH:=0232231bb2f29d6bf2426e70a08a7e0c63a0d59a9b44863b7f5e2357a6e49fea
|
PKG_HASH:=8c75856e00addeeadf70dad67c9ff3dd368536b2b8563abf6854d7c764cd3adb
|
||||||
|
|
||||||
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
||||||
PKG_LICENSE:=BSD-3-Clause
|
PKG_LICENSE:=BSD-3-Clause
|
||||||
|
|||||||
@ -1,35 +1,31 @@
|
|||||||
--- a/configure
|
--- a/configure
|
||||||
+++ b/configure
|
+++ b/configure
|
||||||
@@ -6568,97 +6568,6 @@ fi
|
@@ -7346,97 +7346,6 @@ esac
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
-#
|
-#
|
||||||
-# Check for special debugging functions
|
-# Check for special debugging functions
|
||||||
-#
|
-#
|
||||||
-for ac_func in pcap_set_parser_debug
|
-ac_fn_c_check_func "$LINENO" "pcap_set_parser_debug" "ac_cv_func_pcap_set_parser_debug"
|
||||||
-do :
|
-if test "x$ac_cv_func_pcap_set_parser_debug" = xyes
|
||||||
- ac_fn_c_check_func "$LINENO" "pcap_set_parser_debug" "ac_cv_func_pcap_set_parser_debug"
|
-then :
|
||||||
-if test "x$ac_cv_func_pcap_set_parser_debug" = xyes; then :
|
- printf "%s\n" "#define HAVE_PCAP_SET_PARSER_DEBUG 1" >>confdefs.h
|
||||||
- cat >>confdefs.h <<_ACEOF
|
|
||||||
-#define HAVE_PCAP_SET_PARSER_DEBUG 1
|
|
||||||
-_ACEOF
|
|
||||||
-
|
-
|
||||||
-fi
|
-fi
|
||||||
-done
|
|
||||||
-
|
-
|
||||||
-if test "$ac_cv_func_pcap_set_parser_debug" = "no" ; then
|
-if test "$ac_cv_func_pcap_set_parser_debug" = "no" ; then
|
||||||
- #
|
- #
|
||||||
- # OK, we don't have pcap_set_parser_debug() to set the libpcap
|
- # OK, we don't have pcap_set_parser_debug() to set the libpcap
|
||||||
- # filter expression parser debug flag; can we directly set the
|
- # filter expression parser debug flag; can we directly set the
|
||||||
- # flag?
|
- # flag?
|
||||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pcap_debug is defined by libpcap" >&5
|
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether pcap_debug is defined by libpcap" >&5
|
||||||
-$as_echo_n "checking whether pcap_debug is defined by libpcap... " >&6; }
|
-printf %s "checking whether pcap_debug is defined by libpcap... " >&6; }
|
||||||
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||||
-/* end confdefs.h. */
|
-/* end confdefs.h. */
|
||||||
-
|
-
|
||||||
-int
|
-int
|
||||||
-main ()
|
-main (void)
|
||||||
-{
|
-{
|
||||||
-
|
-
|
||||||
- extern int pcap_debug;
|
- extern int pcap_debug;
|
||||||
@ -39,33 +35,35 @@
|
|||||||
- ;
|
- ;
|
||||||
- return 0;
|
- return 0;
|
||||||
-}
|
-}
|
||||||
|
-
|
||||||
-_ACEOF
|
-_ACEOF
|
||||||
-if ac_fn_c_try_link "$LINENO"; then :
|
-if ac_fn_c_try_link "$LINENO"
|
||||||
|
-then :
|
||||||
- ac_lbl_cv_pcap_debug_defined=yes
|
- ac_lbl_cv_pcap_debug_defined=yes
|
||||||
-else
|
-else $as_nop
|
||||||
- ac_lbl_cv_pcap_debug_defined=no
|
- ac_lbl_cv_pcap_debug_defined=no
|
||||||
-fi
|
-fi
|
||||||
-rm -f core conftest.err conftest.$ac_objext \
|
-rm -f core conftest.err conftest.$ac_objext conftest.beam \
|
||||||
- conftest$ac_exeext conftest.$ac_ext
|
- conftest$ac_exeext conftest.$ac_ext
|
||||||
- if test "$ac_lbl_cv_pcap_debug_defined" = yes ; then
|
- if test "$ac_lbl_cv_pcap_debug_defined" = yes ; then
|
||||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
|
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
|
||||||
-$as_echo "yes" >&6; }
|
-printf "%s\n" "yes" >&6; }
|
||||||
-
|
-
|
||||||
-$as_echo "#define HAVE_PCAP_DEBUG 1" >>confdefs.h
|
-printf "%s\n" "#define HAVE_PCAP_DEBUG 1" >>confdefs.h
|
||||||
-
|
-
|
||||||
- else
|
- else
|
||||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||||
-$as_echo "no" >&6; }
|
-printf "%s\n" "no" >&6; }
|
||||||
- #
|
- #
|
||||||
- # OK, what about "yydebug"?
|
- # OK, what about "yydebug"?
|
||||||
- #
|
- #
|
||||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether yydebug is defined by libpcap" >&5
|
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether yydebug is defined by libpcap" >&5
|
||||||
-$as_echo_n "checking whether yydebug is defined by libpcap... " >&6; }
|
-printf %s "checking whether yydebug is defined by libpcap... " >&6; }
|
||||||
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||||
-/* end confdefs.h. */
|
-/* end confdefs.h. */
|
||||||
-
|
-
|
||||||
-int
|
-int
|
||||||
-main ()
|
-main (void)
|
||||||
-{
|
-{
|
||||||
-
|
-
|
||||||
- extern int yydebug;
|
- extern int yydebug;
|
||||||
@ -75,26 +73,28 @@
|
|||||||
- ;
|
- ;
|
||||||
- return 0;
|
- return 0;
|
||||||
-}
|
-}
|
||||||
|
-
|
||||||
-_ACEOF
|
-_ACEOF
|
||||||
-if ac_fn_c_try_link "$LINENO"; then :
|
-if ac_fn_c_try_link "$LINENO"
|
||||||
|
-then :
|
||||||
- ac_lbl_cv_yydebug_defined=yes
|
- ac_lbl_cv_yydebug_defined=yes
|
||||||
-else
|
-else $as_nop
|
||||||
- ac_lbl_cv_yydebug_defined=no
|
- ac_lbl_cv_yydebug_defined=no
|
||||||
-fi
|
-fi
|
||||||
-rm -f core conftest.err conftest.$ac_objext \
|
-rm -f core conftest.err conftest.$ac_objext conftest.beam \
|
||||||
- conftest$ac_exeext conftest.$ac_ext
|
- conftest$ac_exeext conftest.$ac_ext
|
||||||
- if test "$ac_lbl_cv_yydebug_defined" = yes ; then
|
- if test "$ac_lbl_cv_yydebug_defined" = yes ; then
|
||||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
|
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
|
||||||
-$as_echo "yes" >&6; }
|
-printf "%s\n" "yes" >&6; }
|
||||||
-
|
-
|
||||||
-$as_echo "#define HAVE_YYDEBUG 1" >>confdefs.h
|
-printf "%s\n" "#define HAVE_YYDEBUG 1" >>confdefs.h
|
||||||
-
|
-
|
||||||
- else
|
- else
|
||||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||||
-$as_echo "no" >&6; }
|
-printf "%s\n" "no" >&6; }
|
||||||
- fi
|
- fi
|
||||||
- fi
|
- fi
|
||||||
-fi
|
-fi
|
||||||
for ac_func in pcap_set_optimizer_debug
|
ac_fn_c_check_func "$LINENO" "pcap_set_optimizer_debug" "ac_cv_func_pcap_set_optimizer_debug"
|
||||||
do :
|
if test "x$ac_cv_func_pcap_set_optimizer_debug" = xyes
|
||||||
ac_fn_c_check_func "$LINENO" "pcap_set_optimizer_debug" "ac_cv_func_pcap_set_optimizer_debug"
|
then :
|
||||||
|
|||||||
@ -98,7 +98,7 @@
|
|||||||
|
|
||||||
--- a/addrtoname.c
|
--- a/addrtoname.c
|
||||||
+++ b/addrtoname.c
|
+++ b/addrtoname.c
|
||||||
@@ -680,8 +680,10 @@ linkaddr_string(netdissect_options *ndo,
|
@@ -677,8 +677,10 @@ linkaddr_string(netdissect_options *ndo,
|
||||||
if (type == LINKADDR_ETHER && len == MAC_ADDR_LEN)
|
if (type == LINKADDR_ETHER && len == MAC_ADDR_LEN)
|
||||||
return (etheraddr_string(ndo, ep));
|
return (etheraddr_string(ndo, ep));
|
||||||
|
|
||||||
@ -109,7 +109,7 @@
|
|||||||
|
|
||||||
tp = lookup_bytestring(ndo, ep, len);
|
tp = lookup_bytestring(ndo, ep, len);
|
||||||
if (tp->bs_name)
|
if (tp->bs_name)
|
||||||
@@ -1260,6 +1262,7 @@ init_addrtoname(netdissect_options *ndo,
|
@@ -1257,6 +1259,7 @@ init_addrtoname(netdissect_options *ndo,
|
||||||
init_ipxsaparray(ndo);
|
init_ipxsaparray(ndo);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -117,7 +117,7 @@
|
|||||||
const char *
|
const char *
|
||||||
dnaddr_string(netdissect_options *ndo, u_short dnaddr)
|
dnaddr_string(netdissect_options *ndo, u_short dnaddr)
|
||||||
{
|
{
|
||||||
@@ -1276,6 +1279,7 @@ dnaddr_string(netdissect_options *ndo, u
|
@@ -1273,6 +1276,7 @@ dnaddr_string(netdissect_options *ndo, u
|
||||||
|
|
||||||
return(tp->name);
|
return(tp->name);
|
||||||
}
|
}
|
||||||
@ -127,7 +127,7 @@
|
|||||||
struct hnamemem *
|
struct hnamemem *
|
||||||
--- a/print-ether.c
|
--- a/print-ether.c
|
||||||
+++ b/print-ether.c
|
+++ b/print-ether.c
|
||||||
@@ -545,6 +545,7 @@ ethertype_print(netdissect_options *ndo,
|
@@ -543,6 +543,7 @@ ethertype_print(netdissect_options *ndo,
|
||||||
arp_print(ndo, p, length, caplen);
|
arp_print(ndo, p, length, caplen);
|
||||||
return (1);
|
return (1);
|
||||||
|
|
||||||
@ -135,7 +135,7 @@
|
|||||||
case ETHERTYPE_DN:
|
case ETHERTYPE_DN:
|
||||||
decnet_print(ndo, p, length, caplen);
|
decnet_print(ndo, p, length, caplen);
|
||||||
return (1);
|
return (1);
|
||||||
@@ -575,6 +576,7 @@ ethertype_print(netdissect_options *ndo,
|
@@ -573,6 +574,7 @@ ethertype_print(netdissect_options *ndo,
|
||||||
ND_TCHECK_LEN(p, 1);
|
ND_TCHECK_LEN(p, 1);
|
||||||
isoclns_print(ndo, p + 1, length - 1);
|
isoclns_print(ndo, p + 1, length - 1);
|
||||||
return(1);
|
return(1);
|
||||||
@ -143,7 +143,7 @@
|
|||||||
|
|
||||||
case ETHERTYPE_PPPOED:
|
case ETHERTYPE_PPPOED:
|
||||||
case ETHERTYPE_PPPOES:
|
case ETHERTYPE_PPPOES:
|
||||||
@@ -587,9 +589,11 @@ ethertype_print(netdissect_options *ndo,
|
@@ -585,9 +587,11 @@ ethertype_print(netdissect_options *ndo,
|
||||||
eapol_print(ndo, p);
|
eapol_print(ndo, p);
|
||||||
return (1);
|
return (1);
|
||||||
|
|
||||||
@ -155,7 +155,7 @@
|
|||||||
|
|
||||||
case ETHERTYPE_PPP:
|
case ETHERTYPE_PPP:
|
||||||
if (length) {
|
if (length) {
|
||||||
@@ -598,6 +602,7 @@ ethertype_print(netdissect_options *ndo,
|
@@ -596,6 +600,7 @@ ethertype_print(netdissect_options *ndo,
|
||||||
}
|
}
|
||||||
return (1);
|
return (1);
|
||||||
|
|
||||||
@ -163,7 +163,7 @@
|
|||||||
case ETHERTYPE_MPCP:
|
case ETHERTYPE_MPCP:
|
||||||
mpcp_print(ndo, p, length);
|
mpcp_print(ndo, p, length);
|
||||||
return (1);
|
return (1);
|
||||||
@@ -610,19 +615,23 @@ ethertype_print(netdissect_options *ndo,
|
@@ -608,19 +613,23 @@ ethertype_print(netdissect_options *ndo,
|
||||||
case ETHERTYPE_CFM_OLD:
|
case ETHERTYPE_CFM_OLD:
|
||||||
cfm_print(ndo, p, length);
|
cfm_print(ndo, p, length);
|
||||||
return (1);
|
return (1);
|
||||||
@ -187,7 +187,7 @@
|
|||||||
case ETHERTYPE_MPLS:
|
case ETHERTYPE_MPLS:
|
||||||
case ETHERTYPE_MPLS_MULTI:
|
case ETHERTYPE_MPLS_MULTI:
|
||||||
mpls_print(ndo, p, length);
|
mpls_print(ndo, p, length);
|
||||||
@@ -652,6 +661,7 @@ ethertype_print(netdissect_options *ndo,
|
@@ -650,6 +659,7 @@ ethertype_print(netdissect_options *ndo,
|
||||||
case ETHERTYPE_PTP:
|
case ETHERTYPE_PTP:
|
||||||
ptp_print(ndo, p, length);
|
ptp_print(ndo, p, length);
|
||||||
return (1);
|
return (1);
|
||||||
@ -197,7 +197,7 @@
|
|||||||
case ETHERTYPE_SCA:
|
case ETHERTYPE_SCA:
|
||||||
--- a/print-gre.c
|
--- a/print-gre.c
|
||||||
+++ b/print-gre.c
|
+++ b/print-gre.c
|
||||||
@@ -207,6 +207,7 @@ gre_print_0(netdissect_options *ndo, con
|
@@ -205,6 +205,7 @@ gre_print_0(netdissect_options *ndo, con
|
||||||
case ETHERTYPE_IPV6:
|
case ETHERTYPE_IPV6:
|
||||||
ip6_print(ndo, bp, len);
|
ip6_print(ndo, bp, len);
|
||||||
break;
|
break;
|
||||||
@ -205,7 +205,7 @@
|
|||||||
case ETHERTYPE_MPLS:
|
case ETHERTYPE_MPLS:
|
||||||
mpls_print(ndo, bp, len);
|
mpls_print(ndo, bp, len);
|
||||||
break;
|
break;
|
||||||
@@ -219,6 +220,7 @@ gre_print_0(netdissect_options *ndo, con
|
@@ -217,6 +218,7 @@ gre_print_0(netdissect_options *ndo, con
|
||||||
case ETHERTYPE_GRE_ISO:
|
case ETHERTYPE_GRE_ISO:
|
||||||
isoclns_print(ndo, bp, len);
|
isoclns_print(ndo, bp, len);
|
||||||
break;
|
break;
|
||||||
@ -215,7 +215,7 @@
|
|||||||
break;
|
break;
|
||||||
--- a/print-icmp6.c
|
--- a/print-icmp6.c
|
||||||
+++ b/print-icmp6.c
|
+++ b/print-icmp6.c
|
||||||
@@ -1371,7 +1371,7 @@ get_upperlayer(netdissect_options *ndo,
|
@@ -1369,7 +1369,7 @@ get_upperlayer(netdissect_options *ndo,
|
||||||
nh = GET_U_1(fragh->ip6f_nxt);
|
nh = GET_U_1(fragh->ip6f_nxt);
|
||||||
hlen = sizeof(struct ip6_frag);
|
hlen = sizeof(struct ip6_frag);
|
||||||
break;
|
break;
|
||||||
@ -224,7 +224,7 @@
|
|||||||
case IPPROTO_AH:
|
case IPPROTO_AH:
|
||||||
ah = (const struct ah *)bp;
|
ah = (const struct ah *)bp;
|
||||||
if (!ND_TTEST_1(ah->ah_len))
|
if (!ND_TTEST_1(ah->ah_len))
|
||||||
@@ -1379,7 +1379,7 @@ get_upperlayer(netdissect_options *ndo,
|
@@ -1377,7 +1377,7 @@ get_upperlayer(netdissect_options *ndo,
|
||||||
nh = GET_U_1(ah->ah_nxt);
|
nh = GET_U_1(ah->ah_nxt);
|
||||||
hlen = (GET_U_1(ah->ah_len) + 2) << 2;
|
hlen = (GET_U_1(ah->ah_len) + 2) << 2;
|
||||||
break;
|
break;
|
||||||
@ -235,7 +235,7 @@
|
|||||||
return(NULL);
|
return(NULL);
|
||||||
--- a/print-igmp.c
|
--- a/print-igmp.c
|
||||||
+++ b/print-igmp.c
|
+++ b/print-igmp.c
|
||||||
@@ -269,6 +269,7 @@ igmp_print(netdissect_options *ndo,
|
@@ -267,6 +267,7 @@ igmp_print(netdissect_options *ndo,
|
||||||
case 0x17:
|
case 0x17:
|
||||||
ND_PRINT("igmp leave %s", GET_IPADDR_STRING(bp + 4));
|
ND_PRINT("igmp leave %s", GET_IPADDR_STRING(bp + 4));
|
||||||
break;
|
break;
|
||||||
@ -243,7 +243,7 @@
|
|||||||
case 0x13:
|
case 0x13:
|
||||||
ND_PRINT("igmp dvmrp");
|
ND_PRINT("igmp dvmrp");
|
||||||
if (len < 8)
|
if (len < 8)
|
||||||
@@ -280,6 +281,7 @@ igmp_print(netdissect_options *ndo,
|
@@ -278,6 +279,7 @@ igmp_print(netdissect_options *ndo,
|
||||||
ND_PRINT("igmp pimv1");
|
ND_PRINT("igmp pimv1");
|
||||||
pimv1_print(ndo, bp, len);
|
pimv1_print(ndo, bp, len);
|
||||||
break;
|
break;
|
||||||
@ -253,7 +253,7 @@
|
|||||||
break;
|
break;
|
||||||
--- a/print-ip-demux.c
|
--- a/print-ip-demux.c
|
||||||
+++ b/print-ip-demux.c
|
+++ b/print-ip-demux.c
|
||||||
@@ -48,6 +48,7 @@ ip_demux_print(netdissect_options *ndo,
|
@@ -46,6 +46,7 @@ ip_demux_print(netdissect_options *ndo,
|
||||||
again:
|
again:
|
||||||
switch (nh) {
|
switch (nh) {
|
||||||
|
|
||||||
@ -261,7 +261,7 @@
|
|||||||
case IPPROTO_AH:
|
case IPPROTO_AH:
|
||||||
if (!ND_TTEST_1(bp)) {
|
if (!ND_TTEST_1(bp)) {
|
||||||
ndo->ndo_protocol = "ah";
|
ndo->ndo_protocol = "ah";
|
||||||
@@ -85,7 +86,9 @@ again:
|
@@ -83,7 +84,9 @@ again:
|
||||||
*/
|
*/
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -271,7 +271,7 @@
|
|||||||
case IPPROTO_SCTP:
|
case IPPROTO_SCTP:
|
||||||
sctp_print(ndo, bp, iph, length);
|
sctp_print(ndo, bp, iph, length);
|
||||||
break;
|
break;
|
||||||
@@ -93,7 +96,7 @@ again:
|
@@ -91,7 +94,7 @@ again:
|
||||||
case IPPROTO_DCCP:
|
case IPPROTO_DCCP:
|
||||||
dccp_print(ndo, bp, iph, length);
|
dccp_print(ndo, bp, iph, length);
|
||||||
break;
|
break;
|
||||||
@ -280,7 +280,7 @@
|
|||||||
case IPPROTO_TCP:
|
case IPPROTO_TCP:
|
||||||
tcp_print(ndo, bp, length, iph, fragmented);
|
tcp_print(ndo, bp, length, iph, fragmented);
|
||||||
break;
|
break;
|
||||||
@@ -122,6 +125,7 @@ again:
|
@@ -120,6 +123,7 @@ again:
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -288,7 +288,7 @@
|
|||||||
case IPPROTO_PIGP:
|
case IPPROTO_PIGP:
|
||||||
/*
|
/*
|
||||||
* XXX - the current IANA protocol number assignments
|
* XXX - the current IANA protocol number assignments
|
||||||
@@ -142,14 +146,17 @@ again:
|
@@ -140,14 +144,17 @@ again:
|
||||||
case IPPROTO_EIGRP:
|
case IPPROTO_EIGRP:
|
||||||
eigrp_print(ndo, bp, length);
|
eigrp_print(ndo, bp, length);
|
||||||
break;
|
break;
|
||||||
@ -306,7 +306,7 @@
|
|||||||
|
|
||||||
case IPPROTO_OSPF:
|
case IPPROTO_OSPF:
|
||||||
if (ver == 6)
|
if (ver == 6)
|
||||||
@@ -186,6 +193,7 @@ again:
|
@@ -184,6 +191,7 @@ again:
|
||||||
gre_print(ndo, bp, length);
|
gre_print(ndo, bp, length);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -314,7 +314,7 @@
|
|||||||
case IPPROTO_MOBILE:
|
case IPPROTO_MOBILE:
|
||||||
mobile_print(ndo, bp, length);
|
mobile_print(ndo, bp, length);
|
||||||
break;
|
break;
|
||||||
@@ -205,6 +213,7 @@ again:
|
@@ -203,6 +211,7 @@ again:
|
||||||
case IPPROTO_PGM:
|
case IPPROTO_PGM:
|
||||||
pgm_print(ndo, bp, length, iph);
|
pgm_print(ndo, bp, length, iph);
|
||||||
break;
|
break;
|
||||||
@ -324,7 +324,7 @@
|
|||||||
if (ver == 6)
|
if (ver == 6)
|
||||||
--- a/print-ip6.c
|
--- a/print-ip6.c
|
||||||
+++ b/print-ip6.c
|
+++ b/print-ip6.c
|
||||||
@@ -135,10 +135,11 @@ ip6_finddst(netdissect_options *ndo, nd_
|
@@ -133,10 +133,11 @@ ip6_finddst(netdissect_options *ndo, nd_
|
||||||
* Only one routing header to a customer.
|
* Only one routing header to a customer.
|
||||||
*/
|
*/
|
||||||
goto done;
|
goto done;
|
||||||
@ -337,7 +337,7 @@
|
|||||||
default:
|
default:
|
||||||
/*
|
/*
|
||||||
* AH and ESP are, in the RFCs that describe them,
|
* AH and ESP are, in the RFCs that describe them,
|
||||||
@@ -375,6 +376,7 @@ ip6_print(netdissect_options *ndo, const
|
@@ -371,6 +372,7 @@ ip6_print(netdissect_options *ndo, const
|
||||||
nh = GET_U_1(cp);
|
nh = GET_U_1(cp);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -345,7 +345,7 @@
|
|||||||
case IPPROTO_FRAGMENT:
|
case IPPROTO_FRAGMENT:
|
||||||
advance = frag6_print(ndo, cp, (const u_char *)ip6);
|
advance = frag6_print(ndo, cp, (const u_char *)ip6);
|
||||||
if (advance < 0 || ndo->ndo_snapend <= cp + advance) {
|
if (advance < 0 || ndo->ndo_snapend <= cp + advance) {
|
||||||
@@ -405,7 +407,7 @@ ip6_print(netdissect_options *ndo, const
|
@@ -401,7 +403,7 @@ ip6_print(netdissect_options *ndo, const
|
||||||
nh = GET_U_1(cp);
|
nh = GET_U_1(cp);
|
||||||
nd_pop_packet_info(ndo);
|
nd_pop_packet_info(ndo);
|
||||||
return;
|
return;
|
||||||
@ -356,7 +356,7 @@
|
|||||||
advance = rt6_print(ndo, cp, (const u_char *)ip6);
|
advance = rt6_print(ndo, cp, (const u_char *)ip6);
|
||||||
--- a/print-llc.c
|
--- a/print-llc.c
|
||||||
+++ b/print-llc.c
|
+++ b/print-llc.c
|
||||||
@@ -207,6 +207,7 @@ llc_print(netdissect_options *ndo, const
|
@@ -205,6 +205,7 @@ llc_print(netdissect_options *ndo, const
|
||||||
hdrlen = 4; /* DSAP, SSAP, 2-byte control field */
|
hdrlen = 4; /* DSAP, SSAP, 2-byte control field */
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -364,7 +364,7 @@
|
|||||||
if (ssap_field == LLCSAP_GLOBAL && dsap_field == LLCSAP_GLOBAL) {
|
if (ssap_field == LLCSAP_GLOBAL && dsap_field == LLCSAP_GLOBAL) {
|
||||||
/*
|
/*
|
||||||
* This is an Ethernet_802.3 IPX frame; it has an
|
* This is an Ethernet_802.3 IPX frame; it has an
|
||||||
@@ -229,6 +230,7 @@ llc_print(netdissect_options *ndo, const
|
@@ -227,6 +228,7 @@ llc_print(netdissect_options *ndo, const
|
||||||
ipx_print(ndo, p, length);
|
ipx_print(ndo, p, length);
|
||||||
return (0); /* no LLC header */
|
return (0); /* no LLC header */
|
||||||
}
|
}
|
||||||
@ -372,7 +372,7 @@
|
|||||||
|
|
||||||
dsap = dsap_field & ~LLC_IG;
|
dsap = dsap_field & ~LLC_IG;
|
||||||
ssap = ssap_field & ~LLC_GSAP;
|
ssap = ssap_field & ~LLC_GSAP;
|
||||||
@@ -292,6 +294,7 @@ llc_print(netdissect_options *ndo, const
|
@@ -290,6 +292,7 @@ llc_print(netdissect_options *ndo, const
|
||||||
return (hdrlen);
|
return (hdrlen);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -380,7 +380,7 @@
|
|||||||
if (ssap == LLCSAP_IPX && dsap == LLCSAP_IPX &&
|
if (ssap == LLCSAP_IPX && dsap == LLCSAP_IPX &&
|
||||||
control == LLC_UI) {
|
control == LLC_UI) {
|
||||||
/*
|
/*
|
||||||
@@ -305,6 +308,7 @@ llc_print(netdissect_options *ndo, const
|
@@ -303,6 +306,7 @@ llc_print(netdissect_options *ndo, const
|
||||||
ipx_print(ndo, p, length);
|
ipx_print(ndo, p, length);
|
||||||
return (hdrlen);
|
return (hdrlen);
|
||||||
}
|
}
|
||||||
@ -388,7 +388,7 @@
|
|||||||
|
|
||||||
#ifdef ENABLE_SMB
|
#ifdef ENABLE_SMB
|
||||||
if (ssap == LLCSAP_NETBEUI && dsap == LLCSAP_NETBEUI
|
if (ssap == LLCSAP_NETBEUI && dsap == LLCSAP_NETBEUI
|
||||||
@@ -323,12 +327,13 @@ llc_print(netdissect_options *ndo, const
|
@@ -321,12 +325,13 @@ llc_print(netdissect_options *ndo, const
|
||||||
return (hdrlen);
|
return (hdrlen);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@ -403,7 +403,7 @@
|
|||||||
if (!ndo->ndo_eflag) {
|
if (!ndo->ndo_eflag) {
|
||||||
if (ssap == dsap) {
|
if (ssap == dsap) {
|
||||||
if (src == NULL || dst == NULL)
|
if (src == NULL || dst == NULL)
|
||||||
@@ -484,6 +489,7 @@ snap_print(netdissect_options *ndo, cons
|
@@ -482,6 +487,7 @@ snap_print(netdissect_options *ndo, cons
|
||||||
|
|
||||||
case OUI_CISCO:
|
case OUI_CISCO:
|
||||||
switch (et) {
|
switch (et) {
|
||||||
@ -411,7 +411,7 @@
|
|||||||
case PID_CISCO_CDP:
|
case PID_CISCO_CDP:
|
||||||
cdp_print(ndo, p, length);
|
cdp_print(ndo, p, length);
|
||||||
return (1);
|
return (1);
|
||||||
@@ -496,6 +502,7 @@ snap_print(netdissect_options *ndo, cons
|
@@ -494,6 +500,7 @@ snap_print(netdissect_options *ndo, cons
|
||||||
case PID_CISCO_VTP:
|
case PID_CISCO_VTP:
|
||||||
vtp_print(ndo, p, length);
|
vtp_print(ndo, p, length);
|
||||||
return (1);
|
return (1);
|
||||||
@ -419,7 +419,7 @@
|
|||||||
case PID_CISCO_PVST:
|
case PID_CISCO_PVST:
|
||||||
case PID_CISCO_VLANBRIDGE:
|
case PID_CISCO_VLANBRIDGE:
|
||||||
stp_print(ndo, p, length);
|
stp_print(ndo, p, length);
|
||||||
@@ -508,6 +515,7 @@ snap_print(netdissect_options *ndo, cons
|
@@ -506,6 +513,7 @@ snap_print(netdissect_options *ndo, cons
|
||||||
case OUI_RFC2684:
|
case OUI_RFC2684:
|
||||||
switch (et) {
|
switch (et) {
|
||||||
|
|
||||||
@ -427,7 +427,7 @@
|
|||||||
case PID_RFC2684_ETH_FCS:
|
case PID_RFC2684_ETH_FCS:
|
||||||
case PID_RFC2684_ETH_NOFCS:
|
case PID_RFC2684_ETH_NOFCS:
|
||||||
/*
|
/*
|
||||||
@@ -569,6 +577,7 @@ snap_print(netdissect_options *ndo, cons
|
@@ -567,6 +575,7 @@ snap_print(netdissect_options *ndo, cons
|
||||||
*/
|
*/
|
||||||
fddi_print(ndo, p, length, caplen);
|
fddi_print(ndo, p, length, caplen);
|
||||||
return (1);
|
return (1);
|
||||||
@ -437,7 +437,7 @@
|
|||||||
stp_print(ndo, p, length);
|
stp_print(ndo, p, length);
|
||||||
--- a/print-null.c
|
--- a/print-null.c
|
||||||
+++ b/print-null.c
|
+++ b/print-null.c
|
||||||
@@ -116,6 +116,7 @@ null_if_print(netdissect_options *ndo, c
|
@@ -114,6 +114,7 @@ null_if_print(netdissect_options *ndo, c
|
||||||
ip6_print(ndo, p, length);
|
ip6_print(ndo, p, length);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -445,7 +445,7 @@
|
|||||||
case BSD_AFNUM_ISO:
|
case BSD_AFNUM_ISO:
|
||||||
isoclns_print(ndo, p, length);
|
isoclns_print(ndo, p, length);
|
||||||
break;
|
break;
|
||||||
@@ -127,6 +128,7 @@ null_if_print(netdissect_options *ndo, c
|
@@ -125,6 +126,7 @@ null_if_print(netdissect_options *ndo, c
|
||||||
case BSD_AFNUM_IPX:
|
case BSD_AFNUM_IPX:
|
||||||
ipx_print(ndo, p, length);
|
ipx_print(ndo, p, length);
|
||||||
break;
|
break;
|
||||||
@ -455,7 +455,7 @@
|
|||||||
/* unknown AF_ value */
|
/* unknown AF_ value */
|
||||||
--- a/print-ppp.c
|
--- a/print-ppp.c
|
||||||
+++ b/print-ppp.c
|
+++ b/print-ppp.c
|
||||||
@@ -1355,6 +1355,7 @@ trunc:
|
@@ -1354,6 +1354,7 @@ trunc:
|
||||||
* The length argument is the on-the-wire length, not the captured
|
* The length argument is the on-the-wire length, not the captured
|
||||||
* length; we can only un-escape the captured part.
|
* length; we can only un-escape the captured part.
|
||||||
*/
|
*/
|
||||||
@ -464,7 +464,7 @@
|
|||||||
ppp_hdlc(netdissect_options *ndo,
|
ppp_hdlc(netdissect_options *ndo,
|
||||||
const u_char *p, u_int length)
|
const u_char *p, u_int length)
|
||||||
@@ -1451,17 +1452,19 @@ trunc:
|
@@ -1451,17 +1452,19 @@ trunc:
|
||||||
ndo->ndo_snapend = se;
|
nd_pop_packet_info(ndo);
|
||||||
nd_print_trunc(ndo);
|
nd_print_trunc(ndo);
|
||||||
}
|
}
|
||||||
-
|
-
|
||||||
@ -515,7 +515,7 @@
|
|||||||
+#endif
|
+#endif
|
||||||
--- a/print-sll.c
|
--- a/print-sll.c
|
||||||
+++ b/print-sll.c
|
+++ b/print-sll.c
|
||||||
@@ -465,12 +465,14 @@ recurse:
|
@@ -463,12 +463,14 @@ recurse:
|
||||||
*/
|
*/
|
||||||
switch (ether_type) {
|
switch (ether_type) {
|
||||||
|
|
||||||
@ -532,7 +532,7 @@
|
|||||||
/*
|
/*
|
||||||
--- a/print-tcp.c
|
--- a/print-tcp.c
|
||||||
+++ b/print-tcp.c
|
+++ b/print-tcp.c
|
||||||
@@ -614,6 +614,7 @@ tcp_print(netdissect_options *ndo,
|
@@ -612,6 +612,7 @@ tcp_print(netdissect_options *ndo,
|
||||||
ND_PRINT(" %u", utoval);
|
ND_PRINT(" %u", utoval);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -540,7 +540,7 @@
|
|||||||
case TCPOPT_MPTCP:
|
case TCPOPT_MPTCP:
|
||||||
{
|
{
|
||||||
const u_char *snapend_save;
|
const u_char *snapend_save;
|
||||||
@@ -637,7 +638,7 @@ tcp_print(netdissect_options *ndo,
|
@@ -635,7 +636,7 @@ tcp_print(netdissect_options *ndo,
|
||||||
goto bad;
|
goto bad;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -549,7 +549,7 @@
|
|||||||
case TCPOPT_FASTOPEN:
|
case TCPOPT_FASTOPEN:
|
||||||
datalen = len - 2;
|
datalen = len - 2;
|
||||||
LENCHECK(datalen);
|
LENCHECK(datalen);
|
||||||
@@ -722,6 +723,7 @@ tcp_print(netdissect_options *ndo,
|
@@ -720,6 +721,7 @@ tcp_print(netdissect_options *ndo,
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -557,65 +557,64 @@
|
|||||||
if (ndo->ndo_packettype) {
|
if (ndo->ndo_packettype) {
|
||||||
switch (ndo->ndo_packettype) {
|
switch (ndo->ndo_packettype) {
|
||||||
case PT_ZMTP1:
|
case PT_ZMTP1:
|
||||||
@@ -737,6 +739,7 @@ tcp_print(netdissect_options *ndo,
|
@@ -735,12 +737,15 @@ tcp_print(netdissect_options *ndo,
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
+#endif
|
+#endif
|
||||||
|
|
||||||
if (IS_SRC_OR_DST_PORT(TELNET_PORT)) {
|
if (IS_SRC_OR_DST_PORT(FTP_PORT)) {
|
||||||
telnet_print(ndo, bp, length);
|
|
||||||
@@ -746,24 +749,31 @@ tcp_print(netdissect_options *ndo,
|
|
||||||
} else if (IS_SRC_OR_DST_PORT(WHOIS_PORT)) {
|
|
||||||
ND_PRINT(": ");
|
|
||||||
whois_print(ndo, bp, length);
|
|
||||||
- } else if (IS_SRC_OR_DST_PORT(BGP_PORT))
|
|
||||||
+ }
|
|
||||||
+#ifndef TCPDUMP_MINI
|
|
||||||
+ else if (IS_SRC_OR_DST_PORT(BGP_PORT))
|
|
||||||
bgp_print(ndo, bp, length);
|
|
||||||
+#endif
|
|
||||||
else if (IS_SRC_OR_DST_PORT(PPTP_PORT))
|
|
||||||
pptp_print(ndo, bp);
|
|
||||||
+#ifndef TCPDUMP_MINI
|
|
||||||
else if (IS_SRC_OR_DST_PORT(REDIS_PORT))
|
|
||||||
resp_print(ndo, bp, length);
|
|
||||||
else if (IS_SRC_OR_DST_PORT(SSH_PORT))
|
|
||||||
ssh_print(ndo, bp, length);
|
|
||||||
+#endif
|
|
||||||
#ifdef ENABLE_SMB
|
|
||||||
else if (IS_SRC_OR_DST_PORT(NETBIOS_SSN_PORT))
|
|
||||||
nbt_tcp_print(ndo, bp, length);
|
|
||||||
else if (IS_SRC_OR_DST_PORT(SMB_PORT))
|
|
||||||
smb_tcp_print(ndo, bp, length);
|
|
||||||
#endif
|
|
||||||
+#ifndef TCPDUMP_MINI
|
|
||||||
else if (IS_SRC_OR_DST_PORT(BEEP_PORT))
|
|
||||||
beep_print(ndo, bp, length);
|
|
||||||
else if (IS_SRC_OR_DST_PORT(OPENFLOW_PORT_OLD) || IS_SRC_OR_DST_PORT(OPENFLOW_PORT_IANA))
|
|
||||||
openflow_print(ndo, bp, length);
|
|
||||||
+#endif
|
|
||||||
else if (IS_SRC_OR_DST_PORT(FTP_PORT)) {
|
|
||||||
ND_PRINT(": ");
|
ND_PRINT(": ");
|
||||||
ftp_print(ndo, bp, length);
|
ftp_print(ndo, bp, length);
|
||||||
@@ -776,12 +786,14 @@ tcp_print(netdissect_options *ndo,
|
+#ifndef TCPDUMP_MINI
|
||||||
} else if (IS_SRC_OR_DST_PORT(NAMESERVER_PORT)) {
|
} else if (IS_SRC_OR_DST_PORT(SSH_PORT)) {
|
||||||
/* over_tcp: TRUE, is_mdns: FALSE */
|
ssh_print(ndo, bp, length);
|
||||||
domain_print(ndo, bp, length, TRUE, FALSE);
|
+#endif
|
||||||
|
} else if (IS_SRC_OR_DST_PORT(TELNET_PORT)) {
|
||||||
|
telnet_print(ndo, bp, length);
|
||||||
|
} else if (IS_SRC_OR_DST_PORT(SMTP_PORT)) {
|
||||||
|
@@ -759,10 +764,12 @@ tcp_print(netdissect_options *ndo,
|
||||||
|
} else if (IS_SRC_OR_DST_PORT(NETBIOS_SSN_PORT)) {
|
||||||
|
nbt_tcp_print(ndo, bp, length);
|
||||||
|
#endif
|
||||||
|
+#ifndef TCPDUMP_MINI
|
||||||
|
} else if (IS_SRC_OR_DST_PORT(BGP_PORT)) {
|
||||||
|
- bgp_print(ndo, bp, length);
|
||||||
|
+ bgp_print(ndo, bp, length);
|
||||||
|
} else if (IS_SRC_OR_DST_PORT(RPKI_RTR_PORT)) {
|
||||||
|
rpki_rtr_print(ndo, bp, length);
|
||||||
|
+#endif
|
||||||
|
#ifdef ENABLE_SMB
|
||||||
|
} else if (IS_SRC_OR_DST_PORT(SMB_PORT)) {
|
||||||
|
smb_tcp_print(ndo, bp, length);
|
||||||
|
@@ -770,18 +777,22 @@ tcp_print(netdissect_options *ndo,
|
||||||
|
} else if (IS_SRC_OR_DST_PORT(RTSP_PORT)) {
|
||||||
|
ND_PRINT(": ");
|
||||||
|
rtsp_print(ndo, bp, length);
|
||||||
+#ifndef TCPDUMP_MINI
|
+#ifndef TCPDUMP_MINI
|
||||||
} else if (IS_SRC_OR_DST_PORT(MSDP_PORT)) {
|
} else if (IS_SRC_OR_DST_PORT(MSDP_PORT)) {
|
||||||
msdp_print(ndo, bp, length);
|
msdp_print(ndo, bp, length);
|
||||||
} else if (IS_SRC_OR_DST_PORT(RPKI_RTR_PORT)) {
|
|
||||||
rpki_rtr_print(ndo, bp, length);
|
|
||||||
} else if (IS_SRC_OR_DST_PORT(LDP_PORT)) {
|
} else if (IS_SRC_OR_DST_PORT(LDP_PORT)) {
|
||||||
ldp_print(ndo, bp, length);
|
ldp_print(ndo, bp, length);
|
||||||
|
- } else if (IS_SRC_OR_DST_PORT(PPTP_PORT))
|
||||||
+#endif
|
+#endif
|
||||||
} else if ((IS_SRC_OR_DST_PORT(NFS_PORT)) &&
|
+ } else if (IS_SRC_OR_DST_PORT(PPTP_PORT)) {
|
||||||
length >= 4 && ND_TTEST_4(bp)) {
|
pptp_print(ndo, bp);
|
||||||
/*
|
- else if (IS_SRC_OR_DST_PORT(REDIS_PORT))
|
||||||
|
+#ifndef TCPDUMP_MINI
|
||||||
|
+ } else if (IS_SRC_OR_DST_PORT(REDIS_PORT))
|
||||||
|
resp_print(ndo, bp, length);
|
||||||
|
else if (IS_SRC_OR_DST_PORT(BEEP_PORT))
|
||||||
|
beep_print(ndo, bp, length);
|
||||||
|
else if (IS_SRC_OR_DST_PORT(OPENFLOW_PORT_OLD) || IS_SRC_OR_DST_PORT(OPENFLOW_PORT_IANA)) {
|
||||||
|
openflow_print(ndo, bp, length);
|
||||||
|
+#endif
|
||||||
|
} else if (IS_SRC_OR_DST_PORT(HTTP_PORT_ALT)) {
|
||||||
|
ND_PRINT(": ");
|
||||||
|
http_print(ndo, bp, length);
|
||||||
--- a/print-udp.c
|
--- a/print-udp.c
|
||||||
+++ b/print-udp.c
|
+++ b/print-udp.c
|
||||||
@@ -435,10 +435,12 @@ udp_print(netdissect_options *ndo, const
|
@@ -433,10 +433,12 @@ udp_print(netdissect_options *ndo, const
|
||||||
vat_print(ndo, cp, length);
|
vat_print(ndo, cp, length);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -628,7 +627,7 @@
|
|||||||
|
|
||||||
case PT_RPC:
|
case PT_RPC:
|
||||||
rp = (const struct sunrpc_msg *)cp;
|
rp = (const struct sunrpc_msg *)cp;
|
||||||
@@ -467,10 +469,12 @@ udp_print(netdissect_options *ndo, const
|
@@ -465,10 +467,12 @@ udp_print(netdissect_options *ndo, const
|
||||||
snmp_print(ndo, cp, length);
|
snmp_print(ndo, cp, length);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -641,7 +640,7 @@
|
|||||||
|
|
||||||
case PT_TFTP:
|
case PT_TFTP:
|
||||||
udpipaddr_print(ndo, ip, sport, dport);
|
udpipaddr_print(ndo, ip, sport, dport);
|
||||||
@@ -488,6 +492,7 @@ udp_print(netdissect_options *ndo, const
|
@@ -485,6 +489,7 @@ udp_print(netdissect_options *ndo, const
|
||||||
radius_print(ndo, cp, length);
|
radius_print(ndo, cp, length);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -649,7 +648,7 @@
|
|||||||
case PT_VXLAN:
|
case PT_VXLAN:
|
||||||
udpipaddr_print(ndo, ip, sport, dport);
|
udpipaddr_print(ndo, ip, sport, dport);
|
||||||
vxlan_print(ndo, cp, length);
|
vxlan_print(ndo, cp, length);
|
||||||
@@ -510,6 +515,7 @@ udp_print(netdissect_options *ndo, const
|
@@ -507,6 +512,7 @@ udp_print(netdissect_options *ndo, const
|
||||||
udpipaddr_print(ndo, ip, sport, dport);
|
udpipaddr_print(ndo, ip, sport, dport);
|
||||||
someip_print(ndo, cp, length);
|
someip_print(ndo, cp, length);
|
||||||
break;
|
break;
|
||||||
@ -657,115 +656,116 @@
|
|||||||
case PT_DOMAIN:
|
case PT_DOMAIN:
|
||||||
udpipaddr_print(ndo, ip, sport, dport);
|
udpipaddr_print(ndo, ip, sport, dport);
|
||||||
/* over_tcp: FALSE, is_mdns: FALSE */
|
/* over_tcp: FALSE, is_mdns: FALSE */
|
||||||
@@ -596,29 +602,37 @@ udp_print(netdissect_options *ndo, const
|
@@ -594,8 +600,12 @@ udp_print(netdissect_options *ndo, const
|
||||||
else if (IS_SRC_OR_DST_PORT(MULTICASTDNS_PORT))
|
bootp_print(ndo, cp, length);
|
||||||
/* over_tcp: FALSE, is_mdns: TRUE */
|
|
||||||
domain_print(ndo, cp, length, FALSE, TRUE);
|
|
||||||
+#ifndef TCPDUMP_MINI
|
|
||||||
else if (IS_SRC_OR_DST_PORT(TIMED_PORT))
|
|
||||||
timed_print(ndo, (const u_char *)cp);
|
|
||||||
+#endif
|
|
||||||
else if (IS_SRC_OR_DST_PORT(TFTP_PORT))
|
else if (IS_SRC_OR_DST_PORT(TFTP_PORT))
|
||||||
tftp_print(ndo, cp, length);
|
tftp_print(ndo, cp, length);
|
||||||
else if (IS_SRC_OR_DST_PORT(BOOTPC_PORT) || IS_SRC_OR_DST_PORT(BOOTPS_PORT))
|
+#ifndef TCPDUMP_MINI
|
||||||
bootp_print(ndo, cp, length);
|
+#ifdef ENABLE_SMB
|
||||||
|
else if (IS_SRC_OR_DST_PORT(KERBEROS_PORT))
|
||||||
|
krb_print(ndo, (const u_char *)cp);
|
||||||
|
+#endif
|
||||||
|
+#endif
|
||||||
|
else if (IS_SRC_OR_DST_PORT(NTP_PORT))
|
||||||
|
ntp_print(ndo, cp, length);
|
||||||
|
#ifdef ENABLE_SMB
|
||||||
|
@@ -607,6 +617,7 @@ udp_print(netdissect_options *ndo, const
|
||||||
|
else if (IS_SRC_OR_DST_PORT(SNMP_PORT) ||
|
||||||
|
IS_SRC_OR_DST_PORT(SNMPTRAP_PORT))
|
||||||
|
snmp_print(ndo, cp, length);
|
||||||
|
+#ifndef TCPDUMP_MINI
|
||||||
|
else if (IS_SRC_OR_DST_PORT(PTP_EVENT_PORT) ||
|
||||||
|
IS_SRC_OR_DST_PORT(PTP_GENERAL_PORT))
|
||||||
|
ptp_print(ndo, cp, length);
|
||||||
|
@@ -614,38 +625,50 @@ udp_print(netdissect_options *ndo, const
|
||||||
|
cisco_autorp_print(ndo, cp, length);
|
||||||
|
else if (IS_SRC_OR_DST_PORT(ISAKMP_PORT))
|
||||||
|
isakmp_print(ndo, cp, length, bp2);
|
||||||
|
+#endif
|
||||||
|
else if (IS_SRC_OR_DST_PORT(SYSLOG_PORT))
|
||||||
|
syslog_print(ndo, cp, length);
|
||||||
+#ifndef TCPDUMP_MINI
|
+#ifndef TCPDUMP_MINI
|
||||||
else if (IS_SRC_OR_DST_PORT(RIP_PORT))
|
else if (IS_SRC_OR_DST_PORT(RIP_PORT))
|
||||||
rip_print(ndo, cp, length);
|
rip_print(ndo, cp, length);
|
||||||
|
else if (IS_SRC_OR_DST_PORT(RIPNG_PORT))
|
||||||
|
ripng_print(ndo, cp, length);
|
||||||
|
else if (IS_SRC_OR_DST_PORT(TIMED_PORT))
|
||||||
|
timed_print(ndo, (const u_char *)cp);
|
||||||
+#endif
|
+#endif
|
||||||
else if (IS_SRC_OR_DST_PORT(AODV_PORT))
|
else if (IS_SRC_OR_DST_PORT(DHCP6_SERV_PORT) ||
|
||||||
aodv_print(ndo, cp, length,
|
IS_SRC_OR_DST_PORT(DHCP6_CLI_PORT))
|
||||||
ip6 != NULL);
|
dhcp6_print(ndo, cp, length);
|
||||||
+#ifndef TCPDUMP_MINI
|
+#ifndef TCPDUMP_MINI
|
||||||
else if (IS_SRC_OR_DST_PORT(ISAKMP_PORT))
|
else if (IS_SRC_OR_DST_PORT(LDP_PORT))
|
||||||
isakmp_print(ndo, cp, length, bp2);
|
ldp_print(ndo, cp, length);
|
||||||
|
else if (IS_SRC_OR_DST_PORT(AODV_PORT))
|
||||||
|
aodv_print(ndo, cp, length, IP_V(ip) == 6);
|
||||||
|
+#endif
|
||||||
|
else if (IS_SRC_OR_DST_PORT(OLSR_PORT))
|
||||||
|
olsr_print(ndo, cp, length, IP_V(ip) == 6);
|
||||||
|
+#ifndef TCPDUMP_MINI
|
||||||
|
else if (IS_SRC_OR_DST_PORT(LMP_PORT))
|
||||||
|
lmp_print(ndo, cp, length);
|
||||||
|
+#ifdef ENABLE_SMB
|
||||||
|
else if (IS_SRC_OR_DST_PORT(KERBEROS_SEC_PORT))
|
||||||
|
krb_print(ndo, (const u_char *)cp);
|
||||||
|
+#endif
|
||||||
|
else if (IS_SRC_OR_DST_PORT(LWRES_PORT))
|
||||||
|
lwres_print(ndo, cp, length);
|
||||||
|
else if (IS_SRC_OR_DST_PORT(MULTICASTDNS_PORT))
|
||||||
|
/* over_tcp: FALSE, is_mdns: TRUE */
|
||||||
|
domain_print(ndo, cp, length, FALSE, TRUE);
|
||||||
|
+#ifdef ENABLE_SMB
|
||||||
else if (IS_SRC_OR_DST_PORT(ISAKMP_PORT_NATT))
|
else if (IS_SRC_OR_DST_PORT(ISAKMP_PORT_NATT))
|
||||||
isakmp_rfc3948_print(ndo, cp, length, bp2, IP_V(ip), fragmented, ttl_hl);
|
isakmp_rfc3948_print(ndo, cp, length, bp2, IP_V(ip), fragmented, ttl_hl);
|
||||||
else if (IS_SRC_OR_DST_PORT(ISAKMP_PORT_USER1) || IS_SRC_OR_DST_PORT(ISAKMP_PORT_USER2))
|
else if (IS_SRC_OR_DST_PORT(ISAKMP_PORT_USER1) || IS_SRC_OR_DST_PORT(ISAKMP_PORT_USER2))
|
||||||
isakmp_print(ndo, cp, length, bp2);
|
isakmp_print(ndo, cp, length, bp2);
|
||||||
+#endif
|
+#endif
|
||||||
else if (IS_SRC_OR_DST_PORT(SNMP_PORT) || IS_SRC_OR_DST_PORT(SNMPTRAP_PORT))
|
|
||||||
snmp_print(ndo, cp, length);
|
|
||||||
else if (IS_SRC_OR_DST_PORT(NTP_PORT))
|
|
||||||
ntp_print(ndo, cp, length);
|
|
||||||
+#ifndef TCPDUMP_MINI
|
|
||||||
else if (IS_SRC_OR_DST_PORT(KERBEROS_PORT) || IS_SRC_OR_DST_PORT(KERBEROS_SEC_PORT))
|
|
||||||
krb_print(ndo, (const u_char *)cp);
|
|
||||||
+#endif
|
+#endif
|
||||||
else if (IS_SRC_OR_DST_PORT(L2TP_PORT))
|
else if (IS_SRC_OR_DST_PORT(L2TP_PORT))
|
||||||
l2tp_print(ndo, cp, length);
|
l2tp_print(ndo, cp, length);
|
||||||
#ifdef ENABLE_SMB
|
+#ifndef TCPDUMP_MINI
|
||||||
@@ -629,6 +643,7 @@ udp_print(netdissect_options *ndo, const
|
|
||||||
#endif
|
|
||||||
else if (dport == VAT_PORT)
|
else if (dport == VAT_PORT)
|
||||||
vat_print(ndo, cp, length);
|
vat_print(ndo, cp, length);
|
||||||
+#ifndef TCPDUMP_MINI
|
|
||||||
else if (IS_SRC_OR_DST_PORT(ZEPHYR_SRV_PORT) || IS_SRC_OR_DST_PORT(ZEPHYR_CLT_PORT))
|
else if (IS_SRC_OR_DST_PORT(ZEPHYR_SRV_PORT) || IS_SRC_OR_DST_PORT(ZEPHYR_CLT_PORT))
|
||||||
zephyr_print(ndo, cp, length);
|
@@ -669,6 +692,7 @@ udp_print(netdissect_options *ndo, const
|
||||||
/*
|
*/
|
||||||
@@ -641,8 +656,11 @@ udp_print(netdissect_options *ndo, const
|
else if (dport == WB_PORT)
|
||||||
(const u_char *) ip);
|
|
||||||
else if (IS_SRC_OR_DST_PORT(RIPNG_PORT))
|
|
||||||
ripng_print(ndo, cp, length);
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
else if (IS_SRC_OR_DST_PORT(DHCP6_SERV_PORT) || IS_SRC_OR_DST_PORT(DHCP6_CLI_PORT))
|
|
||||||
dhcp6_print(ndo, cp, length);
|
|
||||||
+#ifndef TCPDUMP_MINI
|
|
||||||
else if (IS_SRC_OR_DST_PORT(AHCP_PORT))
|
|
||||||
ahcp_print(ndo, cp, length);
|
|
||||||
else if (IS_SRC_OR_DST_PORT(BABEL_PORT) || IS_SRC_OR_DST_PORT(BABEL_PORT_OLD))
|
|
||||||
@@ -656,6 +674,7 @@ udp_print(netdissect_options *ndo, const
|
|
||||||
wb_print(ndo, cp, length);
|
wb_print(ndo, cp, length);
|
||||||
else if (IS_SRC_OR_DST_PORT(CISCO_AUTORP_PORT))
|
|
||||||
cisco_autorp_print(ndo, cp, length);
|
|
||||||
+#endif
|
+#endif
|
||||||
else if (IS_SRC_OR_DST_PORT(RADIUS_PORT) ||
|
else if (IS_SRC_OR_DST_PORT(RADIUS_PORT) ||
|
||||||
IS_SRC_OR_DST_PORT(RADIUS_NEW_PORT) ||
|
IS_SRC_OR_DST_PORT(RADIUS_NEW_PORT) ||
|
||||||
IS_SRC_OR_DST_PORT(RADIUS_ACCOUNTING_PORT) ||
|
IS_SRC_OR_DST_PORT(RADIUS_ACCOUNTING_PORT) ||
|
||||||
@@ -663,15 +682,18 @@ udp_print(netdissect_options *ndo, const
|
@@ -676,6 +700,7 @@ udp_print(netdissect_options *ndo, const
|
||||||
IS_SRC_OR_DST_PORT(RADIUS_CISCO_COA_PORT) ||
|
IS_SRC_OR_DST_PORT(RADIUS_CISCO_COA_PORT) ||
|
||||||
IS_SRC_OR_DST_PORT(RADIUS_COA_PORT) )
|
IS_SRC_OR_DST_PORT(RADIUS_COA_PORT) )
|
||||||
radius_print(ndo, cp, length);
|
radius_print(ndo, cp, length);
|
||||||
+#ifndef TCPDUMP_MINI
|
+#ifndef TCPDUMP_MINI
|
||||||
else if (dport == HSRP_PORT)
|
else if (dport == HSRP_PORT)
|
||||||
hsrp_print(ndo, cp, length);
|
hsrp_print(ndo, cp, length);
|
||||||
else if (IS_SRC_OR_DST_PORT(LWRES_PORT))
|
|
||||||
lwres_print(ndo, cp, length);
|
|
||||||
else if (IS_SRC_OR_DST_PORT(LDP_PORT))
|
|
||||||
ldp_print(ndo, cp, length);
|
|
||||||
+#endif
|
|
||||||
else if (IS_SRC_OR_DST_PORT(OLSR_PORT))
|
|
||||||
olsr_print(ndo, cp, length,
|
|
||||||
(IP_V(ip) == 6) ? 1 : 0);
|
|
||||||
+#ifndef TCPDUMP_MINI
|
|
||||||
else if (IS_SRC_OR_DST_PORT(MPLS_LSP_PING_PORT))
|
else if (IS_SRC_OR_DST_PORT(MPLS_LSP_PING_PORT))
|
||||||
lspping_print(ndo, cp, length);
|
@@ -695,8 +720,10 @@ udp_print(netdissect_options *ndo, const
|
||||||
else if (sport == BCM_LI_PORT)
|
|
||||||
@@ -693,10 +715,12 @@ udp_print(netdissect_options *ndo, const
|
|
||||||
lwapp_control_print(ndo, cp, length, 0);
|
lwapp_control_print(ndo, cp, length, 0);
|
||||||
else if (IS_SRC_OR_DST_PORT(LWAPP_DATA_PORT))
|
else if (IS_SRC_OR_DST_PORT(LWAPP_DATA_PORT))
|
||||||
lwapp_data_print(ndo, cp, length);
|
lwapp_data_print(ndo, cp, length);
|
||||||
+#endif
|
+#endif
|
||||||
else if (IS_SRC_OR_DST_PORT(SIP_PORT))
|
else if (IS_SRC_OR_DST_PORT(SIP_PORT))
|
||||||
sip_print(ndo, cp, length);
|
sip_print(ndo, cp, length);
|
||||||
else if (IS_SRC_OR_DST_PORT(SYSLOG_PORT))
|
|
||||||
syslog_print(ndo, cp, length);
|
|
||||||
+#ifndef TCPDUMP_MINI
|
+#ifndef TCPDUMP_MINI
|
||||||
else if (IS_SRC_OR_DST_PORT(OTV_PORT))
|
else if (IS_SRC_OR_DST_PORT(OTV_PORT))
|
||||||
otv_print(ndo, cp, length);
|
otv_print(ndo, cp, length);
|
||||||
else if (IS_SRC_OR_DST_PORT(VXLAN_PORT))
|
else if (IS_SRC_OR_DST_PORT(VXLAN_PORT))
|
||||||
@@ -722,6 +746,7 @@ udp_print(netdissect_options *ndo, const
|
@@ -721,6 +748,7 @@ udp_print(netdissect_options *ndo, const
|
||||||
ptp_print(ndo, cp, length);
|
|
||||||
} else if (IS_SRC_OR_DST_PORT(SOMEIP_PORT))
|
|
||||||
someip_print(ndo, cp, length);
|
someip_print(ndo, cp, length);
|
||||||
|
else if (sport == BCM_LI_PORT)
|
||||||
|
bcm_li_print(ndo, cp, length);
|
||||||
+#endif
|
+#endif
|
||||||
else {
|
else {
|
||||||
if (ulen > length && !fragmented)
|
if (ulen > length && !fragmented)
|
||||||
ND_PRINT("UDP, bad length %u > %u",
|
ND_PRINT("UDP, bad length %u > %u",
|
||||||
--- a/print.c
|
--- a/print.c
|
||||||
+++ b/print.c
|
+++ b/print.c
|
||||||
@@ -48,6 +48,7 @@ struct printer {
|
@@ -46,6 +46,7 @@ struct printer {
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct printer printers[] = {
|
static const struct printer printers[] = {
|
||||||
@ -773,7 +773,7 @@
|
|||||||
#ifdef DLT_APPLE_IP_OVER_IEEE1394
|
#ifdef DLT_APPLE_IP_OVER_IEEE1394
|
||||||
{ ap1394_if_print, DLT_APPLE_IP_OVER_IEEE1394 },
|
{ ap1394_if_print, DLT_APPLE_IP_OVER_IEEE1394 },
|
||||||
#endif
|
#endif
|
||||||
@@ -86,7 +87,9 @@ static const struct printer printers[] =
|
@@ -84,7 +85,9 @@ static const struct printer printers[] =
|
||||||
#ifdef DLT_ENC
|
#ifdef DLT_ENC
|
||||||
{ enc_if_print, DLT_ENC },
|
{ enc_if_print, DLT_ENC },
|
||||||
#endif
|
#endif
|
||||||
@ -783,7 +783,7 @@
|
|||||||
{ fddi_if_print, DLT_FDDI },
|
{ fddi_if_print, DLT_FDDI },
|
||||||
#ifdef DLT_FR
|
#ifdef DLT_FR
|
||||||
{ fr_if_print, DLT_FR },
|
{ fr_if_print, DLT_FR },
|
||||||
@@ -94,6 +97,7 @@ static const struct printer printers[] =
|
@@ -92,6 +95,7 @@ static const struct printer printers[] =
|
||||||
#ifdef DLT_FRELAY
|
#ifdef DLT_FRELAY
|
||||||
{ fr_if_print, DLT_FRELAY },
|
{ fr_if_print, DLT_FRELAY },
|
||||||
#endif
|
#endif
|
||||||
@ -791,7 +791,7 @@
|
|||||||
#ifdef DLT_IEEE802_11
|
#ifdef DLT_IEEE802_11
|
||||||
{ ieee802_11_if_print, DLT_IEEE802_11},
|
{ ieee802_11_if_print, DLT_IEEE802_11},
|
||||||
#endif
|
#endif
|
||||||
@@ -103,6 +107,7 @@ static const struct printer printers[] =
|
@@ -101,6 +105,7 @@ static const struct printer printers[] =
|
||||||
#ifdef DLT_IEEE802_11_RADIO
|
#ifdef DLT_IEEE802_11_RADIO
|
||||||
{ ieee802_11_radio_if_print, DLT_IEEE802_11_RADIO },
|
{ ieee802_11_radio_if_print, DLT_IEEE802_11_RADIO },
|
||||||
#endif
|
#endif
|
||||||
@ -799,7 +799,7 @@
|
|||||||
#ifdef DLT_IEEE802_15_4
|
#ifdef DLT_IEEE802_15_4
|
||||||
{ ieee802_15_4_if_print, DLT_IEEE802_15_4 },
|
{ ieee802_15_4_if_print, DLT_IEEE802_15_4 },
|
||||||
#endif
|
#endif
|
||||||
@@ -115,9 +120,11 @@ static const struct printer printers[] =
|
@@ -113,9 +118,11 @@ static const struct printer printers[] =
|
||||||
#ifdef DLT_IP_OVER_FC
|
#ifdef DLT_IP_OVER_FC
|
||||||
{ ipfc_if_print, DLT_IP_OVER_FC },
|
{ ipfc_if_print, DLT_IP_OVER_FC },
|
||||||
#endif
|
#endif
|
||||||
@ -811,7 +811,7 @@
|
|||||||
#ifdef DLT_IPOIB
|
#ifdef DLT_IPOIB
|
||||||
{ ipoib_if_print, DLT_IPOIB },
|
{ ipoib_if_print, DLT_IPOIB },
|
||||||
#endif
|
#endif
|
||||||
@@ -172,19 +179,23 @@ static const struct printer printers[] =
|
@@ -170,19 +177,23 @@ static const struct printer printers[] =
|
||||||
#ifdef DLT_MFR
|
#ifdef DLT_MFR
|
||||||
{ mfr_if_print, DLT_MFR },
|
{ mfr_if_print, DLT_MFR },
|
||||||
#endif
|
#endif
|
||||||
@ -835,7 +835,7 @@
|
|||||||
#ifdef DLT_PFLOG
|
#ifdef DLT_PFLOG
|
||||||
{ pflog_if_print, DLT_PFLOG },
|
{ pflog_if_print, DLT_PFLOG },
|
||||||
#endif
|
#endif
|
||||||
@@ -200,6 +211,7 @@ static const struct printer printers[] =
|
@@ -198,6 +209,7 @@ static const struct printer printers[] =
|
||||||
#ifdef DLT_PPP_SERIAL
|
#ifdef DLT_PPP_SERIAL
|
||||||
{ ppp_hdlc_if_print, DLT_PPP_SERIAL },
|
{ ppp_hdlc_if_print, DLT_PPP_SERIAL },
|
||||||
#endif
|
#endif
|
||||||
@ -843,7 +843,7 @@
|
|||||||
{ ppp_if_print, DLT_PPP },
|
{ ppp_if_print, DLT_PPP },
|
||||||
#ifdef DLT_PPP_PPPD
|
#ifdef DLT_PPP_PPPD
|
||||||
{ ppp_if_print, DLT_PPP_PPPD },
|
{ ppp_if_print, DLT_PPP_PPPD },
|
||||||
@@ -211,6 +223,7 @@ static const struct printer printers[] =
|
@@ -209,6 +221,7 @@ static const struct printer printers[] =
|
||||||
{ prism_if_print, DLT_PRISM_HEADER },
|
{ prism_if_print, DLT_PRISM_HEADER },
|
||||||
#endif
|
#endif
|
||||||
{ raw_if_print, DLT_RAW },
|
{ raw_if_print, DLT_RAW },
|
||||||
@ -851,7 +851,7 @@
|
|||||||
#ifdef DLT_IPV4
|
#ifdef DLT_IPV4
|
||||||
{ raw_if_print, DLT_IPV4 },
|
{ raw_if_print, DLT_IPV4 },
|
||||||
#endif
|
#endif
|
||||||
@@ -243,6 +256,7 @@ static const struct printer printers[] =
|
@@ -241,6 +254,7 @@ static const struct printer printers[] =
|
||||||
#ifdef DLT_VSOCK
|
#ifdef DLT_VSOCK
|
||||||
{ vsock_if_print, DLT_VSOCK },
|
{ vsock_if_print, DLT_VSOCK },
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=umbim
|
PKG_NAME:=umbim
|
||||||
PKG_RELEASE:=24
|
PKG_RELEASE:=25
|
||||||
|
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_URL=$(PROJECT_GIT)/project/umbim.git
|
PKG_SOURCE_URL=$(PROJECT_GIT)/project/umbim.git
|
||||||
|
|||||||
@ -23,6 +23,7 @@ proto_mbim_init_config() {
|
|||||||
proto_config_add_string dhcp
|
proto_config_add_string dhcp
|
||||||
proto_config_add_string dhcpv6
|
proto_config_add_string dhcpv6
|
||||||
proto_config_add_boolean sourcefilter
|
proto_config_add_boolean sourcefilter
|
||||||
|
proto_config_add_boolean delegate
|
||||||
proto_config_add_string pdptype
|
proto_config_add_string pdptype
|
||||||
proto_config_add_int mtu
|
proto_config_add_int mtu
|
||||||
proto_config_add_defaults
|
proto_config_add_defaults
|
||||||
@ -48,7 +49,7 @@ _proto_mbim_setup() {
|
|||||||
local device apn pincode delay auth username password allow_roaming allow_partner
|
local device apn pincode delay auth username password allow_roaming allow_partner
|
||||||
local dhcp dhcpv6 pdptype ip4table ip6table mtu $PROTO_DEFAULT_OPTIONS
|
local dhcp dhcpv6 pdptype ip4table ip6table mtu $PROTO_DEFAULT_OPTIONS
|
||||||
json_get_vars device apn pincode delay auth username password allow_roaming allow_partner
|
json_get_vars device apn pincode delay auth username password allow_roaming allow_partner
|
||||||
json_get_vars dhcp dhcpv6 sourcefilter pdptype ip4table ip6table mtu $PROTO_DEFAULT_OPTIONS
|
json_get_vars dhcp dhcpv6 sourcefilter delegate pdptype ip4table ip6table mtu $PROTO_DEFAULT_OPTIONS
|
||||||
|
|
||||||
[ ! -e /proc/sys/net/ipv6 ] && ipv6=0 || json_get_var ipv6 ipv6
|
[ ! -e /proc/sys/net/ipv6 ] && ipv6=0 || json_get_var ipv6 ipv6
|
||||||
|
|
||||||
@ -264,6 +265,7 @@ _proto_mbim_setup() {
|
|||||||
echo "mbim[$$]" "Starting DHCPv6 on $ifname"
|
echo "mbim[$$]" "Starting DHCPv6 on $ifname"
|
||||||
json_add_string proto "dhcpv6"
|
json_add_string proto "dhcpv6"
|
||||||
json_add_string extendprefix 1
|
json_add_string extendprefix 1
|
||||||
|
[ "$delegate" = "0" ] && json_add_boolean delegate "0"
|
||||||
[ "$sourcefilter" = "0" ] && json_add_boolean sourcefilter "0"
|
[ "$sourcefilter" = "0" ] && json_add_boolean sourcefilter "0"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=uqmi
|
PKG_NAME:=uqmi
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=2
|
||||||
|
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_URL=$(PROJECT_GIT)/project/uqmi.git
|
PKG_SOURCE_URL=$(PROJECT_GIT)/project/uqmi.git
|
||||||
|
|||||||
@ -24,6 +24,7 @@ proto_qmi_init_config() {
|
|||||||
proto_config_add_boolean dhcp
|
proto_config_add_boolean dhcp
|
||||||
proto_config_add_boolean dhcpv6
|
proto_config_add_boolean dhcpv6
|
||||||
proto_config_add_boolean sourcefilter
|
proto_config_add_boolean sourcefilter
|
||||||
|
proto_config_add_boolean delegate
|
||||||
proto_config_add_boolean autoconnect
|
proto_config_add_boolean autoconnect
|
||||||
proto_config_add_int plmn
|
proto_config_add_int plmn
|
||||||
proto_config_add_int timeout
|
proto_config_add_int timeout
|
||||||
@ -42,7 +43,7 @@ proto_qmi_setup() {
|
|||||||
local profile_pdptype
|
local profile_pdptype
|
||||||
|
|
||||||
json_get_vars device apn v6apn auth username password pincode delay modes
|
json_get_vars device apn v6apn auth username password pincode delay modes
|
||||||
json_get_vars pdptype profile v6profile dhcp dhcpv6 sourcefilter autoconnect plmn ip4table
|
json_get_vars pdptype profile v6profile dhcp dhcpv6 sourcefilter delegate autoconnect plmn ip4table
|
||||||
json_get_vars ip6table timeout mtu $PROTO_DEFAULT_OPTIONS
|
json_get_vars ip6table timeout mtu $PROTO_DEFAULT_OPTIONS
|
||||||
|
|
||||||
[ "$timeout" = "" ] && timeout="10"
|
[ "$timeout" = "" ] && timeout="10"
|
||||||
@ -442,6 +443,7 @@ proto_qmi_setup() {
|
|||||||
proto_add_dynamic_defaults
|
proto_add_dynamic_defaults
|
||||||
# RFC 7278: Extend an IPv6 /64 Prefix to LAN
|
# RFC 7278: Extend an IPv6 /64 Prefix to LAN
|
||||||
json_add_string extendprefix 1
|
json_add_string extendprefix 1
|
||||||
|
[ "$delegate" = "0" ] && json_add_boolean delegate "0"
|
||||||
[ "$sourcefilter" = "0" ] && json_add_boolean sourcefilter "0"
|
[ "$sourcefilter" = "0" ] && json_add_boolean sourcefilter "0"
|
||||||
[ -n "$zone" ] && json_add_string zone "$zone"
|
[ -n "$zone" ] && json_add_string zone "$zone"
|
||||||
json_close_object
|
json_close_object
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
CONFIG_AG71XX=y
|
# CONFIG_AG71XX is not set
|
||||||
# CONFIG_AG71XX_DEBUG is not set
|
CONFIG_AG71XX_LEGACY=y
|
||||||
CONFIG_AG71XX_DEBUG_FS=y
|
# CONFIG_AG71XX_LEGACY_DEBUG is not set
|
||||||
|
CONFIG_AG71XX_LEGACY_DEBUG_FS=y
|
||||||
CONFIG_AR8216_PHY=y
|
CONFIG_AR8216_PHY=y
|
||||||
CONFIG_AR8216_PHY_LEDS=y
|
CONFIG_AR8216_PHY_LEDS=y
|
||||||
CONFIG_ARCH_32BIT_OFF_T=y
|
CONFIG_ARCH_32BIT_OFF_T=y
|
||||||
@ -51,6 +52,7 @@ CONFIG_EARLY_PRINTK=y
|
|||||||
CONFIG_ETHERNET_PACKET_MANGLE=y
|
CONFIG_ETHERNET_PACKET_MANGLE=y
|
||||||
CONFIG_EXCLUSIVE_SYSTEM_RAM=y
|
CONFIG_EXCLUSIVE_SYSTEM_RAM=y
|
||||||
CONFIG_FIXED_PHY=y
|
CONFIG_FIXED_PHY=y
|
||||||
|
CONFIG_FORCE_NR_CPUS=y
|
||||||
CONFIG_FS_IOMAP=y
|
CONFIG_FS_IOMAP=y
|
||||||
CONFIG_FUNCTION_ALIGNMENT=0
|
CONFIG_FUNCTION_ALIGNMENT=0
|
||||||
CONFIG_FWNODE_MDIO=y
|
CONFIG_FWNODE_MDIO=y
|
||||||
|
|||||||
@ -63,8 +63,8 @@
|
|||||||
i2c {
|
i2c {
|
||||||
compatible = "i2c-gpio";
|
compatible = "i2c-gpio";
|
||||||
|
|
||||||
sda-gpios = <&gpio 17 GPIO_ACTIVE_LOW>;
|
sda-gpios = <&gpio 1 GPIO_ACTIVE_HIGH>;
|
||||||
scl-gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
|
scl-gpios = <&gpio 16 GPIO_ACTIVE_HIGH>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@ -362,6 +362,8 @@
|
|||||||
|
|
||||||
resets = <&rst 9>, <&rst 22>;
|
resets = <&rst 9>, <&rst 22>;
|
||||||
reset-names = "mac", "mdio";
|
reset-names = "mac", "mdio";
|
||||||
|
clocks = <&pll ATH79_CLK_AHB>, <&pll ATH79_CLK_REF>;
|
||||||
|
clock-names = "eth", "mdio";
|
||||||
};
|
};
|
||||||
|
|
||||||
&mdio1 {
|
&mdio1 {
|
||||||
@ -379,4 +381,6 @@
|
|||||||
|
|
||||||
resets = <&rst 13>, <&rst 23>;
|
resets = <&rst 13>, <&rst 23>;
|
||||||
reset-names = "mac", "mdio";
|
reset-names = "mac", "mdio";
|
||||||
|
clocks = <&pll ATH79_CLK_AHB>, <&pll ATH79_CLK_REF>;
|
||||||
|
clock-names = "eth", "mdio";
|
||||||
};
|
};
|
||||||
|
|||||||
@ -284,13 +284,8 @@ static int rb91x_nand_probe(struct platform_device *pdev)
|
|||||||
platform_set_drvdata(pdev, drvdata);
|
platform_set_drvdata(pdev, drvdata);
|
||||||
|
|
||||||
gpios = gpiod_get_array(dev, NULL, GPIOD_OUT_LOW);
|
gpios = gpiod_get_array(dev, NULL, GPIOD_OUT_LOW);
|
||||||
if (IS_ERR(gpios)) {
|
if (IS_ERR(gpios))
|
||||||
if (PTR_ERR(gpios) != -EPROBE_DEFER) {
|
return dev_err_probe(dev, PTR_ERR(gpios), "failed to get gpios");
|
||||||
dev_err(dev, "failed to get gpios: %ld\n",
|
|
||||||
PTR_ERR(gpios));
|
|
||||||
}
|
|
||||||
return PTR_ERR(gpios);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (gpios->ndescs != RB91X_NAND_GPIOS) {
|
if (gpios->ndescs != RB91X_NAND_GPIOS) {
|
||||||
dev_err(dev, "expected %d gpios\n", RB91X_NAND_GPIOS);
|
dev_err(dev, "expected %d gpios\n", RB91X_NAND_GPIOS);
|
||||||
@ -333,16 +328,11 @@ static int rb91x_nand_probe(struct platform_device *pdev)
|
|||||||
|
|
||||||
r = mtd_device_register(mtd, NULL, 0);
|
r = mtd_device_register(mtd, NULL, 0);
|
||||||
if (r) {
|
if (r) {
|
||||||
dev_err(dev, "mtd_device_register() failed: %d\n",
|
rb91x_nand_release(drvdata);
|
||||||
r);
|
return dev_err_probe(dev, r, "mtd_device_register() failed");
|
||||||
goto err_release_nand;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
err_release_nand:
|
|
||||||
rb91x_nand_release(drvdata);
|
|
||||||
return r;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int rb91x_nand_remove(struct platform_device *pdev)
|
static int rb91x_nand_remove(struct platform_device *pdev)
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
config AG71XX
|
config AG71XX_LEGACY
|
||||||
tristate "Atheros AR7XXX/AR9XXX built-in ethernet mac support"
|
tristate "Atheros AR7XXX/AR9XXX built-in ethernet mac support"
|
||||||
depends on ATH79
|
depends on ATH79
|
||||||
select PHYLIB
|
select PHYLIB
|
||||||
@ -6,14 +6,14 @@ config AG71XX
|
|||||||
If you wish to compile a kernel for AR7XXX/91XXX and enable
|
If you wish to compile a kernel for AR7XXX/91XXX and enable
|
||||||
ethernet support, then you should always answer Y to this.
|
ethernet support, then you should always answer Y to this.
|
||||||
|
|
||||||
if AG71XX
|
if AG71XX_LEGACY
|
||||||
|
|
||||||
config AG71XX_DEBUG
|
config AG71XX_LEGACY_DEBUG
|
||||||
bool "Atheros AR71xx built-in ethernet driver debugging"
|
bool "Atheros AR71xx built-in ethernet driver debugging"
|
||||||
help
|
help
|
||||||
Atheros AR71xx built-in ethernet driver debugging messages.
|
Atheros AR71xx built-in ethernet driver debugging messages.
|
||||||
|
|
||||||
config AG71XX_DEBUG_FS
|
config AG71XX_LEGACY_DEBUG_FS
|
||||||
bool "Atheros AR71xx built-in ethernet driver debugfs support"
|
bool "Atheros AR71xx built-in ethernet driver debugfs support"
|
||||||
depends on DEBUG_FS
|
depends on DEBUG_FS
|
||||||
help
|
help
|
||||||
|
|||||||
@ -2,12 +2,12 @@
|
|||||||
# Makefile for the Atheros AR71xx built-in ethernet macs
|
# Makefile for the Atheros AR71xx built-in ethernet macs
|
||||||
#
|
#
|
||||||
|
|
||||||
ag71xx-y += ag71xx_main.o
|
ag71xx_legacy-y += ag71xx_main.o
|
||||||
ag71xx-y += ag71xx_gmac.o
|
ag71xx_legacy-y += ag71xx_gmac.o
|
||||||
ag71xx-y += ag71xx_ethtool.o
|
ag71xx_legacy-y += ag71xx_ethtool.o
|
||||||
ag71xx-y += ag71xx_phy.o
|
ag71xx_legacy-y += ag71xx_phy.o
|
||||||
|
|
||||||
ag71xx-$(CONFIG_AG71XX_DEBUG_FS) += ag71xx_debugfs.o
|
ag71xx_legacy-$(CONFIG_AG71XX_LEGACY_DEBUG_FS) += ag71xx_legacy_debugfs.o
|
||||||
|
|
||||||
obj-$(CONFIG_AG71XX) += ag71xx_mdio.o
|
obj-$(CONFIG_AG71XX_LEGACY) += ag71xx_legacy_mdio.o
|
||||||
obj-$(CONFIG_AG71XX) += ag71xx.o
|
obj-$(CONFIG_AG71XX_LEGACY) += ag71xx_legacy.o
|
||||||
|
|||||||
@ -40,7 +40,7 @@
|
|||||||
#include <asm/mach-ath79/ar71xx_regs.h>
|
#include <asm/mach-ath79/ar71xx_regs.h>
|
||||||
#include <asm/mach-ath79/ath79.h>
|
#include <asm/mach-ath79/ath79.h>
|
||||||
|
|
||||||
#define AG71XX_DRV_NAME "ag71xx"
|
#define AG71XX_DRV_NAME "ag71xx-legacy"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* For our NAPI weight bigger does *NOT* mean better - it means more
|
* For our NAPI weight bigger does *NOT* mean better - it means more
|
||||||
@ -68,7 +68,7 @@
|
|||||||
#define AG71XX_TX_RING_SIZE_MAX 256
|
#define AG71XX_TX_RING_SIZE_MAX 256
|
||||||
#define AG71XX_RX_RING_SIZE_MAX 256
|
#define AG71XX_RX_RING_SIZE_MAX 256
|
||||||
|
|
||||||
#ifdef CONFIG_AG71XX_DEBUG
|
#ifdef CONFIG_AG71XX_LEGACY_DEBUG
|
||||||
#define DBG(fmt, args...) pr_debug(fmt, ## args)
|
#define DBG(fmt, args...) pr_debug(fmt, ## args)
|
||||||
#else
|
#else
|
||||||
#define DBG(fmt, args...) do {} while (0)
|
#define DBG(fmt, args...) do {} while (0)
|
||||||
@ -195,7 +195,7 @@ struct ag71xx {
|
|||||||
u32 pllreg[3];
|
u32 pllreg[3];
|
||||||
struct regmap *pllregmap;
|
struct regmap *pllregmap;
|
||||||
|
|
||||||
#ifdef CONFIG_AG71XX_DEBUG_FS
|
#ifdef CONFIG_AG71XX_LEGACY_DEBUG_FS
|
||||||
struct ag71xx_debug debug;
|
struct ag71xx_debug debug;
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
@ -425,7 +425,7 @@ static inline void ag71xx_int_disable(struct ag71xx *ag, u32 ints)
|
|||||||
ag71xx_cb(ag, AG71XX_REG_INT_ENABLE, ints);
|
ag71xx_cb(ag, AG71XX_REG_INT_ENABLE, ints);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_AG71XX_DEBUG_FS
|
#ifdef CONFIG_AG71XX_LEGACY_DEBUG_FS
|
||||||
int ag71xx_debugfs_root_init(void);
|
int ag71xx_debugfs_root_init(void);
|
||||||
void ag71xx_debugfs_root_exit(void);
|
void ag71xx_debugfs_root_exit(void);
|
||||||
int ag71xx_debugfs_init(struct ag71xx *ag);
|
int ag71xx_debugfs_init(struct ag71xx *ag);
|
||||||
@ -441,7 +441,7 @@ static inline void ag71xx_debugfs_update_int_stats(struct ag71xx *ag,
|
|||||||
u32 status) {}
|
u32 status) {}
|
||||||
static inline void ag71xx_debugfs_update_napi_stats(struct ag71xx *ag,
|
static inline void ag71xx_debugfs_update_napi_stats(struct ag71xx *ag,
|
||||||
int rx, int tx) {}
|
int rx, int tx) {}
|
||||||
#endif /* CONFIG_AG71XX_DEBUG_FS */
|
#endif /* CONFIG_AG71XX_LEGACY_DEBUG_FS */
|
||||||
|
|
||||||
int ag71xx_ar7240_init(struct ag71xx *ag, struct device_node *np);
|
int ag71xx_ar7240_init(struct ag71xx *ag, struct device_node *np);
|
||||||
void ag71xx_ar7240_cleanup(struct ag71xx *ag);
|
void ag71xx_ar7240_cleanup(struct ag71xx *ag);
|
||||||
|
|||||||
@ -241,7 +241,7 @@ static struct platform_driver ag71xx_mdio_driver = {
|
|||||||
.probe = ag71xx_mdio_probe,
|
.probe = ag71xx_mdio_probe,
|
||||||
.remove = ag71xx_mdio_remove,
|
.remove = ag71xx_mdio_remove,
|
||||||
.driver = {
|
.driver = {
|
||||||
.name = "ag71xx-mdio",
|
.name = "ag71xx-legacy-mdio",
|
||||||
.of_match_table = ag71xx_mdio_match,
|
.of_match_table = ag71xx_mdio_match,
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -20,8 +20,6 @@ CONFIG_MTD_SPI_NOR_USE_VARIABLE_ERASE=y
|
|||||||
CONFIG_MTD_SPLIT_EVA_FW=y
|
CONFIG_MTD_SPLIT_EVA_FW=y
|
||||||
CONFIG_NVMEM_SYSFS=y
|
CONFIG_NVMEM_SYSFS=y
|
||||||
CONFIG_NVMEM_U_BOOT_ENV=y
|
CONFIG_NVMEM_U_BOOT_ENV=y
|
||||||
CONFIG_PHY_AR7100_USB=y
|
|
||||||
CONFIG_PHY_AR7200_USB=y
|
|
||||||
CONFIG_REALTEK_PHY=y
|
CONFIG_REALTEK_PHY=y
|
||||||
CONFIG_REGMAP_I2C=y
|
CONFIG_REGMAP_I2C=y
|
||||||
CONFIG_REGULATOR_FIXED_VOLTAGE=y
|
CONFIG_REGULATOR_FIXED_VOLTAGE=y
|
||||||
|
|||||||
@ -35,8 +35,6 @@ CONFIG_NET_DSA=y
|
|||||||
CONFIG_NET_SWITCHDEV=y
|
CONFIG_NET_SWITCHDEV=y
|
||||||
# CONFIG_NVMEM_LAYOUT_MIKROTIK is not set
|
# CONFIG_NVMEM_LAYOUT_MIKROTIK is not set
|
||||||
CONFIG_PHYLINK=y
|
CONFIG_PHYLINK=y
|
||||||
CONFIG_PHY_AR7100_USB=y
|
|
||||||
CONFIG_PHY_AR7200_USB=y
|
|
||||||
CONFIG_REGULATOR_FIXED_VOLTAGE=y
|
CONFIG_REGULATOR_FIXED_VOLTAGE=y
|
||||||
CONFIG_SGL_ALLOC=y
|
CONFIG_SGL_ALLOC=y
|
||||||
CONFIG_SPI_RB4XX=y
|
CONFIG_SPI_RB4XX=y
|
||||||
|
|||||||
@ -18,7 +18,6 @@ CONFIG_MTD_UBI_BEB_LIMIT=20
|
|||||||
CONFIG_MTD_UBI_BLOCK=y
|
CONFIG_MTD_UBI_BLOCK=y
|
||||||
CONFIG_MTD_UBI_WL_THRESHOLD=4096
|
CONFIG_MTD_UBI_WL_THRESHOLD=4096
|
||||||
# CONFIG_PCI_AR71XX is not set
|
# CONFIG_PCI_AR71XX is not set
|
||||||
CONFIG_PHY_AR7200_USB=y
|
|
||||||
CONFIG_POWER_RESET=y
|
CONFIG_POWER_RESET=y
|
||||||
CONFIG_POWER_RESET_GPIO_RESTART=y
|
CONFIG_POWER_RESET_GPIO_RESTART=y
|
||||||
CONFIG_SGL_ALLOC=y
|
CONFIG_SGL_ALLOC=y
|
||||||
|
|||||||
@ -13,30 +13,22 @@ Submitted-by: John Crispin <john@phrozen.org>
|
|||||||
|
|
||||||
--- a/drivers/net/ethernet/atheros/Kconfig
|
--- a/drivers/net/ethernet/atheros/Kconfig
|
||||||
+++ b/drivers/net/ethernet/atheros/Kconfig
|
+++ b/drivers/net/ethernet/atheros/Kconfig
|
||||||
@@ -17,14 +17,7 @@ config NET_VENDOR_ATHEROS
|
@@ -26,6 +26,8 @@ config AG71XX
|
||||||
|
If you wish to compile a kernel for AR7XXX/91XXX and enable
|
||||||
|
ethernet support, then you should always answer Y to this.
|
||||||
|
|
||||||
if NET_VENDOR_ATHEROS
|
|
||||||
|
|
||||||
-config AG71XX
|
|
||||||
- tristate "Atheros AR7XXX/AR9XXX built-in ethernet mac support"
|
|
||||||
- depends on ATH79
|
|
||||||
- select PHYLINK
|
|
||||||
- imply NET_SELFTESTS
|
|
||||||
- help
|
|
||||||
- If you wish to compile a kernel for AR7XXX/91XXX and enable
|
|
||||||
- ethernet support, then you should always answer Y to this.
|
|
||||||
+source "drivers/net/ethernet/atheros/ag71xx/Kconfig"
|
+source "drivers/net/ethernet/atheros/ag71xx/Kconfig"
|
||||||
|
+
|
||||||
config ATL2
|
config ATL2
|
||||||
tristate "Atheros L2 Fast Ethernet support"
|
tristate "Atheros L2 Fast Ethernet support"
|
||||||
|
depends on PCI
|
||||||
--- a/drivers/net/ethernet/atheros/Makefile
|
--- a/drivers/net/ethernet/atheros/Makefile
|
||||||
+++ b/drivers/net/ethernet/atheros/Makefile
|
+++ b/drivers/net/ethernet/atheros/Makefile
|
||||||
@@ -3,7 +3,7 @@
|
@@ -4,6 +4,7 @@
|
||||||
# Makefile for the Atheros network device drivers.
|
|
||||||
#
|
#
|
||||||
|
|
||||||
-obj-$(CONFIG_AG71XX) += ag71xx.o
|
obj-$(CONFIG_AG71XX) += ag71xx.o
|
||||||
+obj-$(CONFIG_AG71XX) += ag71xx/
|
+obj-$(CONFIG_AG71XX_LEGACY) += ag71xx/
|
||||||
obj-$(CONFIG_ATL1) += atlx/
|
obj-$(CONFIG_ATL1) += atlx/
|
||||||
obj-$(CONFIG_ATL2) += atlx/
|
obj-$(CONFIG_ATL2) += atlx/
|
||||||
obj-$(CONFIG_ATL1E) += atl1e/
|
obj-$(CONFIG_ATL1E) += atl1e/
|
||||||
|
|||||||
@ -8,6 +8,4 @@ CONFIG_NET_SWITCHDEV=y
|
|||||||
CONFIG_NVMEM_SYSFS=y
|
CONFIG_NVMEM_SYSFS=y
|
||||||
CONFIG_NVMEM_U_BOOT_ENV=y
|
CONFIG_NVMEM_U_BOOT_ENV=y
|
||||||
CONFIG_PHYLINK=y
|
CONFIG_PHYLINK=y
|
||||||
CONFIG_PHY_AR7100_USB=y
|
|
||||||
CONFIG_PHY_AR7200_USB=y
|
|
||||||
CONFIG_REGULATOR_FIXED_VOLTAGE=y
|
CONFIG_REGULATOR_FIXED_VOLTAGE=y
|
||||||
|
|||||||
@ -0,0 +1,75 @@
|
|||||||
|
From 6a804fb72de56d6a99b799f565ae45f2cec7cd55 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Sridharan S N <quic_sridsn@quicinc.com>
|
||||||
|
Date: Thu, 12 Oct 2023 12:11:34 +0530
|
||||||
|
Subject: mtd: spinand: winbond: add support for serial NAND flash
|
||||||
|
|
||||||
|
Add support for W25N01JW, W25N02JWZEIF, W25N512GW,
|
||||||
|
W25N02KWZEIR and W25N01GWZEIG.
|
||||||
|
|
||||||
|
W25N02KWZEIR has 8b/512b on-die ECC capability and other
|
||||||
|
four has 4b/512b on-die ECC capability.
|
||||||
|
|
||||||
|
Signed-off-by: Sridharan S N <quic_sridsn@quicinc.com>
|
||||||
|
Signed-off-by: Md Sadre Alam <quic_mdalam@quicinc.com>
|
||||||
|
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
|
||||||
|
Link: https://lore.kernel.org/linux-mtd/20231012064134.4068621-1-quic_sridsn@quicinc.com
|
||||||
|
---
|
||||||
|
drivers/mtd/nand/spi/winbond.c | 45 ++++++++++++++++++++++++++++++++++++++++++
|
||||||
|
1 file changed, 45 insertions(+)
|
||||||
|
|
||||||
|
(limited to 'drivers/mtd/nand/spi/winbond.c')
|
||||||
|
|
||||||
|
--- a/drivers/mtd/nand/spi/winbond.c
|
||||||
|
+++ b/drivers/mtd/nand/spi/winbond.c
|
||||||
|
@@ -169,6 +169,51 @@ static const struct spinand_info winbond
|
||||||
|
&update_cache_variants),
|
||||||
|
0,
|
||||||
|
SPINAND_ECCINFO(&w25n02kv_ooblayout, w25n02kv_ecc_get_status)),
|
||||||
|
+ SPINAND_INFO("W25N01JW",
|
||||||
|
+ SPINAND_ID(SPINAND_READID_METHOD_OPCODE_DUMMY, 0xbc, 0x21),
|
||||||
|
+ NAND_MEMORG(1, 2048, 64, 64, 1024, 20, 1, 1, 1),
|
||||||
|
+ NAND_ECCREQ(4, 512),
|
||||||
|
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
|
||||||
|
+ &write_cache_variants,
|
||||||
|
+ &update_cache_variants),
|
||||||
|
+ 0,
|
||||||
|
+ SPINAND_ECCINFO(&w25m02gv_ooblayout, w25n02kv_ecc_get_status)),
|
||||||
|
+ SPINAND_INFO("W25N02JWZEIF",
|
||||||
|
+ SPINAND_ID(SPINAND_READID_METHOD_OPCODE_DUMMY, 0xbf, 0x22),
|
||||||
|
+ NAND_MEMORG(1, 2048, 64, 64, 1024, 20, 1, 2, 1),
|
||||||
|
+ NAND_ECCREQ(4, 512),
|
||||||
|
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
|
||||||
|
+ &write_cache_variants,
|
||||||
|
+ &update_cache_variants),
|
||||||
|
+ 0,
|
||||||
|
+ SPINAND_ECCINFO(&w25n02kv_ooblayout, w25n02kv_ecc_get_status)),
|
||||||
|
+ SPINAND_INFO("W25N512GW",
|
||||||
|
+ SPINAND_ID(SPINAND_READID_METHOD_OPCODE_DUMMY, 0xba, 0x20),
|
||||||
|
+ NAND_MEMORG(1, 2048, 64, 64, 512, 10, 1, 1, 1),
|
||||||
|
+ NAND_ECCREQ(4, 512),
|
||||||
|
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
|
||||||
|
+ &write_cache_variants,
|
||||||
|
+ &update_cache_variants),
|
||||||
|
+ 0,
|
||||||
|
+ SPINAND_ECCINFO(&w25n02kv_ooblayout, w25n02kv_ecc_get_status)),
|
||||||
|
+ SPINAND_INFO("W25N02KWZEIR",
|
||||||
|
+ SPINAND_ID(SPINAND_READID_METHOD_OPCODE_DUMMY, 0xba, 0x22),
|
||||||
|
+ NAND_MEMORG(1, 2048, 128, 64, 2048, 40, 1, 1, 1),
|
||||||
|
+ NAND_ECCREQ(8, 512),
|
||||||
|
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
|
||||||
|
+ &write_cache_variants,
|
||||||
|
+ &update_cache_variants),
|
||||||
|
+ 0,
|
||||||
|
+ SPINAND_ECCINFO(&w25n02kv_ooblayout, w25n02kv_ecc_get_status)),
|
||||||
|
+ SPINAND_INFO("W25N01GWZEIG",
|
||||||
|
+ SPINAND_ID(SPINAND_READID_METHOD_OPCODE_DUMMY, 0xba, 0x21),
|
||||||
|
+ NAND_MEMORG(1, 2048, 64, 64, 1024, 20, 1, 1, 1),
|
||||||
|
+ NAND_ECCREQ(4, 512),
|
||||||
|
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
|
||||||
|
+ &write_cache_variants,
|
||||||
|
+ &update_cache_variants),
|
||||||
|
+ 0,
|
||||||
|
+ SPINAND_ECCINFO(&w25m02gv_ooblayout, w25n02kv_ecc_get_status)),
|
||||||
|
};
|
||||||
|
|
||||||
|
static int winbond_spinand_init(struct spinand_device *spinand)
|
||||||
@ -0,0 +1,53 @@
|
|||||||
|
From e0ccf861b80698a5cc6f97c89bf8d5761f465fce Mon Sep 17 00:00:00 2001
|
||||||
|
From: Zhi-Jun You <hujy652@gmail.com>
|
||||||
|
Date: Sun, 7 Jan 2024 14:41:20 +0000
|
||||||
|
Subject: mtd: spinand: winbond: add support for W25N04KV
|
||||||
|
|
||||||
|
Add support for W25N04KV.
|
||||||
|
|
||||||
|
W25N04KV has 8-bit on-die ECC.
|
||||||
|
|
||||||
|
Signed-off-by: Zhi-Jun You <hujy652@gmail.com>
|
||||||
|
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
|
||||||
|
Link: https://lore.kernel.org/linux-mtd/20240107144120.532-1-hujy652@gmail.com
|
||||||
|
---
|
||||||
|
drivers/mtd/nand/spi/winbond.c | 12 ++++++++++++
|
||||||
|
1 file changed, 12 insertions(+)
|
||||||
|
|
||||||
|
(limited to 'drivers/mtd/nand/spi/winbond.c')
|
||||||
|
|
||||||
|
--- a/drivers/mtd/nand/spi/winbond.c
|
||||||
|
+++ b/drivers/mtd/nand/spi/winbond.c
|
||||||
|
@@ -15,6 +15,8 @@
|
||||||
|
|
||||||
|
#define WINBOND_CFG_BUF_READ BIT(3)
|
||||||
|
|
||||||
|
+#define W25N04KV_STATUS_ECC_5_8_BITFLIPS (3 << 4)
|
||||||
|
+
|
||||||
|
static SPINAND_OP_VARIANTS(read_cache_variants,
|
||||||
|
SPINAND_PAGE_READ_FROM_CACHE_QUADIO_OP(0, 2, NULL, 0),
|
||||||
|
SPINAND_PAGE_READ_FROM_CACHE_X4_OP(0, 1, NULL, 0),
|
||||||
|
@@ -118,6 +120,7 @@ static int w25n02kv_ecc_get_status(struc
|
||||||
|
return -EBADMSG;
|
||||||
|
|
||||||
|
case STATUS_ECC_HAS_BITFLIPS:
|
||||||
|
+ case W25N04KV_STATUS_ECC_5_8_BITFLIPS:
|
||||||
|
/*
|
||||||
|
* Let's try to retrieve the real maximum number of bitflips
|
||||||
|
* in order to avoid forcing the wear-leveling layer to move
|
||||||
|
@@ -214,6 +217,15 @@ static const struct spinand_info winbond
|
||||||
|
&update_cache_variants),
|
||||||
|
0,
|
||||||
|
SPINAND_ECCINFO(&w25m02gv_ooblayout, w25n02kv_ecc_get_status)),
|
||||||
|
+ SPINAND_INFO("W25N04KV",
|
||||||
|
+ SPINAND_ID(SPINAND_READID_METHOD_OPCODE_DUMMY, 0xaa, 0x23),
|
||||||
|
+ NAND_MEMORG(1, 2048, 128, 64, 4096, 40, 2, 1, 1),
|
||||||
|
+ NAND_ECCREQ(8, 512),
|
||||||
|
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
|
||||||
|
+ &write_cache_variants,
|
||||||
|
+ &update_cache_variants),
|
||||||
|
+ 0,
|
||||||
|
+ SPINAND_ECCINFO(&w25n02kv_ooblayout, w25n02kv_ecc_get_status)),
|
||||||
|
};
|
||||||
|
|
||||||
|
static int winbond_spinand_init(struct spinand_device *spinand)
|
||||||
@ -14,7 +14,7 @@ Signed-off-by: Robert Marko <robimarko@gmail.com>
|
|||||||
|
|
||||||
--- a/drivers/mtd/nand/spi/winbond.c
|
--- a/drivers/mtd/nand/spi/winbond.c
|
||||||
+++ b/drivers/mtd/nand/spi/winbond.c
|
+++ b/drivers/mtd/nand/spi/winbond.c
|
||||||
@@ -74,6 +74,18 @@ static int w25m02gv_select_target(struct
|
@@ -76,6 +76,18 @@ static int w25m02gv_select_target(struct
|
||||||
return spi_mem_exec_op(spinand->spimem, &op);
|
return spi_mem_exec_op(spinand->spimem, &op);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -33,7 +33,7 @@ Signed-off-by: Robert Marko <robimarko@gmail.com>
|
|||||||
static int w25n02kv_ooblayout_ecc(struct mtd_info *mtd, int section,
|
static int w25n02kv_ooblayout_ecc(struct mtd_info *mtd, int section,
|
||||||
struct mtd_oob_region *region)
|
struct mtd_oob_region *region)
|
||||||
{
|
{
|
||||||
@@ -98,6 +110,11 @@ static int w25n02kv_ooblayout_free(struc
|
@@ -100,6 +112,11 @@ static int w25n02kv_ooblayout_free(struc
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -45,7 +45,7 @@ Signed-off-by: Robert Marko <robimarko@gmail.com>
|
|||||||
static const struct mtd_ooblayout_ops w25n02kv_ooblayout = {
|
static const struct mtd_ooblayout_ops w25n02kv_ooblayout = {
|
||||||
.ecc = w25n02kv_ooblayout_ecc,
|
.ecc = w25n02kv_ooblayout_ecc,
|
||||||
.free = w25n02kv_ooblayout_free,
|
.free = w25n02kv_ooblayout_free,
|
||||||
@@ -160,6 +177,15 @@ static const struct spinand_info winbond
|
@@ -163,6 +180,15 @@ static const struct spinand_info winbond
|
||||||
&update_cache_variants),
|
&update_cache_variants),
|
||||||
0,
|
0,
|
||||||
SPINAND_ECCINFO(&w25m02gv_ooblayout, NULL)),
|
SPINAND_ECCINFO(&w25m02gv_ooblayout, NULL)),
|
||||||
|
|||||||
@ -0,0 +1,25 @@
|
|||||||
|
From 440415703692af4548e836832ef0434e87fbc357 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Oskari Lemmela <oskari@lemmela.net>
|
||||||
|
Date: Sat, 13 Jul 2024 18:56:59 +0300
|
||||||
|
Subject: [PATCH] net: ag71xx: fix qca9530 and qca9550 mdio probe
|
||||||
|
|
||||||
|
Newer QCA9530 and QCA9550 devices should use same div table as AR933X.
|
||||||
|
|
||||||
|
Fixes: d51b6ce441d3 ("net: ethernet: add ag71xx driver")
|
||||||
|
Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
|
||||||
|
---
|
||||||
|
drivers/net/ethernet/atheros/ag71xx.c | 3 ++-
|
||||||
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
--- a/drivers/net/ethernet/atheros/ag71xx.c
|
||||||
|
+++ b/drivers/net/ethernet/atheros/ag71xx.c
|
||||||
|
@@ -638,7 +638,8 @@ static int ag71xx_mdio_get_divider(struc
|
||||||
|
if (!ref_clock)
|
||||||
|
return -EINVAL;
|
||||||
|
|
||||||
|
- if (ag71xx_is(ag, AR9330) || ag71xx_is(ag, AR9340)) {
|
||||||
|
+ if (ag71xx_is(ag, AR9330) || ag71xx_is(ag, AR9340) ||
|
||||||
|
+ ag71xx_is(ag, QCA9530) || ag71xx_is(ag, QCA9550)) {
|
||||||
|
table = ar933x_mdio_div_table;
|
||||||
|
ndivs = ARRAY_SIZE(ar933x_mdio_div_table);
|
||||||
|
} else if (ag71xx_is(ag, AR7240)) {
|
||||||
@ -751,7 +751,11 @@ define Device/glinet_gl-x3000-xe3000-common
|
|||||||
DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware mkf2fs \
|
DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware mkf2fs \
|
||||||
kmod-fs-f2fs kmod-hwmon-pwmfan kmod-usb3 kmod-usb-serial-option \
|
kmod-fs-f2fs kmod-hwmon-pwmfan kmod-usb3 kmod-usb-serial-option \
|
||||||
kmod-usb-storage kmod-usb-net-qmi-wwan uqmi automount
|
kmod-usb-storage kmod-usb-net-qmi-wwan uqmi automount
|
||||||
|
IMAGES += factory.bin
|
||||||
|
IMAGE/factory.bin := append-kernel | pad-to 32M | append-rootfs
|
||||||
IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
|
IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
|
||||||
|
ARTIFACTS := preloader.bin bl31-uboot.fip
|
||||||
|
ARTIFACT/preloader.bin := mt7981-bl2 emmc-ddr4
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Device/glinet_gl-x3000
|
define Device/glinet_gl-x3000
|
||||||
@ -759,6 +763,7 @@ define Device/glinet_gl-x3000
|
|||||||
DEVICE_DTS := mt7981a-glinet-gl-x3000
|
DEVICE_DTS := mt7981a-glinet-gl-x3000
|
||||||
SUPPORTED_DEVICES := glinet,gl-x3000
|
SUPPORTED_DEVICES := glinet,gl-x3000
|
||||||
$(call Device/glinet_gl-x3000-xe3000-common)
|
$(call Device/glinet_gl-x3000-xe3000-common)
|
||||||
|
ARTIFACT/bl31-uboot.fip := mt7981-bl31-uboot glinet_gl-x3000
|
||||||
endef
|
endef
|
||||||
TARGET_DEVICES += glinet_gl-x3000
|
TARGET_DEVICES += glinet_gl-x3000
|
||||||
|
|
||||||
@ -767,6 +772,7 @@ define Device/glinet_gl-xe3000
|
|||||||
DEVICE_DTS := mt7981a-glinet-gl-xe3000
|
DEVICE_DTS := mt7981a-glinet-gl-xe3000
|
||||||
SUPPORTED_DEVICES := glinet,gl-xe3000
|
SUPPORTED_DEVICES := glinet,gl-xe3000
|
||||||
$(call Device/glinet_gl-x3000-xe3000-common)
|
$(call Device/glinet_gl-x3000-xe3000-common)
|
||||||
|
ARTIFACT/bl31-uboot.fip := mt7981-bl31-uboot glinet_gl-xe3000
|
||||||
endef
|
endef
|
||||||
TARGET_DEVICES += glinet_gl-xe3000
|
TARGET_DEVICES += glinet_gl-xe3000
|
||||||
|
|
||||||
|
|||||||
@ -1,31 +1,129 @@
|
|||||||
. /lib/functions.sh
|
. /lib/functions.sh
|
||||||
|
|
||||||
fortinet_fwinfo_blocks() {
|
fortinet_bswap32() {
|
||||||
|
local val="$(printf %08x $(($1)))"
|
||||||
|
|
||||||
|
# swap and print in hex
|
||||||
|
echo "0x${val:6:2}${val:4:2}${val:2:2}${val:0:2}"
|
||||||
|
}
|
||||||
|
|
||||||
|
fortinet_by2bl() {
|
||||||
|
local blks="$(($1 / 0x200))"
|
||||||
|
[ $(($1 % 0x200)) -gt 0 ] && blks=$((blks + 1))
|
||||||
|
|
||||||
|
printf "0x%08x" $blks
|
||||||
|
}
|
||||||
|
|
||||||
|
fortinet_bl2by() {
|
||||||
|
printf "0x%08x" $(($1 * 0x200))
|
||||||
|
}
|
||||||
|
|
||||||
|
fortinet_build_partmap() {
|
||||||
|
local new="$1" old="$2"
|
||||||
|
local len="${old%%@*}" ofs="${old##*@}"
|
||||||
|
|
||||||
|
case "$new" in
|
||||||
|
@*) ofs="$(fortinet_by2bl ${new##@})" ;; # "@<offset>"
|
||||||
|
|
||||||
|
*@*) len="$(fortinet_by2bl ${new%%@*})" # "<length>@<offset>"
|
||||||
|
ofs="$(fortinet_by2bl ${new##*@})" ;;
|
||||||
|
|
||||||
|
"") ;; # "" (empty)
|
||||||
|
|
||||||
|
*) len="$(fortinet_by2bl ${new%%@*})" ;; # "<length>"
|
||||||
|
esac
|
||||||
|
|
||||||
|
# print N blocks of length/offset in dec
|
||||||
|
echo "${len}@${ofs}"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Update firmware information in "firmware-info" partition
|
||||||
|
#
|
||||||
|
# parameters:
|
||||||
|
# $1: image index (0/1)
|
||||||
|
# $2: new image name (up to 32 characters)
|
||||||
|
# $3: length and/or offset for kernel (bytes)
|
||||||
|
# $4: length and/or offset for rootfs (bytes)
|
||||||
|
#
|
||||||
|
# Note: $3 and $4 support multiple formats:
|
||||||
|
#
|
||||||
|
# - <length>@<offset>: set <length> and <rootfs>
|
||||||
|
# - <length> : set <length> and keep the current offset
|
||||||
|
# - @<offset> : set <offset> and keep the current length
|
||||||
|
# - "" (empty) : keep the current length and offset
|
||||||
|
fortinet_update_fwinfo() {
|
||||||
local fwinfo_mtd="$(find_mtd_part firmware-info)"
|
local fwinfo_mtd="$(find_mtd_part firmware-info)"
|
||||||
local offset="$1"
|
local index="$1"
|
||||||
local len="$2"
|
local name="$2"
|
||||||
local blks
|
local offset
|
||||||
|
local old_kr
|
||||||
|
local old new tmp part pos
|
||||||
|
local output
|
||||||
|
|
||||||
if [ -z "$fwinfo_mtd" ]; then
|
if [ -z "$fwinfo_mtd" ]; then
|
||||||
echo "WARN: MTD device \"firmware-info\" not found"
|
echo "ERROR: MTD device \"firmware-info\" not found"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
blks=$((len / 0x200))
|
# Image Name
|
||||||
[ $((len % 0x200)) -gt 0 ] && blks=$((blks + 1))
|
case "$index" in
|
||||||
blks=$(printf "%04x" $blks)
|
0) offset=0x10 ;;
|
||||||
printf "fwinfo: offset-> 0x%x, blocks-> 0x%s (len: 0x%08x)\n" \
|
1) offset=0x30 ;;
|
||||||
$offset $blks $len
|
*) echo "ERROR: invalid image index specified!"; return 1 ;;
|
||||||
|
esac
|
||||||
|
|
||||||
printf "\x${blks:2:2}\x${blks:0:2}" | \
|
printf "Image Index: %d\n" $index
|
||||||
dd bs=2 count=1 seek=$((offset / 2)) conv=notrunc of=${fwinfo_mtd}
|
|
||||||
|
old="$(dd bs=16 count=2 skip=$((offset / 16)) if=$fwinfo_mtd 2>/dev/null)"
|
||||||
|
printf "Image Name : \"%s\"\n" "$old"
|
||||||
|
if [ -n "$name" ]; then
|
||||||
|
echo -n "$name" | \
|
||||||
|
dd bs=32 count=1 oflag=seek_bytes seek=$((offset)) \
|
||||||
|
conv=sync,notrunc of=$fwinfo_mtd 2>/dev/null
|
||||||
|
printf " --> \"%s\"\n\n" "$name"
|
||||||
|
else
|
||||||
|
printf "\n"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# length/offset values of kernel/rootfs
|
||||||
|
case "$index" in
|
||||||
|
0) offset=0x180 ;;
|
||||||
|
1) offset=0x190 ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# <kernel offset:4><kernel length:4><rootfs offset:4><rootfs length:4>
|
||||||
|
old_kr="$(hexdump -n 16 -v -s $((offset)) -e '1/4 "%08x"' $fwinfo_mtd)"
|
||||||
|
|
||||||
|
pos=0
|
||||||
|
for part in kernel rootfs; do
|
||||||
|
old="0x${old_kr:$((8 + pos)):8}@0x${old_kr:$((0 + pos)):8}"
|
||||||
|
new="$(fortinet_build_partmap "$3" "$old")"
|
||||||
|
shift
|
||||||
|
|
||||||
|
printf " %s:\n" $part
|
||||||
|
printf " old: 0x%08x@0x%08x\n" \
|
||||||
|
$(fortinet_bl2by ${old%%@*}) $(fortinet_bl2by ${old##*@})
|
||||||
|
printf " new: 0x%08x@0x%08x\n\n" \
|
||||||
|
$(fortinet_bl2by ${new%%@*}) $(fortinet_bl2by ${new##*@})
|
||||||
|
|
||||||
|
tmp="$(fortinet_bswap32 ${new%%@*})@$(fortinet_bswap32 ${new##*@})"
|
||||||
|
new="$(echo $tmp | sed 's/0x\([0-9a-f]\{8\}\)@0x\([0-9a-f]\{8\}\)/\2\1/')"
|
||||||
|
output="${output}${new}"
|
||||||
|
|
||||||
|
pos=$((pos + 16))
|
||||||
|
done
|
||||||
|
|
||||||
|
data_2bin "$output" | \
|
||||||
|
dd bs=16 count=1 seek=$((offset / 16)) conv=notrunc \
|
||||||
|
of=$fwinfo_mtd 2>/dev/null
|
||||||
}
|
}
|
||||||
|
|
||||||
fortinet_do_upgrade() {
|
fortinet_do_upgrade() {
|
||||||
local board_dir="$(tar tf "$1" | grep -m 1 '^sysupgrade-.*/$')"
|
local board_dir="$(tar tf "$1" | grep -m 1 '^sysupgrade-.*/$')"
|
||||||
local kern_mtd="$(find_mtd_part kernel)"
|
local kern_mtd="$(find_mtd_part kernel)"
|
||||||
local root_mtd="$(find_mtd_part rootfs)"
|
local root_mtd="$(find_mtd_part rootfs)"
|
||||||
local kern_len root_len
|
local kern_len kern_ofs root_len root_ofs
|
||||||
|
local imgname
|
||||||
|
|
||||||
board_dir="${board_dir%/}"
|
board_dir="${board_dir%/}"
|
||||||
|
|
||||||
@ -34,6 +132,14 @@ fortinet_do_upgrade() {
|
|||||||
umount -a
|
umount -a
|
||||||
reboot -f
|
reboot -f
|
||||||
fi
|
fi
|
||||||
|
kern_ofs=$(cat /sys/class/mtd/${kern_mtd//\/dev\/mtdblock/mtd}/offset)
|
||||||
|
root_ofs=$(cat /sys/class/mtd/${root_mtd//\/dev\/mtdblock/mtd}/offset)
|
||||||
|
|
||||||
|
if [ -z "$kern_ofs" ] || [ -z "$root_ofs" ]; then
|
||||||
|
echo "ERROR: failed to get offset of kernel or rootfs"
|
||||||
|
umount -a
|
||||||
|
reboot -f
|
||||||
|
fi
|
||||||
|
|
||||||
kern_len=$( (tar xOf "$1" "$board_dir/kernel" | wc -c) 2> /dev/null)
|
kern_len=$( (tar xOf "$1" "$board_dir/kernel" | wc -c) 2> /dev/null)
|
||||||
root_len=$( (tar xOf "$1" "$board_dir/root" | wc -c) 2> /dev/null)
|
root_len=$( (tar xOf "$1" "$board_dir/root" | wc -c) 2> /dev/null)
|
||||||
@ -44,8 +150,34 @@ fortinet_do_upgrade() {
|
|||||||
reboot -f
|
reboot -f
|
||||||
fi
|
fi
|
||||||
|
|
||||||
fortinet_fwinfo_blocks "0x184" "$kern_len"
|
# try to load and parse /tmp/sysupgrade.meta for image name
|
||||||
fortinet_fwinfo_blocks "0x18c" "$root_len"
|
if [ -r "/tmp/sysupgrade.meta" ]; then
|
||||||
|
local key value
|
||||||
|
|
||||||
|
sed -e 's/, \{1,2\}\"/\n"/g' \
|
||||||
|
-e 's/{ \{1,2\}/\n/g' \
|
||||||
|
-e 's/ \{1,2\}}/\n/g' < /tmp/sysupgrade.meta \
|
||||||
|
> /tmp/sysupgrade.meta.tmp
|
||||||
|
while read key value; do
|
||||||
|
key="${key//\"/}"
|
||||||
|
value="${value//\"/}"
|
||||||
|
|
||||||
|
[ -z "$value" ] && continue
|
||||||
|
case "$key" in
|
||||||
|
dist:|\
|
||||||
|
version:|\
|
||||||
|
revision:) imgname="${imgname}$value " ;;
|
||||||
|
esac
|
||||||
|
done < /tmp/sysupgrade.meta.tmp
|
||||||
|
else
|
||||||
|
imgname="OpenWrt"
|
||||||
|
fi
|
||||||
|
|
||||||
|
fortinet_update_fwinfo 0 "${imgname%% }" \
|
||||||
|
"${kern_len}@${kern_ofs}" "${root_len}@${root_ofs}" || {
|
||||||
|
umount -a
|
||||||
|
reboot -f
|
||||||
|
}
|
||||||
|
|
||||||
tar xOf "$1" "$board_dir/kernel" | \
|
tar xOf "$1" "$board_dir/kernel" | \
|
||||||
mtd write - "kernel"
|
mtd write - "kernel"
|
||||||
|
|||||||
@ -3,7 +3,7 @@
|
|||||||
# Copyright (C) 2016 LEDE-Project.org
|
# Copyright (C) 2016 LEDE-Project.org
|
||||||
#
|
#
|
||||||
|
|
||||||
RAMFS_COPY_BIN='fw_printenv fw_setenv strings'
|
RAMFS_COPY_BIN='fw_printenv fw_setenv seq strings'
|
||||||
RAMFS_COPY_DATA='/etc/fw_env.config /var/lock/fw_printenv.lock'
|
RAMFS_COPY_DATA='/etc/fw_env.config /var/lock/fw_printenv.lock'
|
||||||
|
|
||||||
PART_NAME=firmware
|
PART_NAME=firmware
|
||||||
|
|||||||
@ -14,14 +14,14 @@
|
|||||||
gpios = <&gpio2 2 GPIO_ACTIVE_HIGH>;
|
gpios = <&gpio2 2 GPIO_ACTIVE_HIGH>;
|
||||||
color = <LED_COLOR_ID_AMBER>;
|
color = <LED_COLOR_ID_AMBER>;
|
||||||
function = LED_FUNCTION_SPEED_WAN;
|
function = LED_FUNCTION_SPEED_WAN;
|
||||||
linux,default-trigger = "mv88e6xxx-1:00:100Mbps";
|
linux,default-trigger = "mv88e6xxx-0:00:100Mbps";
|
||||||
};
|
};
|
||||||
|
|
||||||
led-15 {
|
led-15 {
|
||||||
gpios = <&gpio2 3 GPIO_ACTIVE_HIGH>;
|
gpios = <&gpio2 3 GPIO_ACTIVE_HIGH>;
|
||||||
color = <LED_COLOR_ID_GREEN>;
|
color = <LED_COLOR_ID_GREEN>;
|
||||||
function = LED_FUNCTION_SPEED_WAN;
|
function = LED_FUNCTION_SPEED_WAN;
|
||||||
linux,default-trigger = "mv88e6xxx-1:00:1Gbps";
|
linux,default-trigger = "mv88e6xxx-0:00:1Gbps";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@ -31,7 +31,7 @@
|
|||||||
color = <LED_COLOR_ID_AMBER>;
|
color = <LED_COLOR_ID_AMBER>;
|
||||||
function = LED_FUNCTION_SPEED_LAN;
|
function = LED_FUNCTION_SPEED_LAN;
|
||||||
function-enumerator = <5>;
|
function-enumerator = <5>;
|
||||||
linux,default-trigger = "mv88e6xxx-1:00:100Mbps";
|
linux,default-trigger = "mv88e6xxx-0:00:100Mbps";
|
||||||
};
|
};
|
||||||
|
|
||||||
led-17 {
|
led-17 {
|
||||||
@ -39,7 +39,7 @@
|
|||||||
color = <LED_COLOR_ID_GREEN>;
|
color = <LED_COLOR_ID_GREEN>;
|
||||||
function = LED_FUNCTION_SPEED_LAN;
|
function = LED_FUNCTION_SPEED_LAN;
|
||||||
function-enumerator = <5>;
|
function-enumerator = <5>;
|
||||||
linux,default-trigger = "mv88e6xxx-1:00:1Gbps";
|
linux,default-trigger = "mv88e6xxx-0:00:1Gbps";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@ -86,7 +86,7 @@
|
|||||||
color = <LED_COLOR_ID_GREEN>;
|
color = <LED_COLOR_ID_GREEN>;
|
||||||
function = LED_FUNCTION_SPEED_LAN;
|
function = LED_FUNCTION_SPEED_LAN;
|
||||||
function-enumerator = <4>;
|
function-enumerator = <4>;
|
||||||
linux,default-trigger = "mv88e6xxx-1:01:1Gbps";
|
linux,default-trigger = "mv88e6xxx-0:01:1Gbps";
|
||||||
};
|
};
|
||||||
|
|
||||||
led-7 {
|
led-7 {
|
||||||
@ -94,7 +94,7 @@
|
|||||||
color = <LED_COLOR_ID_AMBER>;
|
color = <LED_COLOR_ID_AMBER>;
|
||||||
function = LED_FUNCTION_SPEED_LAN;
|
function = LED_FUNCTION_SPEED_LAN;
|
||||||
function-enumerator = <4>;
|
function-enumerator = <4>;
|
||||||
linux,default-trigger = "mv88e6xxx-1:01:100Mbps";
|
linux,default-trigger = "mv88e6xxx-0:01:100Mbps";
|
||||||
};
|
};
|
||||||
|
|
||||||
led-8 {
|
led-8 {
|
||||||
@ -102,7 +102,7 @@
|
|||||||
color = <LED_COLOR_ID_AMBER>;
|
color = <LED_COLOR_ID_AMBER>;
|
||||||
function = LED_FUNCTION_SPEED_LAN;
|
function = LED_FUNCTION_SPEED_LAN;
|
||||||
function-enumerator = <3>;
|
function-enumerator = <3>;
|
||||||
linux,default-trigger = "mv88e6xxx-1:02:100Mbps";
|
linux,default-trigger = "mv88e6xxx-0:02:100Mbps";
|
||||||
};
|
};
|
||||||
|
|
||||||
led-9 {
|
led-9 {
|
||||||
@ -110,7 +110,7 @@
|
|||||||
color = <LED_COLOR_ID_GREEN>;
|
color = <LED_COLOR_ID_GREEN>;
|
||||||
function = LED_FUNCTION_SPEED_LAN;
|
function = LED_FUNCTION_SPEED_LAN;
|
||||||
function-enumerator = <3>;
|
function-enumerator = <3>;
|
||||||
linux,default-trigger = "mv88e6xxx-1:02:1Gbps";
|
linux,default-trigger = "mv88e6xxx-0:02:1Gbps";
|
||||||
};
|
};
|
||||||
|
|
||||||
led-10 {
|
led-10 {
|
||||||
@ -118,7 +118,7 @@
|
|||||||
color = <LED_COLOR_ID_GREEN>;
|
color = <LED_COLOR_ID_GREEN>;
|
||||||
function = LED_FUNCTION_SPEED_LAN;
|
function = LED_FUNCTION_SPEED_LAN;
|
||||||
function-enumerator = <1>;
|
function-enumerator = <1>;
|
||||||
linux,default-trigger = "mv88e6xxx-1:04:1Gbps";
|
linux,default-trigger = "mv88e6xxx-0:04:1Gbps";
|
||||||
};
|
};
|
||||||
|
|
||||||
led-11 {
|
led-11 {
|
||||||
@ -126,7 +126,7 @@
|
|||||||
color = <LED_COLOR_ID_AMBER>;
|
color = <LED_COLOR_ID_AMBER>;
|
||||||
function = LED_FUNCTION_SPEED_LAN;
|
function = LED_FUNCTION_SPEED_LAN;
|
||||||
function-enumerator = <1>;
|
function-enumerator = <1>;
|
||||||
linux,default-trigger = "mv88e6xxx-1:04:100Mbps";
|
linux,default-trigger = "mv88e6xxx-0:04:100Mbps";
|
||||||
};
|
};
|
||||||
|
|
||||||
led-12 {
|
led-12 {
|
||||||
@ -134,7 +134,7 @@
|
|||||||
color = <LED_COLOR_ID_GREEN>;
|
color = <LED_COLOR_ID_GREEN>;
|
||||||
function = LED_FUNCTION_SPEED_LAN;
|
function = LED_FUNCTION_SPEED_LAN;
|
||||||
function-enumerator = <2>;
|
function-enumerator = <2>;
|
||||||
linux,default-trigger = "mv88e6xxx-1:03:1Gbps";
|
linux,default-trigger = "mv88e6xxx-0:03:1Gbps";
|
||||||
};
|
};
|
||||||
|
|
||||||
led-13 {
|
led-13 {
|
||||||
@ -142,12 +142,12 @@
|
|||||||
color = <LED_COLOR_ID_AMBER>;
|
color = <LED_COLOR_ID_AMBER>;
|
||||||
function = LED_FUNCTION_SPEED_LAN;
|
function = LED_FUNCTION_SPEED_LAN;
|
||||||
function-enumerator = <2>;
|
function-enumerator = <2>;
|
||||||
linux,default-trigger = "mv88e6xxx-1:03:100Mbps";
|
linux,default-trigger = "mv88e6xxx-0:03:100Mbps";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
reg_usb_vbus: regulator-usb-vbus {
|
reg_usb_vbus: regulator-usb-vbus {
|
||||||
compatible = "fixed-regulator";
|
compatible = "regulator-fixed";
|
||||||
regulator-name = "usb-vbus";
|
regulator-name = "usb-vbus";
|
||||||
regulator-min-microvolt = <5000000>;
|
regulator-min-microvolt = <5000000>;
|
||||||
regulator-max-microvolt = <5000000>;
|
regulator-max-microvolt = <5000000>;
|
||||||
|
|||||||
@ -47,14 +47,14 @@
|
|||||||
function = LED_FUNCTION_WLAN_2GHZ;
|
function = LED_FUNCTION_WLAN_2GHZ;
|
||||||
color = <LED_COLOR_ID_GREEN>;
|
color = <LED_COLOR_ID_GREEN>;
|
||||||
gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
|
gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
|
||||||
linux,default-trigger = "phy0tpt";
|
linux,default-trigger = "phy1tpt";
|
||||||
};
|
};
|
||||||
|
|
||||||
led-5 {
|
led-5 {
|
||||||
function = LED_FUNCTION_WLAN_5GHZ;
|
function = LED_FUNCTION_WLAN_5GHZ;
|
||||||
color = <LED_COLOR_ID_GREEN>;
|
color = <LED_COLOR_ID_GREEN>;
|
||||||
gpios = <&gpio0 9 GPIO_ACTIVE_LOW>;
|
gpios = <&gpio0 9 GPIO_ACTIVE_LOW>;
|
||||||
linux,default-trigger = "phy1tpt";
|
linux,default-trigger = "phy0tpt";
|
||||||
};
|
};
|
||||||
|
|
||||||
led-6 {
|
led-6 {
|
||||||
|
|||||||
199
target/linux/ramips/dts/mt7621_dlink_dir-2150-r1.dts
Normal file
199
target/linux/ramips/dts/mt7621_dlink_dir-2150-r1.dts
Normal file
@ -0,0 +1,199 @@
|
|||||||
|
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||||
|
|
||||||
|
#include "mt7621.dtsi"
|
||||||
|
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include <dt-bindings/input/input.h>
|
||||||
|
#include <dt-bindings/leds/common.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
compatible = "dlink,dir-2150-r1", "mediatek,mt7621-soc";
|
||||||
|
model = "D-Link DIR-2150 R1";
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
label-mac-device = &gmac1;
|
||||||
|
led-boot = &led_power_orange;
|
||||||
|
led-failsafe = &led_power_white;
|
||||||
|
led-running = &led_power_white;
|
||||||
|
led-upgrade = &led_net_orange;
|
||||||
|
};
|
||||||
|
|
||||||
|
keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
|
||||||
|
reset {
|
||||||
|
label = "reset";
|
||||||
|
gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,code = <KEY_RESTART>;
|
||||||
|
};
|
||||||
|
|
||||||
|
wps {
|
||||||
|
label = "wps";
|
||||||
|
gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,code = <KEY_WPS_BUTTON>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
|
||||||
|
led_power_orange: led-0 {
|
||||||
|
function = LED_FUNCTION_POWER;
|
||||||
|
color = <LED_COLOR_ID_ORANGE>;
|
||||||
|
gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
|
||||||
|
led_power_white: led-1 {
|
||||||
|
function = LED_FUNCTION_POWER;
|
||||||
|
color = <LED_COLOR_ID_WHITE>;
|
||||||
|
gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
|
||||||
|
led_net_orange: led-2 {
|
||||||
|
function = LED_FUNCTION_WAN;
|
||||||
|
color = <LED_COLOR_ID_ORANGE>;
|
||||||
|
gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
|
||||||
|
led-3 {
|
||||||
|
function = LED_FUNCTION_WAN;
|
||||||
|
color = <LED_COLOR_ID_WHITE>;
|
||||||
|
gpios = <&gpio 3 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&nand {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
partitions {
|
||||||
|
compatible = "fixed-partitions";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
|
||||||
|
partition@0 {
|
||||||
|
label = "Bootloader";
|
||||||
|
reg = <0x0 0x80000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
partition@80000 {
|
||||||
|
label = "config";
|
||||||
|
reg = <0x80000 0x80000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
partition@100000 {
|
||||||
|
label = "factory";
|
||||||
|
reg = <0x100000 0x40000>;
|
||||||
|
read-only;
|
||||||
|
|
||||||
|
nvmem-layout {
|
||||||
|
compatible = "fixed-layout";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
|
||||||
|
eeprom_factory_0: eeprom@0 {
|
||||||
|
reg = <0x0 0x400>;
|
||||||
|
};
|
||||||
|
|
||||||
|
eeprom_factory_8000: eeprom@8000 {
|
||||||
|
reg = <0x8000 0x4da8>;
|
||||||
|
};
|
||||||
|
|
||||||
|
macaddr_factory_e006: macaddr@e006 {
|
||||||
|
compatible = "mac-base";
|
||||||
|
reg = <0xe006 0x6>;
|
||||||
|
#nvmem-cell-cells = <1>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
partition@140000 {
|
||||||
|
label = "firmware";
|
||||||
|
compatible = "denx,uimage";
|
||||||
|
reg = <0x140000 0x7E80000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie0 {
|
||||||
|
wifi@0,0 {
|
||||||
|
compatible = "mediatek,mt76";
|
||||||
|
reg = <0x0000 0 0 0 0>;
|
||||||
|
nvmem-cells = <&eeprom_factory_0>, <&macaddr_factory_e006 2>;
|
||||||
|
nvmem-cell-names = "eeprom", "mac-address";
|
||||||
|
ieee80211-freq-limit = <2400000 2500000>;
|
||||||
|
|
||||||
|
led {
|
||||||
|
led-active-low;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie1 {
|
||||||
|
wifi@0,0 {
|
||||||
|
compatible = "mediatek,mt76";
|
||||||
|
reg = <0x0000 0 0 0 0>;
|
||||||
|
nvmem-cells = <&eeprom_factory_8000>, <&macaddr_factory_e006 4>;
|
||||||
|
nvmem-cell-names = "eeprom", "mac-address";
|
||||||
|
ieee80211-freq-limit = <5000000 6000000>;
|
||||||
|
|
||||||
|
led {
|
||||||
|
led-active-low;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&gmac0 {
|
||||||
|
nvmem-cells = <&macaddr_factory_e006 1>;
|
||||||
|
nvmem-cell-names = "mac-address";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gmac1 {
|
||||||
|
status = "okay";
|
||||||
|
label = "wan";
|
||||||
|
phy-handle = <ðphy4>;
|
||||||
|
|
||||||
|
nvmem-cells = <&macaddr_factory_e006 0>;
|
||||||
|
nvmem-cell-names = "mac-address";
|
||||||
|
};
|
||||||
|
|
||||||
|
ðphy4 {
|
||||||
|
/delete-property/ interrupts;
|
||||||
|
};
|
||||||
|
|
||||||
|
&switch0 {
|
||||||
|
ports {
|
||||||
|
port@0 {
|
||||||
|
status = "okay";
|
||||||
|
label = "lan4";
|
||||||
|
};
|
||||||
|
|
||||||
|
port@1 {
|
||||||
|
status = "okay";
|
||||||
|
label = "lan3";
|
||||||
|
};
|
||||||
|
|
||||||
|
port@2 {
|
||||||
|
status = "okay";
|
||||||
|
label = "lan2";
|
||||||
|
};
|
||||||
|
|
||||||
|
port@3 {
|
||||||
|
status = "okay";
|
||||||
|
label = "lan1";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&state_default {
|
||||||
|
gpio {
|
||||||
|
groups = "i2c", "uart3", "jtag", "wdt";
|
||||||
|
function = "gpio";
|
||||||
|
};
|
||||||
|
};
|
||||||
69
target/linux/ramips/dts/mt7621_elecom_wmc-x1800gst.dts
Normal file
69
target/linux/ramips/dts/mt7621_elecom_wmc-x1800gst.dts
Normal file
@ -0,0 +1,69 @@
|
|||||||
|
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||||
|
|
||||||
|
#include "mt7621_elecom_wxc-x1800gsx.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
compatible = "elecom,wmc-x1800gst", "mediatek,mt7621-soc";
|
||||||
|
model = "ELECOM WMC-X1800GST";
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
label-mac-device = &gmac1;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&keys {
|
||||||
|
switch-ap {
|
||||||
|
label = "ap";
|
||||||
|
gpios = <&gpio 3 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,code = <BTN_0>;
|
||||||
|
linux,input-type = <EV_SW>;
|
||||||
|
};
|
||||||
|
|
||||||
|
switch-router {
|
||||||
|
label = "router";
|
||||||
|
gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,code = <BTN_1>;
|
||||||
|
linux,input-type = <EV_SW>;
|
||||||
|
};
|
||||||
|
|
||||||
|
switch-extender {
|
||||||
|
label = "extender";
|
||||||
|
gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,code = <BTN_2>;
|
||||||
|
linux,input-type = <EV_SW>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&gmac1 {
|
||||||
|
status = "okay";
|
||||||
|
label = "wan";
|
||||||
|
phy-handle = <ðphy0>;
|
||||||
|
|
||||||
|
nvmem-cells = <&macaddr_factory_3fffa>;
|
||||||
|
nvmem-cell-names = "mac-address";
|
||||||
|
};
|
||||||
|
|
||||||
|
ðphy0 {
|
||||||
|
/delete-property/ interrupts;
|
||||||
|
};
|
||||||
|
|
||||||
|
&state_default {
|
||||||
|
gpio {
|
||||||
|
groups = "i2c", "uart3", "uart2", "jtag", "wdt";
|
||||||
|
function = "gpio";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&wifi {
|
||||||
|
band@0 {
|
||||||
|
reg = <0>;
|
||||||
|
nvmem-cells = <&macaddr_factory_4 0>;
|
||||||
|
nvmem-cell-names = "mac-address";
|
||||||
|
};
|
||||||
|
|
||||||
|
band@1 {
|
||||||
|
reg = <1>;
|
||||||
|
nvmem-cells = <&macaddr_factory_4 1>;
|
||||||
|
nvmem-cell-names = "mac-address";
|
||||||
|
};
|
||||||
|
};
|
||||||
33
target/linux/ramips/dts/mt7621_elecom_wsc-x1800gs.dts
Normal file
33
target/linux/ramips/dts/mt7621_elecom_wsc-x1800gs.dts
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||||
|
|
||||||
|
#include "mt7621_elecom_wxc-x1800gsx.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
compatible = "elecom,wsc-x1800gs", "mediatek,mt7621-soc";
|
||||||
|
model = "ELECOM WSC-X1800GS";
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
label-mac-device = &wifi_band1;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&state_default {
|
||||||
|
gpio {
|
||||||
|
groups = "uart3", "uart2", "jtag", "wdt";
|
||||||
|
function = "gpio";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&wifi {
|
||||||
|
band@0 {
|
||||||
|
reg = <0>;
|
||||||
|
nvmem-cells = <&macaddr_factory_4 (-1)>;
|
||||||
|
nvmem-cell-names = "mac-address";
|
||||||
|
};
|
||||||
|
|
||||||
|
wifi_band1: band@1 {
|
||||||
|
reg = <1>;
|
||||||
|
nvmem-cells = <&macaddr_factory_4 0>;
|
||||||
|
nvmem-cell-names = "mac-address";
|
||||||
|
};
|
||||||
|
};
|
||||||
235
target/linux/ramips/dts/mt7621_elecom_wxc-x1800gsx.dtsi
Normal file
235
target/linux/ramips/dts/mt7621_elecom_wxc-x1800gsx.dtsi
Normal file
@ -0,0 +1,235 @@
|
|||||||
|
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||||
|
|
||||||
|
#include "mt7621.dtsi"
|
||||||
|
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include <dt-bindings/input/input.h>
|
||||||
|
#include <dt-bindings/leds/common.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
aliases {
|
||||||
|
led-boot = &led_power_green;
|
||||||
|
led-failsafe = &led_power_red;
|
||||||
|
led-running = &led_power_green;
|
||||||
|
led-upgrade = &led_power_green;
|
||||||
|
};
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
bootargs-override = "console=ttyS0,115200n8";
|
||||||
|
};
|
||||||
|
|
||||||
|
leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
|
||||||
|
led-0 {
|
||||||
|
gpios = <&gpio 5 GPIO_ACTIVE_HIGH>;
|
||||||
|
color = <LED_COLOR_ID_BLUE>;
|
||||||
|
function = LED_FUNCTION_WLAN_5GHZ;
|
||||||
|
};
|
||||||
|
|
||||||
|
led-1 {
|
||||||
|
gpios = <&gpio 6 GPIO_ACTIVE_HIGH>;
|
||||||
|
color = <LED_COLOR_ID_GREEN>;
|
||||||
|
function = LED_FUNCTION_WLAN_5GHZ;
|
||||||
|
linux,default-trigger = "phy1tpt";
|
||||||
|
};
|
||||||
|
|
||||||
|
led_power_green: led-2 {
|
||||||
|
gpios = <&gpio 7 GPIO_ACTIVE_HIGH>;
|
||||||
|
color = <LED_COLOR_ID_GREEN>;
|
||||||
|
function = LED_FUNCTION_POWER;
|
||||||
|
};
|
||||||
|
|
||||||
|
led-3 {
|
||||||
|
gpios = <&gpio 8 GPIO_ACTIVE_HIGH>;
|
||||||
|
color = <LED_COLOR_ID_BLUE>;
|
||||||
|
function = LED_FUNCTION_POWER;
|
||||||
|
};
|
||||||
|
|
||||||
|
led-4 {
|
||||||
|
gpios = <&gpio 9 GPIO_ACTIVE_HIGH>;
|
||||||
|
color = <LED_COLOR_ID_RED>;
|
||||||
|
function = LED_FUNCTION_WLAN_5GHZ;
|
||||||
|
};
|
||||||
|
|
||||||
|
led-5 {
|
||||||
|
gpios = <&gpio 10 GPIO_ACTIVE_HIGH>;
|
||||||
|
color = <LED_COLOR_ID_BLUE>;
|
||||||
|
function = LED_FUNCTION_WLAN_2GHZ;
|
||||||
|
};
|
||||||
|
|
||||||
|
led-6 {
|
||||||
|
gpios = <&gpio 11 GPIO_ACTIVE_HIGH>;
|
||||||
|
color = <LED_COLOR_ID_RED>;
|
||||||
|
function = LED_FUNCTION_WLAN_2GHZ;
|
||||||
|
};
|
||||||
|
|
||||||
|
led-7 {
|
||||||
|
gpios = <&gpio 12 GPIO_ACTIVE_HIGH>;
|
||||||
|
color = <LED_COLOR_ID_GREEN>;
|
||||||
|
function = LED_FUNCTION_WLAN_2GHZ;
|
||||||
|
linux,default-trigger = "phy0tpt";
|
||||||
|
};
|
||||||
|
|
||||||
|
led_power_red: led-8 {
|
||||||
|
gpios = <&gpio 16 GPIO_ACTIVE_HIGH>;
|
||||||
|
color = <LED_COLOR_ID_RED>;
|
||||||
|
function = LED_FUNCTION_POWER;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
keys: keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
|
||||||
|
button-reset {
|
||||||
|
label = "reset";
|
||||||
|
gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,code = <KEY_RESTART>;
|
||||||
|
};
|
||||||
|
|
||||||
|
button-wps {
|
||||||
|
label = "wps";
|
||||||
|
gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,code = <KEY_WPS_BUTTON>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&gmac0 {
|
||||||
|
nvmem-cells = <&macaddr_factory_3fff4>;
|
||||||
|
nvmem-cell-names = "mac-address";
|
||||||
|
};
|
||||||
|
|
||||||
|
&nand {
|
||||||
|
status = "okay";
|
||||||
|
pinctrl-0 = <&nand_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
|
||||||
|
partitions {
|
||||||
|
compatible = "fixed-partitions";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
|
||||||
|
partition@0 {
|
||||||
|
label = "u-boot";
|
||||||
|
reg = <0x0 0x80000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
partition@80000 {
|
||||||
|
label = "u-boot-env";
|
||||||
|
reg = <0x80000 0x80000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
partition@100000 {
|
||||||
|
label = "factory";
|
||||||
|
reg = <0x100000 0x80000>;
|
||||||
|
read-only;
|
||||||
|
|
||||||
|
nvmem-layout {
|
||||||
|
compatible = "fixed-layout";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
|
||||||
|
eeprom_factory_0: eeprom@0 {
|
||||||
|
reg = <0x0 0xe00>;
|
||||||
|
};
|
||||||
|
|
||||||
|
precal_factory_e10: precal@e10 {
|
||||||
|
reg = <0xe10 0x19c10>;
|
||||||
|
};
|
||||||
|
|
||||||
|
macaddr_factory_4: mac-address@4 {
|
||||||
|
compatible = "mac-base";
|
||||||
|
reg = <0x4 0x6>;
|
||||||
|
#nvmem-cell-cells = <1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
macaddr_factory_3fff4: mac-address@3fff4 {
|
||||||
|
reg = <0x3fff4 0x6>;
|
||||||
|
};
|
||||||
|
|
||||||
|
macaddr_factory_3fffa: mac-address@3fffa {
|
||||||
|
reg = <0x3fffa 0x6>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
/* stock: "firmware" */
|
||||||
|
partition@180000 {
|
||||||
|
reg = <0x180000 0xf00000>;
|
||||||
|
label = "kernel";
|
||||||
|
};
|
||||||
|
|
||||||
|
partition@1080000 {
|
||||||
|
label = "user_data";
|
||||||
|
reg = <0x1080000 0x500000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
partition@1580000 {
|
||||||
|
label = "tm_pattern";
|
||||||
|
reg = <0x1580000 0x500000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
partition@1a80000 {
|
||||||
|
label = "tm_key";
|
||||||
|
reg = <0x1a80000 0x100000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* stock: (unused) */
|
||||||
|
partition@1b80000 {
|
||||||
|
label = "ubi";
|
||||||
|
reg = <0x1b80000 0x6480000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie1 {
|
||||||
|
wifi: wifi@0,0 {
|
||||||
|
compatible = "mediatek,mt76";
|
||||||
|
reg = <0x0000 0 0 0 0>;
|
||||||
|
nvmem-cells = <&eeprom_factory_0>, <&precal_factory_e10>;
|
||||||
|
nvmem-cell-names = "eeprom", "precal";
|
||||||
|
mediatek,disable-radar-background;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&switch0 {
|
||||||
|
ports {
|
||||||
|
port@1 {
|
||||||
|
status = "okay";
|
||||||
|
label = "lan2";
|
||||||
|
};
|
||||||
|
|
||||||
|
port@2 {
|
||||||
|
status = "okay";
|
||||||
|
label = "lan1";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&state_default {
|
||||||
|
gpio {
|
||||||
|
groups = "i2c", "uart3", "uart2", "jtag", "wdt";
|
||||||
|
function = "gpio";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&uartlite {
|
||||||
|
pinctrl-0 = <&uart1_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
};
|
||||||
|
|
||||||
|
&xhci {
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
142
target/linux/ramips/dts/mt7621_ruijie_rg-ew1200g-pro-v1.1.dts
Normal file
142
target/linux/ramips/dts/mt7621_ruijie_rg-ew1200g-pro-v1.1.dts
Normal file
@ -0,0 +1,142 @@
|
|||||||
|
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||||
|
|
||||||
|
#include "mt7621.dtsi"
|
||||||
|
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include <dt-bindings/input/input.h>
|
||||||
|
#include <dt-bindings/leds/common.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
compatible = "ruijie,rg-ew1200g-pro-v1.1", "mediatek,mt7621-soc";
|
||||||
|
model = "Ruijie RG-EW1200G PRO v.1.1";
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
led-boot = &led_power_blue;
|
||||||
|
led-failsafe = &led_power_blue;
|
||||||
|
led-running = &led_power_blue;
|
||||||
|
led-upgrade = &led_power_blue;
|
||||||
|
};
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
bootargs = "console=ttyS0,57600n8";
|
||||||
|
};
|
||||||
|
|
||||||
|
leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
|
||||||
|
led_power_blue: power_blue {
|
||||||
|
function = LED_FUNCTION_POWER;
|
||||||
|
color = <LED_COLOR_ID_BLUE>;
|
||||||
|
gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
|
||||||
|
reset {
|
||||||
|
label = "reset";
|
||||||
|
gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,code = <KEY_RESTART>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&spi0 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
flash@0 {
|
||||||
|
compatible = "jedec,spi-nor";
|
||||||
|
reg = <0>;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
spi-max-frequency = <25000000>;
|
||||||
|
|
||||||
|
partitions {
|
||||||
|
compatible = "fixed-partitions";
|
||||||
|
|
||||||
|
partition@0 {
|
||||||
|
label = "u-boot";
|
||||||
|
reg = <0x000000 0x50000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
partition@50000 {
|
||||||
|
label = "u-boot-env";
|
||||||
|
reg = <0x50000 0x10000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
partition@60000 {
|
||||||
|
label = "factory";
|
||||||
|
reg = <0x60000 0x10000>;
|
||||||
|
read-only;
|
||||||
|
|
||||||
|
nvmem-layout {
|
||||||
|
compatible = "fixed-layout";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
|
||||||
|
eeprom_factory_0: eeprom@0 {
|
||||||
|
reg = <0x0 0x4da8>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
partition@70000 {
|
||||||
|
label = "product_info";
|
||||||
|
reg = <0x70000 0x10000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
partition@80000 {
|
||||||
|
label = "kdump";
|
||||||
|
reg = <0x80000 0x10000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
partition@90000 {
|
||||||
|
compatible = "denx,uimage";
|
||||||
|
label = "firmware";
|
||||||
|
reg = <0x90000 0xf70000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie0 {
|
||||||
|
wifi@0,0 {
|
||||||
|
compatible = "mediatek,mt76";
|
||||||
|
reg = <0x0000 0 0 0 0>;
|
||||||
|
nvmem-cells = <&eeprom_factory_0>;
|
||||||
|
nvmem-cell-names = "eeprom";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&switch0 {
|
||||||
|
ports {
|
||||||
|
port@0 {
|
||||||
|
status = "okay";
|
||||||
|
label = "wan";
|
||||||
|
};
|
||||||
|
|
||||||
|
port@1 {
|
||||||
|
status = "okay";
|
||||||
|
label = "lan3";
|
||||||
|
};
|
||||||
|
|
||||||
|
port@2 {
|
||||||
|
status = "okay";
|
||||||
|
label = "lan2";
|
||||||
|
};
|
||||||
|
|
||||||
|
port@3 {
|
||||||
|
status = "okay";
|
||||||
|
label = "lan1";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user