aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/linux
diff options
context:
space:
mode:
Diffstat (limited to 'package/kernel/linux')
-rw-r--r--package/kernel/linux/Makefile16
-rw-r--r--package/kernel/linux/files/hotplug-sched-teql.sh2
-rw-r--r--package/kernel/linux/files/sysctl-nf-conntrack.conf1
-rw-r--r--package/kernel/linux/modules/block.mk46
-rw-r--r--package/kernel/linux/modules/can.mk4
-rw-r--r--package/kernel/linux/modules/crypto.mk192
-rw-r--r--package/kernel/linux/modules/fs.mk169
-rw-r--r--package/kernel/linux/modules/gpio.mk138
-rw-r--r--package/kernel/linux/modules/hwmon.mk179
-rw-r--r--package/kernel/linux/modules/i2c.mk34
-rw-r--r--package/kernel/linux/modules/iio.mk142
-rw-r--r--package/kernel/linux/modules/input.mk42
-rw-r--r--package/kernel/linux/modules/leds.mk119
-rw-r--r--package/kernel/linux/modules/lib.mk76
-rw-r--r--package/kernel/linux/modules/multiplexer.mk34
-rw-r--r--package/kernel/linux/modules/netdevices.mk514
-rw-r--r--package/kernel/linux/modules/netfilter.mk205
-rw-r--r--package/kernel/linux/modules/netsupport.mk519
-rw-r--r--package/kernel/linux/modules/nls.mk6
-rw-r--r--package/kernel/linux/modules/other.mk405
-rw-r--r--package/kernel/linux/modules/sound.mk57
-rw-r--r--package/kernel/linux/modules/spi.mk4
-rw-r--r--package/kernel/linux/modules/usb.mk116
-rw-r--r--package/kernel/linux/modules/video.mk209
-rw-r--r--package/kernel/linux/modules/virt.mk72
-rw-r--r--package/kernel/linux/modules/w1.mk19
-rw-r--r--package/kernel/linux/modules/wireless.mk42
27 files changed, 2685 insertions, 677 deletions
diff --git a/package/kernel/linux/Makefile b/package/kernel/linux/Makefile
index 9fa68d78f72..6592b01678f 100644
--- a/package/kernel/linux/Makefile
+++ b/package/kernel/linux/Makefile
@@ -12,7 +12,9 @@ PKG_NAME:=kernel
PKG_FLAGS:=hold
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/packages
-SCAN_DEPS=modules/*.mk $(TOPDIR)/target/linux/*/modules.mk $(TOPDIR)/include/netfilter.mk
+SUBTARGETS = $(sort $(filter-out feeds,$(notdir $(wildcard $(TOPDIR)/target/linux/* $(TOPDIR)/target/linux/feeds/*))))
+SUBTARGET_MODULES = $(foreach t,$(SUBTARGETS),$(firstword $(wildcard $(TOPDIR)/target/linux/feeds/$(t)/modules.mk $(TOPDIR)/target/linux/$(t)/modules.mk)))
+SCAN_DEPS=modules/*.mk $(SUBTARGET_MODULES) $(TOPDIR)/include/netfilter.mk
PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=
@@ -35,6 +37,9 @@ endef
define Build/Configure
endef
+define Build/Quilt
+endef
+
define Build/Compile
endef
@@ -53,7 +58,12 @@ define Package/kernel
endef
define Package/kernel/install
- # nothing to do
+ $(INSTALL_DIR) $(1)/$(MODULES_SUBDIR)
+ $(INSTALL_DATA) $(LINUX_DIR)/modules.builtin $(1)/$(MODULES_SUBDIR)
+ $(SED) 's,.*/,,' $(1)/$(MODULES_SUBDIR)/modules.builtin
+ strings $(LINUX_DIR)/modules.builtin.modinfo | \
+ grep -E -v "\.(file$(if CONFIG_MODULE_STRIPPED,|parmtype))=" | \
+ tr '\n' '\0' > $(1)/$(MODULES_SUBDIR)/modules.builtin.modinfo
endef
define Package/kernel/extra_provides
@@ -63,4 +73,4 @@ endef
$(eval $(if $(DUMP),,$(call BuildPackage,kernel)))
include $(sort $(wildcard ./modules/*.mk))
--include $(TOPDIR)/target/linux/*/modules.mk
+-include $(SUBTARGET_MODULES)
diff --git a/package/kernel/linux/files/hotplug-sched-teql.sh b/package/kernel/linux/files/hotplug-sched-teql.sh
index a0c0e503aa6..2dc4ed4a842 100644
--- a/package/kernel/linux/files/hotplug-sched-teql.sh
+++ b/package/kernel/linux/files/hotplug-sched-teql.sh
@@ -12,7 +12,7 @@ config_get teql $INTERFACE teql
if [ "$teql" != "" ]; then
logger Adding device $DEVICE to TEQL master $teql
- insmod sch_teql
+ modprobe sch_teql
tc qdisc add dev $DEVICE root $teql
# The kernel doesn't let us bring it up until it has at least one
diff --git a/package/kernel/linux/files/sysctl-nf-conntrack.conf b/package/kernel/linux/files/sysctl-nf-conntrack.conf
index 37baf5fd6ff..c6a0ef362b6 100644
--- a/package/kernel/linux/files/sysctl-nf-conntrack.conf
+++ b/package/kernel/linux/files/sysctl-nf-conntrack.conf
@@ -3,7 +3,6 @@
net.netfilter.nf_conntrack_acct=1
net.netfilter.nf_conntrack_checksum=0
-net.netfilter.nf_conntrack_max=16384
net.netfilter.nf_conntrack_tcp_timeout_established=7440
net.netfilter.nf_conntrack_udp_timeout=60
net.netfilter.nf_conntrack_udp_timeout_stream=180
diff --git a/package/kernel/linux/modules/block.mk b/package/kernel/linux/modules/block.mk
index e5822d95d78..5e6eefa76a9 100644
--- a/package/kernel/linux/modules/block.mk
+++ b/package/kernel/linux/modules/block.mk
@@ -90,21 +90,6 @@ endef
$(eval $(call KernelPackage,ata-artop))
-define KernelPackage/ata-marvell-sata
- TITLE:=Marvell Serial ATA support
- KCONFIG:=CONFIG_SATA_MV
- FILES:=$(LINUX_DIR)/drivers/ata/sata_mv.ko
- AUTOLOAD:=$(call AutoLoad,41,sata_mv,1)
- $(call AddDepends/ata)
-endef
-
-define KernelPackage/ata-marvell-sata/description
- SATA support for marvell chipsets
-endef
-
-$(eval $(call KernelPackage,ata-marvell-sata))
-
-
define KernelPackage/ata-nvidia-sata
TITLE:=Nvidia Serial ATA support
KCONFIG:=CONFIG_SATA_NV
@@ -243,7 +228,7 @@ define KernelPackage/dm
$(LINUX_DIR)/drivers/md/dm-log.ko \
$(LINUX_DIR)/drivers/md/dm-mirror.ko \
$(LINUX_DIR)/drivers/md/dm-region-hash.ko
- AUTOLOAD:=$(call AutoLoad,30,dm-mod dm-log dm-region-hash dm-mirror dm-crypt)
+ AUTOLOAD:=$(call AutoLoad,30,dm-mod dm-log dm-region-hash dm-mirror dm-crypt,1)
endef
define KernelPackage/dm/description
@@ -465,7 +450,7 @@ define KernelPackage/loop
CONFIG_BLK_DEV_LOOP \
CONFIG_BLK_DEV_CRYPTOLOOP=n
FILES:=$(LINUX_DIR)/drivers/block/loop.ko
- AUTOLOAD:=$(call AutoLoad,30,loop)
+ AUTOLOAD:=$(call AutoLoad,30,loop,1)
endef
define KernelPackage/loop/description
@@ -508,16 +493,41 @@ endef
$(eval $(call KernelPackage,nbd))
+define KernelPackage/nvme
+ SUBMENU:=$(BLOCK_MENU)
+ TITLE:=NVM Express block device
+ DEPENDS:=@PCI_SUPPORT +kmod-hwmon-core
+ KCONFIG:= \
+ CONFIG_NVME_CORE \
+ CONFIG_BLK_DEV_NVME \
+ CONFIG_NVME_MULTIPATH=n \
+ CONFIG_NVME_HWMON=y
+ FILES:= \
+ $(LINUX_DIR)/drivers/nvme/host/nvme-core.ko \
+ $(LINUX_DIR)/drivers/nvme/host/nvme.ko
+ AUTOLOAD:=$(call AutoLoad,30,nvme-core nvme,1)
+endef
+
+define KernelPackage/nvme/description
+ Kernel module for NVM Express solid state drives directly
+ connected to the PCI or PCI Express bus.
+endef
+
+$(eval $(call KernelPackage,nvme))
+
+
define KernelPackage/scsi-core
SUBMENU:=$(BLOCK_MENU)
TITLE:=SCSI device support
KCONFIG:= \
CONFIG_SCSI \
+ CONFIG_SCSI_COMMON \
CONFIG_BLK_DEV_SD
FILES:= \
$(LINUX_DIR)/drivers/scsi/scsi_mod.ko \
+ $(LINUX_DIR)/drivers/scsi/scsi_common.ko \
$(LINUX_DIR)/drivers/scsi/sd_mod.ko
- AUTOLOAD:=$(call AutoLoad,40,scsi_mod sd_mod,1)
+ AUTOLOAD:=$(call AutoLoad,40,scsi_mod scsi_common sd_mod,1)
endef
$(eval $(call KernelPackage,scsi-core))
diff --git a/package/kernel/linux/modules/can.mk b/package/kernel/linux/modules/can.mk
index 3060fc09660..4ff85d1c013 100644
--- a/package/kernel/linux/modules/can.mk
+++ b/package/kernel/linux/modules/can.mk
@@ -121,7 +121,7 @@ define KernelPackage/can-flexcan
KCONFIG:=CONFIG_CAN_FLEXCAN
FILES:=$(LINUX_DIR)/drivers/net/can/flexcan.ko
AUTOLOAD:=$(call AutoProbe,flexcan)
- $(call AddDepends/can,@TARGET_imx6)
+ $(call AddDepends/can,@TARGET_imx)
endef
define KernelPackage/can-flexcan/description
@@ -152,7 +152,7 @@ define KernelPackage/can-mcp251x
CONFIG_SPI=y \
CONFIG_CAN_MCP251X
FILES:=$(LINUX_DIR)/drivers/net/can/spi/mcp251x.ko
- AUTOLOAD:=$(call AutoProbe,can-mcp251x)
+ AUTOLOAD:=$(call AutoProbe,mcp251x)
$(call AddDepends/can)
endef
diff --git a/package/kernel/linux/modules/crypto.mk b/package/kernel/linux/modules/crypto.mk
index 6cecb1a0fa6..dd17d868fa1 100644
--- a/package/kernel/linux/modules/crypto.mk
+++ b/package/kernel/linux/modules/crypto.mk
@@ -42,7 +42,7 @@ define KernelPackage/crypto-aead
CONFIG_CRYPTO_AEAD2
FILES:= \
$(LINUX_DIR)/crypto/aead.ko \
- $(LINUX_DIR)/crypto/geniv.ko@ge5.10
+ $(LINUX_DIR)/crypto/geniv.ko
AUTOLOAD:=$(call AutoLoad,09,aead,1)
$(call AddDepends/crypto, +kmod-crypto-null)
endef
@@ -52,6 +52,7 @@ $(eval $(call KernelPackage,crypto-aead))
define KernelPackage/crypto-arc4
TITLE:=ARC4 cipher CryptoAPI module
+ DEPENDS:=+kmod-crypto-user
KCONFIG:= \
CONFIG_CRYPTO_ARC4 \
CONFIG_CRYPTO_USER_API_ENABLE_OBSOLETE=y
@@ -69,8 +70,10 @@ define KernelPackage/crypto-authenc
TITLE:=Combined mode wrapper for IPsec
DEPENDS:=+kmod-crypto-manager +kmod-crypto-null
KCONFIG:=CONFIG_CRYPTO_AUTHENC
- FILES:=$(LINUX_DIR)/crypto/authenc.ko
- AUTOLOAD:=$(call AutoLoad,09,authenc)
+ FILES:= \
+ $(LINUX_DIR)/crypto/authenc.ko \
+ $(LINUX_DIR)/crypto/authencesn.ko
+ AUTOLOAD:=$(call AutoLoad,09,authenc authencesn)
$(call AddDepends/crypto)
endef
@@ -101,6 +104,18 @@ endef
$(eval $(call KernelPackage,crypto-ccm))
+define KernelPackage/crypto-chacha20poly1305
+ TITLE:=ChaCha20-Poly1305 AEAD support, RFC7539 (used by strongSwan IPsec VPN)
+ DEPENDS:=+kmod-crypto-aead +kmod-crypto-manager
+ KCONFIG:=CONFIG_CRYPTO_CHACHA20POLY1305
+ FILES:=$(LINUX_DIR)/crypto/chacha20poly1305.ko
+ AUTOLOAD:=$(call AutoLoad,09,chacha20poly1305)
+ $(call AddDepends/crypto)
+endef
+
+$(eval $(call KernelPackage,crypto-chacha20poly1305))
+
+
define KernelPackage/crypto-cmac
TITLE:=Support for Cipher-based Message Authentication Code (CMAC)
DEPENDS:=+kmod-crypto-hash
@@ -225,6 +240,18 @@ endef
$(eval $(call KernelPackage,crypto-echainiv))
+define KernelPackage/crypto-essiv
+ TITLE:=ESSIV support for block encryption
+ DEPENDS:=+kmod-crypto-authenc
+ KCONFIG:=CONFIG_CRYPTO_ESSIV
+ FILES:= $(LINUX_DIR)/crypto/essiv.ko
+ AUTOLOAD:=$(call AutoLoad,10,essiv)
+ $(call AddDepends/crypto)
+endef
+
+$(eval $(call KernelPackage,crypto-essiv))
+
+
define KernelPackage/crypto-fcrypt
TITLE:=FCRYPT cipher CryptoAPI module
KCONFIG:=CONFIG_CRYPTO_FCRYPT
@@ -287,7 +314,7 @@ define KernelPackage/crypto-ghash/arm-ce
AUTOLOAD+=$(call AutoLoad,09,ghash-arm-ce)
endef
-KernelPackage/crypto-ghash/imx6=$(KernelPackage/crypto-ghash/arm-ce)
+KernelPackage/crypto-ghash/imx=$(KernelPackage/crypto-ghash/arm-ce)
KernelPackage/crypto-ghash/ipq40xx=$(KernelPackage/crypto-ghash/arm-ce)
KernelPackage/crypto-ghash/mvebu/cortexa9=$(KernelPackage/crypto-ghash/arm-ce)
@@ -372,6 +399,19 @@ endef
$(eval $(call KernelPackage,crypto-hw-hifn-795x))
+define KernelPackage/crypto-hw-ixp4xx
+ TITLE:=Intel IXP4xx crypto accelerator
+ DEPENDS:=@TARGET_ixp4xx +kmod-random-core +kmod-crypto-manager +kmod-crypto-authenc +kmod-crypto-des
+ KCONFIG:= \
+ CONFIG_CRYPTO_HW=y \
+ CONFIG_CRYPTO_DEV_IXP4XX
+ FILES:=$(LINUX_DIR)/drivers/crypto/ixp4xx_crypto.ko
+ AUTOLOAD:=$(call AutoProbe,ixp4xx_crypto)
+ $(call AddDepends/crypto)
+endef
+
+$(eval $(call KernelPackage,crypto-hw-ixp4xx))
+
define KernelPackage/crypto-hw-padlock
TITLE:=VIA PadLock ACE with AES/SHA hw crypto module
@@ -393,8 +433,9 @@ $(eval $(call KernelPackage,crypto-hw-padlock))
define KernelPackage/crypto-hw-safexcel
TITLE:= MVEBU SafeXcel Crypto Engine module
- DEPENDS:=@(TARGET_mvebu_cortexa53||TARGET_mvebu_cortexa72) +eip197-mini-firmware \
- +kmod-crypto-authenc +kmod-crypto-md5 +kmod-crypto-hmac +kmod-crypto-sha256 +kmod-crypto-sha512
+ DEPENDS:=@(TARGET_mvebu_cortexa53||TARGET_mvebu_cortexa72||TARGET_mediatek_filogic||TARGET_mediatek_mt7623) \
+ +eip197-mini-firmware +kmod-crypto-authenc +kmod-crypto-des +kmod-crypto-md5 +kmod-crypto-hmac \
+ +kmod-crypto-sha1 +kmod-crypto-sha256 +kmod-crypto-sha512
KCONFIG:= \
CONFIG_CRYPTO_HW=y \
CONFIG_CRYPTO_DEV_SAFEXCEL
@@ -435,6 +476,35 @@ endef
$(eval $(call KernelPackage,crypto-hw-talitos))
+define KernelPackage/crypto-hw-eip93
+ TITLE:=MTK EIP93 crypto module
+ DEPENDS:=@TARGET_ramips_mt7621 \
+ +kmod-crypto-authenc \
+ +kmod-crypto-des \
+ +kmod-crypto-md5 \
+ +kmod-crypto-sha1 \
+ +kmod-crypto-sha256
+ KCONFIG:= \
+ CONFIG_CRYPTO_HW=y \
+ CONFIG_CRYPTO_DEV_EIP93 \
+ CONFIG_CRYPTO_DEV_EIP93_AES=y \
+ CONFIG_CRYPTO_DEV_EIP93_DES=y \
+ CONFIG_CRYPTO_DEV_EIP93_AEAD=y \
+ CONFIG_CRYPTO_DEV_EIP93_GENERIC_SW_MAX_LEN=256 \
+ CONFIG_CRYPTO_DEV_EIP93_AES_128_SW_MAX_LEN=512
+ FILES:=$(LINUX_DIR)/drivers/crypto/mtk-eip93/crypto-hw-eip93.ko
+ AUTOLOAD:=$(call AutoLoad,09,crypto-hw-eip93)
+ $(call AddDepends/crypto)
+endef
+
+define KernelPackage/crypto-hw-eip93/description
+Kernel module to enable EIP-93 Crypto engine as found
+in the Mediatek MT7621 SoC.
+It enables DES/3DES/AES ECB/CBC/CTR and
+IPSEC offload with authenc(hmac(sha1/sha256), aes/cbc/rfc3686)
+endef
+
+$(eval $(call KernelPackage,crypto-hw-eip93))
define KernelPackage/crypto-kpp
TITLE:=Key-agreement Protocol Primitives
@@ -446,29 +516,6 @@ endef
$(eval $(call KernelPackage,crypto-kpp))
-
-define KernelPackage/crypto-lib-blake2s
- TITLE:=BLAKE2s hash function library
- KCONFIG:=CONFIG_CRYPTO_LIB_BLAKE2S
- HIDDEN:=1
- FILES:= \
- $(LINUX_DIR)/lib/crypto/libblake2s.ko \
- $(LINUX_DIR)/lib/crypto/libblake2s-generic.ko
- $(call AddDepends/crypto,+PACKAGE_kmod-crypto-hash:kmod-crypto-hash)
-endef
-
-define KernelPackage/crypto-lib-blake2s/config
- imply PACKAGE_kmod-crypto-hash
-endef
-
-define KernelPackage/crypto-lib-blake2s/x86/64
- KCONFIG+=CONFIG_CRYPTO_BLAKE2S_X86
- FILES+=$(LINUX_DIR)/arch/x86/crypto/blake2s-x86_64.ko
-endef
-
-$(eval $(call KernelPackage,crypto-lib-blake2s))
-
-
define KernelPackage/crypto-lib-chacha20
TITLE:=ChaCha library interface
KCONFIG:=CONFIG_CRYPTO_LIB_CHACHA
@@ -489,6 +536,8 @@ define KernelPackage/crypto-lib-chacha20/arm
FILES:=$(LINUX_DIR)/arch/arm/crypto/chacha-neon.ko
endef
+KernelPackage/crypto-lib-chacha20/armeb=$(KernelPackage/crypto-lib-chacha20/arm)
+
define KernelPackage/crypto-lib-chacha20/aarch64
KCONFIG+=CONFIG_CRYPTO_CHACHA20_NEON
FILES+=$(LINUX_DIR)/arch/arm64/crypto/chacha-neon.ko
@@ -537,7 +586,7 @@ define KernelPackage/crypto-lib-curve25519/config
imply PACKAGE_kmod-crypto-kpp
endef
-define KernelPackage/crypto-lib-curve25519/x86/64
+define KernelPackage/crypto-lib-curve25519/x86_64
KCONFIG+=CONFIG_CRYPTO_CURVE25519_X86
FILES+=$(LINUX_DIR)/arch/x86/crypto/curve25519-x86_64.ko
endef
@@ -552,6 +601,11 @@ ifeq ($(ARCH)-$(CONFIG_KERNEL_MODE_NEON),arm-y)
$(KernelPackage/crypto-lib-curve25519/arm-neon)
endif
+ifdef KernelPackage/crypto-lib-curve25519/$(ARCH)
+ KernelPackage/crypto-lib-curve25519/$(CRYPTO_TARGET)=\
+ $(KernelPackage/crypto-lib-curve25519/$(ARCH))
+endif
+
$(eval $(call KernelPackage,crypto-lib-curve25519))
@@ -577,6 +631,8 @@ define KernelPackage/crypto-lib-poly1305/arm
FILES:=$(LINUX_DIR)/arch/arm/crypto/poly1305-arm.ko
endef
+KernelPackage/crypto-lib-poly1305/armeb=$(KernelPackage/crypto-lib-poly1305/arm)
+
define KernelPackage/crypto-lib-poly1305/aarch64
KCONFIG+=CONFIG_CRYPTO_POLY1305_NEON
FILES:=$(LINUX_DIR)/arch/arm64/crypto/poly1305-neon.ko
@@ -630,7 +686,8 @@ define KernelPackage/crypto-md5
DEPENDS:=+kmod-crypto-hash
KCONFIG:= \
CONFIG_CRYPTO_MD5 \
- CONFIG_CRYPTO_MD5_OCTEON
+ CONFIG_CRYPTO_MD5_OCTEON \
+ CONFIG_CRYPTO_MD5_PPC
FILES:=$(LINUX_DIR)/crypto/md5.ko
AUTOLOAD:=$(call AutoLoad,09,md5)
$(call AddDepends/crypto)
@@ -641,6 +698,16 @@ define KernelPackage/crypto-md5/octeon
AUTOLOAD+=$(call AutoLoad,09,octeon-md5)
endef
+define KernelPackage/crypto-md5/powerpc
+ FILES+=$(LINUX_DIR)/arch/powerpc/crypto/md5-ppc.ko
+ AUTOLOAD+=$(call AutoLoad,09,md5-ppc)
+endef
+
+ifdef KernelPackage/crypto-md5/$(ARCH)
+ KernelPackage/crypto-md5/$(CRYPTO_TARGET)=\
+ $(KernelPackage/crypto-md5/$(ARCH))
+endif
+
$(eval $(call KernelPackage,crypto-md5))
@@ -658,7 +725,7 @@ $(eval $(call KernelPackage,crypto-michael-mic))
define KernelPackage/crypto-misc
TITLE:=Other CryptoAPI modules
- DEPENDS:=+kmod-crypto-xts
+ DEPENDS:=+kmod-crypto-xts +kmod-crypto-user
KCONFIG:= \
CONFIG_CRYPTO_USER_API_ENABLE_OBSOLETE=y \
CONFIG_CRYPTO_CAMELLIA_X86_64 \
@@ -683,7 +750,6 @@ define KernelPackage/crypto-misc
CONFIG_CRYPTO_KHAZAD \
CONFIG_CRYPTO_SERPENT \
CONFIG_CRYPTO_TEA \
- CONFIG_CRYPTO_TGR192 \
CONFIG_CRYPTO_TWOFISH \
CONFIG_CRYPTO_TWOFISH_COMMON \
CONFIG_CRYPTO_TWOFISH_586 \
@@ -696,7 +762,6 @@ define KernelPackage/crypto-misc
$(LINUX_DIR)/crypto/cast6_generic.ko \
$(LINUX_DIR)/crypto/khazad.ko \
$(LINUX_DIR)/crypto/tea.ko \
- $(LINUX_DIR)/crypto/tgr192.ko \
$(LINUX_DIR)/crypto/twofish_common.ko \
$(LINUX_DIR)/crypto/wp512.ko \
$(LINUX_DIR)/crypto/twofish_generic.ko \
@@ -704,7 +769,7 @@ define KernelPackage/crypto-misc
$(LINUX_DIR)/crypto/blowfish_generic.ko \
$(LINUX_DIR)/crypto/serpent_generic.ko
AUTOLOAD:=$(call AutoLoad,10,anubis camellia_generic cast_common \
- cast5_generic cast6_generic khazad tea tgr192 twofish_common \
+ cast5_generic cast6_generic khazad tea twofish_common \
wp512 blowfish_common serpent_generic)
ifndef CONFIG_TARGET_x86
AUTOLOAD+= $(call AutoLoad,10,twofish_generic blowfish_generic)
@@ -717,15 +782,14 @@ ifndef CONFIG_TARGET_x86_64
FILES+= \
$(LINUX_DIR)/arch/x86/crypto/twofish-i586.ko \
$(LINUX_DIR)/arch/x86/crypto/serpent-sse2-i586.ko \
- $(LINUX_DIR)/arch/x86/crypto/glue_helper.ko \
$(LINUX_DIR)/crypto/cryptd.ko \
$(LINUX_DIR)/crypto/crypto_simd.ko
- AUTOLOAD+= $(call AutoLoad,10,cryptd glue_helper \
+ AUTOLOAD+= $(call AutoLoad,10,cryptd \
serpent-sse2-i586 twofish-i586 blowfish_generic)
endef
endif
-define KernelPackage/crypto-misc/x86/64
+define KernelPackage/crypto-misc/x86_64
FILES+= \
$(LINUX_DIR)/arch/x86/crypto/camellia-x86_64.ko \
$(LINUX_DIR)/arch/x86/crypto/blowfish-x86_64.ko \
@@ -745,6 +809,11 @@ define KernelPackage/crypto-misc/x86/64
twofish-avx-x86_64 blowfish-x86_64 serpent-avx-x86_64 serpent-avx2)
endef
+ifdef KernelPackage/crypto-misc/$(ARCH)
+ KernelPackage/crypto-misc/$(CRYPTO_TARGET)=\
+ $(KernelPackage/crypto-misc/$(ARCH))
+endif
+
$(eval $(call KernelPackage,crypto-misc))
@@ -801,7 +870,7 @@ $(eval $(call KernelPackage,crypto-rmd160))
define KernelPackage/crypto-rng
TITLE:=CryptoAPI random number generation
- DEPENDS:=+kmod-crypto-hash +kmod-crypto-hmac +kmod-crypto-sha256
+ DEPENDS:=+kmod-crypto-hash +kmod-crypto-hmac +kmod-crypto-sha512
KCONFIG:= \
CONFIG_CRYPTO_DRBG \
CONFIG_CRYPTO_DRBG_HMAC=y \
@@ -840,6 +909,7 @@ define KernelPackage/crypto-sha1
CONFIG_CRYPTO_SHA1_ARM \
CONFIG_CRYPTO_SHA1_ARM_NEON \
CONFIG_CRYPTO_SHA1_OCTEON \
+ CONFIG_CRYPTO_SHA1_PPC_SPE \
CONFIG_CRYPTO_SHA1_SSSE3
FILES:=$(LINUX_DIR)/crypto/sha1_generic.ko
AUTOLOAD:=$(call AutoLoad,09,sha1_generic)
@@ -857,7 +927,7 @@ define KernelPackage/crypto-sha1/arm-neon
AUTOLOAD+=$(call AutoLoad,09,sha1-arm-neon)
endef
-KernelPackage/crypto-sha1/imx6=$(KernelPackage/crypto-sha1/arm-neon)
+KernelPackage/crypto-sha1/imx=$(KernelPackage/crypto-sha1/arm-neon)
KernelPackage/crypto-sha1/ipq40xx=$(KernelPackage/crypto-sha1/arm-neon)
KernelPackage/crypto-sha1/mvebu/cortexa9=$(KernelPackage/crypto-sha1/arm-neon)
@@ -866,12 +936,24 @@ define KernelPackage/crypto-sha1/octeon
AUTOLOAD+=$(call AutoLoad,09,octeon-sha1)
endef
-KernelPackage/crypto-sha1/tegra=$(KernelPakcage/crypto-sha1/arm)
+KernelPackage/crypto-sha1/tegra=$(KernelPackage/crypto-sha1/arm)
+
+define KernelPackage/crypto-sha1/mpc85xx
+ FILES+=$(LINUX_DIR)/arch/powerpc/crypto/sha1-ppc-spe.ko
+ AUTOLOAD+=$(call AutoLoad,09,sha1-ppc-spe)
+endef
-define KernelPackage/crypto-sha1/x86/64
+ifndef CONFIG_TARGET_uml
+define KernelPackage/crypto-sha1/x86_64
FILES+=$(LINUX_DIR)/arch/x86/crypto/sha1-ssse3.ko
AUTOLOAD+=$(call AutoLoad,09,sha1-ssse3)
endef
+endif
+
+ifdef KernelPackage/crypto-sha1/$(ARCH)
+ KernelPackage/crypto-sha1/$(CRYPTO_TARGET)=\
+ $(KernelPackage/crypto-sha1/$(ARCH))
+endif
$(eval $(call KernelPackage,crypto-sha1))
@@ -882,6 +964,7 @@ define KernelPackage/crypto-sha256
KCONFIG:= \
CONFIG_CRYPTO_SHA256 \
CONFIG_CRYPTO_SHA256_OCTEON \
+ CONFIG_CRYPTO_SHA256_PPC_SPE \
CONFIG_CRYPTO_SHA256_SSSE3
FILES:= \
$(LINUX_DIR)/crypto/sha256_generic.ko \
@@ -895,10 +978,22 @@ define KernelPackage/crypto-sha256/octeon
AUTOLOAD+=$(call AutoLoad,09,octeon-sha256)
endef
-define KernelPackage/crypto-sha256/x86/64
+define KernelPackage/crypto-sha256/mpc85xx
+ FILES+=$(LINUX_DIR)/arch/powerpc/crypto/sha256-ppc-spe.ko
+ AUTOLOAD+=$(call AutoLoad,09,sha256-ppc-spe)
+endef
+
+ifndef CONFIG_TARGET_uml
+define KernelPackage/crypto-sha256/x86_64
FILES+=$(LINUX_DIR)/arch/x86/crypto/sha256-ssse3.ko
AUTOLOAD+=$(call AutoLoad,09,sha256-ssse3)
endef
+endif
+
+ifdef KernelPackage/crypto-sha256/$(ARCH)
+ KernelPackage/crypto-sha256/$(CRYPTO_TARGET)=\
+ $(KernelPackage/crypto-sha256/$(ARCH))
+endif
$(eval $(call KernelPackage,crypto-sha256))
@@ -921,7 +1016,7 @@ define KernelPackage/crypto-sha512/arm
AUTOLOAD+=$(call AutoLoad,09,sha512-arm)
endef
-KernelPackage/crypto-sha512/imx6=$(KernelPackage/crypto-sha512/arm)
+KernelPackage/crypto-sha512/imx=$(KernelPackage/crypto-sha512/arm)
KernelPackage/crypto-sha512/ipq40xx=$(KernelPackage/crypto-sha512/arm)
KernelPackage/crypto-sha512/mvebu/cortexa9=$(KernelPackage/crypto-sha512/arm)
@@ -932,10 +1027,17 @@ endef
KernelPackage/crypto-sha512/tegra=$(KernelPackage/crypto-sha512/arm)
-define KernelPackage/crypto-sha512/x86/64
+ifndef CONFIG_TARGET_uml
+define KernelPackage/crypto-sha512/x86_64
FILES+=$(LINUX_DIR)/arch/x86/crypto/sha512-ssse3.ko
AUTOLOAD+=$(call AutoLoad,09,sha512-ssse3)
endef
+endif
+
+ifdef KernelPackage/crypto-sha512/$(ARCH)
+ KernelPackage/crypto-sha512/$(CRYPTO_TARGET)=\
+ $(KernelPackage/crypto-sha512/$(ARCH))
+endif
$(eval $(call KernelPackage,crypto-sha512))
diff --git a/package/kernel/linux/modules/fs.mk b/package/kernel/linux/modules/fs.mk
index 7de1a0673ce..58af180c280 100644
--- a/package/kernel/linux/modules/fs.mk
+++ b/package/kernel/linux/modules/fs.mk
@@ -10,7 +10,7 @@ FS_MENU:=Filesystems
define KernelPackage/fs-9p
SUBMENU:=$(FS_MENU)
TITLE:=Plan 9 Resource Sharing Support
- DEPENDS:=+kmod-9pnet
+ DEPENDS:=+kmod-9pnet +LINUX_6_1:kmod-fs-netfs
KCONFIG:=\
CONFIG_9P_FS \
CONFIG_9P_FS_POSIX_ACL=n \
@@ -70,7 +70,6 @@ define KernelPackage/fs-btrfs
DEPENDS:=+kmod-lib-crc32c +kmod-lib-lzo +kmod-lib-zlib-inflate +kmod-lib-zlib-deflate +kmod-lib-raid6 +kmod-lib-xor +kmod-lib-zstd
KCONFIG:=\
CONFIG_BTRFS_FS \
- CONFIG_BTRFS_FS_POSIX_ACL=n \
CONFIG_BTRFS_FS_CHECK_INTEGRITY=n
FILES:=\
$(LINUX_DIR)/fs/btrfs/btrfs.ko
@@ -84,6 +83,27 @@ endef
$(eval $(call KernelPackage,fs-btrfs))
+define KernelPackage/fs-smbfs-common
+ SUBMENU:=$(FS_MENU)
+ TITLE:=SMBFS common dependencies support
+ HIDDEN:=1
+ KCONFIG:=\
+ CONFIG_SMBFS_COMMON@lt6.1 \
+ CONFIG_SMBFS@ge6.1
+ FILES:= \
+ $(LINUX_DIR)/fs/smbfs_common/cifs_arc4.ko@lt6.1 \
+ $(LINUX_DIR)/fs/smbfs_common/cifs_md4.ko@lt6.1 \
+ $(LINUX_DIR)/fs/smb/common/cifs_arc4.ko@ge6.1 \
+ $(LINUX_DIR)/fs/smb/common/cifs_md4.ko@ge6.1
+endef
+
+define KernelPackage/fs-smbfs-common/description
+ Kernel module dependency for CIFS or SMB_SERVER support
+endef
+
+$(eval $(call KernelPackage,fs-smbfs-common))
+
+
define KernelPackage/fs-cifs
SUBMENU:=$(FS_MENU)
TITLE:=CIFS support
@@ -91,21 +111,25 @@ define KernelPackage/fs-cifs
CONFIG_CIFS \
CONFIG_CIFS_DFS_UPCALL=n \
CONFIG_CIFS_UPCALL=n
- FILES:=$(LINUX_DIR)/fs/cifs/cifs.ko
+ FILES:= \
+ $(LINUX_DIR)/fs/cifs/cifs.ko@lt6.1 \
+ $(LINUX_DIR)/fs/smb/client/cifs.ko@ge6.1
AUTOLOAD:=$(call AutoLoad,30,cifs)
$(call AddDepends/nls)
DEPENDS+= \
- +kmod-crypto-md4 \
+ +kmod-fs-smbfs-common \
+kmod-crypto-md5 \
+kmod-crypto-sha256 \
+kmod-crypto-sha512 \
+kmod-crypto-cmac \
+kmod-crypto-hmac \
- +kmod-crypto-arc4 \
+kmod-crypto-aead \
+kmod-crypto-ccm \
+kmod-crypto-ecb \
- +kmod-crypto-des
+ +kmod-crypto-des \
+ +kmod-asn1-decoder \
+ +kmod-oid-registry \
+ +kmod-dnsresolver
endef
define KernelPackage/fs-cifs/description
@@ -170,9 +194,7 @@ define KernelPackage/fs-exfat
KCONFIG:= \
CONFIG_EXFAT_FS \
CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8"
- FILES:= \
- $(LINUX_DIR)/drivers/staging/exfat/exfat.ko@lt5.7 \
- $(LINUX_DIR)/fs/exfat/exfat.ko@ge5.7
+ FILES:= $(LINUX_DIR)/fs/exfat/exfat.ko
AUTOLOAD:=$(call AutoLoad,30,exfat,1)
DEPENDS:=+kmod-nls-base
endef
@@ -243,18 +265,22 @@ $(eval $(call KernelPackage,fs-f2fs))
define KernelPackage/fs-fscache
SUBMENU:=$(FS_MENU)
TITLE:=General filesystem local cache manager
- DEPENDS:=
+ DEPENDS:=+kmod-fs-netfs
KCONFIG:=\
- CONFIG_FSCACHE=m \
+ CONFIG_FSCACHE \
CONFIG_FSCACHE_STATS=y \
CONFIG_FSCACHE_HISTOGRAM=n \
CONFIG_FSCACHE_DEBUG=n \
CONFIG_FSCACHE_OBJECT_LIST=n \
- CONFIG_CACHEFILES=y \
+ CONFIG_CACHEFILES \
CONFIG_CACHEFILES_DEBUG=n \
- CONFIG_CACHEFILES_HISTOGRAM=n
- FILES:=$(LINUX_DIR)/fs/fscache/fscache.ko
- AUTOLOAD:=$(call AutoLoad,29,fscache)
+ CONFIG_CACHEFILES_HISTOGRAM=n \
+ CONFIG_CACHEFILES_ERROR_INJECTION=n@ge5.17 \
+ CONFIG_CACHEFILES_ONDEMAND=n@ge5.19
+ FILES:= \
+ $(LINUX_DIR)/fs/fscache/fscache.ko \
+ $(LINUX_DIR)/fs/cachefiles/cachefiles.ko
+ AUTOLOAD:=$(call AutoLoad,29,fscache cachefiles)
endef
$(eval $(call KernelPackage,fs-fscache))
@@ -326,6 +352,44 @@ endef
$(eval $(call KernelPackage,fs-jfs))
+
+define KernelPackage/fs-ksmbd
+ SUBMENU:=$(FS_MENU)
+ TITLE:=SMB kernel server support
+ DEPENDS:= \
+ +kmod-nls-base \
+ +kmod-nls-utf8 \
+ +kmod-crypto-md5 \
+ +kmod-crypto-hmac \
+ +kmod-crypto-ecb \
+ +kmod-crypto-des \
+ +kmod-crypto-sha256 \
+ +kmod-crypto-cmac \
+ +kmod-crypto-sha512 \
+ +kmod-crypto-aead \
+ +kmod-crypto-ccm \
+ +kmod-crypto-gcm \
+ +kmod-asn1-decoder \
+ +kmod-oid-registry \
+ +kmod-fs-smbfs-common
+ KCONFIG:= \
+ CONFIG_SMB_SERVER \
+ CONFIG_SMB_SERVER_SMBDIRECT=n \
+ CONFIG_SMB_SERVER_CHECK_CAP_NET_ADMIN=n \
+ CONFIG_SMB_SERVER_KERBEROS5=n
+ FILES:= \
+ $(LINUX_DIR)/fs/ksmbd/ksmbd.ko@lt6.1 \
+ $(LINUX_DIR)/fs/smb/server/ksmbd.ko@ge6.1
+ AUTOLOAD:=$(call AutoLoad,41,ksmbd)
+endef
+
+define KernelPackage/fs-ksmbd/description
+ Kernel module for SMB kernel server support
+endef
+
+$(eval $(call KernelPackage,fs-ksmbd))
+
+
define KernelPackage/fs-minix
SUBMENU:=$(FS_MENU)
TITLE:=Minix filesystem support
@@ -358,6 +422,17 @@ endef
$(eval $(call KernelPackage,fs-msdos))
+define KernelPackage/fs-netfs
+ SUBMENU:=$(FS_MENU)
+ TITLE:=Network Filesystems support
+ KCONFIG:= CONFIG_NETFS_SUPPORT
+ FILES:=$(LINUX_DIR)/fs/netfs/netfs.ko
+ AUTOLOAD:=$(call AutoLoad,28,netfs)
+endef
+
+$(eval $(call KernelPackage,fs-netfs))
+
+
define KernelPackage/fs-nfs
SUBMENU:=$(FS_MENU)
TITLE:=NFS filesystem client support
@@ -381,15 +456,22 @@ $(eval $(call KernelPackage,fs-nfs))
define KernelPackage/fs-nfs-common
SUBMENU:=$(FS_MENU)
TITLE:=Common NFS filesystem modules
+ DEPENDS:=+kmod-oid-registry
KCONFIG:= \
CONFIG_LOCKD \
CONFIG_SUNRPC \
- CONFIG_GRACE_PERIOD
+ CONFIG_GRACE_PERIOD \
+ CONFIG_NFS_V4=y \
+ CONFIG_NFS_V4_1=y \
+ CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org" \
+ CONFIG_NFS_V4_1_MIGRATION=n \
+ CONFIG_NFS_V4_2=y \
+ CONFIG_NFS_V4_2_READ_PLUS=n
FILES:= \
$(LINUX_DIR)/fs/lockd/lockd.ko \
$(LINUX_DIR)/net/sunrpc/sunrpc.ko \
$(LINUX_DIR)/fs/nfs_common/grace.ko \
- $(LINUX_DIR)/fs/nfs_common/nfs_ssc.ko@ge5.10
+ $(LINUX_DIR)/fs/nfs_common/nfs_ssc.ko
AUTOLOAD:=$(call AutoLoad,30,grace sunrpc lockd)
endef
@@ -413,10 +495,9 @@ define KernelPackage/fs-nfs-common-rpcsec
CONFIG_SUNRPC_GSS \
CONFIG_RPCSEC_GSS_KRB5
FILES:= \
- $(LINUX_DIR)/lib/oid_registry.ko \
$(LINUX_DIR)/net/sunrpc/auth_gss/auth_rpcgss.ko \
$(LINUX_DIR)/net/sunrpc/auth_gss/rpcsec_gss_krb5.ko
- AUTOLOAD:=$(call AutoLoad,31,oid_registry auth_rpcgss rpcsec_gss_krb5)
+ AUTOLOAD:=$(call AutoLoad,31,auth_rpcgss rpcsec_gss_krb5)
endef
define KernelPackage/fs-nfs-common-rpcsec/description
@@ -471,7 +552,8 @@ define KernelPackage/fs-nfsd
CONFIG_NFSD_BLOCKLAYOUT=n \
CONFIG_NFSD_SCSILAYOUT=n \
CONFIG_NFSD_FLEXFILELAYOUT=n \
- CONFIG_NFSD_FAULT_INJECTION=n
+ CONFIG_NFSD_FAULT_INJECTION=n \
+ CONFIG_NFSD_V4_2_INTER_SSC=n
FILES:=$(LINUX_DIR)/fs/nfsd/nfsd.ko
AUTOLOAD:=$(call AutoLoad,40,nfsd)
endef
@@ -485,7 +567,7 @@ $(eval $(call KernelPackage,fs-nfsd))
define KernelPackage/fs-ntfs
SUBMENU:=$(FS_MENU)
- TITLE:=NTFS filesystem support
+ TITLE:=NTFS filesystem read-only (old driver) support
KCONFIG:=CONFIG_NTFS_FS
FILES:=$(LINUX_DIR)/fs/ntfs/ntfs.ko
AUTOLOAD:=$(call AutoLoad,30,ntfs)
@@ -493,12 +575,32 @@ define KernelPackage/fs-ntfs
endef
define KernelPackage/fs-ntfs/description
- Kernel module for NTFS filesystem support
+ Kernel module for limited NTFS filesystem support. Support for writing
+ is extremely limited and disabled as a result.
endef
$(eval $(call KernelPackage,fs-ntfs))
+define KernelPackage/fs-ntfs3
+ SUBMENU:=$(FS_MENU)
+ TITLE:=NTFS filesystem read & write (new driver) support
+ KCONFIG:= CONFIG_NTFS3_FS CONFIG_NTFS3_FS_POSIX_ACL=y
+ FILES:=$(LINUX_DIR)/fs/ntfs3/ntfs3.ko
+ $(call AddDepends/nls)
+ AUTOLOAD:=$(call AutoLoad,80,ntfs3)
+endef
+
+define KernelPackage/fs-ntfs3/description
+ Kernel module for fully functional NTFS filesystem support. It allows
+ reading as well as writing.
+
+ It supports NTFS versions up to 3.1.
+endef
+
+$(eval $(call KernelPackage,fs-ntfs3))
+
+
define KernelPackage/fs-reiserfs
SUBMENU:=$(FS_MENU)
TITLE:=ReiserFS filesystem support
@@ -556,7 +658,7 @@ define KernelPackage/fs-vfat
FILES:= \
$(LINUX_DIR)/fs/fat/fat.ko \
$(LINUX_DIR)/fs/fat/vfat.ko
- AUTOLOAD:=$(call AutoLoad,30,fat vfat)
+ AUTOLOAD:=$(call AutoLoad,30,fat vfat,1)
$(call AddDepends/nls,cp437 iso8859-1 utf8)
endef
@@ -596,3 +698,24 @@ define KernelPackage/fuse/description
endef
$(eval $(call KernelPackage,fuse))
+
+
+define KernelPackage/pstore
+ SUBMENU:=$(FS_MENU)
+ TITLE:=Pstore file system
+ DEFAULT:=m if ALL_KMODS
+ KCONFIG:= \
+ CONFIG_PSTORE \
+ CONFIG_PSTORE_COMPRESS=y \
+ CONFIG_PSTORE_COMPRESS_DEFAULT="deflate" \
+ CONFIG_PSTORE_DEFLATE_COMPRESS=y \
+ CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT=y
+ FILES:= $(LINUX_DIR)/fs/pstore/pstore.ko
+ AUTOLOAD:=$(call AutoLoad,30,pstore,1)
+endef
+
+define KernelPackage/pstore/description
+ Kernel module for pstore filesystem support
+endef
+
+$(eval $(call KernelPackage,pstore))
diff --git a/package/kernel/linux/modules/gpio.mk b/package/kernel/linux/modules/gpio.mk
new file mode 100644
index 00000000000..511cd3af8ca
--- /dev/null
+++ b/package/kernel/linux/modules/gpio.mk
@@ -0,0 +1,138 @@
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+GPIO_MENU:=GPIO support
+
+define KernelPackage/gpio-amd-fch
+ SUBMENU:=$(GPIO_MENU)
+ DEPENDS:=@GPIO_SUPPORT @TARGET_x86
+ TITLE:=GPIO support for AMD Fusion Controller Hub (G-series SOCs)
+ KCONFIG:=CONFIG_GPIO_AMD_FCH
+ FILES:=$(LINUX_DIR)/drivers/gpio/gpio-amd-fch.ko
+ AUTOLOAD:=$(call AutoLoad,25,gpio-amd-fch,1)
+endef
+
+define KernelPackage/gpio-amd-fch/description
+ This option enables driver for GPIO on AMDs Fusion Controller Hub,
+ as found on G-series SOCs (eg. GX-412TC)
+endef
+
+$(eval $(call KernelPackage,gpio-amd-fch))
+
+
+define KernelPackage/gpio-beeper
+ SUBMENU:=$(GPIO_MENU)
+ TITLE:=GPIO beeper support
+ DEPENDS:=+kmod-input-core
+ KCONFIG:= \
+ CONFIG_INPUT_MISC=y \
+ CONFIG_INPUT_GPIO_BEEPER
+ FILES:= \
+ $(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
+ AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
+endef
+
+define KernelPackage/gpio-beeper/description
+ This enables playing beeps through an GPIO-connected buzzer
+endef
+
+$(eval $(call KernelPackage,gpio-beeper))
+
+
+define KernelPackage/gpio-cascade
+ SUBMENU:=$(GPIO_MENU)
+ TITLE:=Generic GPIO cascade
+ KCONFIG:=CONFIG_GPIO_CASCADE
+ DEPENDS:=@GPIO_SUPPORT +kmod-mux-core
+ FILES:=$(LINUX_DIR)/drivers/gpio/gpio-cascade.ko
+ AUTOLOAD:=$(call AutoLoad,29,gpio-cascade,1)
+endef
+
+define KernelPackage/gpio-cascade/description
+ Kernel module for Generic GPIO cascade
+endef
+
+$(eval $(call KernelPackage,gpio-cascade))
+
+
+define KernelPackage/gpio-f7188x
+ SUBMENU:=$(GPIO_MENU)
+ TITLE:=Fintek F718xx/F818xx GPIO Support
+ DEPENDS:=@GPIO_SUPPORT @TARGET_x86
+ KCONFIG:=CONFIG_GPIO_F7188X
+ FILES:=$(LINUX_DIR)/drivers/gpio/gpio-f7188x.ko
+ AUTOLOAD:=$(call AutoProbe,gpio-f7188x)
+endef
+
+define KernelPackage/gpio-f7188x/description
+ Kernel module for the GPIOs found on many Fintek Super-IO chips.
+endef
+
+$(eval $(call KernelPackage,gpio-f7188x))
+
+
+define KernelPackage/gpio-it87
+ SUBMENU:=$(GPIO_MENU)
+ DEPENDS:=@GPIO_SUPPORT @TARGET_x86
+ TITLE:=GPIO support for IT87xx Super I/O chips
+ KCONFIG:=CONFIG_GPIO_IT87
+ FILES:=$(LINUX_DIR)/drivers/gpio/gpio-it87.ko
+ AUTOLOAD:=$(call AutoLoad,25,gpio-it87,1)
+endef
+
+define KernelPackage/gpio-it87/description
+ This driver is tested with ITE IT8728 and IT8732 Super I/O chips, and
+ supports the IT8761E, IT8613, IT8620E, and IT8628E Super I/O chips as
+ well.
+endef
+
+$(eval $(call KernelPackage,gpio-it87))
+
+
+define KernelPackage/gpio-nxp-74hc164
+ SUBMENU:=$(GPIO_MENU)
+ TITLE:=NXP 74HC164 GPIO expander support
+ KCONFIG:=CONFIG_GPIO_74X164
+ FILES:=$(LINUX_DIR)/drivers/gpio/gpio-74x164.ko
+ AUTOLOAD:=$(call AutoProbe,gpio-74x164)
+endef
+
+define KernelPackage/gpio-nxp-74hc164/description
+ Kernel module for NXP 74HC164 GPIO expander
+endef
+
+$(eval $(call KernelPackage,gpio-nxp-74hc164))
+
+
+define KernelPackage/gpio-pca953x
+ SUBMENU:=$(GPIO_MENU)
+ DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core +kmod-regmap-i2c
+ TITLE:=PCA95xx, TCA64xx, and MAX7310 I/O ports
+ KCONFIG:=CONFIG_GPIO_PCA953X
+ FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pca953x.ko
+ AUTOLOAD:=$(call AutoLoad,55,gpio-pca953x)
+endef
+
+define KernelPackage/gpio-pca953x/description
+ Kernel module for MAX731{0,2,3,5}, PCA6107, PCA953{4-9}, PCA955{4-7},
+ PCA957{4,5} and TCA64{08,16} I2C GPIO expanders
+endef
+
+$(eval $(call KernelPackage,gpio-pca953x))
+
+
+define KernelPackage/gpio-pcf857x
+ SUBMENU:=$(GPIO_MENU)
+ DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
+ TITLE:=PCX857x, PCA967x and MAX732X I2C GPIO expanders
+ KCONFIG:=CONFIG_GPIO_PCF857X
+ FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pcf857x.ko
+ AUTOLOAD:=$(call AutoLoad,55,gpio-pcf857x)
+endef
+
+define KernelPackage/gpio-pcf857x/description
+ Kernel module for PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders
+endef
+
+$(eval $(call KernelPackage,gpio-pcf857x))
diff --git a/package/kernel/linux/modules/hwmon.mk b/package/kernel/linux/modules/hwmon.mk
index a39a8910f0a..8afe315344f 100644
--- a/package/kernel/linux/modules/hwmon.mk
+++ b/package/kernel/linux/modules/hwmon.mk
@@ -43,20 +43,6 @@ endef
$(eval $(call KernelPackage,hwmon-ad7418))
-define KernelPackage/hwmon-ads1015
- TITLE:=Texas Instruments ADS1015
- KCONFIG:= CONFIG_SENSORS_ADS1015
- FILES:= $(LINUX_DIR)/drivers/hwmon/ads1015.ko
- AUTOLOAD:=$(call AutoLoad,60,ads1015)
- $(call AddDepends/hwmon,+kmod-i2c-core)
-endef
-
-define KernelPackage/hwmon-ads1015/description
- Kernel module for Texas Instruments ADS1015 Analog-to-Digital converter
-endef
-
-$(eval $(call KernelPackage,hwmon-ads1015))
-
define KernelPackage/hwmon-adt7410
TITLE:=ADT7410 monitoring support
KCONFIG:= \
@@ -66,7 +52,7 @@ define KernelPackage/hwmon-adt7410
$(LINUX_DIR)/drivers/hwmon/adt7x10.ko \
$(LINUX_DIR)/drivers/hwmon/adt7410.ko
AUTOLOAD:=$(call AutoLoad,60,adt7x10 adt7410)
- $(call AddDepends/hwmon,+kmod-i2c-core)
+ $(call AddDepends/hwmon,+kmod-i2c-core +LINUX_6_1:kmod-regmap-core)
endef
define KernelPackage/hwmon-adt7410/description
@@ -91,6 +77,23 @@ endef
$(eval $(call KernelPackage,hwmon-adt7475))
+define KernelPackage/hwmon-coretemp
+ TITLE:=Intel Core/Core2/Atom temperature sensor
+ KCONFIG:=CONFIG_SENSORS_CORETEMP
+ FILES:=$(LINUX_DIR)/drivers/hwmon/coretemp.ko
+ AUTOLOAD:=$(call AutoProbe,coretemp)
+ $(call AddDepends/hwmon,)
+endef
+
+define KernelPackage/hwmon-coretemp/description
+ Kernel module for Intel Core/Core2/Atom temperature monitoring support.
+ Most of the family 6 CPUs are supported.
+ Check Documentation/hwmon/coretemp.rst for details.
+endef
+
+$(eval $(call KernelPackage,hwmon-coretemp))
+
+
define KernelPackage/hwmon-dme1737
TITLE:=SMSC DME1737 and compatible monitoring support
KCONFIG:=CONFIG_SENSORS_DME1737
@@ -122,6 +125,25 @@ endef
$(eval $(call KernelPackage,hwmon-drivetemp))
+define KernelPackage/hwmon-gsc
+ TITLE:=Gateworks System Controller support
+ KCONFIG:=CONFIG_MFD_GATEWORKS_GSC \
+ CONFIG_SENSORS_GSC
+ FILES:= \
+ $(LINUX_DIR)/drivers/mfd/gateworks-gsc.ko \
+ $(LINUX_DIR)/drivers/hwmon/gsc-hwmon.ko
+ AUTOLOAD:=$(call AutoLoad,20,gsc-hwmon,1)
+ $(call AddDepends/hwmon,+kmod-i2c-core)
+endef
+
+define KernelPackage/hwmon-gsc/description
+ Kernel module for Gateworks System Controller with temperature sensor,
+ADCs, and FAN controller
+endef
+
+$(eval $(call KernelPackage,hwmon-gsc))
+
+
define KernelPackage/hwmon-gpiofan
TITLE:=Generic GPIO FAN support
KCONFIG:=CONFIG_SENSORS_GPIO_FAN
@@ -152,6 +174,21 @@ endef
$(eval $(call KernelPackage,hwmon-f71882fg))
+define KernelPackage/hwmon-g762
+ TITLE:=G762/G763 fan speed PWM controller support
+ KCONFIG:=CONFIG_SENSORS_G762
+ FILES:=$(LINUX_DIR)/drivers/hwmon/g762.ko
+ AUTOLOAD:=$(call AutoProbe,g762)
+ $(call AddDepends/hwmon,+kmod-i2c-core)
+endef
+
+define KernelPackage/hwmon-g762/description
+ Kernel module for Global Mixed-mode Technology Inc G762 and G763 fan speed PWM controller chips.
+endef
+
+$(eval $(call KernelPackage,hwmon-g762))
+
+
define KernelPackage/hwmon-ina209
TITLE:=INA209 monitoring support
KCONFIG:=CONFIG_SENSORS_INA209
@@ -197,6 +234,21 @@ endef
$(eval $(call KernelPackage,hwmon-it87))
+define KernelPackage/hwmon-jc42
+ TITLE:=Jedec JC42.4 compliant temperature sensors support
+ KCONFIG:=CONFIG_SENSORS_JC42
+ FILES:=$(LINUX_DIR)/drivers/hwmon/jc42.ko
+ AUTOLOAD:=$(call AutoProbe,jc42)
+ $(call AddDepends/hwmon,+kmod-i2c-core +kmod-regmap-i2c)
+endef
+
+define KernelPackage/hwmon-jc42/description
+ Kernel module for Jedec JC42.4 compliant temperature sensors
+endef
+
+$(eval $(call KernelPackage,hwmon-jc42))
+
+
define KernelPackage/hwmon-lm63
TITLE:=LM63/64 monitoring support
KCONFIG:=CONFIG_SENSORS_LM63
@@ -212,6 +264,23 @@ endef
$(eval $(call KernelPackage,hwmon-lm63))
+define KernelPackage/hwmon-lm70
+ TITLE:=LM70 monitoring support
+ KCONFIG:=CONFIG_SENSORS_LM70 \
+ CONFIG_SPI=y \
+ CONFIG_SPI_MASTER=y
+ FILES:=$(LINUX_DIR)/drivers/hwmon/lm70.ko
+ AUTOLOAD:=$(call AutoProbe,lm70)
+ $(call AddDepends/hwmon)
+endef
+
+define KernelPackage/hwmon-lm70/description
+ Kernel module for lm70 and compatible thermal monitor chip
+endef
+
+$(eval $(call KernelPackage,hwmon-lm70))
+
+
define KernelPackage/hwmon-lm75
TITLE:=LM75 monitoring support
KCONFIG:=CONFIG_SENSORS_LM75
@@ -317,6 +386,36 @@ endef
$(eval $(call KernelPackage,hwmon-ltc4151))
+define KernelPackage/hwmon-max6642
+ TITLE:=MAX6642 monitoring support
+ KCONFIG:=CONFIG_SENSORS_MAX6642
+ FILES:=$(LINUX_DIR)/drivers/hwmon/max6642.ko
+ AUTOLOAD:=$(call AutoLoad,60,max6642 max6642)
+ $(call AddDepends/hwmon,+kmod-i2c-core)
+endef
+
+define KernelPackage/hwmon-max6642/description
+ Kernel module for Maxim MAX6642 temperature monitor
+endef
+
+$(eval $(call KernelPackage,hwmon-max6642))
+
+
+define KernelPackage/hwmon-max6697
+ TITLE:=MAX6697 monitoring support
+ KCONFIG:=CONFIG_SENSORS_MAX6697
+ FILES:=$(LINUX_DIR)/drivers/hwmon/max6697.ko
+ AUTOLOAD:=$(call AutoProbe,max6697)
+ $(call AddDepends/hwmon,+kmod-i2c-core)
+endef
+
+define KernelPackage/hwmon-max6697/description
+ Kernel module for Maxim MAX6697 temperature monitor
+endef
+
+$(eval $(call KernelPackage,hwmon-max6697))
+
+
define KernelPackage/hwmon-mcp3021
TITLE:=MCP3021/3221 monitoring support
KCONFIG:=CONFIG_SENSORS_MCP3021
@@ -335,9 +434,11 @@ $(eval $(call KernelPackage,hwmon-mcp3021))
define KernelPackage/hwmon-nct6775
TITLE:=NCT6106D/6775F/6776F/6779D/6791D/6792D/6793D and compatibles monitoring support
KCONFIG:=CONFIG_SENSORS_NCT6775
- FILES:=$(LINUX_DIR)/drivers/hwmon/nct6775.ko
+ FILES:= \
+ $(LINUX_DIR)/drivers/hwmon/nct6775.ko \
+ $(LINUX_DIR)/drivers/hwmon/nct6775-core.ko
AUTOLOAD:=$(call AutoProbe,nct6775)
- $(call AddDepends/hwmon,@PCI_SUPPORT @TARGET_x86 +kmod-hwmon-vid)
+ $(call AddDepends/hwmon,@PCI_SUPPORT @TARGET_x86 +kmod-hwmon-vid +kmod-regmap-core)
endef
define KernelPackage/hwmon-nct6775/description
@@ -347,6 +448,21 @@ endef
$(eval $(call KernelPackage,hwmon-nct6775))
+define KernelPackage/hwmon-nct7802
+ TITLE:=NCT7802Y and compatibles monitoring support
+ KCONFIG:=CONFIG_SENSORS_NCT7802
+ FILES:=$(LINUX_DIR)/drivers/hwmon/nct7802.ko
+ AUTOLOAD:=$(call AutoProbe,nct7802)
+ $(call AddDepends/hwmon,+kmod-regmap-i2c)
+endef
+
+define KernelPackage/hwmon-nct7802/description
+ Kernel module for NCT7802Y thermal monitor chip
+endef
+
+$(eval $(call KernelPackage,hwmon-nct7802))
+
+
define KernelPackage/hwmon-pc87360
TITLE:=PC87360 monitoring support
KCONFIG:=CONFIG_SENSORS_PC87360
@@ -441,6 +557,21 @@ endef
$(eval $(call KernelPackage,hwmon-sht21))
+define KernelPackage/hwmon-sht3x
+ TITLE:=Sensiron SHT3x and compat. monitoring support
+ KCONFIG:=CONFIG_SENSORS_SHT3x
+ FILES:=$(LINUX_DIR)/drivers/hwmon/sht3x.ko
+ AUTOLOAD:=$(call AutoProbe,sht3x)
+ $(call AddDepends/hwmon,+kmod-i2c-core +kmod-lib-crc8)
+endef
+
+define KernelPackage/hwmon-sht3x/description
+ Kernel module for Sensirion SHT3x temperature and humidity sensors chip
+endef
+
+$(eval $(call KernelPackage,hwmon-sht3x))
+
+
define KernelPackage/hwmon-tmp102
TITLE:=Texas Instruments TMP102 monitoring support
KCONFIG:=CONFIG_SENSORS_TMP102
@@ -486,6 +617,20 @@ endef
$(eval $(call KernelPackage,hwmon-tmp421))
+define KernelPackage/hwmon-tps23861
+ TITLE:=Texas Instruments TPS23861 PoE PSE
+ KCONFIG:=CONFIG_SENSORS_TPS23861
+ FILES:=$(LINUX_DIR)/drivers/hwmon/tps23861.ko
+ AUTOLOAD:=$(call AutoProbe,tps23861)
+ $(call AddDepends/hwmon,+kmod-i2c-core +kmod-regmap-i2c)
+endef
+
+define KernelPackage/hwmon-tps23861/description
+ Kernel module for the Texas Instruments TPS23861 802.3at PoE PSE chips.
+endef
+
+$(eval $(call KernelPackage,hwmon-tps23861))
+
define KernelPackage/hwmon-vid
TITLE:=VID/VRM/VRD voltage conversion module.
KCONFIG:=CONFIG_HWMON_VID
diff --git a/package/kernel/linux/modules/i2c.mk b/package/kernel/linux/modules/i2c.mk
index f4297632272..7cd69dbb95a 100644
--- a/package/kernel/linux/modules/i2c.mk
+++ b/package/kernel/linux/modules/i2c.mk
@@ -84,13 +84,27 @@ endef
$(eval $(call KernelPackage,i2c-algo-pcf))
+I2C_CCGS_UCSI_MODULES:= \
+ CONFIG_I2C_CCGX_UCSI:drivers/i2c/busses/i2c-ccgx-ucsi
+
+define KernelPackage/i2c-ccgs-ucsi
+ $(call i2c_defaults,$(I2C_CCGS_UCSI_MODULES),58)
+ TITLE:=Cypress CCGx Type-C controller
+ DEPENDS:=+kmod-i2c-core +kmod-regmap-core
+ HIDDEN:=y
+endef
+
+
+$(eval $(call KernelPackage,i2c-ccgs-ucsi))
+
+
I2C_DWCORE_MODULES:= \
CONFIG_I2C_DESIGNWARE_CORE:drivers/i2c/busses/i2c-designware-core
define KernelPackage/i2c-designware-core
$(call i2c_defaults,$(I2C_DWCORE_MODULES),58)
TITLE:=Synopsys DesignWare I2C core
- DEPENDS:=+kmod-i2c-core +!LINUX_5_4:kmod-regmap-core
+ DEPENDS:=+kmod-i2c-core +kmod-regmap-core
HIDDEN:=y
endef
@@ -103,7 +117,7 @@ I2C_DWPCI_MODULES:= \
define KernelPackage/i2c-designware-pci
$(call i2c_defaults,$(I2C_DWPCI_MODULES),59)
TITLE:=Synopsys DesignWare PCI
- DEPENDS:=+kmod-i2c-designware-core
+ DEPENDS:=@PCI_SUPPORT +kmod-i2c-designware-core +kmod-i2c-ccgs-ucsi
endef
define KernelPackage/i2c-designware-pci/description
@@ -186,6 +200,22 @@ endef
$(eval $(call KernelPackage,i2c-mux-gpio))
+I2C_MUX_REG_MODULES:= \
+ CONFIG_I2C_MUX_REG:drivers/i2c/muxes/i2c-mux-reg
+
+define KernelPackage/i2c-mux-reg
+ $(call i2c_defaults,$(I2C_MUX_REG_MODULES),51)
+ TITLE:=Register-based I2C mux/switches
+ DEPENDS:=+kmod-i2c-mux
+endef
+
+define KernelPackage/i2c-mux-reg/description
+ Kernel modules for register-based I2C bus mux/switching devices
+endef
+
+$(eval $(call KernelPackage,i2c-mux-reg))
+
+
I2C_MUX_PCA9541_MODULES:= \
CONFIG_I2C_MUX_PCA9541:drivers/i2c/muxes/i2c-mux-pca9541
diff --git a/package/kernel/linux/modules/iio.mk b/package/kernel/linux/modules/iio.mk
index 7bfbd380792..f901f87ddd5 100644
--- a/package/kernel/linux/modules/iio.mk
+++ b/package/kernel/linux/modules/iio.mk
@@ -25,14 +25,17 @@ endef
$(eval $(call KernelPackage,iio-core))
+define AddDepends/iio
+ SUBMENU:=$(IIO_MENU)
+ DEPENDS+=+kmod-iio-core $(1)
+endef
define KernelPackage/iio-kfifo-buf
- SUBMENU:=$(IIO_MENU)
TITLE:=Industrial I/O buffering based on kfifo
- DEPENDS:=+kmod-iio-core
KCONFIG:=CONFIG_IIO_KFIFO_BUF
FILES:=$(LINUX_DIR)/drivers/iio/buffer/kfifo_buf.ko
AUTOLOAD:=$(call AutoLoad,55,kfifo_buf)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-kfifo-buf/description
@@ -44,12 +47,12 @@ $(eval $(call KernelPackage,iio-kfifo-buf))
define KernelPackage/industrialio-triggered-buffer
- SUBMENU:=$(IIO_MENU)
TITLE:=Provides helper functions for setting up triggered buffers.
- DEPENDS:=+kmod-iio-core +kmod-iio-kfifo-buf
+ DEPENDS:=+kmod-iio-kfifo-buf
KCONFIG:=CONFIG_IIO_TRIGGERED_BUFFER
FILES:=$(LINUX_DIR)/drivers/iio/buffer/industrialio-triggered-buffer.ko
AUTOLOAD:=$(call AutoLoad,55,industrialio-triggered-buffer)
+ $(call AddDepends/iio)
endef
define KernelPackage/industrialio-triggered-buffer/description
@@ -60,14 +63,14 @@ $(eval $(call KernelPackage,industrialio-triggered-buffer))
define KernelPackage/iio-ad799x
- SUBMENU:=$(IIO_MENU)
- DEPENDS:=+kmod-i2c-core +kmod-iio-core +kmod-industrialio-triggered-buffer
+ DEPENDS:=+kmod-i2c-core +kmod-industrialio-triggered-buffer
TITLE:=Analog Devices AD799x ADC driver
KCONFIG:= \
CONFIG_AD799X_RING_BUFFER=y \
CONFIG_AD799X
FILES:=$(LINUX_DIR)/drivers/iio/adc/ad799x.ko
AUTOLOAD:=$(call AutoLoad,56,ad799x)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-ad799x/description
@@ -78,15 +81,30 @@ endef
$(eval $(call KernelPackage,iio-ad799x))
+define KernelPackage/iio-ads1015
+ DEPENDS:=+kmod-i2c-core +kmod-regmap-i2c +kmod-industrialio-triggered-buffer
+ TITLE:=Texas Instruments ADS1015 ADC driver
+ KCONFIG:= CONFIG_TI_ADS1015
+ FILES:=$(LINUX_DIR)/drivers/iio/adc/ti-ads1015.ko
+ AUTOLOAD:=$(call AutoLoad,56,ti-ads1015)
+ $(call AddDepends/iio)
+endef
+
+define KernelPackage/iio-ads1015/description
+ This driver adds support for Texas Instruments ADS1015 and ADS1115 ADCs.
+endef
+
+$(eval $(call KernelPackage,iio-ads1015))
+
define KernelPackage/iio-hmc5843
- SUBMENU:=$(IIO_MENU)
- DEPENDS:=+kmod-i2c-core +kmod-iio-core +kmod-regmap-i2c +kmod-industrialio-triggered-buffer
+ DEPENDS:=+kmod-i2c-core +kmod-regmap-i2c +kmod-industrialio-triggered-buffer
TITLE:=Honeywell HMC58x3 Magnetometer
KCONFIG:= CONFIG_SENSORS_HMC5843_I2C
FILES:= \
$(LINUX_DIR)/drivers/iio/magnetometer/hmc5843_i2c.ko \
$(LINUX_DIR)/drivers/iio/magnetometer/hmc5843_core.ko
AUTOLOAD:=$(call AutoLoad,56,hmc5843)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-hmc5843/description
@@ -96,12 +114,12 @@ endef
$(eval $(call KernelPackage,iio-hmc5843))
define KernelPackage/iio-bh1750
- SUBMENU:=$(IIO_MENU)
- DEPENDS:=+kmod-i2c-core +kmod-iio-core
+ DEPENDS:=+kmod-i2c-core
TITLE:=ROHM BH1750 ambient light sensor
KCONFIG:= CONFIG_BH1750
FILES:=$(LINUX_DIR)/drivers/iio/light/bh1750.ko
AUTOLOAD:=$(call AutoLoad,56,bh1750)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-bh1750/description
ROHM BH1750 ambient light sensor (i2c bus)
@@ -109,12 +127,12 @@ endef
$(eval $(call KernelPackage,iio-bh1750))
define KernelPackage/iio-am2315
- SUBMENU:=$(IIO_MENU)
- DEPENDS:=+kmod-i2c-core +kmod-iio-core +kmod-industrialio-triggered-buffer
+ DEPENDS:=+kmod-i2c-core +kmod-industrialio-triggered-buffer
TITLE:=Asong AM2315 humidity/temperature sensor
KCONFIG:= CONFIG_AM2315
FILES:=$(LINUX_DIR)/drivers/iio/humidity/am2315.ko
AUTOLOAD:=$(call AutoLoad,56,am2315)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-am2315/description
Aosong AM2315 humidity/temperature sensor (I2C bus)
@@ -122,13 +140,13 @@ endef
$(eval $(call KernelPackage,iio-am2315))
define KernelPackage/iio-mxs-lradc
- SUBMENU:=$(IIO_MENU)
- DEPENDS:=@TARGET_mxs +kmod-iio-core +kmod-industrialio-triggered-buffer
+ DEPENDS:=@TARGET_mxs +kmod-industrialio-triggered-buffer
TITLE:=Freescale i.MX23/i.MX28 LRADC ADC driver
KCONFIG:= \
CONFIG_MXS_LRADC_ADC
FILES:=$(LINUX_DIR)/drivers/iio/adc/mxs-lradc-adc.ko
AUTOLOAD:=$(call AutoLoad,56,mxs-lradc-adc)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-mxs-lradc/description
@@ -138,13 +156,13 @@ endef
$(eval $(call KernelPackage,iio-mxs-lradc))
define KernelPackage/iio-dht11
- SUBMENU:=$(IIO_MENU)
- DEPENDS:=+kmod-iio-core @GPIO_SUPPORT @USES_DEVICETREE
+ DEPENDS:=@GPIO_SUPPORT @USES_DEVICETREE
TITLE:=DHT11 (and compatible) humidity and temperature sensors
KCONFIG:= \
CONFIG_DHT11
FILES:=$(LINUX_DIR)/drivers/iio/humidity/dht11.ko
AUTOLOAD:=$(call AutoLoad,56,dht11)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-dht11/description
@@ -157,11 +175,11 @@ $(eval $(call KernelPackage,iio-dht11))
define KernelPackage/iio-bme680
- SUBMENU:=$(IIO_MENU)
TITLE:=BME680 gas/humidity/pressure/temperature sensor
- DEPENDS:=+kmod-iio-core +kmod-regmap-core
+ DEPENDS:=+kmod-regmap-core
KCONFIG:=CONFIG_BME680
FILES:=$(LINUX_DIR)/drivers/iio/chemical/bme680_core.ko
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-bme680/description
@@ -172,12 +190,12 @@ endef
$(eval $(call KernelPackage,iio-bme680))
define KernelPackage/iio-bme680-i2c
- SUBMENU:=$(IIO_MENU)
TITLE:=BME680 gas/humidity/pressure/temperature sensor (I2C)
DEPENDS:=+kmod-iio-bme680 +kmod-regmap-i2c
KCONFIG:=CONFIG_BME680_I2C
FILES:=$(LINUX_DIR)/drivers/iio/chemical/bme680_i2c.ko
AUTOLOAD:=$(call AutoProbe,bme680-i2c)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-bme680-i2c/description
This driver adds support for Bosch Sensortec's BME680 connected via I2C.
@@ -186,12 +204,12 @@ endef
$(eval $(call KernelPackage,iio-bme680-i2c))
define KernelPackage/iio-bme680-spi
- SUBMENU:=$(IIO_MENU)
TITLE:=BME680 gas/humidity/pressure/temperature sensor (SPI)
DEPENDS:=+kmod-iio-bme680 +kmod-regmap-spi
KCONFIG:=CONFIG_BME680_SPI
FILES:=$(LINUX_DIR)/drivers/iio/chemical/bme680_spi.ko
AUTOLOAD:=$(call AutoProbe,bme680-spi)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-bme680-spi/description
This driver adds support for Bosch Sensortec's BME680 connected via SPI.
@@ -201,11 +219,11 @@ $(eval $(call KernelPackage,iio-bme680-spi))
define KernelPackage/iio-bmp280
- SUBMENU:=$(IIO_MENU)
TITLE:=BMP180/BMP280/BME280 pressure/temperatur sensor
- DEPENDS:=+kmod-iio-core +kmod-regmap-core
+ DEPENDS:=+kmod-regmap-core
KCONFIG:=CONFIG_BMP280
FILES:=$(LINUX_DIR)/drivers/iio/pressure/bmp280.ko
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-bmp280/description
@@ -218,12 +236,12 @@ $(eval $(call KernelPackage,iio-bmp280))
define KernelPackage/iio-bmp280-i2c
- SUBMENU:=$(IIO_MENU)
TITLE:=BMP180/BMP280/BME280 pressure/temperatur sensor (I2C)
DEPENDS:=+kmod-iio-bmp280 +kmod-i2c-core +kmod-regmap-i2c
KCONFIG:=CONFIG_BMP280_I2C
FILES:=$(LINUX_DIR)/drivers/iio/pressure/bmp280-i2c.ko
AUTOLOAD:=$(call AutoProbe,bmp280-i2c)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-bmp280-i2c/description
This driver adds support for Bosch Sensortec's digital pressure and
@@ -234,12 +252,12 @@ $(eval $(call KernelPackage,iio-bmp280-i2c))
define KernelPackage/iio-bmp280-spi
- SUBMENU:=$(IIO_MENU)
TITLE:=BMP180/BMP280/BME280 pressure/temperatur sensor (SPI)
DEPENDS:=+kmod-iio-bmp280 +kmod-spi-bitbang
KCONFIG:=CONFIG_BMP280_SPI
FILES:=$(LINUX_DIR)/drivers/iio/pressure/bmp280-spi.ko
AUTOLOAD:=$(call AutoProbe,bmp280-spi)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-bmp280-spi/description
This driver adds support for Bosch Sensortec's digital pressure and
@@ -249,8 +267,7 @@ endef
$(eval $(call KernelPackage,iio-bmp280-spi))
define KernelPackage/iio-htu21
- SUBMENU:=$(IIO_MENU)
- DEPENDS:=+kmod-i2c-core +kmod-iio-core
+ DEPENDS:=+kmod-i2c-core
TITLE:=HTU21 humidity & temperature sensor
KCONFIG:= \
CONFIG_HTU21 \
@@ -259,6 +276,7 @@ define KernelPackage/iio-htu21
$(LINUX_DIR)/drivers/iio/humidity/htu21.ko \
$(LINUX_DIR)/drivers/iio/common/ms_sensors/ms_sensors_i2c.ko
AUTOLOAD:=$(call AutoLoad,56,htu21)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-htu21/description
@@ -272,13 +290,13 @@ $(eval $(call KernelPackage,iio-htu21))
define KernelPackage/iio-ccs811
- SUBMENU:=$(IIO_MENU)
- DEPENDS:=+kmod-i2c-core +kmod-iio-core +kmod-industrialio-triggered-buffer
+ DEPENDS:=+kmod-i2c-core +kmod-industrialio-triggered-buffer
TITLE:=AMS CCS811 VOC sensor
KCONFIG:= \
CONFIG_CCS811
FILES:= $(LINUX_DIR)/drivers/iio/chemical/ccs811.ko
AUTOLOAD:=$(call AutoLoad,56,ccs811)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-ccs811/description
@@ -289,12 +307,12 @@ $(eval $(call KernelPackage,iio-ccs811))
define KernelPackage/iio-si7020
- SUBMENU:=$(IIO_MENU)
- DEPENDS:=+kmod-i2c-core +kmod-iio-core
+ DEPENDS:=+kmod-i2c-core
TITLE:=Silicon Labs Si7020 sensor
KCONFIG:= CONFIG_SI7020
FILES:=$(LINUX_DIR)/drivers/iio/humidity/si7020.ko
AUTOLOAD:=$(call AutoLoad,56,si7020)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-si7020/description
@@ -307,15 +325,15 @@ $(eval $(call KernelPackage,iio-si7020))
define KernelPackage/iio-st_accel
- SUBMENU:=$(IIO_MENU)
TITLE:=STMicroelectronics accelerometer 3-Axis Driver
- DEPENDS:=+kmod-iio-core +kmod-regmap-core +kmod-industrialio-triggered-buffer
+ DEPENDS:=+kmod-regmap-core +kmod-industrialio-triggered-buffer
KCONFIG:= \
CONFIG_IIO_ST_ACCEL_3AXIS \
CONFIG_IIO_ST_SENSORS_CORE
FILES:= \
$(LINUX_DIR)/drivers/iio/accel/st_accel.ko \
$(LINUX_DIR)/drivers/iio/common/st_sensors/st_sensors.ko
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-st_accel/description
@@ -329,7 +347,6 @@ $(eval $(call KernelPackage,iio-st_accel))
define KernelPackage/iio-st_accel-i2c
- SUBMENU:=$(IIO_MENU)
TITLE:=STMicroelectronics accelerometer 3-Axis Driver (I2C)
DEPENDS:=+kmod-iio-st_accel +kmod-i2c-core +kmod-regmap-i2c
KCONFIG:= CONFIG_IIO_ST_ACCEL_I2C_3AXIS
@@ -337,6 +354,7 @@ define KernelPackage/iio-st_accel-i2c
$(LINUX_DIR)/drivers/iio/accel/st_accel_i2c.ko \
$(LINUX_DIR)/drivers/iio/common/st_sensors/st_sensors_i2c.ko
AUTOLOAD:=$(call AutoLoad,56,st_accel_i2c)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-st_accel-i2c/description
@@ -347,7 +365,6 @@ $(eval $(call KernelPackage,iio-st_accel-i2c))
define KernelPackage/iio-st_accel-spi
- SUBMENU:=$(IIO_MENU)
TITLE:=STMicroelectronics accelerometer 3-Axis Driver (SPI)
DEPENDS:=+kmod-iio-st_accel +kmod-regmap-spi
KCONFIG:= CONFIG_IIO_ST_ACCEL_SPI_3AXIS
@@ -355,6 +372,7 @@ define KernelPackage/iio-st_accel-spi
$(LINUX_DIR)/drivers/iio/accel/st_accel_spi.ko \
$(LINUX_DIR)/drivers/iio/common/st_sensors/st_sensors_spi.ko
AUTOLOAD:=$(call AutoLoad,56,st_accel_spi)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-st_accel-spi/description
@@ -365,12 +383,12 @@ $(eval $(call KernelPackage,iio-st_accel-spi))
define KernelPackage/iio-lsm6dsx
- SUBMENU:=$(IIO_MENU)
- DEPENDS:=+kmod-iio-core +kmod-iio-kfifo-buf +kmod-regmap-core
+ DEPENDS:=+kmod-iio-kfifo-buf +kmod-regmap-core
TITLE:=ST LSM6DSx driver for IMU MEMS sensors
KCONFIG:=CONFIG_IIO_ST_LSM6DSX
FILES:=$(LINUX_DIR)/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.ko
AUTOLOAD:=$(call AutoProbe,st_lsm6dsx)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-lsm6dsx/description
@@ -381,12 +399,12 @@ $(eval $(call KernelPackage,iio-lsm6dsx))
define KernelPackage/iio-lsm6dsx-i2c
- SUBMENU:=$(IIO_MENU)
DEPENDS:=+kmod-iio-lsm6dsx +kmod-i2c-core +kmod-regmap-i2c
TITLE:=ST LSM6DSx driver for IMU MEMS sensors (I2C)
KCONFIG:=CONFIG_IIO_ST_LSM6DSX
FILES:=$(LINUX_DIR)/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_i2c.ko
AUTOLOAD:=$(call AutoProbe,st_lsm6dsx-i2c)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-lsm6dsx-i2c/description
@@ -397,12 +415,12 @@ $(eval $(call KernelPackage,iio-lsm6dsx-i2c))
define KernelPackage/iio-lsm6dsx-spi
- SUBMENU:=$(IIO_MENU)
DEPENDS:=+kmod-iio-lsm6dsx +kmod-regmap-spi
TITLE:=ST LSM6DSx driver for IMU MEMS sensors (SPI)
KCONFIG:=CONFIG_IIO_ST_LSM6DSX
FILES:=$(LINUX_DIR)/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_spi.ko
AUTOLOAD:=$(call AutoProbe,st_lsm6dsx-spi)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-lsm6dsx-spi/description
@@ -413,12 +431,16 @@ $(eval $(call KernelPackage,iio-lsm6dsx-spi))
define KernelPackage/iio-sps30
- SUBMENU:=$(IIO_MENU)
- DEPENDS:=+kmod-i2c-core +kmod-iio-core +kmod-industrialio-triggered-buffer +kmod-lib-crc8
+ DEPENDS:=+kmod-i2c-core +kmod-industrialio-triggered-buffer +kmod-lib-crc8
TITLE:=Sensirion SPS30 particulate matter sensor
- KCONFIG:=CONFIG_SPS30
- FILES:=$(LINUX_DIR)/drivers/iio/chemical/sps30.ko
- AUTOLOAD:=$(call AutoProbe,sps30)
+ KCONFIG:= \
+ CONFIG_SPS30 \
+ CONFIG_SPS30_I2C
+ FILES:= \
+ $(LINUX_DIR)/drivers/iio/chemical/sps30.ko \
+ $(LINUX_DIR)/drivers/iio/chemical/sps30_i2c.ko
+ AUTOLOAD:=$(call AutoProbe,sps30 sps30_i2c)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-sps30/description
@@ -429,12 +451,12 @@ $(eval $(call KernelPackage,iio-sps30))
define KernelPackage/iio-tsl4531
- SUBMENU:=$(IIO_MENU)
- DEPENDS:=+kmod-i2c-core +kmod-iio-core
+ DEPENDS:=+kmod-i2c-core
TITLE:=TAOS TSL4531 ambient light sensor
KCONFIG:= CONFIG_TSL4531
FILES:=$(LINUX_DIR)/drivers/iio/light/tsl4531.ko
AUTOLOAD:=$(call AutoLoad,56,tsl4531)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-tsl4531/description
@@ -447,12 +469,12 @@ $(eval $(call KernelPackage,iio-tsl4531))
define KernelPackage/iio-fxas21002c
- SUBMENU:=$(IIO_MENU)
TITLE:=Freescale FXAS21002C 3-axis gyro driver
- DEPENDS:=+kmod-iio-core +kmod-regmap-core +kmod-industrialio-triggered-buffer
+ DEPENDS:=+kmod-regmap-core +kmod-industrialio-triggered-buffer
KCONFIG:= CONFIG_FXAS21002C
FILES:=$(LINUX_DIR)/drivers/iio/gyro/fxas21002c_core.ko
AUTOLOAD:=$(call AutoLoad,56,fxas21002c)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-fxas21002c/description
@@ -463,12 +485,12 @@ $(eval $(call KernelPackage,iio-fxas21002c))
define KernelPackage/iio-fxas21002c-i2c
- SUBMENU:=$(IIO_MENU)
TITLE:=Freescale FXAS21002C 3-axis gyro driver (I2C)
DEPENDS:=+kmod-iio-fxas21002c +kmod-i2c-core +kmod-regmap-i2c
KCONFIG:= CONFIG_FXAS21002C_I2C
FILES:=$(LINUX_DIR)/drivers/iio/gyro/fxas21002c_i2c.ko
AUTOLOAD:=$(call AutoLoad,56,fxas21002c_i2c)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-fxas21002c-i2c/description
@@ -480,12 +502,12 @@ endef
$(eval $(call KernelPackage,iio-fxas21002c-i2c))
define KernelPackage/iio-fxas21002c-spi
- SUBMENU:=$(IIO_MENU)
DEPENDS:=+kmod-iio-fxas21002c +kmod-regmap-spi
TITLE:=Freescale FXAS21002C 3-axis gyro driver (SPI)
KCONFIG:= CONFIG_FXAS21002C_SPI
FILES:=$(LINUX_DIR)/drivers/iio/gyro/fxas21002c_spi.ko
AUTOLOAD:=$(call AutoLoad,56,fxas21002c_spi)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-fxas21002c-spi/description
@@ -497,12 +519,12 @@ $(eval $(call KernelPackage,iio-fxas21002c-spi))
define KernelPackage/iio-fxos8700
- SUBMENU:=$(IIO_MENU)
TITLE:=Freescale FXOS8700 3-axis accelerometer driver
- DEPENDS:=+kmod-iio-core +kmod-regmap-core
+ DEPENDS:=+kmod-regmap-core
KCONFIG:= CONFIG_FXOS8700
FILES:=$(LINUX_DIR)/drivers/iio/imu/fxos8700_core.ko
AUTOLOAD:=$(call AutoLoad,56,fxos8700)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-fxos8700/description
@@ -513,12 +535,12 @@ $(eval $(call KernelPackage,iio-fxos8700))
define KernelPackage/iio-fxos8700-i2c
- SUBMENU:=$(IIO_MENU)
TITLE:=Freescale FXOS8700 3-axis acceleromter driver (I2C)
DEPENDS:=+kmod-iio-fxos8700 +kmod-i2c-core +kmod-regmap-i2c
KCONFIG:= CONFIG_FXOS8700_I2C
FILES:=$(LINUX_DIR)/drivers/iio/imu/fxos8700_i2c.ko
AUTOLOAD:=$(call AutoLoad,56,fxos8700_i2c)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-fxos8700-i2c/description
@@ -530,12 +552,12 @@ endef
$(eval $(call KernelPackage,iio-fxos8700-i2c))
define KernelPackage/iio-fxos8700-spi
- SUBMENU:=$(IIO_MENU)
DEPENDS:=+kmod-iio-fxos8700 +kmod-regmap-spi
TITLE:=Freescale FXOS8700 3-axis accelerometer driver (SPI)
KCONFIG:= CONFIG_FXOS8700_SPI
FILES:=$(LINUX_DIR)/drivers/iio/imu/fxos8700_spi.ko
AUTOLOAD:=$(call AutoLoad,56,fxos8700_spi)
+ $(call AddDepends/iio)
endef
define KernelPackage/iio-fxos8700-spi/description
@@ -544,3 +566,17 @@ define KernelPackage/iio-fxos8700-spi/description
endef
$(eval $(call KernelPackage,iio-fxos8700-spi))
+
+define KernelPackage/iio-ti-am335x-adc
+ TITLE:= TI Sitara AM335x ADC driver
+ DEPENDS:=@TARGET_omap
+ KCONFIG:=CONFIG_TI_AM335X_ADC
+ FILES:=$(LINUX_DIR)/drivers/iio/adc/ti_am335x_adc.ko
+ AUTOLOAD:=$(call AutoProbe,ti_am335x_adc)
+ $(call AddDepends/iio,+kmod-iio-kfifo-buf)
+endef
+define KernelPackage/iio-ti-am335x-adc/description
+ Driver for the TI AM335x ADC.
+endef
+
+$(eval $(call KernelPackage,iio-ti-am335x-adc))
diff --git a/package/kernel/linux/modules/input.mk b/package/kernel/linux/modules/input.mk
index c2f39ddd903..92587b1874c 100644
--- a/package/kernel/linux/modules/input.mk
+++ b/package/kernel/linux/modules/input.mk
@@ -92,7 +92,7 @@ $(eval $(call KernelPackage,input-gpio-keys))
define KernelPackage/input-gpio-keys-polled
SUBMENU:=$(INPUT_MODULES_MENU)
TITLE:=Polled GPIO key support
- DEPENDS:=@GPIO_SUPPORT +kmod-input-polldev
+ DEPENDS:=@GPIO_SUPPORT +kmod-input-core
KCONFIG:= \
CONFIG_KEYBOARD_GPIO_POLLED \
CONFIG_INPUT_KEYBOARD=y
@@ -142,21 +142,6 @@ endef
$(eval $(call KernelPackage,input-joydev))
-define KernelPackage/input-polldev
- SUBMENU:=$(INPUT_MODULES_MENU)
- TITLE:=Polled Input device support
- DEPENDS:=+kmod-input-core
- KCONFIG:=CONFIG_INPUT_POLLDEV
- FILES:=$(LINUX_DIR)/drivers/input/input-polldev.ko
-endef
-
-define KernelPackage/input-polldev/description
- Kernel module for support of polled input devices
-endef
-
-$(eval $(call KernelPackage,input-polldev))
-
-
define KernelPackage/input-matrixkmap
SUBMENU:=$(INPUT_MODULES_MENU)
TITLE:=Input matrix devices support
@@ -179,10 +164,8 @@ define KernelPackage/input-touchscreen-ads7846
DEPENDS:=+kmod-hwmon-core +kmod-input-core +kmod-spi-bitbang
KCONFIG:= \
CONFIG_INPUT_TOUCHSCREEN=y \
- CONFIG_TOUCHSCREEN_PROPERTIES=y \
CONFIG_TOUCHSCREEN_ADS7846
- FILES:=$(LINUX_DIR)/drivers/input/touchscreen/ads7846.ko \
- $(LINUX_DIR)/drivers/input/touchscreen/of_touchscreen.ko
+ FILES:=$(LINUX_DIR)/drivers/input/touchscreen/ads7846.ko
AUTOLOAD:=$(call AutoProbe,ads7846)
endef
@@ -193,10 +176,29 @@ endef
$(eval $(call KernelPackage,input-touchscreen-ads7846))
+define KernelPackage/input-touchscreen-edt-ft5x06
+ SUBMENU:=$(INPUT_MODULES_MENU)
+ TITLE:=EDT FT5x06 and Focaltech FT6236 based touchscreens
+ DEPENDS:=+kmod-i2c-core +kmod-input-core
+ KCONFIG:= \
+ CONFIG_INPUT_TOUCHSCREEN=y \
+ CONFIG_TOUCHSCREEN_EDT_FT5X06
+ FILES:=$(LINUX_DIR)/drivers/input/touchscreen/edt-ft5x06.ko
+ AUTOLOAD:=$(call AutoProbe,edt-ft5x06)
+endef
+
+define KernelPackage/input-touchscreen-edt-ft5x06/description
+ Kernel module for EDT FT5206, FT5306, FT5406, FT5506, Evervision FT5726 \
+ and Focaltech FT6236 based touchscreens
+endef
+
+$(eval $(call KernelPackage,input-touchscreen-edt-ft5x06))
+
+
define KernelPackage/keyboard-imx
SUBMENU:=$(INPUT_MODULES_MENU)
TITLE:=IMX keypad support
- DEPENDS:=@(TARGET_mxs||TARGET_imx6) +kmod-input-matrixkmap
+ DEPENDS:=@(TARGET_mxs||TARGET_imx) +kmod-input-matrixkmap
KCONFIG:= \
CONFIG_KEYBOARD_IMX \
CONFIG_INPUT_KEYBOARD=y
diff --git a/package/kernel/linux/modules/leds.mk b/package/kernel/linux/modules/leds.mk
index 0ef0aee3fbe..60465a8ad50 100644
--- a/package/kernel/linux/modules/leds.mk
+++ b/package/kernel/linux/modules/leds.mk
@@ -99,6 +99,38 @@ endef
$(eval $(call KernelPackage,ledtrig-oneshot))
+define KernelPackage/ledtrig-pattern
+ SUBMENU:=$(LEDS_MENU)
+ TITLE:=LED Pattern Trigger
+ KCONFIG:=CONFIG_LEDS_TRIGGER_PATTERN
+ FILES:=$(LED_TRIGGER_DIR)/ledtrig-pattern.ko
+ AUTOLOAD:=$(call AutoLoad,50,ledtrig-pattern)
+endef
+
+define KernelPackage/ledtrig-pattern/description
+ This allows LEDs to be controlled by a software or hardware pattern
+ which is a series of tuples, of brightness and duration (ms).
+endef
+
+$(eval $(call KernelPackage,ledtrig-pattern))
+
+
+define KernelPackage/ledtrig-tty
+ SUBMENU:=$(LEDS_MENU)
+ TITLE:=LED Trigger for TTY devices
+ KCONFIG:=CONFIG_LEDS_TRIGGER_TTY
+ FILES:=$(LED_TRIGGER_DIR)/ledtrig-tty.ko
+ AUTOLOAD:=$(call AutoLoad,50,ledtrig-tty)
+endef
+
+define KernelPackage/ledtrig-tty/description
+ This allows LEDs to be controlled by activity on ttys which includes
+ serial devices like '/dev/ttyS0'.
+endef
+
+$(eval $(call KernelPackage,ledtrig-tty))
+
+
define KernelPackage/leds-apu
SUBMENU:=$(LEDS_MENU)
TITLE:=PC Engines APU1 LED support
@@ -115,6 +147,41 @@ endef
$(eval $(call KernelPackage,leds-apu))
+define KernelPackage/leds-mlxcpld
+ SUBMENU:=$(LEDS_MENU)
+ TITLE:=LED support for the Mellanox boards
+ FILES:=$(LINUX_DIR)/drivers/leds/leds-mlxcpld.ko
+ KCONFIG:=CONFIG_LEDS_MLXCPLD
+ AUTOLOAD:=$(call AutoProbe,leds-mlxcpld)
+endef
+
+define KernelPackage/leds-mlxcpld/description
+ This option enables support for the LEDs on the Mellanox
+ boards.
+endef
+
+$(eval $(call KernelPackage,leds-mlxcpld))
+
+
+define KernelPackage/leds-pca955x
+ SUBMENU:=$(LEDS_MENU)
+ TITLE:=LED driver for PCA955x I2C chips
+ DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
+ KCONFIG:=CONFIG_LEDS_PCA955X \
+ CONFIG_LEDS_PCA955X_GPIO=y
+ FILES:=$(LINUX_DIR)/drivers/leds/leds-pca955x.ko
+ AUTOLOAD:=$(call AutoLoad,60,leds-pca955x,1)
+endef
+
+define KernelPackage/leds-pca955x/description
+ This option enables support for LEDs connected to PCA955x
+ LED driver chips accessed via the I2C bus. Supported
+ devices include PCA9550, PCA9551, PCA9552, and PCA9553.
+endef
+
+$(eval $(call KernelPackage,leds-pca955x))
+
+
define KernelPackage/leds-pca963x
SUBMENU:=$(LEDS_MENU)
TITLE:=PCA963x LED support
@@ -146,6 +213,24 @@ endef
$(eval $(call KernelPackage,leds-pwm))
+
+define KernelPackage/leds-tlc591xx
+ SUBMENU:=$(LEDS_MENU)
+ TITLE:=LED driver for TLC59108 and TLC59116 controllers
+ DEPENDS:=+kmod-i2c-core +kmod-regmap-i2c
+ KCONFIG:=CONFIG_LEDS_TLC591XX
+ FILES:=$(LINUX_DIR)/drivers/leds/leds-tlc591xx.ko
+ AUTOLOAD:=$(call AutoLoad,60,leds-tlc591xx,1)
+endef
+
+define KernelPackage/leds-tlc591xx/description
+ This option enables support for Texas Instruments TLC59108
+ and TLC59116 LED controllers.
+endef
+
+$(eval $(call KernelPackage,leds-tlc591xx))
+
+
define KernelPackage/leds-uleds
SUBMENU:=$(LEDS_MENU)
TITLE:=Userspace LEDs
@@ -176,3 +261,37 @@ define KernelPackage/input-leds/description
endef
$(eval $(call KernelPackage,input-leds))
+
+
+define KernelPackage/leds-lp55xx-common
+ SUBMENU:=$(LEDS_MENU)
+ TITLE:=LED common driver for LP5521/LP5523/LP55231/LP5562 controllers
+ DEPENDS:=+kmod-i2c-core
+ KCONFIG:=CONFIG_LEDS_LP55XX_COMMON
+ FILES:=$(LINUX_DIR)/drivers/leds/leds-lp55xx-common.ko
+ AUTOLOAD:=$(call AutoLoad,60,leds-lp55xx-common,1)
+endef
+
+define KernelPackage/leds-lp55xx-common/description
+ This option enables support for Texas Instruments
+ LP5521/LP5523/LP55231/LP5562 common driver.
+endef
+
+$(eval $(call KernelPackage,leds-lp55xx-common))
+
+
+define KernelPackage/leds-lp5562
+ SUBMENU:=$(LEDS_MENU)
+ TITLE:=LED driver for LP5562 controllers
+ DEPENDS:=+kmod-i2c-core +kmod-leds-lp55xx-common
+ KCONFIG:=CONFIG_LEDS_LP5562
+ FILES:=$(LINUX_DIR)/drivers/leds/leds-lp5562.ko
+ AUTOLOAD:=$(call AutoLoad,60,leds-lp5562,1)
+endef
+
+define KernelPackage/leds-lp5562/description
+ This option enables support for Texas Instruments LP5562
+ LED controllers.
+endef
+
+$(eval $(call KernelPackage,leds-lp5562)) \ No newline at end of file
diff --git a/package/kernel/linux/modules/lib.mk b/package/kernel/linux/modules/lib.mk
index 9a341932bde..8d67a3187a6 100644
--- a/package/kernel/linux/modules/lib.mk
+++ b/package/kernel/linux/modules/lib.mk
@@ -109,9 +109,10 @@ define KernelPackage/lib-lzo
HIDDEN:=1
FILES:= \
$(LINUX_DIR)/crypto/lzo.ko \
+ $(LINUX_DIR)/crypto/lzo-rle.ko \
$(LINUX_DIR)/lib/lzo/lzo_compress.ko \
$(LINUX_DIR)/lib/lzo/lzo_decompress.ko
- AUTOLOAD:=$(call AutoProbe,lzo lzo_compress lzo_decompress)
+ AUTOLOAD:=$(call AutoProbe,lzo lzo-rle lzo_compress lzo_decompress)
endef
define KernelPackage/lib-lzo/description
@@ -133,6 +134,7 @@ define KernelPackage/lib-zstd
FILES:= \
$(LINUX_DIR)/crypto/zstd.ko \
$(LINUX_DIR)/lib/xxhash.ko \
+ $(LINUX_DIR)/lib/zstd/zstd_common.ko@ge6.1 \
$(LINUX_DIR)/lib/zstd/zstd_compress.ko \
$(LINUX_DIR)/lib/zstd/zstd_decompress.ko
AUTOLOAD:=$(call AutoProbe,xxhash zstd zstd_compress zstd_decompress)
@@ -151,13 +153,15 @@ define KernelPackage/lib-lz4
DEPENDS:=+kmod-crypto-acompress
KCONFIG:= \
CONFIG_CRYPTO_LZ4 \
+ CONFIG_CRYPTO_LZ4HC \
CONFIG_LZ4_COMPRESS \
CONFIG_LZ4_DECOMPRESS
FILES:= \
$(LINUX_DIR)/crypto/lz4.ko \
$(LINUX_DIR)/lib/lz4/lz4_compress.ko \
+ $(LINUX_DIR)/lib/lz4/lz4hc_compress.ko \
$(LINUX_DIR)/lib/lz4/lz4_decompress.ko
- AUTOLOAD:=$(call AutoProbe,lz4 lz4_compress lz4_decompress)
+ AUTOLOAD:=$(call AutoProbe,lz4 lz4_compress lz4hc_compress lz4_decompress)
endef
define KernelPackage/lib-lz4/description
@@ -167,6 +171,28 @@ endef
$(eval $(call KernelPackage,lib-lz4))
+define KernelPackage/lib-842
+ SUBMENU:=$(LIB_MENU)
+ TITLE:=842 support
+ DEPENDS:=+kmod-crypto-acompress +kmod-crypto-crc32
+ KCONFIG:= \
+ CONFIG_CRYPTO_842 \
+ CONFIG_842_COMPRESS \
+ CONFIG_842_DECOMPRESS
+ FILES:= \
+ $(LINUX_DIR)/crypto/842.ko \
+ $(LINUX_DIR)/lib/842/842_compress.ko \
+ $(LINUX_DIR)/lib/842/842_decompress.ko
+ AUTOLOAD:=$(call AutoProbe,842 842_compress 842_decompress)
+endef
+
+define KernelPackage/lib-842/description
+ Kernel module for 842 compression/decompression support
+endef
+
+$(eval $(call KernelPackage,lib-842))
+
+
define KernelPackage/lib-raid6
SUBMENU:=$(LIB_MENU)
TITLE:=RAID6 algorithm support
@@ -272,3 +298,49 @@ define KernelPackage/asn1-decoder
endef
$(eval $(call KernelPackage,asn1-decoder))
+
+define KernelPackage/asn1-encoder
+ SUBMENU:=$(LIB_MENU)
+ TITLE:=Simple ASN1 encoder
+ KCONFIG:= CONFIG_ASN1_ENCODER
+ HIDDEN:=1
+ FILES:=$(LINUX_DIR)/lib/asn1_encoder.ko
+endef
+
+$(eval $(call KernelPackage,asn1-encoder))
+
+define KernelPackage/oid-registry
+ SUBMENU:=$(LIB_MENU)
+ TITLE:=Object identifier registry
+ KCONFIG:= CONFIG_OID_REGISTRY
+ FILES:=$(LINUX_DIR)/lib/oid_registry.ko
+ AUTOLOAD:=$(call AutoLoad,31,oid_registry)
+endef
+
+$(eval $(call KernelPackage,oid-registry))
+
+
+define KernelPackage/lib-objagg
+ SUBMENU:=$(LIB_MENU)
+ TITLE:=objagg support
+ FILES:=$(LINUX_DIR)/lib/objagg.ko
+ KCONFIG:= \
+ CONFIG_OBJAGG \
+ CONFIG_TEST_OBJAGG=n
+ AUTOLOAD:=$(call AutoProbe,objagg)
+endef
+
+$(eval $(call KernelPackage,lib-objagg))
+
+
+define KernelPackage/lib-parman
+ SUBMENU:=$(LIB_MENU)
+ TITLE:=parman support
+ FILES:=$(LINUX_DIR)/lib/parman.ko
+ KCONFIG:= \
+ CONFIG_PARMAN \
+ CONFIG_TEST_PARMAN=n
+ AUTOLOAD:=$(call AutoProbe,parman)
+endef
+
+$(eval $(call KernelPackage,lib-parman))
diff --git a/package/kernel/linux/modules/multiplexer.mk b/package/kernel/linux/modules/multiplexer.mk
new file mode 100644
index 00000000000..135fc62c6dd
--- /dev/null
+++ b/package/kernel/linux/modules/multiplexer.mk
@@ -0,0 +1,34 @@
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+MENU_TITLE:=Multiplexer Support
+
+define KernelPackage/mux-core
+ SUBMENU:=$(MENU_TITLE)
+ TITLE:=Multiplexer Support
+ KCONFIG:=CONFIG_MULTIPLEXER
+ FILES:=$(LINUX_DIR)/drivers/mux/mux-core.ko
+ AUTOLOAD:=$(call AutoLoad,25,mux-core,1)
+endef
+
+define KernelPackage/mux-core/description
+ Kernel module for multiplexer support
+endef
+
+$(eval $(call KernelPackage,mux-core))
+
+define KernelPackage/mux-gpio
+ SUBMENU:=$(MENU_TITLE)
+ TITLE:=GPIO-controlled Multiplexer controller
+ KCONFIG:=CONFIG_MUX_GPIO
+ DEPENDS:=@GPIO_SUPPORT kmod-mux-core
+ FILES:=$(LINUX_DIR)/drivers/mux/mux-gpio.ko
+ AUTOLOAD:=$(call AutoLoad,25,mux-gpio,1)
+endef
+
+define KernelPackage/mux-gpio/description
+ Kernel modules for GPIO-controlled Multiplexer controller
+endef
+
+$(eval $(call KernelPackage,mux-gpio))
diff --git a/package/kernel/linux/modules/netdevices.mk b/package/kernel/linux/modules/netdevices.mk
index b91442748d4..72504d8de7f 100644
--- a/package/kernel/linux/modules/netdevices.mk
+++ b/package/kernel/linux/modules/netdevices.mk
@@ -111,6 +111,7 @@ $(eval $(call KernelPackage,libphy))
define KernelPackage/phylink
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Model for MAC to optional PHY connection
+ DEPENDS:=+kmod-libphy
KCONFIG:=CONFIG_PHYLINK
FILES:=$(LINUX_DIR)/drivers/net/phy/phylink.ko
AUTOLOAD:=$(call AutoLoad,15,phylink,1)
@@ -141,7 +142,7 @@ $(eval $(call KernelPackage,mii))
define KernelPackage/mdio-devres
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Supports MDIO device registration
- DEPENDS:=@LINUX_5_10 +kmod-libphy PACKAGE_kmod-of-mdio:kmod-of-mdio
+ DEPENDS:=+kmod-libphy +(TARGET_armsr||TARGET_bcm27xx_bcm2708||TARGET_malta||TARGET_tegra):kmod-of-mdio
KCONFIG:=CONFIG_MDIO_DEVRES
HIDDEN:=1
FILES:=$(LINUX_DIR)/drivers/net/phy/mdio_devres.ko
@@ -158,15 +159,13 @@ $(eval $(call KernelPackage,mdio-devres))
define KernelPackage/mdio-gpio
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:= Supports GPIO lib-based MDIO busses
- DEPENDS:=+kmod-libphy @GPIO_SUPPORT +(TARGET_armvirt||TARGET_bcm27xx_bcm2708||TARGET_tegra):kmod-of-mdio
+ DEPENDS:=+kmod-libphy @GPIO_SUPPORT +(TARGET_armsr||TARGET_bcm27xx_bcm2708||TARGET_malta||TARGET_tegra):kmod-of-mdio
KCONFIG:= \
CONFIG_MDIO_BITBANG \
CONFIG_MDIO_GPIO
FILES:= \
- $(LINUX_DIR)/drivers/net/phy/mdio-gpio.ko@lt5.10 \
- $(LINUX_DIR)/drivers/net/phy/mdio-bitbang.ko@lt5.10 \
- $(LINUX_DIR)/drivers/net/mdio/mdio-gpio.ko@ge5.10 \
- $(LINUX_DIR)/drivers/net/mdio/mdio-bitbang.ko@ge5.10
+ $(LINUX_DIR)/drivers/net/mdio/mdio-gpio.ko \
+ $(LINUX_DIR)/drivers/net/mdio/mdio-bitbang.ko
AUTOLOAD:=$(call AutoProbe,mdio-gpio)
endef
@@ -196,6 +195,21 @@ endef
$(eval $(call KernelPackage,et131x))
+define KernelPackage/phy-microchip
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Microchip Ethernet PHY driver
+ KCONFIG:=CONFIG_MICROCHIP_PHY
+ DEPENDS:=+kmod-libphy
+ FILES:=$(LINUX_DIR)/drivers/net/phy/microchip.ko
+ AUTOLOAD:=$(call AutoLoad,18,microchip,1)
+endef
+
+define KernelPackage/phy-microchip/description
+ Supports the LAN88XX PHYs.
+endef
+
+$(eval $(call KernelPackage,phy-microchip))
+
define KernelPackage/phylib-broadcom
SUBMENU:=$(NETWORK_DEVICES_MENU)
@@ -210,6 +224,39 @@ endef
$(eval $(call KernelPackage,phylib-broadcom))
+define KernelPackage/phy-amd
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=AMD PHY driver
+ KCONFIG:=CONFIG_AMD_PHY
+ DEPENDS:=+kmod-libphy
+ FILES:=$(LINUX_DIR)/drivers/net/phy/amd.ko
+ AUTOLOAD:=$(call AutoProbe,amd,1)
+endef
+
+define KernelPackage/phy-amd/description
+ Currently supports the AMD and Altima PHYs.
+endef
+
+$(eval $(call KernelPackage,phy-amd))
+
+
+define KernelPackage/phy-ax88796b
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Asix PHY driver
+ KCONFIG:=CONFIG_AX88796B_PHY
+ DEPENDS:=+kmod-libphy
+ FILES:=$(LINUX_DIR)/drivers/net/phy/ax88796b.ko
+ AUTOLOAD:=$(call AutoProbe,ax88796b)
+endef
+
+define KernelPackage/phy-ax88796b/description
+ Currently supports the Asix Electronics PHY found in the X-Surf 100
+ AX88796B package.
+endef
+
+$(eval $(call KernelPackage,phy-ax88796b))
+
+
define KernelPackage/phy-broadcom
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Broadcom Ethernet PHY driver
@@ -243,6 +290,58 @@ endef
$(eval $(call KernelPackage,phy-bcm84881))
+define KernelPackage/phy-marvell
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Marvell Gigabit Ethernet PHY driver
+ KCONFIG:=CONFIG_MARVELL_PHY
+ DEPENDS:=+kmod-libphy
+ FILES:=$(LINUX_DIR)/drivers/net/phy/marvell.ko
+ AUTOLOAD:=$(call AutoLoad,18,marvell)
+endef
+
+define KernelPackage/phy-marvell/description
+ Supports Marvell Gigabit Ethernet PHYs:
+ * 88E1101
+ * 88E1112
+ * 88E1111 (incl. Finisar variant)
+ * 88E1118
+ * 88E1121R
+ * 88E1145
+ * 88E1149R
+ * 88E1240
+ * 88E1318S
+ * 88E1116R
+ * 88E1510
+ * 88E1540
+ * 88E1545
+ * 88E3016
+ * 88E6341 family
+ * 88E6390 family
+ * 88E6393 family
+ * 88E1340S
+ * 88E1548P
+endef
+
+$(eval $(call KernelPackage,phy-marvell))
+
+define KernelPackage/phy-marvell-10g
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Marvell 10 Gigabit Ethernet PHY driver
+ KCONFIG:=CONFIG_MARVELL_10G_PHY
+ DEPENDS:=+kmod-libphy
+ FILES:=$(LINUX_DIR)/drivers/net/phy/marvell10g.ko
+ AUTOLOAD:=$(call AutoLoad,18,marvell10g)
+endef
+
+define KernelPackage/phy-marvell/description
+ Supports Marvell 10 Gigabit Ethernet PHYs:
+ * 88E2110
+ * 88E2111
+ * 88x3310
+ * 88x3340
+endef
+
+$(eval $(call KernelPackage,phy-marvell-10g))
define KernelPackage/phy-realtek
SUBMENU:=$(NETWORK_DEVICES_MENU)
@@ -260,6 +359,55 @@ endef
$(eval $(call KernelPackage,phy-realtek))
+define KernelPackage/phy-smsc
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=SMSC PHY driver
+ KCONFIG:=CONFIG_SMSC_PHY
+ DEPENDS:=+kmod-libphy
+ FILES:=$(LINUX_DIR)/drivers/net/phy/smsc.ko
+ AUTOLOAD:=$(call AutoProbe,smsc)
+endef
+
+define KernelPackage/phy-smsc/description
+ Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs
+endef
+
+$(eval $(call KernelPackage,phy-smsc))
+
+
+define KernelPackage/phy-airoha-en8811h
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Airoha EN8811H 2.5G Ethernet PHY
+ DEPENDS:=+airoha-en8811h-firmware +kmod-libphy @LINUX_6_1
+ KCONFIG:=CONFIG_AIR_EN8811H_PHY
+ FILES:= \
+ $(LINUX_DIR)/drivers/net/phy/air_en8811h.ko
+ AUTOLOAD:=$(call AutoLoad,18,air_en8811h,1)
+endef
+
+define KernelPackage/phy-airoha-en8811h/description
+ Kernel modules for Airoha EN8811H 2.5G Ethernet PHY
+endef
+
+$(eval $(call KernelPackage,phy-airoha-en8811h))
+
+
+define KernelPackage/phy-aquantia
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Aquantia Ethernet PHYs
+ DEPENDS:=+kmod-libphy +kmod-hwmon-core +kmod-lib-crc-ccitt
+ KCONFIG:=CONFIG_AQUANTIA_PHY
+ FILES:=$(LINUX_DIR)/drivers/net/phy/aquantia/aquantia.ko
+ AUTOLOAD:=$(call AutoLoad,18,aquantia,1)
+endef
+
+define KernelPackage/phy-aquantia/description
+ Kernel modules for Aquantia Ethernet PHYs
+endef
+
+$(eval $(call KernelPackage,phy-aquantia))
+
+
define KernelPackage/swconfig
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=switch configuration API
@@ -341,7 +489,7 @@ $(eval $(call KernelPackage,switch-rtl8306))
define KernelPackage/switch-rtl8366-smi
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Realtek RTL8366 SMI switch interface support
- DEPENDS:=@GPIO_SUPPORT +kmod-swconfig +(TARGET_armvirt||TARGET_bcm27xx_bcm2708||TARGET_tegra):kmod-of-mdio
+ DEPENDS:=@GPIO_SUPPORT +kmod-swconfig +(TARGET_armsr||TARGET_bcm27xx_bcm2708||TARGET_malta||TARGET_tegra):kmod-of-mdio
KCONFIG:=CONFIG_RTL8366_SMI
FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8366_smi.ko
AUTOLOAD:=$(call AutoLoad,42,rtl8366_smi,1)
@@ -360,7 +508,7 @@ define KernelPackage/switch-rtl8366rb
DEPENDS:=+kmod-switch-rtl8366-smi
KCONFIG:=CONFIG_RTL8366RB_PHY
FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8366rb.ko
- AUTOLOAD:=$(call AutoLoad,43,rtl8366rb)
+ AUTOLOAD:=$(call AutoLoad,43,rtl8366rb,1)
endef
define KernelPackage/switch-rtl8366rb/description
@@ -376,7 +524,7 @@ define KernelPackage/switch-rtl8366s
DEPENDS:=+kmod-switch-rtl8366-smi
KCONFIG:=CONFIG_RTL8366S_PHY
FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8366s.ko
- AUTOLOAD:=$(call AutoLoad,43,rtl8366s)
+ AUTOLOAD:=$(call AutoLoad,43,rtl8366s,1)
endef
define KernelPackage/switch-rtl8366s/description
@@ -386,6 +534,22 @@ endef
$(eval $(call KernelPackage,switch-rtl8366s))
+define KernelPackage/switch-rtl8367
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Realtek RTL8367 switch support
+ DEPENDS:=+kmod-switch-rtl8366-smi
+ KCONFIG:=CONFIG_RTL8367_PHY
+ FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8367.ko
+ AUTOLOAD:=$(call AutoLoad,43,rtl8367,1)
+endef
+
+define KernelPackage/switch-rtl8367/description
+ Realtek RTL8367 switch support
+endef
+
+$(eval $(call KernelPackage,switch-rtl8367))
+
+
define KernelPackage/switch-rtl8367b
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Realtek RTL8367R/B switch support
@@ -402,6 +566,22 @@ endef
$(eval $(call KernelPackage,switch-rtl8367b))
+define KernelPackage/switch-ar8xxx
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Atheros AR8216/8327 switch support
+ DEPENDS:=+kmod-swconfig +kmod-mdio-devres
+ KCONFIG:=CONFIG_AR8216_PHY
+ FILES:=$(LINUX_DIR)/drivers/net/phy/ar8xxx.ko
+ AUTOLOAD:=$(call AutoLoad,43,ar8xxx,1)
+endef
+
+define KernelPackage/switch-ar8xxx/description
+ Atheros AR8216/8327 switch support
+endef
+
+$(eval $(call KernelPackage,switch-ar8xxx))
+
+
define KernelPackage/natsemi
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=National Semiconductor DP8381x series
@@ -562,7 +742,7 @@ $(eval $(call KernelPackage,8139cp))
define KernelPackage/r8169
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=RealTek RTL-8169 PCI Gigabit Ethernet Adapter kernel support
- DEPENDS:=@PCI_SUPPORT +kmod-mii +r8169-firmware +kmod-phy-realtek +LINUX_5_10:kmod-mdio-devres
+ DEPENDS:=@PCI_SUPPORT +kmod-mii +r8169-firmware +kmod-phy-realtek +kmod-mdio-devres
KCONFIG:= \
CONFIG_R8169 \
CONFIG_R8169_NAPI=y \
@@ -688,7 +868,7 @@ $(eval $(call KernelPackage,igbvf))
define KernelPackage/ixgbe
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Intel(R) 82598/82599 PCI-Express 10 Gigabit Ethernet support
- DEPENDS:=@PCI_SUPPORT +kmod-mdio +kmod-ptp +kmod-hwmon-core +kmod-libphy +LINUX_5_10:kmod-mdio-devres
+ DEPENDS:=@PCI_SUPPORT +kmod-mdio +kmod-ptp +kmod-hwmon-core +kmod-libphy +kmod-mdio-devres
KCONFIG:=CONFIG_IXGBE \
CONFIG_IXGBE_VXLAN=n \
CONFIG_IXGBE_HWMON=y \
@@ -822,7 +1002,7 @@ define KernelPackage/tg3
TITLE:=Broadcom Tigon3 Gigabit Ethernet
KCONFIG:=CONFIG_TIGON3 \
CONFIG_TIGON3_HWMON=n
- DEPENDS:=+!TARGET_bcm47xx:kmod-libphy +kmod-ptp
+ DEPENDS:=@PCI_SUPPORT +!TARGET_bcm47xx:kmod-libphy +kmod-ptp
SUBMENU:=$(NETWORK_DEVICES_MENU)
FILES:=$(LINUX_DIR)/drivers/net/ethernet/broadcom/tg3.ko
AUTOLOAD:=$(call AutoLoad,19,tg3,1)
@@ -838,7 +1018,7 @@ $(eval $(call KernelPackage,tg3))
define KernelPackage/hfcpci
TITLE:=HFC PCI cards (single port) support for mISDN
KCONFIG:=CONFIG_MISDN_HFCPCI
- DEPENDS:=+kmod-misdn
+ DEPENDS:=@PCI_SUPPORT +kmod-misdn
SUBMENU:=$(NETWORK_DEVICES_MENU)
FILES:=$(LINUX_DIR)/drivers/isdn/hardware/mISDN/hfcpci.ko
AUTOLOAD:=$(call AutoLoad,31,hfcpci)
@@ -855,7 +1035,7 @@ $(eval $(call KernelPackage,hfcpci))
define KernelPackage/hfcmulti
TITLE:=HFC multiport cards (HFC-4S/8S/E1) support for mISDN
KCONFIG:=CONFIG_MISDN_HFCMULTI
- DEPENDS:=+kmod-misdn
+ DEPENDS:=@PCI_SUPPORT +kmod-misdn
SUBMENU:=$(NETWORK_DEVICES_MENU)
FILES:=$(LINUX_DIR)/drivers/isdn/hardware/mISDN/hfcmulti.ko
AUTOLOAD:=$(call AutoLoad,31,hfcmulti)
@@ -1019,15 +1199,30 @@ endef
$(eval $(call KernelPackage,forcedeth))
+define KernelPackage/fixed-phy
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=MDIO Bus/PHY emulation with fixed speed/link PHYs
+ DEPENDS:=+kmod-libphy
+ KCONFIG:=CONFIG_FIXED_PHY
+ FILES:=$(LINUX_DIR)/drivers/net/phy/fixed_phy.ko
+ AUTOLOAD:=$(call AutoProbe,fixed_phy)
+endef
+
+define KernelPackage/fixed-phy/description
+ Kernel driver for "fixed" MDIO Bus to cover the boards
+ and devices that use PHYs that are not connected to the real MDIO bus.
+endef
+
+$(eval $(call KernelPackage,fixed-phy))
+
define KernelPackage/of-mdio
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=OpenFirmware MDIO support
- DEPENDS:=+kmod-libphy @!TARGET_x86
+ DEPENDS:=+kmod-libphy +kmod-fixed-phy @!TARGET_x86
KCONFIG:=CONFIG_OF_MDIO
FILES:= \
- $(LINUX_DIR)/drivers/net/phy/fixed_phy.ko \
- $(LINUX_DIR)/drivers/of/of_mdio.ko@lt5.10 \
- $(LINUX_DIR)/drivers/net/mdio/of_mdio.ko@ge5.10
+ $(LINUX_DIR)/drivers/net/mdio/of_mdio.ko \
+ $(LINUX_DIR)/drivers/net/mdio/fwnode_mdio.ko
AUTOLOAD:=$(call AutoLoad,41,of_mdio)
endef
@@ -1165,7 +1360,7 @@ $(eval $(call KernelPackage,mlx4-core))
define KernelPackage/mlx5-core
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Mellanox ConnectX(R) mlx5 core Network Driver
- DEPENDS:=@PCI_SUPPORT +kmod-ptp
+ DEPENDS:=@PCI_SUPPORT +kmod-ptp +kmod-mlxfw
FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko
KCONFIG:= CONFIG_MLX5_CORE \
CONFIG_MLX5_CORE_EN=y \
@@ -1182,7 +1377,8 @@ define KernelPackage/mlx5-core
CONFIG_MLX5_MPFS=y \
CONFIG_MLX5_SW_STEERING=n \
CONFIG_MLX5_TC_CT=n \
- CONFIG_MLX5_TLS=n
+ CONFIG_MLX5_TLS=n \
+ CONFIG_MLX5_VFIO_PCI=n
AUTOLOAD:=$(call AutoProbe,mlx5_core)
endef
@@ -1193,13 +1389,143 @@ endef
$(eval $(call KernelPackage,mlx5-core))
+define KernelPackage/mlxfw
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Mellanox Technologies firmware flash module
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlxfw/mlxfw.ko
+ KCONFIG:=CONFIG_MLXFW
+ AUTOLOAD:=$(call AutoProbe,mlxfw)
+endef
+
+define KernelPackage/mlxfw/description
+ This driver supports Mellanox Technologies Firmware
+ flashing common logic.
+endef
+
+$(eval $(call KernelPackage,mlxfw))
+
+
+define KernelPackage/mlxsw-core
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Mellanox Technologies Switch ASICs support
+ DEPENDS:=+kmod-mlxfw +kmod-hwmon-core
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlxsw/mlxsw_core.ko
+ KCONFIG:= \
+ CONFIG_MLXSW_CORE \
+ CONFIG_MLXSW_CORE_HWMON=y \
+ CONFIG_MLXSW_CORE_THERMAL=y
+ AUTOLOAD:=$(call AutoProbe,mlxsw_core)
+endef
+
+define KernelPackage/mlxsw-core/description
+ This driver supports Mellanox Technologies Switch ASICs family.
+endef
+
+$(eval $(call KernelPackage,mlxsw-core))
+
+
+define KernelPackage/mlxsw-i2c
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=I2C bus implementation for Mellanox Technologies Switch ASICs
+ DEPENDS:=+kmod-mlxsw-core +kmod-i2c-core
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c.ko
+ KCONFIG:=CONFIG_MLXSW_I2C
+ AUTOLOAD:=$(call AutoProbe,mlxsw_i2c)
+endef
+
+define KernelPackage/mlxsw-i2c/description
+ This is I2C bus implementation for Mellanox Technologies Switch ASICs.
+endef
+
+$(eval $(call KernelPackage,mlxsw-i2c))
+
+
+define KernelPackage/mlxsw-minimal
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Mellanox Technologies minimal I2C support
+ DEPENDS:=+kmod-mlxsw-core +kmod-mlxsw-i2c
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlxsw/mlxsw_minimal.ko
+ KCONFIG:=CONFIG_MLXSW_MINIMAL
+ AUTOLOAD:=$(call AutoProbe,mlxsw_minimal)
+endef
+
+define KernelPackage/mlxsw-minimal/description
+ This driver supports I2C access for Mellanox Technologies Switch
+ ASICs.
+endef
+
+$(eval $(call KernelPackage,mlxsw-minimal))
+
+
+define KernelPackage/mlxsw-pci
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=PCI bus implementation for Mellanox Technologies Switch ASICs
+ DEPENDS:=@PCI_SUPPORT +kmod-mlxsw-core
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci.ko
+ KCONFIG:=CONFIG_MLXSW_PCI
+ AUTOLOAD:=$(call AutoProbe,mlxsw_pci)
+endef
+
+define KernelPackage/mlxsw-pci/description
+ This is PCI bus implementation for Mellanox Technologies Switch ASICs.
+endef
+
+$(eval $(call KernelPackage,mlxsw-pci))
+
+
+define KernelPackage/mlxsw-spectrum
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Mellanox Technologies Spectrum family support
+ DEPENDS:= \
+ +kmod-mlxsw-core +kmod-mlxsw-pci +kmod-lib-objagg +kmod-lib-parman \
+ +kmod-ip6-tunnel +kmod-ptp +kmod-sched-act-sample +kmod-vxlan
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlxsw/mlxsw_spectrum.ko
+ KCONFIG:= \
+ CONFIG_MLXSW_SPECTRUM \
+ CONFIG_NET_SWITCHDEV=y \
+ CONFIG_MLXSW_SPECTRUM_DCB=y \
+ CONFIG_DCB=y \
+ CONFIG_AMD_XGBE_DCB=n \
+ CONFIG_IXGBE_DCB=n \
+ CONFIG_I40E_DCB=n \
+ CONFIG_QLCNIC_DCB=n \
+ CONFIG_FSL_DPAA2_ETH_DCB=n \
+ CONFIG_FSL_DPAA2_SWITCH=n
+ AUTOLOAD:=$(call AutoProbe,mlxsw_spectrum)
+endef
+
+define KernelPackage/mlxsw-spectrum/description
+ This driver supports Mellanox Technologies
+ Spectrum/Spectrum-2/Spectrum-3/Spectrum-4 Ethernet Switch ASICs.
+endef
+
+$(eval $(call KernelPackage,mlxsw-spectrum))
+
+
+define KernelPackage/net-selftests
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ DEPENDS:=+kmod-libphy
+ TITLE:=Network generic selftest support
+ KCONFIG:=CONFIG_NET_SELFTESTS
+ FILES:=$(LINUX_DIR)/net/core/selftests.ko
+ AUTOLOAD:=$(call AutoLoad,99,selftests)
+endef
+
+define KernelPackage/net-selftests/description
+ Kernel modules for the generic selftest support
+endef
+
+$(eval $(call KernelPackage,net-selftests))
+
+
define KernelPackage/qlcnic
SUBMENU:=$(NETWORK_DEVICES_MENU)
DEPENDS:=@PCI_SUPPORT +kmod-hwmon-core
TITLE:=QLogic QLE8240 and QLE8242 device support
KCONFIG:= \
CONFIG_QLCNIC \
- CONFIG_QLCNIC_HWMON=y
+ CONFIG_QLCNIC_HWMON=y \
+ CONFIG_QLCNIC_SRIOV=y
FILES:=$(LINUX_DIR)/drivers/net/ethernet/qlogic/qlcnic/qlcnic.ko
AUTOLOAD:=$(call AutoProbe,qlcnic)
endef
@@ -1221,8 +1547,7 @@ define KernelPackage/sfp
CONFIG_MDIO_I2C
FILES:= \
$(LINUX_DIR)/drivers/net/phy/sfp.ko \
- $(LINUX_DIR)/drivers/net/phy/mdio-i2c.ko@lt5.10 \
- $(LINUX_DIR)/drivers/net/mdio/mdio-i2c.ko@ge5.10
+ $(LINUX_DIR)/drivers/net/mdio/mdio-i2c.ko
AUTOLOAD:=$(call AutoProbe,mdio-i2c sfp)
endef
@@ -1232,6 +1557,37 @@ endef
$(eval $(call KernelPackage,sfp))
+
+define KernelPackage/pcs-xpcs
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Synopsis DesignWare PCS driver
+ DEPENDS:=@(TARGET_x86_64||TARGET_armsr_armv8) +kmod-phylink
+ KCONFIG:=CONFIG_PCS_XPCS
+ FILES:=$(LINUX_DIR)/drivers/net/pcs/pcs_xpcs.ko
+ AUTOLOAD:=$(call AutoLoad,20,pcs_xpcs)
+endef
+
+$(eval $(call KernelPackage,pcs-xpcs))
+
+
+define KernelPackage/stmmac-core
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Synopsis Ethernet Controller core (NXP,STMMicro,others)
+ DEPENDS:=@TARGET_x86_64||TARGET_armsr_armv8 +kmod-pcs-xpcs +kmod-ptp
+ KCONFIG:=CONFIG_STMMAC_ETH \
+ CONFIG_STMMAC_SELFTESTS=n \
+ CONFIG_STMMAC_PLATFORM \
+ CONFIG_CONFIG_DWMAC_DWC_QOS_ETH=n \
+ CONFIG_DWMAC_GENERIC
+ FILES=$(LINUX_DIR)/drivers/net/ethernet/stmicro/stmmac/stmmac.ko \
+ $(LINUX_DIR)/drivers/net/ethernet/stmicro/stmmac/stmmac-platform.ko \
+ $(LINUX_DIR)/drivers/net/ethernet/stmicro/stmmac/dwmac-generic.ko
+ AUTOLOAD=$(call AutoLoad,40,stmmac stmmac-platform dwmac-generic)
+endef
+
+$(eval $(call KernelPackage,stmmac-core))
+
+
define KernelPackage/igc
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Intel(R) Ethernet Controller I225 Series support
@@ -1284,3 +1640,115 @@ define KernelPackage/sfc-falcon/description
endef
$(eval $(call KernelPackage,sfc-falcon))
+
+
+define KernelPackage/wwan
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=WWAN Driver Core
+ KCONFIG:= \
+ CONFIG_WWAN \
+ CONFIG_WWAN_DEBUGFS=y@ge5.17
+ FILES:=$(LINUX_DIR)/drivers/net/wwan/wwan.ko
+ AUTOLOAD:=$(call AutoProbe,wwan)
+endef
+
+define KernelPackage/wwan/description
+ This driver provides a common framework for WWAN drivers.
+endef
+
+$(eval $(call KernelPackage,wwan))
+
+
+define KernelPackage/mhi-net
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=MHI Network Device
+ DEPENDS:=@PCI_SUPPORT +kmod-mhi-bus
+ KCONFIG:=CONFIG_MHI_NET
+ FILES:=$(LINUX_DIR)/drivers/net/mhi_net.ko
+ AUTOLOAD:=$(call AutoProbe,mhi_net)
+endef
+
+define KernelPackage/mhi-net/description
+ Driver for MHI network interface
+endef
+
+$(eval $(call KernelPackage,mhi-net))
+
+define KernelPackage/mhi-wwan-ctrl
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=MHI WWAN Control
+ DEPENDS:=@PCI_SUPPORT +kmod-mhi-bus +kmod-wwan
+ KCONFIG:=CONFIG_MHI_WWAN_CTRL
+ FILES:=$(LINUX_DIR)/drivers/net/wwan/mhi_wwan_ctrl.ko
+ AUTOLOAD:=$(call AutoProbe,mhi_wwan_ctrl)
+endef
+
+define KernelPackage/mhi-wwan-ctrl/description
+ Driver for MHI WWAN Control
+ This exposes all modem control ports like AT, MBIM, QMI, DIAG, ..
+endef
+
+$(eval $(call KernelPackage,mhi-wwan-ctrl))
+
+define KernelPackage/mhi-wwan-mbim
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=MHI MBIM
+ DEPENDS:=@PCI_SUPPORT +kmod-mhi-bus +kmod-wwan
+ KCONFIG:=CONFIG_MHI_WWAN_MBIM
+ FILES:=$(LINUX_DIR)/drivers/net/wwan/mhi_wwan_mbim.ko
+ AUTOLOAD:=$(call AutoProbe,mhi_wwan_mbim)
+endef
+
+define KernelPackage/mhi-wwan-mbim/description
+ Driver for MHI MBIM
+ This implements MBIM over MHI
+endef
+
+$(eval $(call KernelPackage,mhi-wwan-mbim))
+
+define KernelPackage/atlantic
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Aquantia AQtion 10Gbps Ethernet NIC
+ DEPENDS:=@PCI_SUPPORT +kmod-ptp +kmod-hwmon-core +kmod-macsec
+ KCONFIG:=CONFIG_AQTION
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/aquantia/atlantic/atlantic.ko
+ AUTOLOAD:=$(call AutoProbe,atlantic)
+endef
+
+define KernelPackage/atlantic/description
+ Kernel modules for Aquantia AQtion 10Gbps Ethernet NIC
+endef
+
+$(eval $(call KernelPackage,atlantic))
+
+
+define KernelPackage/lan743x
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Microchip LAN743x PCI Express Gigabit Ethernet NIC
+ DEPENDS:=@PCI_SUPPORT +kmod-ptp +kmod-mdio-devres
+ KCONFIG:=CONFIG_LAN743X
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/microchip/lan743x.ko
+ AUTOLOAD:=$(call AutoProbe,lan743x)
+endef
+
+define KernelPackage/lan743x/description
+ Kernel module for Microchip LAN743x PCI Express Gigabit Ethernet NIC
+endef
+
+$(eval $(call KernelPackage,lan743x))
+
+define KernelPackage/amazon-ena
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Elastic Network Adapter (for Amazon AWS)
+ DEPENDS:=@TARGET_x86_64||TARGET_armsr_armv8
+ KCONFIG:=CONFIG_ENA_ETHERNET
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/amazon/ena/ena.ko
+ AUTOLOAD:=$(call AutoLoad,12,ena)
+endef
+
+define KernelPackage/amazon-ena/description
+ This driver supports Elastic Network Adapter (ENA)
+ used by Amazon AWS T3 (2018) and later instances.
+endef
+
+$(eval $(call KernelPackage,amazon-ena))
diff --git a/package/kernel/linux/modules/netfilter.mk b/package/kernel/linux/modules/netfilter.mk
index e2bb1d0681a..da3e69e49ac 100644
--- a/package/kernel/linux/modules/netfilter.mk
+++ b/package/kernel/linux/modules/netfilter.mk
@@ -1,6 +1,6 @@
#
-# Copyright (C) 2006-2010 OpenWrt.org
+# Copyright (C) 2006-2023 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@@ -39,6 +39,17 @@ endef
$(eval $(call KernelPackage,nf-reject6))
+define KernelPackage/nf-conncount
+ SUBMENU:=$(NF_MENU)
+ TITLE:=Netfilter conncount support
+ KCONFIG:=$(KCONFIG_NF_CONNCOUNT)
+ HIDDEN:=1
+ DEPENDS:=+kmod-nf-conntrack
+ FILES:=$(foreach mod,$(NF_CONNCOUNT-m),$(LINUX_DIR)/net/$(mod).ko)
+ AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_CONNCOUNT-m)))
+endef
+
+$(eval $(call KernelPackage,nf-conncount))
define KernelPackage/nf-ipt
SUBMENU:=$(NF_MENU)
@@ -57,7 +68,7 @@ define KernelPackage/nf-ipt6
KCONFIG:=$(KCONFIG_NF_IPT6)
FILES:=$(foreach mod,$(NF_IPT6-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_IPT6-m)))
- DEPENDS:=+kmod-nf-ipt
+ DEPENDS:=+kmod-nf-ipt +kmod-nf-log6
endef
$(eval $(call KernelPackage,nf-ipt6))
@@ -70,7 +81,7 @@ define KernelPackage/ipt-core
KCONFIG:=$(KCONFIG_IPT_CORE)
FILES:=$(foreach mod,$(IPT_CORE-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CORE-m)))
- DEPENDS:=+kmod-nf-reject +kmod-nf-ipt
+ DEPENDS:=+kmod-nf-reject +kmod-nf-ipt +kmod-nf-log
endef
define KernelPackage/ipt-core/description
@@ -121,6 +132,29 @@ endef
$(eval $(call KernelPackage,nf-conntrack6))
+define KernelPackage/nf-log
+ SUBMENU:=$(NF_MENU)
+ TITLE:=Netfilter Logging
+ KCONFIG:=$(KCONFIG_NF_LOG)
+ FILES:=$(foreach mod,$(NF_LOG-m),$(LINUX_DIR)/net/$(mod).ko)
+ AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_LOG-m)))
+endef
+
+$(eval $(call KernelPackage,nf-log))
+
+
+define KernelPackage/nf-log6
+ SUBMENU:=$(NF_MENU)
+ TITLE:=Netfilter IPV6 Logging
+ KCONFIG:=$(KCONFIG_NF_LOG6)
+ DEPENDS:=@IPV6 +kmod-nf-log
+ FILES:=$(foreach mod,$(NF_LOG6-m),$(LINUX_DIR)/net/$(mod).ko)
+ AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_LOG6-m)))
+endef
+
+$(eval $(call KernelPackage,nf-log6))
+
+
define KernelPackage/nf-nat
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter NAT
@@ -153,15 +187,35 @@ define KernelPackage/nf-flow
CONFIG_NF_FLOW_TABLE \
CONFIG_NF_FLOW_TABLE_HW
DEPENDS:=+kmod-nf-conntrack
- FILES:= \
- $(LINUX_DIR)/net/netfilter/nf_flow_table.ko \
- $(if $(CONFIG_LINUX_5_4),$(LINUX_DIR)/net/netfilter/nf_flow_table_hw.ko)
+ FILES:= $(LINUX_DIR)/net/netfilter/nf_flow_table.ko
AUTOLOAD:=$(call AutoProbe,nf_flow_table nf_flow_table_hw)
endef
$(eval $(call KernelPackage,nf-flow))
+define KernelPackage/nf-socket
+ SUBMENU:=$(NF_MENU)
+ TITLE:=Netfilter socket lookup support
+ KCONFIG:= $(KCONFIG_NF_SOCKET)
+ FILES:=$(foreach mod,$(NF_SOCKET-m),$(LINUX_DIR)/net/$(mod).ko)
+ AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_SOCKET-m)))
+endef
+
+$(eval $(call KernelPackage,nf-socket))
+
+
+define KernelPackage/nf-tproxy
+ SUBMENU:=$(NF_MENU)
+ TITLE:=Netfilter tproxy support
+ KCONFIG:= $(KCONFIG_NF_TPROXY)
+ FILES:=$(foreach mod,$(NF_TPROXY-m),$(LINUX_DIR)/net/$(mod).ko)
+ AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_TPROXY-m)))
+endef
+
+$(eval $(call KernelPackage,nf-tproxy))
+
+
define AddDepends/ipt
SUBMENU:=$(NF_MENU)
DEPENDS+= +kmod-ipt-core $(1)
@@ -191,6 +245,7 @@ $(eval $(call KernelPackage,ipt-conntrack))
define KernelPackage/ipt-conntrack-extra
TITLE:=Extra connection tracking modules
+ DEPENDS:=+kmod-nf-conncount
KCONFIG:=$(KCONFIG_IPT_CONNTRACK_EXTRA)
FILES:=$(foreach mod,$(IPT_CONNTRACK_EXTRA-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CONNTRACK_EXTRA-m)))
@@ -305,6 +360,7 @@ IPSET_MODULES:= \
ipset/ip_set_bitmap_ipmac \
ipset/ip_set_bitmap_port \
ipset/ip_set_hash_ip \
+ ipset/ip_set_hash_ipmac \
ipset/ip_set_hash_ipmark \
ipset/ip_set_hash_ipport \
ipset/ip_set_hash_ipportip \
@@ -542,7 +598,7 @@ define KernelPackage/nf-nathelper-extra
KCONFIG:=$(KCONFIG_NF_NATHELPER_EXTRA)
FILES:=$(foreach mod,$(NF_NATHELPER_EXTRA-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_NATHELPER_EXTRA-m)))
- DEPENDS:=+kmod-nf-nat +kmod-lib-textsearch +kmod-ipt-raw +kmod-asn1-decoder
+ DEPENDS:=+kmod-nf-nat +kmod-lib-textsearch +kmod-asn1-decoder
endef
define KernelPackage/nf-nathelper-extra/description
@@ -563,23 +619,6 @@ endef
$(eval $(call KernelPackage,nf-nathelper-extra))
-define KernelPackage/ipt-ulog
- TITLE:=Module for user-space packet logging
- KCONFIG:=$(KCONFIG_IPT_ULOG)
- FILES:=$(foreach mod,$(IPT_ULOG-m),$(LINUX_DIR)/net/$(mod).ko)
- AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_ULOG-m)))
- $(call AddDepends/ipt)
-endef
-
-define KernelPackage/ipt-ulog/description
- Netfilter (IPv4) module for user-space packet logging
- Includes:
- - ULOG
-endef
-
-$(eval $(call KernelPackage,ipt-ulog))
-
-
define KernelPackage/ipt-nflog
TITLE:=Module for user-space packet logging
KCONFIG:=$(KCONFIG_IPT_NFLOG)
@@ -645,9 +684,24 @@ endef
$(eval $(call KernelPackage,ipt-led))
+define KernelPackage/ipt-socket
+ TITLE:=Iptables socket matching support
+ DEPENDS+=+kmod-nf-socket +kmod-nf-conntrack
+ KCONFIG:=$(KCONFIG_IPT_SOCKET)
+ FILES:=$(foreach mod,$(IPT_SOCKET-m),$(LINUX_DIR)/net/$(mod).ko)
+ AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_SOCKET-m)))
+ $(call AddDepends/ipt)
+endef
+
+define KernelPackage/ipt-socket/description
+ Kernel modules for socket matching
+endef
+
+$(eval $(call KernelPackage,ipt-socket))
+
define KernelPackage/ipt-tproxy
TITLE:=Transparent proxying support
- DEPENDS+=+kmod-ipt-conntrack +IPV6:kmod-nf-conntrack6 +IPV6:kmod-ip6tables
+ DEPENDS+=+kmod-nf-tproxy +kmod-nf-conntrack
KCONFIG:=$(KCONFIG_IPT_TPROXY)
FILES:=$(foreach mod,$(IPT_TPROXY-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_TPROXY-m)))
@@ -1004,7 +1058,7 @@ define KernelPackage/nf-conntrack-netlink
FILES:=$(LINUX_DIR)/net/netfilter/nf_conntrack_netlink.ko
KCONFIG:=CONFIG_NF_CT_NETLINK CONFIG_NF_CONNTRACK_EVENTS=y CONFIG_NETFILTER_NETLINK_GLUE_CT=y
AUTOLOAD:=$(call AutoProbe,nf_conntrack_netlink)
- $(call AddDepends/nfnetlink,+kmod-ipt-conntrack)
+ $(call AddDepends/nfnetlink,+kmod-nf-conntrack)
endef
define KernelPackage/nf-conntrack-netlink/description
@@ -1052,7 +1106,7 @@ $(eval $(call KernelPackage,ipt-rpfilter))
define KernelPackage/nft-core
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter nf_tables support
- DEPENDS:=+kmod-nfnetlink +kmod-nf-reject +IPV6:kmod-nf-reject6 +IPV6:kmod-nf-conntrack6 +kmod-nf-nat +kmod-lib-crc32c
+ DEPENDS:=+kmod-nfnetlink +kmod-nf-reject +IPV6:kmod-nf-reject6 +IPV6:kmod-nf-conntrack6 +kmod-nf-nat +kmod-nf-log +IPV6:kmod-nf-log6 +kmod-lib-crc32c
FILES:=$(foreach mod,$(NFT_CORE-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_CORE-m)))
KCONFIG:= \
@@ -1087,13 +1141,32 @@ define KernelPackage/nft-bridge
FILES:=$(foreach mod,$(NFT_BRIDGE-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_BRIDGE-m)))
KCONFIG:= \
- CONFIG_NF_LOG_BRIDGE=n \
$(KCONFIG_NFT_BRIDGE)
endef
$(eval $(call KernelPackage,nft-bridge))
+define KernelPackage/nft-dup-inet
+ SUBMENU:=$(NF_MENU)
+ TITLE:=Netfilter nf_tables dup in ip/ip6/inet family support
+ DEPENDS:=+kmod-nft-core +kmod-nf-conntrack +IPV6:kmod-nf-conntrack6
+ KCONFIG:= \
+ CONFIG_NF_DUP_IPV4 \
+ CONFIG_NF_DUP_IPV6 \
+ CONFIG_NFT_DUP_IPV4 \
+ CONFIG_NFT_DUP_IPV6
+ FILES:= \
+ $(LINUX_DIR)/net/ipv4/netfilter/nf_dup_ipv4.ko \
+ $(LINUX_DIR)/net/ipv6/netfilter/nf_dup_ipv6.ko \
+ $(LINUX_DIR)/net/ipv4/netfilter/nft_dup_ipv4.ko \
+ $(LINUX_DIR)/net/ipv6/netfilter/nft_dup_ipv6.ko
+ AUTOLOAD:=$(call AutoProbe,nf_dup_ipv4 nf_dup_ipv6 nft_dup_ipv4 nft_dup_ipv6)
+endef
+
+$(eval $(call KernelPackage,nft-dup-inet))
+
+
define KernelPackage/nft-nat
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter nf_tables NAT support
@@ -1112,31 +1185,20 @@ define KernelPackage/nft-offload
DEPENDS:=@IPV6 +kmod-nf-flow +kmod-nft-nat
KCONFIG:= \
CONFIG_NF_FLOW_TABLE_INET \
- CONFIG_NF_FLOW_TABLE_IPV4 \
- CONFIG_NF_FLOW_TABLE_IPV6 \
+ CONFIG_NF_FLOW_TABLE_IPV4@lt5.17 \
+ CONFIG_NF_FLOW_TABLE_IPV6@lt5.17 \
CONFIG_NFT_FLOW_OFFLOAD
FILES:= \
$(LINUX_DIR)/net/netfilter/nf_flow_table_inet.ko \
- $(LINUX_DIR)/net/ipv4/netfilter/nf_flow_table_ipv4.ko \
- $(LINUX_DIR)/net/ipv6/netfilter/nf_flow_table_ipv6.ko \
+ $(LINUX_DIR)/net/ipv4/netfilter/nf_flow_table_ipv4.ko@lt5.17 \
+ $(LINUX_DIR)/net/ipv6/netfilter/nf_flow_table_ipv6.ko@lt5.17 \
$(LINUX_DIR)/net/netfilter/nft_flow_offload.ko
- AUTOLOAD:=$(call AutoProbe,nf_flow_table_inet nf_flow_table_ipv4 nf_flow_table_ipv6 nft_flow_offload)
+ AUTOLOAD:=$(call AutoProbe,nf_flow_table_inet nf_flow_table_ipv4@lt5.17 nf_flow_table_ipv6@lt5.17 nft_flow_offload)
endef
$(eval $(call KernelPackage,nft-offload))
-define KernelPackage/nft-nat6
- SUBMENU:=$(NF_MENU)
- TITLE:=Netfilter nf_tables IPv6-NAT support
- DEPENDS:=+kmod-nft-nat +kmod-nf-nat6
- FILES:=$(foreach mod,$(NFT_NAT6-m),$(LINUX_DIR)/net/$(mod).ko)
- AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_NAT6-m)))
- KCONFIG:=$(KCONFIG_NFT_NAT6)
-endef
-
-$(eval $(call KernelPackage,nft-nat6))
-
define KernelPackage/nft-netdev
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter nf_tables netdev support
@@ -1179,3 +1241,58 @@ define KernelPackage/nft-queue
endef
$(eval $(call KernelPackage,nft-queue))
+
+define KernelPackage/nft-socket
+ SUBMENU:=$(NF_MENU)
+ TITLE:=Netfilter nf_tables socket support
+ DEPENDS:=+kmod-nft-core +kmod-nf-socket
+ FILES:=$(foreach mod,$(NFT_SOCKET-m),$(LINUX_DIR)/net/$(mod).ko)
+ AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_SOCKET-m)))
+ KCONFIG:=$(KCONFIG_NFT_SOCKET)
+endef
+
+$(eval $(call KernelPackage,nft-socket))
+
+define KernelPackage/nft-tproxy
+ SUBMENU:=$(NF_MENU)
+ TITLE:=Netfilter nf_tables tproxy support
+ DEPENDS:=+kmod-nft-core +kmod-nf-tproxy +kmod-nf-conntrack
+ FILES:=$(foreach mod,$(NFT_TPROXY-m),$(LINUX_DIR)/net/$(mod).ko)
+ AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_TPROXY-m)))
+ KCONFIG:=$(KCONFIG_NFT_TPROXY)
+endef
+
+$(eval $(call KernelPackage,nft-tproxy))
+
+define KernelPackage/nft-compat
+ SUBMENU:=$(NF_MENU)
+ TITLE:=Netfilter nf_tables compat support
+ DEPENDS:=+kmod-nft-core +kmod-nf-ipt
+ FILES:=$(foreach mod,$(NFT_COMPAT-m),$(LINUX_DIR)/net/$(mod).ko)
+ AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_COMPAT-m)))
+ KCONFIG:=$(KCONFIG_NFT_COMPAT)
+endef
+
+$(eval $(call KernelPackage,nft-compat))
+
+define KernelPackage/nft-xfrm
+ SUBMENU:=$(NF_MENU)
+ TITLE:=Netfilter nf_tables xfrm support (ipsec)
+ DEPENDS:=+kmod-nft-core
+ FILES:=$(foreach mod,$(NFT_XFRM-m),$(LINUX_DIR)/net/$(mod).ko)
+ AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_XFRM-m)))
+ KCONFIG:=$(KCONFIG_NFT_XFRM)
+endef
+
+$(eval $(call KernelPackage,nft-xfrm))
+
+define KernelPackage/nft-connlimit
+ SUBMENU:=$(NF_MENU)
+ TITLE:=Netfilter nf_tables connlimit support
+ DEPENDS:=+kmod-nft-core +kmod-nf-conncount
+ FILES:=$(foreach mod,$(NFT_CONNLIMIT-m),$(LINUX_DIR)/net/$(mod).ko)
+ AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_CONNLIMIT-m)))
+ KCONFIG:=$(KCONFIG_NFT_CONNLIMIT)
+endef
+
+$(eval $(call KernelPackage,nft-connlimit))
diff --git a/package/kernel/linux/modules/netsupport.mk b/package/kernel/linux/modules/netsupport.mk
index 1eec9f9b639..fcf327b434e 100644
--- a/package/kernel/linux/modules/netsupport.mk
+++ b/package/kernel/linux/modules/netsupport.mk
@@ -46,8 +46,10 @@ define KernelPackage/bonding
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=Ethernet bonding driver
KCONFIG:=CONFIG_BONDING
+ DEPENDS:=PACKAGE_kmod-tls:kmod-tls
FILES:=$(LINUX_DIR)/drivers/net/bonding/bonding.ko
AUTOLOAD:=$(call AutoLoad,40,bonding)
+ MODPARAMS.bonding:=max_bonds=0
endef
define KernelPackage/bonding/description
@@ -90,7 +92,8 @@ define KernelPackage/vxlan
+kmod-udptunnel4 \
+IPV6:kmod-udptunnel6
KCONFIG:=CONFIG_VXLAN
- FILES:=$(LINUX_DIR)/drivers/net/vxlan.ko
+ FILES:= \
+ $(LINUX_DIR)/drivers/net/vxlan/vxlan.ko
AUTOLOAD:=$(call AutoLoad,13,vxlan)
endef
@@ -162,38 +165,6 @@ endef
$(eval $(call KernelPackage,misdn))
-define KernelPackage/isdn4linux
- SUBMENU:=$(NETWORK_SUPPORT_MENU)
- TITLE:=Old ISDN4Linux (deprecated)
- DEPENDS:=+kmod-ppp
- KCONFIG:= \
- CONFIG_ISDN=y \
- CONFIG_ISDN_I4L \
- CONFIG_ISDN_PPP=y \
- CONFIG_ISDN_PPP_VJ=y \
- CONFIG_ISDN_MPP=y \
- CONFIG_IPPP_FILTER=y \
- CONFIG_ISDN_PPP_BSDCOMP \
- CONFIG_ISDN_CAPI_MIDDLEWARE=y \
- CONFIG_ISDN_CAPI_CAPIFS_BOOL=y \
- CONFIG_ISDN_AUDIO=y \
- CONFIG_ISDN_TTY_FAX=y \
- CONFIG_ISDN_X25=y \
- CONFIG_ISDN_DIVERSION
- FILES:= \
- $(LINUX_DIR)/drivers/isdn/divert/dss1_divert.ko \
- $(LINUX_DIR)/drivers/isdn/i4l/isdn.ko \
- $(LINUX_DIR)/drivers/isdn/i4l/isdn_bsdcomp.ko
- AUTOLOAD:=$(call AutoLoad,40,isdn isdn_bsdcomp dss1_divert)
-endef
-
-define KernelPackage/isdn4linux/description
- This driver allows you to use an ISDN adapter for networking
-endef
-
-$(eval $(call KernelPackage,isdn4linux))
-
-
define KernelPackage/ipip
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=IP-in-IP encapsulation
@@ -246,10 +217,8 @@ $(eval $(call KernelPackage,ipsec))
IPSEC4-m = \
ipv4/ah4 \
ipv4/esp4 \
- ipv4/xfrm4_tunnel \
ipv4/ipcomp \
-
-IPSEC4-m += $(ifeq ($$(strip $$(call CompareKernelPatchVer,$$(KERNEL_PATCHVER),le,5.2))),ipv4/xfrm4_mode_beet ipv4/xfrm4_mode_transport ipv4/xfrm4_mode_tunnel)
+ ipv4/xfrm4_tunnel
define KernelPackage/ipsec4
SUBMENU:=$(NETWORK_SUPPORT_MENU)
@@ -259,9 +228,6 @@ define KernelPackage/ipsec4
CONFIG_INET_AH \
CONFIG_INET_ESP \
CONFIG_INET_IPCOMP \
- CONFIG_INET_XFRM_MODE_BEET \
- CONFIG_INET_XFRM_MODE_TRANSPORT \
- CONFIG_INET_XFRM_MODE_TUNNEL \
CONFIG_INET_XFRM_TUNNEL \
CONFIG_INET_ESP_OFFLOAD=n
FILES:=$(foreach mod,$(IPSEC4-m),$(LINUX_DIR)/net/$(mod).ko)
@@ -274,9 +240,6 @@ define KernelPackage/ipsec4/description
- ah4
- esp4
- ipcomp4
- - xfrm4_mode_beet
- - xfrm4_mode_transport
- - xfrm4_mode_tunnel
- xfrm4_tunnel
endef
@@ -286,10 +249,8 @@ $(eval $(call KernelPackage,ipsec4))
IPSEC6-m = \
ipv6/ah6 \
ipv6/esp6 \
- ipv6/xfrm6_tunnel \
ipv6/ipcomp6 \
-
-IPSEC6-m += $(ifeq ($$(strip $$(call CompareKernelPatchVer,$$(KERNEL_PATCHVER),le,5.2))),ipv6/xfrm6_mode_beet ipv6/xfrm6_mode_transport ipv6/xfrm6_mode_tunnel)
+ ipv6/xfrm6_tunnel
define KernelPackage/ipsec6
SUBMENU:=$(NETWORK_SUPPORT_MENU)
@@ -299,9 +260,6 @@ define KernelPackage/ipsec6
CONFIG_INET6_AH \
CONFIG_INET6_ESP \
CONFIG_INET6_IPCOMP \
- CONFIG_INET6_XFRM_MODE_BEET \
- CONFIG_INET6_XFRM_MODE_TRANSPORT \
- CONFIG_INET6_XFRM_MODE_TUNNEL \
CONFIG_INET6_XFRM_TUNNEL \
CONFIG_INET6_ESP_OFFLOAD=n
FILES:=$(foreach mod,$(IPSEC6-m),$(LINUX_DIR)/net/$(mod).ko)
@@ -314,9 +272,6 @@ define KernelPackage/ipsec6/description
- ah6
- esp6
- ipcomp6
- - xfrm6_mode_beet
- - xfrm6_mode_transport
- - xfrm6_mode_tunnel
- xfrm6_tunnel
endef
@@ -375,7 +330,7 @@ $(eval $(call KernelPackage,ip6-vti))
define KernelPackage/xfrm-interface
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=IPsec XFRM Interface
- DEPENDS:=+kmod-ipsec4 +IPV6:kmod-ipsec6
+ DEPENDS:=@IPV6 +kmod-ipsec4 +kmod-ipsec6
KCONFIG:=CONFIG_XFRM_INTERFACE
FILES:=$(LINUX_DIR)/net/xfrm/xfrm_interface.ko
AUTOLOAD:=$(call AutoProbe,xfrm_interface)
@@ -563,6 +518,23 @@ endef
$(eval $(call KernelPackage,veth))
+define KernelPackage/vrf
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=Virtual Routing and Forwarding (Lite)
+ DEPENDS:=@KERNEL_NET_L3_MASTER_DEV
+ KCONFIG:=CONFIG_NET_VRF
+ FILES:=$(LINUX_DIR)/drivers/net/vrf.ko
+ AUTOLOAD:=$(call AutoLoad,30,vrf)
+endef
+
+define KernelPackage/vrf/description
+ This option enables the support for mapping interfaces into VRF's. The
+ support enables VRF devices.
+endef
+
+$(eval $(call KernelPackage,vrf))
+
+
define KernelPackage/slhc
SUBMENU:=$(NETWORK_SUPPORT_MENU)
HIDDEN:=1
@@ -720,12 +692,8 @@ endef
$(eval $(call KernelPackage,mppe))
-SCHED_MODULES = $(patsubst $(LINUX_DIR)/net/sched/%.ko,%,$(wildcard $(LINUX_DIR)/net/sched/*.ko))
-SCHED_MODULES_CORE = sch_ingress sch_fq_codel sch_hfsc sch_htb sch_tbf cls_basic cls_fw cls_route cls_flow cls_tcindex cls_u32 em_u32 act_gact act_mirred act_skbedit cls_matchall
-SCHED_MODULES_FILTER = $(SCHED_MODULES_CORE) act_connmark act_ctinfo sch_cake sch_netem sch_mqprio em_ipset cls_bpf cls_flower act_bpf act_vlan
-SCHED_MODULES_EXTRA = $(filter-out $(SCHED_MODULES_FILTER),$(SCHED_MODULES))
-SCHED_FILES = $(patsubst %,$(LINUX_DIR)/net/sched/%.ko,$(filter $(SCHED_MODULES_CORE),$(SCHED_MODULES)))
-SCHED_FILES_EXTRA = $(patsubst %,$(LINUX_DIR)/net/sched/%.ko,$(SCHED_MODULES_EXTRA))
+SCHED_MODULES_CORE = sch_ingress sch_hfsc sch_htb sch_tbf cls_basic cls_fw cls_route cls_flow cls_u32 em_u32 act_gact act_mirred act_skbedit cls_matchall
+SCHED_FILES_CORE = $(foreach mod,$(SCHED_MODULES_CORE),$(LINUX_DIR)/net/sched/$(mod).ko)
define KernelPackage/sched-core
SUBMENU:=$(NETWORK_SUPPORT_MENU)
@@ -736,14 +704,12 @@ define KernelPackage/sched-core
CONFIG_NET_SCH_HTB \
CONFIG_NET_SCH_TBF \
CONFIG_NET_SCH_INGRESS \
- CONFIG_NET_SCH_FQ_CODEL \
CONFIG_NET_CLS=y \
CONFIG_NET_CLS_ACT=y \
CONFIG_NET_CLS_BASIC \
CONFIG_NET_CLS_FLOW \
CONFIG_NET_CLS_FW \
CONFIG_NET_CLS_ROUTE4 \
- CONFIG_NET_CLS_TCINDEX \
CONFIG_NET_CLS_U32 \
CONFIG_NET_ACT_GACT \
CONFIG_NET_ACT_MIRRED \
@@ -751,7 +717,7 @@ define KernelPackage/sched-core
CONFIG_NET_CLS_MATCHALL \
CONFIG_NET_EMATCH=y \
CONFIG_NET_EMATCH_U32
- FILES:=$(SCHED_FILES)
+ FILES:=$(SCHED_FILES_CORE)
AUTOLOAD:=$(call AutoLoad,70, $(SCHED_MODULES_CORE))
endef
@@ -762,35 +728,52 @@ endef
$(eval $(call KernelPackage,sched-core))
-define KernelPackage/sched-cake
+define KernelPackage/sched-act-police
SUBMENU:=$(NETWORK_SUPPORT_MENU)
- TITLE:=Cake fq_codel/blue derived shaper
+ TITLE:=Traffic Policing
DEPENDS:=+kmod-sched-core
- KCONFIG:=CONFIG_NET_SCH_CAKE
- FILES:=$(LINUX_DIR)/net/sched/sch_cake.ko
- AUTOLOAD:=$(call AutoProbe,sch_cake)
+ KCONFIG:=CONFIG_NET_ACT_POLICE
+ FILES:=$(LINUX_DIR)/net/sched/act_police.ko
+ AUTOLOAD:=$(call AutoProbe,act_police)
endef
-define KernelPackage/sched-cake/description
- Common Applications Kept Enhanced fq_codel/blue derived shaper
-endef
+$(eval $(call KernelPackage,sched-act-police))
-$(eval $(call KernelPackage,sched-cake))
-define KernelPackage/sched-flower
+define KernelPackage/sched-act-sample
SUBMENU:=$(NETWORK_SUPPORT_MENU)
- TITLE:=Flower traffic classifier
+ TITLE:=Traffic Sampling
DEPENDS:=+kmod-sched-core
- KCONFIG:=CONFIG_NET_CLS_FLOWER
- FILES:=$(LINUX_DIR)/net/sched/cls_flower.ko
- AUTOLOAD:=$(call AutoProbe, cls_flower)
+ KCONFIG:= \
+ CONFIG_NET_ACT_SAMPLE \
+ CONFIG_PSAMPLE
+ FILES:= \
+ $(LINUX_DIR)/net/psample/psample.ko \
+ $(LINUX_DIR)/net/sched/act_sample.ko
+ AUTOLOAD:=$(call AutoProbe,act_sample psample)
endef
-define KernelPackage/sched-flower/description
- Allows to classify packets based on a configurable combination of packet keys and masks.
+define KernelPackage/sched-act-sample/description
+ Packet sampling tc action.
endef
-$(eval $(call KernelPackage,sched-flower))
+$(eval $(call KernelPackage,sched-act-sample))
+
+
+define KernelPackage/sched-act-ipt
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=IPtables targets
+ DEPENDS:=+kmod-ipt-core +kmod-sched-core
+ KCONFIG:=CONFIG_NET_ACT_IPT
+ FILES:=$(LINUX_DIR)/net/sched/act_ipt.ko
+ AUTOLOAD:=$(call AutoProbe, act_ipt)
+endef
+
+define KernelPackage/sched-act-ipt/description
+ Allows to invoke iptables targets after successful classification.
+endef
+
+$(eval $(call KernelPackage,sched-act-ipt))
define KernelPackage/sched-act-vlan
@@ -809,20 +792,36 @@ endef
$(eval $(call KernelPackage,sched-act-vlan))
-define KernelPackage/sched-mqprio
+define KernelPackage/sched-bpf
SUBMENU:=$(NETWORK_SUPPORT_MENU)
- TITLE:=Multi-queue priority scheduler (MQPRIO)
+ TITLE:=Traffic shaper support for Berkeley Packet Filter
+ KCONFIG:= \
+ CONFIG_NET_CLS_BPF \
+ CONFIG_NET_ACT_BPF
+ FILES:= \
+ $(LINUX_DIR)/net/sched/cls_bpf.ko \
+ $(LINUX_DIR)/net/sched/act_bpf.ko
+ AUTOLOAD:=$(call AutoLoad,72,cls_bpf act_bpf)
+endef
+
+$(eval $(call KernelPackage,sched-bpf))
+
+
+define KernelPackage/sched-cake
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=Cake fq_codel/blue derived shaper
DEPENDS:=+kmod-sched-core
- KCONFIG:=CONFIG_NET_SCH_MQPRIO
- FILES:=$(LINUX_DIR)/net/sched/sch_mqprio.ko
- AUTOLOAD:=$(call AutoProbe, sch_mqprio)
+ KCONFIG:=CONFIG_NET_SCH_CAKE
+ FILES:=$(LINUX_DIR)/net/sched/sch_cake.ko
+ AUTOLOAD:=$(call AutoProbe,sch_cake)
endef
-define KernelPackage/sched-mqprio/description
- This scheduler allows QOS to be offloaded on NICs that have support for offloading QOS schedulers.
+define KernelPackage/sched-cake/description
+ Common Applications Kept Enhanced fq_codel/blue derived shaper
endef
-$(eval $(call KernelPackage,sched-mqprio))
+$(eval $(call KernelPackage,sched-cake))
+
define KernelPackage/sched-connmark
SUBMENU:=$(NETWORK_SUPPORT_MENU)
@@ -834,6 +833,7 @@ define KernelPackage/sched-connmark
endef
$(eval $(call KernelPackage,sched-connmark))
+
define KernelPackage/sched-ctinfo
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=Traffic shaper ctinfo support
@@ -844,6 +844,55 @@ define KernelPackage/sched-ctinfo
endef
$(eval $(call KernelPackage,sched-ctinfo))
+
+define KernelPackage/sched-drr
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=Deficit Round Robin scheduler (DRR)
+ DEPENDS:=+kmod-sched-core
+ KCONFIG:=CONFIG_NET_SCH_DRR
+ FILES:=$(LINUX_DIR)/net/sched/sch_drr.ko
+ AUTOLOAD:=$(call AutoProbe,sch_drr)
+endef
+
+define KernelPackage/sched-drr/description
+ DRR algorithm Configuration
+endef
+
+$(eval $(call KernelPackage,sched-drr))
+
+
+define KernelPackage/sched-flower
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=Flower traffic classifier
+ DEPENDS:=+kmod-sched-core
+ KCONFIG:=CONFIG_NET_CLS_FLOWER
+ FILES:=$(LINUX_DIR)/net/sched/cls_flower.ko
+ AUTOLOAD:=$(call AutoProbe, cls_flower)
+endef
+
+define KernelPackage/sched-flower/description
+ Allows to classify packets based on a configurable combination of packet keys and masks.
+endef
+
+$(eval $(call KernelPackage,sched-flower))
+
+
+define KernelPackage/sched-fq-pie
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=Flow Queue Proportional Integral Enhanced (FQ-PIE)
+ DEPENDS:=+kmod-sched-core +kmod-sched-pie
+ KCONFIG:=CONFIG_NET_SCH_FQ_PIE
+ FILES:=$(LINUX_DIR)/net/sched/sch_fq_pie.ko
+ AUTOLOAD:=$(call AutoProbe, sch_fq_pie)
+endef
+
+define KernelPackage/sched-fq-pie/description
+ A queuing discipline that combines Flow Queuing with the PIE AQM.
+endef
+
+$(eval $(call KernelPackage,sched-fq-pie))
+
+
define KernelPackage/sched-ipset
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=Traffic shaper ipset support
@@ -858,19 +907,80 @@ endef
$(eval $(call KernelPackage,sched-ipset))
-define KernelPackage/sched-bpf
+define KernelPackage/sched-mqprio
SUBMENU:=$(NETWORK_SUPPORT_MENU)
- TITLE:=Traffic shaper support for Berkeley Packet Filter
- KCONFIG:= \
- CONFIG_NET_CLS_BPF \
- CONFIG_NET_ACT_BPF
- FILES:= \
- $(LINUX_DIR)/net/sched/cls_bpf.ko \
- $(LINUX_DIR)/net/sched/act_bpf.ko
- AUTOLOAD:=$(call AutoLoad,72,cls_bpf act_bpf)
+ TITLE:=Multi-queue priority scheduler (MQPRIO)
+ DEPENDS:=+kmod-sched-core
+ KCONFIG:=CONFIG_NET_SCH_MQPRIO
+ FILES:=$(LINUX_DIR)/net/sched/sch_mqprio.ko
+ AUTOLOAD:=$(call AutoProbe, sch_mqprio)
endef
-$(eval $(call KernelPackage,sched-bpf))
+define KernelPackage/sched-mqprio/description
+ This scheduler allows QOS to be offloaded on NICs that have support for offloading QOS schedulers.
+endef
+
+$(eval $(call KernelPackage,sched-mqprio))
+
+
+define KernelPackage/sched-pie
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=Proportional Integral controller-Enhanced AQM (PIE)
+ DEPENDS:=+kmod-sched-core
+ KCONFIG:=CONFIG_NET_SCH_PIE
+ FILES:=$(LINUX_DIR)/net/sched/sch_pie.ko
+ AUTOLOAD:=$(call AutoProbe, sch_pie)
+endef
+
+define KernelPackage/sched-pie/description
+ A control theoretic active queue management scheme.
+endef
+
+$(eval $(call KernelPackage,sched-pie))
+
+
+define KernelPackage/sched-prio
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=Multi Band Priority Queueing (PRIO)
+ DEPENDS:=+kmod-sched-core
+ KCONFIG:=CONFIG_NET_SCH_PRIO
+ FILES:=$(LINUX_DIR)/net/sched/sch_prio.ko
+ AUTOLOAD:=$(call AutoProbe,sch_prio)
+endef
+
+define KernelPackage/sched-prio/description
+ PRIO algorithm Configuration
+endef
+
+$(eval $(call KernelPackage,sched-prio))
+
+
+define KernelPackage/sched-red
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=Random Early Detection (RED)
+ DEPENDS:=+kmod-sched-core
+ KCONFIG:=CONFIG_NET_SCH_RED
+ FILES:=$(LINUX_DIR)/net/sched/sch_red.ko
+ AUTOLOAD:=$(call AutoProbe,sch_red)
+endef
+
+define KernelPackage/sched-red/description
+ Random Early Detection (RED) algorithm Configuration
+endef
+
+$(eval $(call KernelPackage,sched-red))
+
+
+define KernelPackage/sched-skbprio
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=SKB priority queue scheduler (SKBPRIO)
+ DEPENDS:=+kmod-sched-core
+ KCONFIG:= CONFIG_NET_SCH_SKBPRIO
+ FILES:= $(LINUX_DIR)/net/sched/sch_skbprio.ko
+ AUTOLOAD:=$(call AutoProbe,sch_skbprio)
+endef
+
+$(eval $(call KernelPackage,sched-skbprio))
define KernelPackage/bpf-test
@@ -883,26 +993,24 @@ endef
$(eval $(call KernelPackage,bpf-test))
+SCHED_MODULES_EXTRA = sch_codel sch_dsmark sch_gred sch_multiq sch_sfq sch_teql sch_fq act_pedit act_simple act_skbmod act_csum em_cmp em_nbyte em_meta em_text
+SCHED_FILES_EXTRA = $(foreach mod,$(SCHED_MODULES_EXTRA),$(LINUX_DIR)/net/sched/$(mod).ko)
+
define KernelPackage/sched
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=Extra traffic schedulers
- DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-lib-crc32c
+ DEPENDS:=+kmod-sched-core +kmod-lib-crc32c +kmod-lib-textsearch
KCONFIG:= \
CONFIG_NET_SCH_CODEL \
CONFIG_NET_SCH_DSMARK \
- CONFIG_NET_SCH_FIFO \
CONFIG_NET_SCH_GRED \
CONFIG_NET_SCH_MULTIQ \
- CONFIG_NET_SCH_PRIO \
- CONFIG_NET_SCH_RED \
CONFIG_NET_SCH_SFQ \
CONFIG_NET_SCH_TEQL \
CONFIG_NET_SCH_FQ \
- CONFIG_NET_SCH_PIE \
- CONFIG_NET_ACT_POLICE \
- CONFIG_NET_ACT_IPT \
CONFIG_NET_ACT_PEDIT \
CONFIG_NET_ACT_SIMP \
+ CONFIG_NET_ACT_SKBMOD \
CONFIG_NET_ACT_CSUM \
CONFIG_NET_EMATCH_CMP \
CONFIG_NET_EMATCH_NBYTE \
@@ -949,6 +1057,24 @@ endef
$(eval $(call KernelPackage,tcp-bbr))
+define KernelPackage/tls
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=In-kernel TLS Support with HW Offload
+ KCONFIG:=CONFIG_TLS \
+ CONFIG_TLS_DEVICE=y
+ FILES:=$(LINUX_DIR)/net/tls/tls.ko
+ AUTOLOAD:=$(call AutoProbe,tls)
+endef
+
+define KernelPackage/tls/description
+ Kernel module for in-kernel TLS protocol support and hw offload
+ (to supported interfaces).
+ This allows symmetric encryption handling of the TLS protocol to
+ be done in-kernel and it's HW offload when available.
+endef
+
+$(eval $(call KernelPackage,tls))
+
define KernelPackage/tcp-hybla
SUBMENU:=$(NETWORK_SUPPORT_MENU)
@@ -968,6 +1094,24 @@ endef
$(eval $(call KernelPackage,tcp-hybla))
+define KernelPackage/tcp-scalable
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=TCP-Scalable congestion control algorithm
+ KCONFIG:=CONFIG_TCP_CONG_SCALABLE
+ FILES:=$(LINUX_DIR)/net/ipv4/tcp_scalable.ko
+ AUTOLOAD:=$(call AutoProbe,tcp-scalable)
+endef
+
+define KernelPackage/tcp-scalable/description
+ Scalable TCP is a sender-side only change to TCP which uses a
+ MIMD congestion control algorithm which has some nice scaling
+ properties, though is known to have fairness issues.
+ See http://www.deneholme.net/tom/scalable/
+endef
+
+$(eval $(call KernelPackage,tcp-scalable))
+
+
define KernelPackage/ax25
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=AX25 support
@@ -1075,7 +1219,8 @@ define KernelPackage/sctp
CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5=y
FILES:= $(LINUX_DIR)/net/sctp/sctp.ko
AUTOLOAD:= $(call AutoLoad,32,sctp)
- DEPENDS:=+kmod-lib-crc32c +kmod-crypto-md5 +kmod-crypto-hmac
+ DEPENDS:=+kmod-lib-crc32c +kmod-crypto-md5 +kmod-crypto-hmac \
+ +kmod-udptunnel4 +kmod-udptunnel6
endef
define KernelPackage/sctp/description
@@ -1142,7 +1287,8 @@ define KernelPackage/rxrpc
FILES:= \
$(LINUX_DIR)/net/rxrpc/rxrpc.ko
AUTOLOAD:=$(call AutoLoad,30,rxrpc.ko)
- DEPENDS:= +kmod-crypto-manager +kmod-crypto-pcbc +kmod-crypto-fcrypt
+ DEPENDS:= +kmod-crypto-manager +kmod-crypto-pcbc +kmod-crypto-fcrypt \
+ +kmod-udptunnel4 +kmod-udptunnel6
endef
define KernelPackage/rxrpc/description
@@ -1178,16 +1324,13 @@ $(eval $(call KernelPackage,mpls))
define KernelPackage/9pnet
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=Plan 9 Resource Sharing Support (9P2000)
- DEPENDS:=@VIRTIO_SUPPORT
KCONFIG:= \
CONFIG_NET_9P \
CONFIG_NET_9P_DEBUG=n \
- CONFIG_NET_9P_XEN=n \
- CONFIG_NET_9P_VIRTIO
+ CONFIG_NET_9P_FD=n@ge5.17
FILES:= \
- $(LINUX_DIR)/net/9p/9pnet.ko \
- $(LINUX_DIR)/net/9p/9pnet_virtio.ko
- AUTOLOAD:=$(call AutoLoad,29,9pnet 9pnet_virtio)
+ $(LINUX_DIR)/net/9p/9pnet.ko
+ AUTOLOAD:=$(call AutoLoad,29,9pnet)
endef
define KernelPackage/9pnet/description
@@ -1197,6 +1340,25 @@ endef
$(eval $(call KernelPackage,9pnet))
+define KernelPackage/9pvirtio
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=Plan 9 Virtio Support
+ DEPENDS:=+kmod-9pnet @VIRTIO_SUPPORT
+ KCONFIG:= \
+ CONFIG_NET_9P_XEN=n \
+ CONFIG_NET_9P_VIRTIO
+ FILES:= \
+ $(LINUX_DIR)/net/9p/9pnet_virtio.ko
+ AUTOLOAD:=$(call AutoLoad,29,9pnet_virtio)
+endef
+
+define KernelPackage/9pvirtio/description
+ Kernel support support for
+ Plan 9 resource sharing for virtio.
+endef
+
+$(eval $(call KernelPackage,9pvirtio))
+
define KernelPackage/nlmon
SUBMENU:=$(NETWORK_SUPPORT_MENU)
@@ -1228,6 +1390,21 @@ endef
$(eval $(call KernelPackage,mdio))
+define KernelPackage/mdio-bus-mux
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=MDIO bus multiplexers
+ KCONFIG:=CONFIG_MDIO_BUS_MUX
+ HIDDEN:=1
+ FILES:=$(LINUX_DIR)/drivers/net/mdio/mdio-mux.ko
+ AUTOLOAD:=$(call AutoLoad,32,mdio-mux)
+endef
+
+define KernelPackage/mdio-bus-mux/description
+ Kernel framework for MDIO bus multiplexers.
+endef
+
+$(eval $(call KernelPackage,mdio-bus-mux))
+
define KernelPackage/macsec
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=IEEE 802.1AE MAC-level encryption (MAC)
@@ -1259,11 +1436,51 @@ endef
$(eval $(call KernelPackage,netlink-diag))
+define KernelPackage/inet-diag
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=INET diag support for ss utility
+ KCONFIG:= \
+ CONFIG_INET_DIAG \
+ CONFIG_INET_TCP_DIAG \
+ CONFIG_INET_UDP_DIAG \
+ CONFIG_INET_RAW_DIAG \
+ CONFIG_INET_DIAG_DESTROY=n
+ FILES:= \
+ $(LINUX_DIR)/net/ipv4/inet_diag.ko \
+ $(LINUX_DIR)/net/ipv4/tcp_diag.ko \
+ $(LINUX_DIR)/net/ipv4/udp_diag.ko \
+ $(LINUX_DIR)/net/ipv4/raw_diag.ko
+ AUTOLOAD:=$(call AutoLoad,31,inet_diag tcp_diag udp_diag raw_diag)
+endef
+
+define KernelPackage/inet-diag/description
+Support for INET (TCP, DCCP, etc) socket monitoring interface used by
+native Linux tools such as ss.
+endef
+
+$(eval $(call KernelPackage,inet-diag))
+
+
+define KernelPackage/xdp-sockets-diag
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=PF_XDP sockets monitoring interface support for ss utility
+ DEPENDS:=@KERNEL_XDP_SOCKETS
+ KCONFIG:=CONFIG_XDP_SOCKETS_DIAG
+ FILES:=$(LINUX_DIR)/net/xdp/xsk_diag.ko
+ AUTOLOAD:=$(call AutoLoad,31,xsk_diag)
+endef
+
+define KernelPackage/xdp-sockets-diag/description
+ Support for PF_XDP sockets monitoring interface used by the ss tool
+endef
+
+$(eval $(call KernelPackage,xdp-sockets-diag))
+
+
define KernelPackage/wireguard
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=WireGuard secure network tunnel
DEPENDS:= \
- +kmod-crypto-lib-blake2s \
+kmod-crypto-lib-chacha20poly1305 \
+kmod-crypto-lib-curve25519 \
+kmod-udptunnel4 \
@@ -1285,3 +1502,81 @@ define KernelPackage/wireguard/description
endef
$(eval $(call KernelPackage,wireguard))
+
+
+define KernelPackage/netconsole
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=Network console logging support
+ KCONFIG:=CONFIG_NETCONSOLE \
+ CONFIG_NETCONSOLE_DYNAMIC=n
+ FILES:=$(LINUX_DIR)/drivers/net/netconsole.ko
+ AUTOLOAD:=$(call AutoProbe,netconsole)
+endef
+
+define KernelPackage/netconsole/description
+ Network console logging support.
+endef
+
+$(eval $(call KernelPackage,netconsole))
+
+
+define KernelPackage/qrtr
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=Qualcomm IPC Router support
+ HIDDEN:=1
+ KCONFIG:=CONFIG_QRTR
+ FILES:= \
+ $(LINUX_DIR)/net/qrtr/qrtr.ko
+ AUTOLOAD:=$(call AutoProbe,qrtr)
+endef
+
+define KernelPackage/qrtr/description
+ Qualcomm IPC Router support
+endef
+
+$(eval $(call KernelPackage,qrtr))
+
+define KernelPackage/qrtr-tun
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=TUN device for Qualcomm IPC Router
+ DEPENDS:=+kmod-qrtr
+ KCONFIG:=CONFIG_QRTR_TUN
+ FILES:= $(LINUX_DIR)/net/qrtr/qrtr-tun.ko
+ AUTOLOAD:=$(call AutoProbe,qrtr-tun)
+endef
+
+define KernelPackage/qrtr-tun/description
+ TUN device for Qualcomm IPC Router
+endef
+
+$(eval $(call KernelPackage,qrtr-tun))
+
+define KernelPackage/qrtr-smd
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=SMD IPC Router channels
+ DEPENDS:=+kmod-qrtr @TARGET_qualcommax
+ KCONFIG:=CONFIG_QRTR_SMD
+ FILES:= $(LINUX_DIR)/net/qrtr/qrtr-smd.ko
+ AUTOLOAD:=$(call AutoProbe,qrtr-smd)
+endef
+
+define KernelPackage/qrtr-smd/description
+ SMD IPC Router channels
+endef
+
+$(eval $(call KernelPackage,qrtr-smd))
+
+define KernelPackage/qrtr-mhi
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=MHI IPC Router channels
+ DEPENDS:=+kmod-mhi-bus +kmod-qrtr
+ KCONFIG:=CONFIG_QRTR_MHI
+ FILES:= $(LINUX_DIR)/net/qrtr/qrtr-mhi.ko
+ AUTOLOAD:=$(call AutoProbe,qrtr-mhi)
+endef
+
+define KernelPackage/qrtr-mhi/description
+ MHI IPC Router channels
+endef
+
+$(eval $(call KernelPackage,qrtr-mhi))
diff --git a/package/kernel/linux/modules/nls.mk b/package/kernel/linux/modules/nls.mk
index 05fce27bbc2..7450ed1ce56 100644
--- a/package/kernel/linux/modules/nls.mk
+++ b/package/kernel/linux/modules/nls.mk
@@ -135,8 +135,10 @@ define KernelPackage/nls-cp932
SUBMENU:=Native Language Support
TITLE:=Codepage 932 (Japanese)
KCONFIG:=CONFIG_NLS_CODEPAGE_932
- FILES:=$(LINUX_DIR)/fs/nls/nls_cp932.ko
- AUTOLOAD:=$(call AutoLoad,25,nls_cp932)
+ FILES:= \
+ $(LINUX_DIR)/fs/nls/nls_cp932.ko \
+ $(LINUX_DIR)/fs/nls/nls_euc-jp.ko
+ AUTOLOAD:=$(call AutoLoad,25,nls_cp932 nls_euc-jp)
$(call AddDepends/nls)
endef
diff --git a/package/kernel/linux/modules/other.mk b/package/kernel/linux/modules/other.mk
index 926fc67386f..4a061974c33 100644
--- a/package/kernel/linux/modules/other.mk
+++ b/package/kernel/linux/modules/other.mk
@@ -40,6 +40,8 @@ define KernelPackage/bluetooth
CONFIG_BT_BNEP \
CONFIG_BT_HCIBTUSB \
CONFIG_BT_HCIBTUSB_BCM=n \
+ CONFIG_BT_HCIBTUSB_MTK=y \
+ CONFIG_BT_HCIBTUSB_RTL=y \
CONFIG_BT_HCIUART \
CONFIG_BT_HCIUART_BCM=n \
CONFIG_BT_HCIUART_INTEL=n \
@@ -54,7 +56,9 @@ define KernelPackage/bluetooth
$(LINUX_DIR)/net/bluetooth/hidp/hidp.ko \
$(LINUX_DIR)/drivers/bluetooth/hci_uart.ko \
$(LINUX_DIR)/drivers/bluetooth/btusb.ko \
- $(LINUX_DIR)/drivers/bluetooth/btintel.ko
+ $(LINUX_DIR)/drivers/bluetooth/btintel.ko \
+ $(LINUX_DIR)/drivers/bluetooth/btrtl.ko \
+ $(LINUX_DIR)/drivers/bluetooth/btmtk.ko@ge5.17
AUTOLOAD:=$(call AutoProbe,bluetooth rfcomm bnep hidp hci_uart btusb)
endef
@@ -71,7 +75,6 @@ define KernelPackage/ath3k
KCONFIG:= \
CONFIG_BT_ATH3K \
CONFIG_BT_HCIUART_ATH3K=y
- $(call AddDepends/bluetooth)
FILES:= \
$(LINUX_DIR)/drivers/bluetooth/ath3k.ko
AUTOLOAD:=$(call AutoProbe,ath3k)
@@ -107,7 +110,6 @@ define KernelPackage/btmrvl
KCONFIG:= \
CONFIG_BT_MRVL \
CONFIG_BT_MRVL_SDIO
- $(call AddDepends/bluetooth)
FILES:= \
$(LINUX_DIR)/drivers/bluetooth/btmrvl.ko \
$(LINUX_DIR)/drivers/bluetooth/btmrvl_sdio.ko
@@ -121,6 +123,24 @@ endef
$(eval $(call KernelPackage,btmrvl))
+define KernelPackage/btsdio
+ SUBMENU:=$(OTHER_MENU)
+ TITLE:=Bluetooth HCI SDIO driver
+ DEPENDS:=+kmod-bluetooth +kmod-mmc
+ KCONFIG:= \
+ CONFIG_BT_HCIBTSDIO
+ FILES:= \
+ $(LINUX_DIR)/drivers/bluetooth/btsdio.ko
+ AUTOLOAD:=$(call AutoProbe,btsdio)
+endef
+
+define KernelPackage/btsdio/description
+ Kernel support for Bluetooth device with SDIO interface
+endef
+
+$(eval $(call KernelPackage,btsdio))
+
+
define KernelPackage/dma-buf
SUBMENU:=$(OTHER_MENU)
TITLE:=DMA shared buffer support
@@ -182,136 +202,98 @@ endef
$(eval $(call KernelPackage,eeprom-at25))
-define KernelPackage/gpio-dev
- SUBMENU:=$(OTHER_MENU)
- TITLE:=Generic GPIO char device support
- DEPENDS:=@GPIO_SUPPORT
- KCONFIG:=CONFIG_GPIO_DEVICE
- FILES:=$(LINUX_DIR)/drivers/char/gpio_dev.ko
- AUTOLOAD:=$(call AutoLoad,40,gpio_dev)
-endef
-
-define KernelPackage/gpio-dev/description
- Kernel module to allows control of GPIO pins using a character device.
-endef
-
-$(eval $(call KernelPackage,gpio-dev))
-
-
-define KernelPackage/gpio-f7188x
- SUBMENU:=$(OTHER_MENU)
- TITLE:=Fintek F718xx/F818xx GPIO Support
- DEPENDS:=@GPIO_SUPPORT @TARGET_x86
- KCONFIG:=CONFIG_GPIO_F7188X
- FILES:=$(LINUX_DIR)/drivers/gpio/gpio-f7188x.ko
- AUTOLOAD:=$(call AutoProbe,gpio-f7188x)
-endef
-
-define KernelPackage/gpio-f7188x/description
- Kernel module for the GPIOs found on many Fintek Super-IO chips.
-endef
-
-$(eval $(call KernelPackage,gpio-f7188x))
-
-
-define KernelPackage/gpio-mcp23s08
+define KernelPackage/google-firmware
SUBMENU:=$(OTHER_MENU)
- TITLE:=Microchip MCP23xxx I/O expander
- DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core +kmod-regmap-i2c
+ TITLE:=Google firmware drivers (Coreboot, VPD, Memconsole)
KCONFIG:= \
- CONFIG_GPIO_MCP23S08 \
- CONFIG_PINCTRL_MCP23S08
+ CONFIG_GOOGLE_FIRMWARE=y \
+ CONFIG_GOOGLE_COREBOOT_TABLE \
+ CONFIG_GOOGLE_MEMCONSOLE \
+ CONFIG_GOOGLE_MEMCONSOLE_COREBOOT \
+ CONFIG_GOOGLE_VPD
FILES:= \
- $(LINUX_DIR)/drivers/pinctrl/pinctrl-mcp23s08.ko
- AUTOLOAD:=$(call AutoLoad,40,pinctrl-mcp23s08)
+ $(LINUX_DIR)/drivers/firmware/google/coreboot_table.ko \
+ $(LINUX_DIR)/drivers/firmware/google/memconsole.ko \
+ $(LINUX_DIR)/drivers/firmware/google/memconsole-coreboot.ko \
+ $(LINUX_DIR)/drivers/firmware/google/vpd-sysfs.ko
+ AUTOLOAD:=$(call AutoProbe,coreboot_table memconsole-coreboot vpd-sysfs)
endef
-define KernelPackage/gpio-mcp23s08/description
- Kernel module for Microchip MCP23xxx SPI/I2C I/O expander
+define KernelPackage/google-firmware/description
+ Kernel modules for Google firmware drivers. Useful for examining firmware and
+ boot details on devices using a Google bootloader based on Coreboot. Provides
+ files like /sys/firmware/log and /sys/firmware/vpd.
endef
-$(eval $(call KernelPackage,gpio-mcp23s08))
+$(eval $(call KernelPackage,google-firmware))
-define KernelPackage/gpio-nxp-74hc164
+define KernelPackage/lkdtm
SUBMENU:=$(OTHER_MENU)
- TITLE:=NXP 74HC164 GPIO expander support
- KCONFIG:=CONFIG_GPIO_74X164
- FILES:=$(LINUX_DIR)/drivers/gpio/gpio-74x164.ko
- AUTOLOAD:=$(call AutoProbe,gpio-74x164)
-endef
-
-define KernelPackage/gpio-nxp-74hc164/description
- Kernel module for NXP 74HC164 GPIO expander
+ TITLE:=Linux Kernel Dump Test Tool Module
+ KCONFIG:=CONFIG_LKDTM
+ FILES:=$(LINUX_DIR)/drivers/misc/lkdtm/lkdtm.ko
+ AUTOLOAD:=$(call AutoProbe,lkdtm)
endef
-$(eval $(call KernelPackage,gpio-nxp-74hc164))
-
-define KernelPackage/gpio-pca953x
- SUBMENU:=$(OTHER_MENU)
- DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core +kmod-regmap-i2c
- TITLE:=PCA95xx, TCA64xx, and MAX7310 I/O ports
- KCONFIG:=CONFIG_GPIO_PCA953X
- FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pca953x.ko
- AUTOLOAD:=$(call AutoLoad,55,gpio-pca953x)
+define KernelPackage/lkdtm/description
+ This module enables testing of the different dumping mechanisms by inducing
+ system failures at predefined crash points.
endef
-define KernelPackage/gpio-pca953x/description
- Kernel module for MAX731{0,2,3,5}, PCA6107, PCA953{4-9}, PCA955{4-7},
- PCA957{4,5} and TCA64{08,16} I2C GPIO expanders
-endef
+$(eval $(call KernelPackage,lkdtm))
-$(eval $(call KernelPackage,gpio-pca953x))
-define KernelPackage/gpio-pcf857x
+define KernelPackage/pinctrl-mcp23s08
SUBMENU:=$(OTHER_MENU)
- DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
- TITLE:=PCX857x, PCA967x and MAX732X I2C GPIO expanders
- KCONFIG:=CONFIG_GPIO_PCF857X
- FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pcf857x.ko
- AUTOLOAD:=$(call AutoLoad,55,gpio-pcf857x)
+ TITLE:=Microchip MCP23xxx I/O expander
+ HIDDEN:=1
+ DEPENDS:=@GPIO_SUPPORT +kmod-regmap-core
+ KCONFIG:=CONFIG_PINCTRL_MCP23S08
+ FILES:=$(LINUX_DIR)/drivers/pinctrl/pinctrl-mcp23s08.ko
+ AUTOLOAD:=$(call AutoLoad,40,pinctrl-mcp23s08)
endef
-define KernelPackage/gpio-pcf857x/description
- Kernel module for PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders
+define KernelPackage/pinctrl-mcp23s08/description
+ Kernel module for Microchip MCP23xxx I/O expander
endef
-$(eval $(call KernelPackage,gpio-pcf857x))
+$(eval $(call KernelPackage,pinctrl-mcp23s08))
-define KernelPackage/gpio-it87
+define KernelPackage/pinctrl-mcp23s08-i2c
SUBMENU:=$(OTHER_MENU)
- DEPENDS:=@GPIO_SUPPORT @TARGET_x86
- TITLE:=GPIO support for IT87xx Super I/O chips
- KCONFIG:=CONFIG_GPIO_IT87
- FILES:=$(LINUX_DIR)/drivers/gpio/gpio-it87.ko
- AUTOLOAD:=$(call AutoLoad,25,gpio-it87,1)
+ TITLE:=Microchip MCP23xxx I/O expander (I2C)
+ DEPENDS:=@GPIO_SUPPORT \
+ +kmod-pinctrl-mcp23s08 \
+ +kmod-i2c-core \
+ +kmod-regmap-i2c
+ KCONFIG:=CONFIG_PINCTRL_MCP23S08_I2C
+ FILES:=$(LINUX_DIR)/drivers/pinctrl/pinctrl-mcp23s08_i2c.ko
+ AUTOLOAD:=$(call AutoLoad,40,pinctrl-mcp23s08-i2c)
endef
-define KernelPackage/gpio-it87/description
- This driver is tested with ITE IT8728 and IT8732 Super I/O chips, and
- supports the IT8761E, IT8613, IT8620E, and IT8628E Super I/O chips as
- well.
+define KernelPackage/pinctrl-mcp23s08-i2c/description
+ Kernel module for Microchip MCP23xxx I/O expander via I2C
endef
-$(eval $(call KernelPackage,gpio-it87))
+$(eval $(call KernelPackage,pinctrl-mcp23s08-i2c))
-define KernelPackage/gpio-amd-fch
+define KernelPackage/pinctrl-mcp23s08-spi
SUBMENU:=$(OTHER_MENU)
- DEPENDS:=@GPIO_SUPPORT @TARGET_x86
- TITLE:=GPIO support for AMD Fusion Controller Hub (G-series SOCs)
- KCONFIG:=CONFIG_GPIO_AMD_FCH
- FILES:=$(LINUX_DIR)/drivers/gpio/gpio-amd-fch.ko
- AUTOLOAD:=$(call AutoLoad,25,gpio-amd-fch,1)
+ TITLE:=Microchip MCP23xxx I/O expander (SPI)
+ DEPENDS:=@GPIO_SUPPORT +kmod-pinctrl-mcp23s08
+ KCONFIG:=CONFIG_PINCTRL_MCP23S08_SPI
+ FILES:=$(LINUX_DIR)/drivers/pinctrl/pinctrl-mcp23s08_spi.ko
+ AUTOLOAD:=$(call AutoLoad,40,pinctrl-mcp23s08-spi)
endef
-define KernelPackage/gpio-amd-fch/description
- This option enables driver for GPIO on AMDs Fusion Controller Hub,
- as found on G-series SOCs (eg. GX-412TC)
+define KernelPackage/pinctrl-mcp23s08-spi/description
+ Kernel module for Microchip MCP23xxx I/O expander via SPI
endef
-$(eval $(call KernelPackage,gpio-amd-fch))
+$(eval $(call KernelPackage,pinctrl-mcp23s08-spi))
define KernelPackage/ppdev
@@ -375,7 +357,6 @@ define KernelPackage/mmc
CONFIG_MMC_BLOCK \
CONFIG_MMC_DEBUG=n \
CONFIG_MMC_UNSAFE_RESUME=n \
- CONFIG_MMC_BLOCK_BOUNCE=y \
CONFIG_MMC_TIFM_SD=n \
CONFIG_MMC_WBSD=n \
CONFIG_SDIO_UART=n
@@ -392,23 +373,6 @@ endef
$(eval $(call KernelPackage,mmc))
-define KernelPackage/mvsdio
- SUBMENU:=$(OTHER_MENU)
- TITLE:=Marvell MMC/SD/SDIO host driver
- DEPENDS:=+kmod-mmc @TARGET_kirkwood
- KCONFIG:= CONFIG_MMC_MVSDIO
- FILES:= \
- $(LINUX_DIR)/drivers/mmc/host/mvsdio.ko
- AUTOLOAD:=$(call AutoProbe,mvsdio,1)
-endef
-
-define KernelPackage/mvsdio/description
- Kernel support for the Marvell SDIO host driver.
-endef
-
-$(eval $(call KernelPackage,mvsdio))
-
-
define KernelPackage/sdhci
SUBMENU:=$(OTHER_MENU)
TITLE:=Secure Digital Host Controller Interface support
@@ -478,6 +442,7 @@ define KernelPackage/ssb
CONFIG_SSB_DRIVER_MIPS=n \
CONFIG_SSB_DRIVER_PCICORE=y \
CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
+ CONFIG_SSB_FALLBACK_SPROM=y \
CONFIG_SSB_PCIHOST=y \
CONFIG_SSB_PCIHOST_POSSIBLE=y \
CONFIG_SSB_POSSIBLE=y \
@@ -502,6 +467,7 @@ define KernelPackage/bcma
CONFIG_BCMA \
CONFIG_BCMA_POSSIBLE=y \
CONFIG_BCMA_BLOCKIO=y \
+ CONFIG_BCMA_FALLBACK_SPROM=y \
CONFIG_BCMA_HOST_PCI_POSSIBLE=y \
CONFIG_BCMA_HOST_PCI=y \
CONFIG_BCMA_HOST_SOC=n \
@@ -665,22 +631,22 @@ endef
$(eval $(call KernelPackage,rtc-pcf2127))
-define KernelPackage/rtc-pt7c4338
+define KernelPackage/rtc-r7301
SUBMENU:=$(OTHER_MENU)
- TITLE:=Pericom PT7C4338 RTC support
+ TITLE:=Epson RTC7301 support
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
- DEPENDS:=+kmod-i2c-core
- KCONFIG:=CONFIG_RTC_DRV_PT7C4338 \
+ DEPENDS:=+kmod-regmap-mmio
+ KCONFIG:=CONFIG_RTC_DRV_R7301 \
CONFIG_RTC_CLASS=y
- FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
- AUTOLOAD:=$(call AutoProbe,rtc-pt7c4338)
+ FILES:=$(LINUX_DIR)/drivers/rtc/rtc-r7301.ko
+ AUTOLOAD:=$(call AutoProbe,rtc-r7301)
endef
-define KernelPackage/rtc-pt7c4338/description
- Kernel module for Pericom PT7C4338 i2c RTC chip
+define KernelPackage/rtc-r7301/description
+ Kernel module for Epson RTC7301 RTC chip
endef
-$(eval $(call KernelPackage,rtc-pt7c4338))
+$(eval $(call KernelPackage,rtc-r7301))
define KernelPackage/rtc-rs5c372a
SUBMENU:=$(OTHER_MENU)
@@ -733,6 +699,22 @@ endef
$(eval $(call KernelPackage,rtc-s35390a))
+define KernelPackage/rtc-x1205
+ SUBMENU:=$(OTHER_MENU)
+ TITLE:=Xicor Intersil X1205
+ DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
+ DEPENDS:=+kmod-i2c-core
+ KCONFIG:=CONFIG_RTC_DRV_X1205 \
+ CONFIG_RTC_CLASS=y
+ FILES:=$(LINUX_DIR)/drivers/rtc/rtc-x1205.ko
+ AUTOLOAD:=$(call AutoProbe,rtc-x1205)
+endef
+
+define KernelPackage/rtc-x1205/description
+ Kernel module for Xicor Intersil X1205 I2C RTC chip
+endef
+
+$(eval $(call KernelPackage,rtc-x1205))
define KernelPackage/mtdtests
SUBMENU:=$(OTHER_MENU)
@@ -786,6 +768,42 @@ endef
$(eval $(call KernelPackage,mtdram))
+define KernelPackage/ramoops
+ SUBMENU:=$(OTHER_MENU)
+ TITLE:=Ramoops (pstore-ram)
+ DEFAULT:=m if ALL_KMODS
+ KCONFIG:=CONFIG_PSTORE_RAM \
+ CONFIG_PSTORE_CONSOLE=y
+ DEPENDS:=+kmod-pstore +kmod-reed-solomon
+ FILES:= $(LINUX_DIR)/fs/pstore/ramoops.ko
+ AUTOLOAD:=$(call AutoLoad,30,ramoops,1)
+endef
+
+define KernelPackage/ramoops/description
+ Kernel module for pstore-ram (ramoops) crash log storage
+endef
+
+$(eval $(call KernelPackage,ramoops))
+
+
+define KernelPackage/reed-solomon
+ SUBMENU:=$(OTHER_MENU)
+ TITLE:=Reed-Solomon error correction
+ DEFAULT:=m if ALL_KMODS
+ KCONFIG:=CONFIG_REED_SOLOMON \
+ CONFIG_REED_SOLOMON_DEC8=y \
+ CONFIG_REED_SOLOMON_ENC8=y
+ FILES:= $(LINUX_DIR)/lib/reed_solomon/reed_solomon.ko
+ AUTOLOAD:=$(call AutoLoad,30,reed_solomon,1)
+endef
+
+define KernelPackage/reed-solomon/description
+ Kernel module for Reed-Solomon error correction
+endef
+
+$(eval $(call KernelPackage,reed-solomon))
+
+
define KernelPackage/serial-8250
SUBMENU:=$(OTHER_MENU)
TITLE:=8250 UARTs
@@ -819,7 +837,7 @@ define KernelPackage/serial-8250-exar
KCONFIG:= CONFIG_SERIAL_8250_EXAR
FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250_exar.ko
AUTOLOAD:=$(call AutoProbe,8250 8250_base 8250_exar)
- DEPENDS:=+kmod-serial-8250
+ DEPENDS:=@PCI_SUPPORT +kmod-serial-8250
endef
define KernelPackage/serial-8250-exar/description
@@ -914,7 +932,6 @@ $(eval $(call KernelPackage,ikconfig))
define KernelPackage/zram
SUBMENU:=$(OTHER_MENU)
TITLE:=ZRAM
- DEPENDS:=+kmod-lib-lzo
KCONFIG:= \
CONFIG_ZSMALLOC \
CONFIG_ZRAM \
@@ -931,8 +948,37 @@ define KernelPackage/zram/description
Compressed RAM block device support
endef
-$(eval $(call KernelPackage,zram))
+define KernelPackage/zram/config
+ if PACKAGE_kmod-zram
+ choice
+ prompt "ZRAM Default compressor"
+ default ZRAM_DEF_COMP_LZORLE
+
+ config ZRAM_DEF_COMP_LZORLE
+ bool "lzo-rle"
+ select PACKAGE_kmod-lib-lzo
+
+ config ZRAM_DEF_COMP_LZO
+ bool "lzo"
+ select PACKAGE_kmod-lib-lzo
+
+ config ZRAM_DEF_COMP_LZ4
+ bool "lz4"
+ select PACKAGE_kmod-lib-lz4
+
+ config ZRAM_DEF_COMP_LZ4HC
+ bool "lz4-hc"
+ select PACKAGE_kmod-lib-lz4hc
+ config ZRAM_DEF_COMP_ZSTD
+ bool "zstd"
+ select PACKAGE_kmod-lib-zstd
+
+ endchoice
+ endif
+endef
+
+$(eval $(call KernelPackage,zram))
define KernelPackage/pps
SUBMENU:=$(OTHER_MENU)
@@ -1008,7 +1054,7 @@ $(eval $(call KernelPackage,ptp))
define KernelPackage/ptp-qoriq
SUBMENU:=$(OTHER_MENU)
TITLE:=Freescale QorIQ PTP support
- DEPENDS:=@TARGET_mpc85xx +kmod-ptp
+ DEPENDS:=@(TARGET_mpc85xx||TARGET_qoriq) +kmod-ptp
KCONFIG:=CONFIG_PTP_1588_CLOCK_QORIQ
FILES:=$(LINUX_DIR)/drivers/ptp/ptp-qoriq.ko
AUTOLOAD:=$(call AutoProbe,ptp-qoriq)
@@ -1064,25 +1110,6 @@ endef
$(eval $(call KernelPackage,thermal))
-define KernelPackage/gpio-beeper
- SUBMENU:=$(OTHER_MENU)
- TITLE:=GPIO beeper support
- DEPENDS:=+kmod-input-core
- KCONFIG:= \
- CONFIG_INPUT_MISC=y \
- CONFIG_INPUT_GPIO_BEEPER
- FILES:= \
- $(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
- AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
-endef
-
-define KernelPackage/gpio-beeper/description
- This enables playing beeps through an GPIO-connected buzzer
-endef
-
-$(eval $(call KernelPackage,gpio-beeper))
-
-
define KernelPackage/echo
SUBMENU:=$(OTHER_MENU)
TITLE:=Line Echo Canceller
@@ -1125,9 +1152,7 @@ define KernelPackage/keys-trusted
TITLE:=TPM trusted keys on kernel keyring
DEPENDS:=@KERNEL_KEYS +kmod-crypto-hash +kmod-crypto-hmac +kmod-crypto-sha1 +kmod-tpm
KCONFIG:=CONFIG_TRUSTED_KEYS
- FILES:= \
- $(LINUX_DIR)/security/keys/trusted.ko@lt5.10 \
- $(LINUX_DIR)/security/keys/trusted-keys/trusted.ko@ge5.10
+ FILES:= $(LINUX_DIR)/security/keys/trusted-keys/trusted.ko
AUTOLOAD:=$(call AutoLoad,01,trusted-keys,1)
endef
@@ -1145,7 +1170,8 @@ $(eval $(call KernelPackage,keys-trusted))
define KernelPackage/tpm
SUBMENU:=$(OTHER_MENU)
TITLE:=TPM Hardware Support
- DEPENDS:= +kmod-random-core
+ DEPENDS:= +kmod-random-core +kmod-asn1-decoder \
+ +kmod-asn1-encoder +kmod-oid-registry
KCONFIG:= CONFIG_TCG_TPM
FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm.ko
AUTOLOAD:=$(call AutoLoad,10,tpm,1)
@@ -1208,67 +1234,50 @@ endef
$(eval $(call KernelPackage,tpm-i2c-infineon))
-define KernelPackage/w83627hf-wdt
+define KernelPackage/i6300esb-wdt
SUBMENU:=$(OTHER_MENU)
- TITLE:=Winbond 83627HF Watchdog Timer
- KCONFIG:=CONFIG_W83627HF_WDT
- FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/w83627hf_wdt.ko
- AUTOLOAD:=$(call AutoLoad,50,w83627hf-wdt,1)
+ TITLE:=Intel 6300ESB Timer/Watchdog
+ DEPENDS:=@PCI_SUPPORT @!SMALL_FLASH
+ KCONFIG:=CONFIG_I6300ESB_WDT \
+ CONFIG_WATCHDOG_CORE=y
+ FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/i6300esb.ko
+ AUTOLOAD:=$(call AutoLoad,50,i6300esb,1)
endef
-define KernelPackage/w83627hf-wdt/description
- Kernel module for Winbond 83627HF Watchdog Timer
+define KernelPackage/i6300esb-wdt/description
+ Kernel module for the watchdog timer built into the Intel
+ 6300ESB controller hub. Also used by QEMU/libvirt.
endef
-$(eval $(call KernelPackage,w83627hf-wdt))
+$(eval $(call KernelPackage,i6300esb-wdt))
-define KernelPackage/itco-wdt
+define KernelPackage/mhi-bus
SUBMENU:=$(OTHER_MENU)
- TITLE:=Intel iTCO Watchdog Timer
- KCONFIG:=CONFIG_ITCO_WDT \
- CONFIG_ITCO_VENDOR_SUPPORT=y
- FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/iTCO_wdt.ko \
- $(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/iTCO_vendor_support.ko
- AUTOLOAD:=$(call AutoLoad,50,iTCO_vendor_support iTCO_wdt,1)
+ TITLE:=MHI bus
+ KCONFIG:=CONFIG_MHI_BUS \
+ CONFIG_MHI_BUS_DEBUG=y
+ FILES:=$(LINUX_DIR)/drivers/bus/mhi/host/mhi.ko
+ AUTOLOAD:=$(call AutoProbe,mhi)
endef
-define KernelPackage/itco-wdt/description
- Kernel module for Intel iTCO Watchdog Timer
+define KernelPackage/mhi-bus/description
+ Kernel module for the Qualcomm MHI bus.
endef
-$(eval $(call KernelPackage,itco-wdt))
-
-
-define KernelPackage/it87-wdt
- SUBMENU:=$(OTHER_MENU)
- TITLE:=ITE IT87 Watchdog Timer
- KCONFIG:=CONFIG_IT87_WDT
- FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/it87_wdt.ko
- AUTOLOAD:=$(call AutoLoad,50,it87-wdt,1)
- MODPARAMS.it87-wdt:= \
- nogameport=1 \
- nocir=1
-endef
-
-define KernelPackage/it87-wdt/description
- Kernel module for ITE IT87 Watchdog Timer
-endef
-
-$(eval $(call KernelPackage,it87-wdt))
-
+$(eval $(call KernelPackage,mhi-bus))
-define KernelPackage/f71808e-wdt
+define KernelPackage/mhi-pci-generic
SUBMENU:=$(OTHER_MENU)
- TITLE:=Fintek F718xx/F818xx Watchdog Timer
- DEPENDS:=@TARGET_x86
- KCONFIG:=CONFIG_F71808E_WDT
- FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/f71808e_wdt.ko
- AUTOLOAD:=$(call AutoProbe,f71808e-wdt,1)
+ TITLE:=MHI PCI controller driver
+ DEPENDS:=@PCI_SUPPORT +kmod-mhi-bus
+ KCONFIG:=CONFIG_MHI_BUS_PCI_GENERIC
+ FILES:=$(LINUX_DIR)/drivers/bus/mhi/host/mhi_pci_generic.ko
+ AUTOLOAD:=$(call AutoProbe,mhi_pci_generic)
endef
-define KernelPackage/f71808e-wdt/description
- Kernel module for the watchdog timer found on many Fintek Super-IO chips.
+define KernelPackage/mhi-pci-generic/description
+ Kernel module for the MHI PCI controller driver.
endef
-$(eval $(call KernelPackage,f71808e-wdt))
+$(eval $(call KernelPackage,mhi-pci-generic))
diff --git a/package/kernel/linux/modules/sound.mk b/package/kernel/linux/modules/sound.mk
index e43be25bc67..623f65ac59a 100644
--- a/package/kernel/linux/modules/sound.mk
+++ b/package/kernel/linux/modules/sound.mk
@@ -225,17 +225,51 @@ define KernelPackage/sound-soc-imx
$(LINUX_DIR)/sound/soc/fsl/snd-soc-fsl-ssi.ko \
$(LINUX_DIR)/sound/soc/fsl/imx-pcm-dma.ko
AUTOLOAD:=$(call AutoLoad,56,snd-soc-imx-audmux snd-soc-fsl-ssi snd-soc-imx-pcm)
- DEPENDS:=@TARGET_imx6 +kmod-sound-soc-core
+ DEPENDS:=@TARGET_imx +kmod-sound-soc-core
$(call AddDepends/sound)
endef
define KernelPackage/sound-soc-imx/description
- Support for i.MX6 Platform sound (ssi/audmux/pcm)
+ Support for i.MX Platform sound (ssi/audmux/pcm)
endef
$(eval $(call KernelPackage,sound-soc-imx))
+define KernelPackage/sound-soc-mt7986
+ TITLE:=MediaTek MT7986 Audio support
+ KCONFIG:=CONFIG_SND_SOC_MT7986 CONFIG_SND_SOC_MT7986_WM8960
+ FILES:= \
+ $(LINUX_DIR)/sound/soc/mediatek/common/snd-soc-mtk-common.ko \
+ $(LINUX_DIR)/sound/soc/mediatek/mt7986/snd-soc-mt7986-afe.ko
+ AUTOLOAD:=$(call AutoLoad,56,snd-soc-mtk-common snd-soc-mt7986-afe)
+ DEPENDS:=@TARGET_mediatek_filogic +kmod-sound-soc-core
+ $(call AddDepends/sound)
+endef
+
+define KernelPackage/sound-soc-mt7986/description
+ Support for audio on systems using the MediaTek MT7986 SoC.
+endef
+
+$(eval $(call KernelPackage,sound-soc-mt7986))
+
+
+define KernelPackage/sound-soc-mt7986-wm8960
+ TITLE:=MediaTek MT7986 Audio support
+ KCONFIG:=CONFIG_SND_SOC_MT7986_WM8960
+ FILES:=$(LINUX_DIR)/sound/soc/mediatek/mt7986/mt7986-wm8960.ko
+ AUTOLOAD:=$(call AutoLoad,57,mt7986-wm8960)
+ DEPENDS:=@TARGET_mediatek_filogic +kmod-sound-soc-wm8960 +kmod-sound-soc-mt7986
+ $(call AddDepends/sound)
+endef
+
+define KernelPackage/sound-soc-mt7986-wm8960/description
+ Support for use of the Wolfson Audio WM8960 codec with the MediaTek MT7986 SoC.
+endef
+
+$(eval $(call KernelPackage,sound-soc-mt7986-wm8960))
+
+
define KernelPackage/sound-soc-imx-sgtl5000
TITLE:=IMX SoC support for SGTL5000
KCONFIG:=CONFIG_SND_SOC_IMX_SGTL5000
@@ -243,17 +277,29 @@ define KernelPackage/sound-soc-imx-sgtl5000
$(LINUX_DIR)/sound/soc/codecs/snd-soc-sgtl5000.ko \
$(LINUX_DIR)/sound/soc/fsl/snd-soc-imx-sgtl5000.ko
AUTOLOAD:=$(call AutoLoad,57,snd-soc-sgtl5000 snd-soc-imx-sgtl5000)
- DEPENDS:=@TARGET_imx6 +kmod-sound-soc-imx
+ DEPENDS:=@TARGET_imx +kmod-sound-soc-imx +kmod-regmap-i2c
$(call AddDepends/sound)
endef
define KernelPackage/sound-soc-imx-sgtl5000/description
- Support for i.MX6 Platform sound SGTL5000 codec
+ Support for i.MX Platform sound SGTL5000 codec
endef
$(eval $(call KernelPackage,sound-soc-imx-sgtl5000))
+define KernelPackage/sound-soc-wm8960
+ TITLE:=SoC WM8960 codec support
+ KCONFIG:=CONFIG_SND_SOC_WM8960
+ FILES:=$(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8960.ko
+ DEPENDS:=+kmod-sound-soc-core +kmod-i2c-core +kmod-regmap-i2c
+ AUTOLOAD:=$(call AutoProbe,snd-soc-wm8960)
+ $(call AddDepends/sound)
+endef
+
+$(eval $(call KernelPackage,sound-soc-wm8960))
+
+
define KernelPackage/sound-soc-spdif
TITLE:=SoC S/PDIF codec support
KCONFIG:=CONFIG_SND_SOC_SPDIF
@@ -523,8 +569,7 @@ define KernelPackage/sound-hda-intel
CONFIG_SND_HDA_INTEL
FILES:= \
$(LINUX_DIR)/sound/pci/hda/snd-hda-intel.ko \
- $(LINUX_DIR)/sound/hda/snd-intel-nhlt.ko@lt5.5 \
- $(LINUX_DIR)/sound/hda/snd-intel-dspcfg.ko@ge5.5
+ $(LINUX_DIR)/sound/hda/snd-intel-dspcfg.ko
AUTOLOAD:=$(call AutoProbe,snd-hda-intel)
$(call AddDepends/sound,kmod-sound-hda-core)
endef
diff --git a/package/kernel/linux/modules/spi.mk b/package/kernel/linux/modules/spi.mk
index 01dc7dc7e60..78a1c8a0328 100644
--- a/package/kernel/linux/modules/spi.mk
+++ b/package/kernel/linux/modules/spi.mk
@@ -15,9 +15,9 @@ define KernelPackage/mmc-spi
CONFIG_SPI=y \
CONFIG_SPI_MASTER=y
FILES:=\
- $(if $(CONFIG_OF),$(LINUX_DIR)/drivers/mmc/host/of_mmc_spi.ko) \
+ $(LINUX_DIR)/drivers/mmc/host/of_mmc_spi.ko \
$(LINUX_DIR)/drivers/mmc/host/mmc_spi.ko
- AUTOLOAD:=$(call AutoProbe,$(if $(CONFIG_OF),of_mmc_spi) mmc_spi)
+ AUTOLOAD:=$(call AutoProbe,of_mmc_spi mmc_spi)
endef
define KernelPackage/mmc-spi/description
diff --git a/package/kernel/linux/modules/usb.mk b/package/kernel/linux/modules/usb.mk
index 3249b854d66..7f9e627fdb4 100644
--- a/package/kernel/linux/modules/usb.mk
+++ b/package/kernel/linux/modules/usb.mk
@@ -331,17 +331,6 @@ define KernelPackage/usb-bcma
endef
$(eval $(call KernelPackage,usb-bcma))
-define KernelPackage/usb-fotg210
- TITLE:=Support for FOTG210 USB host controllers
- DEPENDS:=@USB_SUPPORT @TARGET_gemini
- KCONFIG:=CONFIG_USB_FOTG210_HCD
- FILES:= \
- $(if $(CONFIG_USB_FOTG210_HCD),$(LINUX_DIR)/drivers/usb/host/fotg210-hcd.ko)
- AUTOLOAD:=$(call AutoLoad,50,fotg210-hcd,1)
- $(call AddDepends/usb)
-endef
-$(eval $(call KernelPackage,usb-fotg210))
-
define KernelPackage/usb-ssb
TITLE:=Support for SSB USB controllers
DEPENDS:=@USB_SUPPORT @TARGET_bcm47xx
@@ -431,10 +420,7 @@ define KernelPackage/usb-dwc2
TITLE:=DWC2 USB controller driver
DEPENDS:=+USB_GADGET_SUPPORT:kmod-usb-gadget +kmod-usb-roles
KCONFIG:= \
- CONFIG_USB_PCI=y \
CONFIG_USB_DWC2 \
- CONFIG_USB_DWC2_PCI \
- CONFIG_USB_DWC2_PLATFORM \
CONFIG_USB_DWC2_DEBUG=n \
CONFIG_USB_DWC2_VERBOSE=n \
CONFIG_USB_DWC2_TRACK_MISSED_SOFS=n \
@@ -453,6 +439,26 @@ endef
$(eval $(call KernelPackage,usb-dwc2))
+define KernelPackage/usb-dwc2-pci
+ TITLE:=DWC2 USB controller driver (PCI)
+ DEPENDS:=@PCI_SUPPORT +kmod-usb-dwc2 +kmod-usb-phy-nop
+ KCONFIG:= \
+ CONFIG_USB_PCI=y \
+ CONFIG_USB_DWC2_PCI
+ FILES:= \
+ $(LINUX_DIR)/drivers/usb/dwc2/dwc2_pci.ko
+ AUTOLOAD:=$(call AutoLoad,54,dwc2_pci,1)
+ $(call AddDepends/usb)
+endef
+
+define KernelPackage/usb-dwc2-pci/description
+ The Designware USB2.0 PCI interface module for controllers
+ connected to a PCI bus.
+endef
+
+$(eval $(call KernelPackage,usb-dwc2-pci))
+
+
define KernelPackage/usb-dwc3
TITLE:=DWC3 USB controller driver
KCONFIG:= \
@@ -477,7 +483,7 @@ $(eval $(call KernelPackage,usb-dwc3))
define KernelPackage/usb-dwc3-qcom
TITLE:=DWC3 Qualcomm USB driver
- DEPENDS:=@(TARGET_ipq40xx||TARGET_ipq806x) +kmod-usb-dwc3
+ DEPENDS:=@(TARGET_ipq40xx||TARGET_ipq806x||TARGET_qualcommax) +kmod-usb-dwc3
KCONFIG:= CONFIG_USB_DWC3_QCOM
FILES:= $(LINUX_DIR)/drivers/usb/dwc3/dwc3-qcom.ko
AUTOLOAD:=$(call AutoLoad,53,dwc3-qcom,1)
@@ -528,7 +534,6 @@ $(eval $(call KernelPackage,usb-wdm))
define KernelPackage/usb-audio
TITLE:=Support for USB audio devices
KCONFIG:= \
- CONFIG_USB_AUDIO \
CONFIG_SND_USB=y \
CONFIG_SND_USB_AUDIO
$(call AddDepends/usb)
@@ -745,8 +750,9 @@ $(eval $(call KernelPackage,usb-serial-mct))
define KernelPackage/usb-serial-mos7720
TITLE:=Support for Moschip MOS7720 devices
- KCONFIG:=CONFIG_USB_SERIAL_MOS7720
+ KCONFIG:=CONFIG_USB_SERIAL_MOS7720 CONFIG_USB_SERIAL_MOS7715_PARPORT=y
FILES:=$(LINUX_DIR)/drivers/usb/serial/mos7720.ko
+ DEPENDS:=+kmod-ppdev
AUTOLOAD:=$(call AutoProbe,mos7720)
$(call AddDepends/usb-serial)
endef
@@ -1138,7 +1144,9 @@ $(eval $(call KernelPackage,usb-net-aqc111))
define KernelPackage/usb-net-asix
TITLE:=Kernel module for USB-to-Ethernet Asix convertors
- DEPENDS:=+kmod-libphy
+ DEPENDS:= \
+ +kmod-libphy +kmod-net-selftests +kmod-mdio-devres +kmod-phy-ax88796b \
+ +LINUX_6_1:kmod-phylink
KCONFIG:=CONFIG_USB_NET_AX8817X
FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/asix.ko
AUTOLOAD:=$(call AutoProbe,asix)
@@ -1201,6 +1209,23 @@ endef
$(eval $(call KernelPackage,usb-net-kaweth))
+define KernelPackage/usb-net-lan78xx
+ TITLE:=USB-To-Ethernet Microchip LAN78XX convertors
+ DEPENDS:=+kmod-fixed-phy +kmod-phy-microchip +PACKAGE_kmod-of-mdio:kmod-of-mdio
+ KCONFIG:=CONFIG_USB_LAN78XX
+ FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/lan78xx.ko
+ AUTOLOAD:=$(call AutoProbe,lan78xx)
+ $(call AddDepends/usb-net)
+endef
+
+define KernelPackage/usb-net-lan78xx/description
+ Kernel module for Microchip LAN78XX based USB 2 & USB 3
+ 10/100/1000 Ethernet adapters.
+endef
+
+$(eval $(call KernelPackage,usb-net-lan78xx))
+
+
define KernelPackage/usb-net-pegasus
TITLE:=Kernel module for USB-to-Ethernet Pegasus convertors
KCONFIG:=CONFIG_USB_PEGASUS
@@ -1231,9 +1256,25 @@ endef
$(eval $(call KernelPackage,usb-net-mcs7830))
+define KernelPackage/usb-net-smsc75xx
+ TITLE:=SMSC LAN75XX based USB 2.0 Gigabit ethernet devices
+ DEPENDS:=+kmod-libphy
+ KCONFIG:=CONFIG_USB_NET_SMSC75XX
+ FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/smsc75xx.ko
+ AUTOLOAD:=$(call AutoProbe,smsc75xx)
+ $(call AddDepends/usb-net, +kmod-lib-crc16)
+endef
+
+define KernelPackage/usb-net-smsc75xx/description
+ Kernel module for SMSC LAN75XX based devices
+endef
+
+$(eval $(call KernelPackage,usb-net-smsc75xx))
+
+
define KernelPackage/usb-net-smsc95xx
TITLE:=SMSC LAN95XX based USB 2.0 10/100 ethernet devices
- DEPENDS:=+LINUX_5_10:kmod-libphy
+ DEPENDS:=+kmod-libphy +kmod-phy-smsc +LINUX_6_1:kmod-net-selftests
KCONFIG:=CONFIG_USB_NET_SMSC95XX
FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/smsc95xx.ko
AUTOLOAD:=$(call AutoProbe,smsc95xx)
@@ -1340,10 +1381,11 @@ $(eval $(call KernelPackage,usb-net-rtl8150))
define KernelPackage/usb-net-rtl8152
TITLE:=Kernel module for USB-to-Ethernet Realtek convertors
+ DEPENDS:=+r8152-firmware +kmod-crypto-sha256 +kmod-usb-net-cdc-ncm
KCONFIG:=CONFIG_USB_RTL8152
FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/r8152.ko
AUTOLOAD:=$(call AutoProbe,r8152)
- $(call AddDepends/usb-net, +LINUX_5_10:kmod-crypto-hash)
+ $(call AddDepends/usb-net)
endef
define KernelPackage/usb-net-rtl8152/description
@@ -1405,7 +1447,7 @@ define KernelPackage/usb-net-cdc-ncm
KCONFIG:=CONFIG_USB_NET_CDC_NCM
FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_ncm.ko
AUTOLOAD:=$(call AutoProbe,cdc_ncm)
- $(call AddDepends/usb-net,+!LINUX_5_4:kmod-usb-net-cdc-ether)
+ $(call AddDepends/usb-net,+kmod-usb-net-cdc-ether)
endef
define KernelPackage/usb-net-cdc-ncm/description
@@ -1507,8 +1549,8 @@ $(eval $(call KernelPackage,usb-hid))
define KernelPackage/usb-hid-cp2112
SUBMENU:=$(USB_MENU)
TITLE:=Silicon Labs CP2112 HID USB to SMBus Master Bridge
- KCONFIG:=CONFIG_GPIOLIB=y CONFIG_HID_CP2112
- DEPENDS:=+kmod-usb-hid +kmod-i2c-core
+ KCONFIG:=CONFIG_HID_CP2112
+ DEPENDS:=@GPIO_SUPPORT +kmod-usb-hid +kmod-i2c-core
FILES:=$(LINUX_DIR)/drivers/hid/hid-cp2112.ko
AUTOLOAD:=$(call AutoProbe,hid-cp2112)
endef
@@ -1521,6 +1563,23 @@ endef
$(eval $(call KernelPackage,usb-hid-cp2112))
+define KernelPackage/usb-hid-mcp2221
+ SUBMENU:=$(USB_MENU)
+ TITLE:=Microchip USB 2.0 to I2C/UART Protocol Converter with GPIO
+ KCONFIG:=CONFIG_HID_MCP2221
+ DEPENDS:=@GPIO_SUPPORT +kmod-usb-hid +kmod-i2c-core
+ FILES:=$(LINUX_DIR)/drivers/hid/hid-mcp2221.ko
+ AUTOLOAD:=$(call AutoProbe,hid-mcp2221)
+endef
+
+define KernelPackage/usb-hid-mcp2221/description
+ HID device driver which registers as an i2c adapter and gpiochip to expose
+ these functions of the MCP2221.
+endef
+
+$(eval $(call KernelPackage,usb-hid-mcp2221))
+
+
define KernelPackage/usb-yealink
TITLE:=USB Yealink VOIP phone
DEPENDS:=+kmod-input-evdev
@@ -1678,7 +1737,10 @@ define KernelPackage/usb3
+TARGET_bcm53xx:kmod-usb-bcma \
+TARGET_bcm53xx:kmod-phy-bcm-ns-usb3 \
+TARGET_ramips_mt7621:kmod-usb-xhci-mtk \
- +(TARGET_apm821xx_nand&&LINUX_5_10):kmod-usb-xhci-pci-renesas
+ +TARGET_mediatek:kmod-usb-xhci-mtk \
+ +TARGET_apm821xx_nand:kmod-usb-xhci-pci-renesas \
+ +TARGET_lantiq_xrx200:kmod-usb-xhci-pci-renesas \
+ +TARGET_mvebu_cortexa9:kmod-usb-xhci-pci-renesas
KCONFIG:= \
CONFIG_USB_PCI=y \
CONFIG_USB_XHCI_PCI \
@@ -1752,8 +1814,9 @@ define KernelPackage/usb-xhci-mtk
DEPENDS:=+kmod-usb-xhci-hcd
KCONFIG:=CONFIG_USB_XHCI_MTK
HIDDEN:=1
- FILES:=$(LINUX_DIR)/drivers/usb/host/xhci-mtk.ko
- AUTOLOAD:=$(call AutoLoad,54,xhci-mtk,1)
+ FILES:= \
+ $(LINUX_DIR)/drivers/usb/host/xhci-mtk-hcd.ko
+ AUTOLOAD:=$(call AutoLoad,54,xhci-mtk-hcd,1)
$(call AddDepends/usb)
endef
@@ -1766,7 +1829,6 @@ $(eval $(call KernelPackage,usb-xhci-mtk))
define KernelPackage/usb-xhci-pci-renesas
TITLE:=Support for additional Renesas xHCI controller with firmware
- DEPENDS:=@LINUX_5_10
KCONFIG:=CONFIG_USB_XHCI_PCI_RENESAS
HIDDEN:=1
FILES:=$(LINUX_DIR)/drivers/usb/host/xhci-pci-renesas.ko
diff --git a/package/kernel/linux/modules/video.mk b/package/kernel/linux/modules/video.mk
index 394dff6239b..982bcb1db00 100644
--- a/package/kernel/linux/modules/video.mk
+++ b/package/kernel/linux/modules/video.mk
@@ -10,11 +10,30 @@ VIDEO_MENU:=Video Support
V4L2_DIR=v4l2-core
V4L2_USB_DIR=usb
+V4L2_MEM2MEM_DIR=platform
#
# Video Display
#
+define KernelPackage/acpi-video
+ SUBMENU:=$(VIDEO_MENU)
+ TITLE:=ACPI Extensions For Display Adapters
+ DEPENDS:=@TARGET_x86 +kmod-backlight
+ HIDDEN:=1
+ KCONFIG:=CONFIG_ACPI_VIDEO \
+ CONFIG_ACPI_WMI
+ FILES:=$(LINUX_DIR)/drivers/acpi/video.ko \
+ $(LINUX_DIR)/drivers/platform/x86/wmi.ko
+ AUTOLOAD:=$(call AutoProbe,wmi video)
+endef
+
+define KernelPackage/acpi-video/description
+ Kernel support for integrated graphics devices.
+endef
+
+$(eval $(call KernelPackage,acpi-video))
+
define KernelPackage/backlight
SUBMENU:=$(VIDEO_MENU)
TITLE:=Backlight support
@@ -225,7 +244,8 @@ define KernelPackage/drm
SUBMENU:=$(VIDEO_MENU)
TITLE:=Direct Rendering Manager (DRM) support
HIDDEN:=1
- DEPENDS:=+kmod-dma-buf +kmod-i2c-core +PACKAGE_kmod-backlight:kmod-backlight
+ DEPENDS:=+kmod-dma-buf +kmod-i2c-core +PACKAGE_kmod-backlight:kmod-backlight \
+ +kmod-fb
KCONFIG:=CONFIG_DRM
FILES:= \
$(LINUX_DIR)/drivers/gpu/drm/drm.ko \
@@ -239,6 +259,36 @@ endef
$(eval $(call KernelPackage,drm))
+define KernelPackage/drm-buddy
+ SUBMENU:=$(VIDEO_MENU)
+ TITLE:=A page based buddy allocator
+ DEPENDS:=@DISPLAY_SUPPORT +kmod-drm @LINUX_6_1
+ KCONFIG:=CONFIG_DRM_BUDDY
+ FILES:= $(LINUX_DIR)/drivers/gpu/drm/drm_buddy.ko
+ AUTOLOAD:=$(call AutoProbe,drm_buddy)
+endef
+
+define KernelPackage/drm-buddy/description
+ A page based buddy allocator
+endef
+
+$(eval $(call KernelPackage,drm-buddy))
+
+define KernelPackage/drm-display-helper
+ SUBMENU:=$(VIDEO_MENU)
+ TITLE:=DRM helpers for display adapters drivers
+ DEPENDS:=@DISPLAY_SUPPORT +kmod-drm-kms-helper @LINUX_6_1
+ KCONFIG:=CONFIG_DRM_DISPLAY_HELPER
+ FILES:=$(LINUX_DIR)/drivers/gpu/drm/display/drm_display_helper.ko
+ AUTOLOAD:=$(call AutoProbe,drm_display_helper)
+endef
+
+define KernelPackage/drm-display-helper/description
+ DRM helpers for display adapters drivers.
+endef
+
+$(eval $(call KernelPackage,drm-display-helper))
+
define KernelPackage/drm-ttm
SUBMENU:=$(VIDEO_MENU)
TITLE:=GPU memory management subsystem
@@ -255,6 +305,20 @@ endef
$(eval $(call KernelPackage,drm-ttm))
+
+define KernelPackage/drm-ttm-helper
+ SUBMENU:=$(VIDEO_MENU)
+ TITLE:=Helpers for ttm-based gem objects
+ HIDDEN:=1
+ DEPENDS:=@DISPLAY_SUPPORT +kmod-drm-ttm
+ KCONFIG:=CONFIG_DRM_TTM_HELPER
+ FILES:=$(LINUX_DIR)/drivers/gpu/drm/drm_ttm_helper.ko
+ AUTOLOAD:=$(call AutoProbe,drm_ttm_helper)
+endef
+
+$(eval $(call KernelPackage,drm-ttm-helper))
+
+
define KernelPackage/drm-kms-helper
SUBMENU:=$(VIDEO_MENU)
TITLE:=CRTC helpers for KMS drivers
@@ -277,7 +341,8 @@ define KernelPackage/drm-amdgpu
SUBMENU:=$(VIDEO_MENU)
TITLE:=AMDGPU DRM support
DEPENDS:=@TARGET_x86 @DISPLAY_SUPPORT +kmod-backlight +kmod-drm-ttm \
- +kmod-drm-kms-helper +kmod-i2c-algo-bit +amdgpu-firmware
+ +kmod-drm-ttm-helper +kmod-drm-kms-helper +kmod-i2c-algo-bit +amdgpu-firmware \
+ +kmod-drm-display-helper +kmod-drm-buddy +kmod-acpi-video
KCONFIG:=CONFIG_DRM_AMDGPU \
CONFIG_DRM_AMDGPU_SI=y \
CONFIG_DRM_AMDGPU_CIK=y \
@@ -298,7 +363,7 @@ $(eval $(call KernelPackage,drm-amdgpu))
define KernelPackage/drm-imx
SUBMENU:=$(VIDEO_MENU)
TITLE:=Freescale i.MX DRM support
- DEPENDS:=@TARGET_imx6 +kmod-drm-kms-helper
+ DEPENDS:=@TARGET_imx +kmod-drm-kms-helper
KCONFIG:=CONFIG_DRM_IMX \
CONFIG_DRM_FBDEV_EMULATION=y \
CONFIG_DRM_FBDEV_OVERALLOC=100 \
@@ -315,6 +380,7 @@ define KernelPackage/drm-imx
CONFIG_DRM_IMX_HDMI=n
FILES:= \
$(LINUX_DIR)/drivers/gpu/drm/imx/imxdrm.ko \
+ $(LINUX_DIR)/drivers/gpu/drm/drm_dma_helper.ko@ge6.1 \
$(LINUX_DIR)/drivers/gpu/ipu-v3/imx-ipu-v3.ko
AUTOLOAD:=$(call AutoLoad,08,imxdrm imx-ipu-v3 imx-ipuv3-crtc)
endef
@@ -328,7 +394,7 @@ $(eval $(call KernelPackage,drm-imx))
define KernelPackage/drm-imx-hdmi
SUBMENU:=$(VIDEO_MENU)
TITLE:=Freescale i.MX HDMI DRM support
- DEPENDS:=+kmod-sound-core kmod-drm-imx
+ DEPENDS:=+kmod-sound-core kmod-drm-imx +LINUX_6_1:kmod-drm-display-helper
KCONFIG:=CONFIG_DRM_IMX_HDMI \
CONFIG_DRM_DW_HDMI_AHB_AUDIO \
CONFIG_DRM_DW_HDMI_I2S_AUDIO
@@ -360,7 +426,8 @@ define KernelPackage/drm-imx-ldb
CONFIG_DRM_PANEL_S6E8AA0=n \
CONFIG_DRM_PANEL_SITRONIX_ST7789V=n
FILES:=$(LINUX_DIR)/drivers/gpu/drm/imx/imx-ldb.ko \
- $(LINUX_DIR)/drivers/gpu/drm/panel/panel-simple.ko
+ $(LINUX_DIR)/drivers/gpu/drm/panel/panel-simple.ko \
+ $(LINUX_DIR)/drivers/gpu/drm/drm_dp_aux_bus.ko@lt6.1
AUTOLOAD:=$(call AutoLoad,08,imx-ldb)
endef
@@ -374,7 +441,8 @@ define KernelPackage/drm-radeon
SUBMENU:=$(VIDEO_MENU)
TITLE:=Radeon DRM support
DEPENDS:=@TARGET_x86 @DISPLAY_SUPPORT +kmod-backlight +kmod-drm-kms-helper \
- +kmod-drm-ttm +kmod-i2c-algo-bit +radeon-firmware
+ +kmod-drm-ttm +kmod-drm-ttm-helper +kmod-i2c-algo-bit +radeon-firmware \
+ +kmod-drm-display-helper +kmod-acpi-video
KCONFIG:=CONFIG_DRM_RADEON
FILES:=$(LINUX_DIR)/drivers/gpu/drm/radeon/radeon.ko
AUTOLOAD:=$(call AutoProbe,radeon)
@@ -393,21 +461,16 @@ $(eval $(call KernelPackage,drm-radeon))
define KernelPackage/video-core
SUBMENU:=$(VIDEO_MENU)
TITLE=Video4Linux support
- DEPENDS:=@PCI_SUPPORT||USB_SUPPORT +PACKAGE_kmod-i2c-core:kmod-i2c-core
+ DEPENDS:=+PACKAGE_kmod-i2c-core:kmod-i2c-core
KCONFIG:= \
CONFIG_MEDIA_SUPPORT \
CONFIG_MEDIA_CAMERA_SUPPORT=y \
CONFIG_VIDEO_DEV \
- CONFIG_VIDEO_V4L1=y \
- CONFIG_VIDEO_ALLOW_V4L1=y \
- CONFIG_VIDEO_CAPTURE_DRIVERS=y \
- CONFIG_V4L_USB_DRIVERS=y \
- CONFIG_V4L_PCI_DRIVERS=y \
CONFIG_V4L_PLATFORM_DRIVERS=y \
- CONFIG_V4L_ISA_PARPORT_DRIVERS=y
+ CONFIG_MEDIA_PLATFORM_DRIVERS=y@ge6.1
FILES:= \
$(LINUX_DIR)/drivers/media/$(V4L2_DIR)/videodev.ko
- AUTOLOAD:=$(call AutoLoad,60, videodev v4l2-common)
+ AUTOLOAD:=$(call AutoLoad,60,videodev)
endef
define KernelPackage/video-core/description
@@ -428,6 +491,10 @@ $(AddDepends/video)
CONFIG_MEDIA_CAMERA_SUPPORT=y
endef
+define AddDepends/framegrabber
+$(AddDepends/video)
+ KCONFIG+=CONFIG_MEDIA_PCI_SUPPORT=y
+endef
define KernelPackage/video-videobuf2
TITLE:=videobuf2 lib
@@ -435,6 +502,7 @@ define KernelPackage/video-videobuf2
KCONFIG:= \
CONFIG_VIDEOBUF2_CORE \
CONFIG_VIDEOBUF2_MEMOPS \
+ CONFIG_VIDEOBUF2_V4L2 \
CONFIG_VIDEOBUF2_VMALLOC
FILES:= \
$(LINUX_DIR)/drivers/media/common/videobuf2/videobuf2-common.ko \
@@ -856,6 +924,21 @@ endef
$(eval $(call KernelPackage,video-gspca-sq905c))
+define KernelPackage/video-gspca-sq930x
+ TITLE:=sq930x webcam support
+ KCONFIG:=CONFIG_USB_GSPCA_SQ930X
+ FILES:=$(LINUX_DIR)/drivers/media/$(V4L2_USB_DIR)/gspca/gspca_sq930x.ko
+ AUTOLOAD:=$(call AutoProbe,gspca_sq930x)
+ $(call AddDepends/camera-gspca)
+endef
+
+define KernelPackage/video-gspca-sq930x/description
+ The SQ Technologies SQ930X based USB Camera Driver (sq930x) kernel module
+endef
+
+$(eval $(call KernelPackage,video-gspca-sq930x))
+
+
define KernelPackage/video-gspca-stk014
TITLE:=stk014 webcam support
KCONFIG:=CONFIG_USB_GSPCA_STK014
@@ -1019,3 +1102,101 @@ define KernelPackage/video-gspca-konica/description
endef
$(eval $(call KernelPackage,video-gspca-konica))
+
+#
+# Video Processing
+#
+
+define KernelPackage/video-mem2mem
+ SUBMENU:=$(VIDEO_MENU)
+ TITLE:=Memory 2 Memory device support
+ HIDDEN:=1
+ DEPENDS:=+kmod-video-videobuf2
+ KCONFIG:= \
+ CONFIG_V4L_MEM2MEM_DRIVERS=y \
+ CONFIG_V4L2_MEM2MEM_DEV
+ FILES:= $(LINUX_DIR)/drivers/media/$(V4L2_DIR)/v4l2-mem2mem.ko
+ AUTOLOAD:=$(call AutoLoad,66,v4l2-mem2mem)
+ $(call AddDepends/video)
+endef
+
+define KernelPackage/video-mem2mem/description
+ Memory 2 memory device support
+endef
+
+$(eval $(call KernelPackage,video-mem2mem))
+
+define KernelPackage/video-dma
+ SUBMENU:=$(VIDEO_MENU)
+ TITLE:=Video DMA support
+ HIDDEN:=1
+ DEPENDS:=+kmod-video-videobuf2
+ KCONFIG:= \
+ CONFIG_VIDEOBUF2_DMA_CONTIG \
+ CONFIG_VIDEOBUF2_DMA_SG
+ FILES:= $(LINUX_DIR)/drivers/media/common/videobuf2/videobuf2-dma-*.ko
+ AUTOLOAD:=$(call AutoLoad,66,videobuf2-dma-contig videobuf2-dma-sg)
+ $(call AddDepends/video)
+endef
+
+define KernelPackage/video-dma/description
+ Video DMA support
+endef
+
+$(eval $(call KernelPackage,video-dma))
+
+define KernelPackage/video-coda
+ TITLE:=i.MX VPU support
+ DEPENDS:=@(TARGET_imx&&!TARGET_imx_cortexa7) +kmod-video-mem2mem +kmod-video-dma
+ KCONFIG:= \
+ CONFIG_VIDEO_CODA \
+ CONFIG_VIDEO_IMX_VDOA
+ FILES:= \
+ $(LINUX_DIR)/drivers/media/$(V4L2_MEM2MEM_DIR)/coda/coda-vpu.ko@lt6.1 \
+ $(LINUX_DIR)/drivers/media/$(V4L2_MEM2MEM_DIR)/chips-media/coda-vpu.ko@ge6.1 \
+ $(LINUX_DIR)/drivers/media/$(V4L2_MEM2MEM_DIR)/coda/imx-vdoa.ko@lt6.1 \
+ $(LINUX_DIR)/drivers/media/$(V4L2_MEM2MEM_DIR)/chips-media/imx-vdoa.ko@ge6.1 \
+ $(LINUX_DIR)/drivers/media/$(V4L2_DIR)/v4l2-jpeg.ko
+ AUTOLOAD:=$(call AutoProbe,coda-vpu imx-vdoa v4l2-jpeg)
+ $(call AddDepends/video)
+endef
+
+define KernelPackage/video-coda/description
+ The i.MX Video Processing Unit (VPU) kernel module
+endef
+
+$(eval $(call KernelPackage,video-coda))
+
+define KernelPackage/video-pxp
+ TITLE:=i.MX PXP support
+ DEPENDS:=@TARGET_imx +kmod-video-mem2mem +kmod-video-dma
+ KCONFIG:= CONFIG_VIDEO_IMX_PXP
+ FILES:= $(LINUX_DIR)/drivers/media/$(V4L2_MEM2MEM_DIR)/imx-pxp.ko@lt6.1 \
+ $(LINUX_DIR)/drivers/media/platform/nxp/imx-pxp.ko@ge6.1
+ AUTOLOAD:=$(call AutoProbe,imx-pxp)
+ $(call AddDepends/video)
+endef
+
+define KernelPackage/video-pxp/description
+ The i.MX Pixel Pipeline (PXP) kernel module
+ This enables hardware accelerated support for image
+ Colour Conversion, Scaling and Rotation
+endef
+
+$(eval $(call KernelPackage,video-pxp))
+
+define KernelPackage/video-tw686x
+ TITLE:=TW686x support
+ DEPENDS:=@PCIE_SUPPORT +kmod-video-dma +kmod-sound-core
+ KCONFIG:= CONFIG_VIDEO_TW686X
+ FILES:= $(LINUX_DIR)/drivers/media/pci/tw686x/tw686x.ko
+ AUTOLOAD:=$(call AutoProbe,tw686x)
+ MODPARAMS.tw686x:=dma_mode=contig
+ $(call AddDepends/framegrabber)
+endef
+
+define KernelPackage/video-tw686x/description
+ The Intersil/Techwell TW686x kernel module
+endef
+
+$(eval $(call KernelPackage,video-tw686x))
diff --git a/package/kernel/linux/modules/virt.mk b/package/kernel/linux/modules/virt.mk
index a9a0b538ff2..f45cb176147 100644
--- a/package/kernel/linux/modules/virt.mk
+++ b/package/kernel/linux/modules/virt.mk
@@ -20,8 +20,9 @@ define KernelPackage/kvm-x86
TITLE:=Kernel-based Virtual Machine (KVM) support
DEPENDS:=@TARGET_x86_generic||TARGET_x86_64 +kmod-irqbypass
KCONFIG:=\
- CONFIG_VIRTUALIZATION=y \
- CONFIG_KVM
+ CONFIG_KVM \
+ CONFIG_KVM_MMU_AUDIT=n \
+ CONFIG_VIRTUALIZATION=y
FILES:= $(LINUX_DIR)/arch/$(LINUX_KARCH)/kvm/kvm.ko
AUTOLOAD:=$(call AutoProbe,kvm.ko)
endef
@@ -71,3 +72,70 @@ define KernelPackage/kvm-amd/description
endef
$(eval $(call KernelPackage,kvm-amd))
+
+
+define KernelPackage/vfio
+ SUBMENU:=Virtualization
+ TITLE:=VFIO Non-Privileged userspace driver framework
+ DEPENDS:=@TARGET_x86_64||TARGET_armsr_armv8
+ KCONFIG:= \
+ CONFIG_VFIO \
+ CONFIG_VFIO_NOIOMMU=n \
+ CONFIG_VFIO_MDEV=n
+ FILES:= \
+ $(LINUX_DIR)/drivers/vfio/vfio.ko \
+ $(LINUX_DIR)/drivers/vfio/vfio_virqfd.ko \
+ $(LINUX_DIR)/drivers/vfio/vfio_iommu_type1.ko
+ AUTOLOAD:=$(call AutoProbe,vfio vfio_iommu_type1 vfio_virqfd)
+endef
+
+define KernelPackage/vfio/description
+ VFIO provides a framework for secure userspace device drivers.
+endef
+
+$(eval $(call KernelPackage,vfio))
+
+
+define KernelPackage/vfio-pci
+ SUBMENU:=Virtualization
+ TITLE:=Generic VFIO support for any PCI device
+ DEPENDS:=@TARGET_x86_64||TARGET_armsr_armv8 @PCI_SUPPORT +kmod-vfio +kmod-irqbypass
+ KCONFIG:= \
+ CONFIG_VFIO_PCI \
+ CONFIG_VFIO_PCI_IGD=n
+ FILES:= \
+ $(LINUX_DIR)/drivers/vfio/pci/vfio-pci-core.ko \
+ $(LINUX_DIR)/drivers/vfio/pci/vfio-pci.ko
+ AUTOLOAD:=$(call AutoProbe,vfio-pci)
+endef
+
+define KernelPackage/vfio-pci/description
+ Support for the generic PCI VFIO bus driver which can connect any PCI
+ device to the VFIO framework.
+endef
+
+$(eval $(call KernelPackage,vfio-pci))
+
+
+define KernelPackage/vhost
+ SUBMENU:=Virtualization
+ TITLE:=Host kernel accelerator for virtio (base)
+ KCONFIG:=CONFIG_VHOST
+ FILES:=$(LINUX_DIR)/drivers/vhost/vhost.ko \
+ $(LINUX_DIR)/drivers/vhost/vhost_iotlb.ko
+ AUTOLOAD:=$(call AutoProbe,vhost vhost_iotlb)
+endef
+
+$(eval $(call KernelPackage,vhost))
+
+
+define KernelPackage/vhost-net
+ SUBMENU:=Virtualization
+ TITLE:=Host kernel accelerator for virtio-net
+ DEPENDS:=+kmod-tun +kmod-vhost
+ KCONFIG:=CONFIG_VHOST_NET
+ FILES:=$(LINUX_DIR)/drivers/vhost/vhost_net.ko
+ AUTOLOAD:=$(call AutoProbe,vhost_net)
+endef
+
+$(eval $(call KernelPackage,vhost-net))
diff --git a/package/kernel/linux/modules/w1.mk b/package/kernel/linux/modules/w1.mk
index 6ac7458e429..9cba28da11d 100644
--- a/package/kernel/linux/modules/w1.mk
+++ b/package/kernel/linux/modules/w1.mk
@@ -83,7 +83,7 @@ $(eval $(call KernelPackage,w1-master-ds2490))
define KernelPackage/w1-master-mxc
TITLE:=Freescale MXC 1-wire busmaster
- DEPENDS:=@TARGET_imx6
+ DEPENDS:=@TARGET_imx
KCONFIG:=CONFIG_W1_MASTER_MXC
FILES:=$(W1_MASTERS_DIR)/mxc_w1.ko
AUTOLOAD:=$(call AutoProbe,mxc_w1)
@@ -160,23 +160,6 @@ endef
$(eval $(call KernelPackage,w1-slave-ds2433))
-define KernelPackage/w1-slave-ds2760
- TITLE:=Dallas 2760 battery monitor chip (HP iPAQ & others)
- KCONFIG:= \
- CONFIG_W1_SLAVE_DS2760 \
- CONFIG_W1_SLAVE_DS2433_CRC=n
- FILES:=$(W1_SLAVES_DIR)/w1_ds2760.ko
- AUTOLOAD:=$(call AutoProbe,w1_ds2760)
- $(call AddDepends/w1)
-endef
-
-define KernelPackage/w1-slave-ds2760/description
- Kernel module for 1-wire DS2760 battery monitor chip support
-endef
-
-$(eval $(call KernelPackage,w1-slave-ds2760))
-
-
define KernelPackage/w1-slave-ds2413
TITLE:=DS2413 2 Ch. Addressable Switch
KCONFIG:= \
diff --git a/package/kernel/linux/modules/wireless.mk b/package/kernel/linux/modules/wireless.mk
deleted file mode 100644
index f7a40ba10a1..00000000000
--- a/package/kernel/linux/modules/wireless.mk
+++ /dev/null
@@ -1,42 +0,0 @@
-#
-# Copyright (C) 2006-2008 OpenWrt.org
-#
-# This is free software, licensed under the GNU General Public License v2.
-# See /LICENSE for more information.
-#
-
-WIRELESS_MENU:=Wireless Drivers
-
-define KernelPackage/net-prism54
- SUBMENU:=$(WIRELESS_MENU)
- TITLE:=Intersil Prism54 support
- DEPENDS:=@PCI_SUPPORT +@DRIVER_WEXT_SUPPORT +prism54-firmware
- KCONFIG:=CONFIG_PRISM54
- FILES:= \
- $(LINUX_DIR)/drivers/net/wireless/intersil/prism54/prism54.ko
- AUTOLOAD:=$(call AutoProbe,prism54)
-endef
-
-define KernelPackage/net-prism54/description
- Kernel modules for Intersil Prism54 support
-endef
-
-$(eval $(call KernelPackage,net-prism54))
-
-
-define KernelPackage/net-rtl8192su
- SUBMENU:=$(WIRELESS_MENU)
- TITLE:=RTL8192SU support (staging)
- DEPENDS:=@USB_SUPPORT +@DRIVER_WEXT_SUPPORT +kmod-usb-core +rtl8192su-firmware
- KCONFIG:=\
- CONFIG_STAGING=y \
- CONFIG_R8712U
- FILES:=$(LINUX_DIR)/drivers/staging/rtl8712/r8712u.ko
- AUTOLOAD:=$(call AutoProbe,r8712u)
-endef
-
-define KernelPackage/net-rtl8192su/description
- Kernel modules for RealTek RTL8712 and RTL81XXSU fullmac support.
-endef
-
-$(eval $(call KernelPackage,net-rtl8192su))