From 745e6ff58e478f8a1dcd24d07e9bf87c64a7ed2c Mon Sep 17 00:00:00 2001 From: LEAN-ESX Date: Mon, 28 Oct 2019 03:39:56 -0700 Subject: [PATCH] kernel: refresh modules --- package/kernel/linux/modules/block.mk | 6 +- package/kernel/linux/modules/can.mk | 16 +- package/kernel/linux/modules/fs.mk | 6 +- package/kernel/linux/modules/hwmon.mk | 32 +++- package/kernel/linux/modules/i2c.mk | 17 ++ package/kernel/linux/modules/iio.mk | 68 +++++++- package/kernel/linux/modules/input.mk | 19 +++ package/kernel/linux/modules/lib.mk | 4 +- package/kernel/linux/modules/netdevices.mk | 51 ++---- package/kernel/linux/modules/netfilter.mk | 33 ++-- package/kernel/linux/modules/netsupport.mk | 150 +++++++++++++++++- package/kernel/linux/modules/other.mk | 94 ++++++++--- package/kernel/linux/modules/sound.mk | 1 + package/kernel/linux/modules/usb.mk | 34 +++- package/kernel/linux/modules/video.mk | 8 +- package/kernel/linux/modules/w1.mk | 2 +- package/kernel/linux/modules/wpan.mk | 18 ++- target/linux/x86/Makefile | 2 +- ...ings-on-Intel-if-BIOS-hasn-t-already.patch | 53 +++++++ 19 files changed, 498 insertions(+), 116 deletions(-) create mode 100644 target/linux/x86/patches-4.14/900-x86-Enable-fast-strings-on-Intel-if-BIOS-hasn-t-already.patch diff --git a/package/kernel/linux/modules/block.mk b/package/kernel/linux/modules/block.mk index 2198d9461..c486a433c 100644 --- a/package/kernel/linux/modules/block.mk +++ b/package/kernel/linux/modules/block.mk @@ -209,7 +209,7 @@ $(eval $(call KernelPackage,block2mtd)) define KernelPackage/dax SUBMENU:=$(BLOCK_MENU) TITLE:=DAX: direct access to differentiated memory - DEPENDS:=@!LINUX_3_18 @!LINUX_4_9 + DEPENDS:=@!LINUX_4_9 KCONFIG:=CONFIG_DAX FILES:=$(LINUX_DIR)/drivers/dax/dax.ko endef @@ -220,7 +220,7 @@ $(eval $(call KernelPackage,dax)) define KernelPackage/dm SUBMENU:=$(BLOCK_MENU) TITLE:=Device Mapper - DEPENDS:=+kmod-crypto-manager +!(LINUX_3_18||LINUX_4_9):kmod-dax + DEPENDS:=+kmod-crypto-manager +!LINUX_4_9:kmod-dax # All the "=n" are unnecessary, they're only there # to stop the config from asking the question. # MIRROR is M because I've needed it for pvmove. @@ -359,7 +359,7 @@ $(eval $(call KernelPackage,md-raid10)) define KernelPackage/md-raid456 -$(call KernelPackage/md/Depends,+kmod-lib-raid6 +kmod-lib-xor +!LINUX_3_18:kmod-lib-crc32c) +$(call KernelPackage/md/Depends,+kmod-lib-raid6 +kmod-lib-xor +kmod-lib-crc32c) TITLE:=RAID Level 456 Driver KCONFIG:= \ CONFIG_ASYNC_CORE \ diff --git a/package/kernel/linux/modules/can.mk b/package/kernel/linux/modules/can.mk index b0d254511..c2c7411c6 100644 --- a/package/kernel/linux/modules/can.mk +++ b/package/kernel/linux/modules/can.mk @@ -26,7 +26,6 @@ define KernelPackage/can CONFIG_CAN_MSCAN=n \ CONFIG_CAN_SJA1000=n \ CONFIG_CAN_SOFTING=n \ - CONFIG_CAN_XILINXCAN=n \ CONFIG_NET_EMATCH_CANID=n \ CONFIG_CAN_DEBUG_DEVICES=n FILES:=$(LINUX_DIR)/drivers/net/can/can-dev.ko \ @@ -99,7 +98,7 @@ $(eval $(call KernelPackage,can-c-can-pci)) define KernelPackage/can-c-can-platform TITLE:=Platform Bus based BOSCH C_CAN/D_CAN driver KCONFIG:=CONFIG_CAN_C_CAN_PLATFORM - DEPENDS:=kmod-can-c-can +!LINUX_3_18:kmod-regmap-core + DEPENDS:=kmod-can-c-can +kmod-regmap-core FILES:=$(LINUX_DIR)/drivers/net/can/c_can/c_can_platform.ko AUTOLOAD:=$(call AutoProbe,c_can_platform) $(call AddDepends/can) @@ -277,4 +276,17 @@ endef $(eval $(call KernelPackage,can-vcan)) +define KernelPackage/can-xilinx-can + TITLE:=Xilinx CAN IP + KCONFIG:=CONFIG_CAN_XILINXCAN + FILES:=$(LINUX_DIR)/drivers/net/can/xilinx_can.ko + AUTOLOAD:=$(call AutoProbe,xilinx_can) + $(call AddDepends/can,@TARGET_zynq) +endef +define KernelPackage/can-xilinx-can/description + Xilinx CAN driver. This driver supports both + soft AXI CAN IP and Zynq CANPS IP. +endef + +$(eval $(call KernelPackage,can-xilinx-can)) diff --git a/package/kernel/linux/modules/fs.mk b/package/kernel/linux/modules/fs.mk index edd2774a6..3ffe82cbe 100644 --- a/package/kernel/linux/modules/fs.mk +++ b/package/kernel/linux/modules/fs.mk @@ -68,7 +68,7 @@ $(eval $(call KernelPackage,fs-autofs4)) define KernelPackage/fs-btrfs SUBMENU:=$(FS_MENU) TITLE:=BTRFS filesystem support - DEPENDS:=+kmod-lib-crc32c +kmod-lib-lzo +kmod-lib-zlib-inflate +kmod-lib-zlib-deflate +kmod-lib-raid6 +kmod-lib-xor +!(LINUX_3_18||LINUX_4_9):kmod-lib-zstd + DEPENDS:=+kmod-lib-crc32c +kmod-lib-lzo +kmod-lib-zlib-inflate +kmod-lib-zlib-deflate +kmod-lib-raid6 +kmod-lib-xor +!LINUX_4_9:kmod-lib-zstd KCONFIG:=\ CONFIG_BTRFS_FS \ CONFIG_BTRFS_FS_POSIX_ACL=n \ @@ -98,6 +98,7 @@ define KernelPackage/fs-cifs AUTOLOAD:=$(call AutoLoad,30,cifs) $(call AddDepends/nls) DEPENDS+= \ + +kmod-crypto-arc4 \ +kmod-crypto-hmac \ +kmod-crypto-md5 \ +kmod-crypto-md4 \ @@ -388,7 +389,8 @@ define KernelPackage/fs-nfs-common-rpcsec +kmod-crypto-md5 \ +kmod-crypto-sha1 \ +kmod-crypto-hmac \ - +kmod-crypto-ecb + +kmod-crypto-ecb \ + +kmod-crypto-arc4 KCONFIG:= \ CONFIG_SUNRPC_GSS \ CONFIG_RPCSEC_GSS_KRB5 diff --git a/package/kernel/linux/modules/hwmon.mk b/package/kernel/linux/modules/hwmon.mk index 5f54b4af2..e79304b4f 100644 --- a/package/kernel/linux/modules/hwmon.mk +++ b/package/kernel/linux/modules/hwmon.mk @@ -112,7 +112,7 @@ define KernelPackage/hwmon-ina2xx KCONFIG:=CONFIG_SENSORS_INA2XX FILES:=$(LINUX_DIR)/drivers/hwmon/ina2xx.ko AUTOLOAD:=$(call AutoProbe,ina2xx) - $(call AddDepends/hwmon,+kmod-i2c-core +!LINUX_3_18:kmod-regmap-i2c) + $(call AddDepends/hwmon,+kmod-i2c-core +kmod-regmap-i2c) endef define KernelPackage/hwmon-ina2xx/description @@ -287,6 +287,36 @@ endef $(eval $(call KernelPackage,hwmon-pc87360)) +define KernelPackage/pmbus-core + TITLE:=PMBus support + KCONFIG:= CONFIG_PMBUS + FILES:=$(LINUX_DIR)/drivers/hwmon/pmbus/pmbus_core.ko + $(call AddDepends/hwmon,+kmod-i2c-core) +endef + +define KernelPackage/pmbus-core/description + Kernel modules for Power Management Bus +endef + +$(eval $(call KernelPackage,pmbus-core)) + + +define KernelPackage/pmbus-zl6100 + TITLE:=Intersil / Zilker Labs ZL6100 hardware monitoring + KCONFIG:=CONFIG_SENSORS_ZL6100 + FILES:=$(LINUX_DIR)/drivers/hwmon/pmbus/zl6100.ko + AUTOLOAD:=$(call AutoProbe,zl6100) + $(call AddDepends/hwmon, +kmod-pmbus-core) +endef + +define KernelPackage/hwmon-sht21/description + Kernel module for Intersil / Zilker Labs ZL6100 and +compatible digital DC-DC controllers +endef + +$(eval $(call KernelPackage,pmbus-zl6100)) + + define KernelPackage/hwmon-pwmfan TITLE:=Generic PWM FAN support KCONFIG:=CONFIG_SENSORS_PWM_FAN diff --git a/package/kernel/linux/modules/i2c.mk b/package/kernel/linux/modules/i2c.mk index 4cf37dae0..0b23b2439 100644 --- a/package/kernel/linux/modules/i2c.mk +++ b/package/kernel/linux/modules/i2c.mk @@ -209,6 +209,23 @@ endef $(eval $(call KernelPackage,i2c-piix4)) +I2C_PXA_MODULES:= \ + CONFIG_I2C_PXA_SLAVE=y \ + CONFIG_I2C_PXA:drivers/i2c/busses/i2c-pxa + +define KernelPackage/i2c-pxa + $(call i2c_defaults,$(I2C_PXA_MODULES),50) + TITLE:=Intel PXA I2C bus driver + DEPENDS:=kmod-i2c-core +endef + +define KernelPackage/i2c-pxa/description + Kernel module for Intel PXA2XX I2C adapter +endef + +$(eval $(call KernelPackage,i2c-pxa)) + + I2C_SMBUS_MODULES:= \ CONFIG_I2C_SMBUS:drivers/i2c/i2c-smbus diff --git a/package/kernel/linux/modules/iio.mk b/package/kernel/linux/modules/iio.mk index fe682b310..1ec3c968d 100644 --- a/package/kernel/linux/modules/iio.mk +++ b/package/kernel/linux/modules/iio.mk @@ -129,10 +129,55 @@ endef $(eval $(call KernelPackage,iio-dht11)) + +define KernelPackage/iio-bme680 + SUBMENU:=$(IIO_MENU) + TITLE:=BME680 gas/humidity/pressure/temperature sensor + DEPENDS:=@LINUX_4_19 +kmod-iio-core +kmod-regmap-core + KCONFIG:=CONFIG_BME680 + FILES:=$(LINUX_DIR)/drivers/iio/chemical/bme680_core.ko +endef + +define KernelPackage/iio-bme680/description + This driver adds support for Bosch Sensortec BME680 sensor with gas, + humidity, pressure and temperatue sensing capability. +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) +endef +define KernelPackage/iio-bme680-i2c/description + This driver adds support for Bosch Sensortec's BME680 connected via I2C. +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) +endef +define KernelPackage/iio-bme680-spi/description + This driver adds support for Bosch Sensortec's BME680 connected via SPI. +endef + +$(eval $(call KernelPackage,iio-bme680-spi)) + + define KernelPackage/iio-bmp280 SUBMENU:=$(IIO_MENU) TITLE:=BMP180/BMP280/BME280 pressure/temperatur sensor - DEPENDS:=@!LINUX_3_18 +kmod-iio-core +kmod-regmap-core + DEPENDS:=+kmod-iio-core +kmod-regmap-core KCONFIG:=CONFIG_BMP280 FILES:=$(LINUX_DIR)/drivers/iio/pressure/bmp280.ko endef @@ -152,7 +197,7 @@ define KernelPackage/iio-bmp280-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,iio-bmp280-i2c) + AUTOLOAD:=$(call AutoProbe,bmp280-i2c) endef define KernelPackage/iio-bmp280-i2c/description This driver adds support for Bosch Sensortec's digital pressure and @@ -168,7 +213,7 @@ define KernelPackage/iio-bmp280-spi DEPENDS:=+kmod-iio-bmp280 +kmod-spi-bitbang KCONFIG:=CONFIG_BMP280_SPI FILES:=$(LINUX_DIR)/drivers/iio/pressure/bmp280-spi.ko - AUTOLOAD:=$(call AutoProbe,iio-bmp280-spi) + AUTOLOAD:=$(call AutoProbe,bmp280-spi) endef define KernelPackage/iio-bmp280-spi/description This driver adds support for Bosch Sensortec's digital pressure and @@ -200,6 +245,23 @@ endef $(eval $(call KernelPackage,iio-htu21)) +define KernelPackage/iio-ccs811 + SUBMENU:=$(IIO_MENU) + DEPENDS:=+kmod-i2c-core +kmod-iio-core + TITLE:=AMS CCS811 VOC sensor + KCONFIG:= \ + CONFIG_CCS811 + FILES:= $(LINUX_DIR)/drivers/iio/chemical/ccs811.ko + AUTOLOAD:=$(call AutoLoad,56,ccs811) +endef + +define KernelPackage/iio-ccs811/description + Support for the AMS CCS811 VOC (Volatile Organic Compounds) sensor +endef + +$(eval $(call KernelPackage,iio-ccs811)) + + define KernelPackage/iio-si7020 SUBMENU:=$(IIO_MENU) DEPENDS:=+kmod-i2c-core +kmod-iio-core diff --git a/package/kernel/linux/modules/input.mk b/package/kernel/linux/modules/input.mk index e410fe8d0..99257b672 100644 --- a/package/kernel/linux/modules/input.mk +++ b/package/kernel/linux/modules/input.mk @@ -173,6 +173,25 @@ endef $(eval $(call KernelPackage,input-matrixkmap)) +define KernelPackage/input-touchscreen-ads7846 + SUBMENU:=$(INPUT_MODULES_MENU) + TITLE:=ADS7846/TSC2046/AD7873 and AD(S)7843 based touchscreens + 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 + AUTOLOAD:=$(call AutoProbe,ads7846) +endef + +define KernelPackage/input-touchscreen-ads7846/description + Kernel module for ADS7846/TSC2046/AD7873 and AD(S)7843 based touchscreens +endef + +$(eval $(call KernelPackage,input-touchscreen-ads7846)) + + define KernelPackage/keyboard-imx SUBMENU:=$(INPUT_MODULES_MENU) TITLE:=IMX keypad support diff --git a/package/kernel/linux/modules/lib.mk b/package/kernel/linux/modules/lib.mk index b0d19ff8b..3e5a12e92 100644 --- a/package/kernel/linux/modules/lib.mk +++ b/package/kernel/linux/modules/lib.mk @@ -101,7 +101,7 @@ $(eval $(call KernelPackage,lib-crc32c)) define KernelPackage/lib-lzo SUBMENU:=$(LIB_MENU) TITLE:=LZO support - DEPENDS:=+!(LINUX_3_18||LINUX_4_9):kmod-crypto-acompress + DEPENDS:=+!LINUX_4_9:kmod-crypto-acompress KCONFIG:= \ CONFIG_CRYPTO_LZO@ge4.9 \ CONFIG_LZO_COMPRESS \ @@ -146,7 +146,7 @@ $(eval $(call KernelPackage,lib-zstd)) define KernelPackage/lib-lz4 SUBMENU:=$(LIB_MENU) TITLE:=LZ4 support - DEPENDS:=+!(LINUX_3_18||LINUX_4_9):kmod-crypto-acompress + DEPENDS:=+!LINUX_4_9:kmod-crypto-acompress HIDDEN:=1 KCONFIG:= \ CONFIG_CRYPTO_LZ4@ge4.9 \ diff --git a/package/kernel/linux/modules/netdevices.mk b/package/kernel/linux/modules/netdevices.mk index 5aa33bebf..5f8d76767 100644 --- a/package/kernel/linux/modules/netdevices.mk +++ b/package/kernel/linux/modules/netdevices.mk @@ -33,6 +33,18 @@ endef $(eval $(call KernelPackage,skge)) +define KernelPackage/alx + SUBMENU:=$(NETWORK_DEVICES_MENU) + TITLE:=Qualcomm Atheros AR816x/AR817x PCI-E Ethernet Network Driver + DEPENDS:=@PCI_SUPPORT +kmod-mdio + KCONFIG:=CONFIG_ALX + FILES:=$(LINUX_DIR)/drivers/net/ethernet/atheros/alx/alx.ko + AUTOLOAD:=$(call AutoProbe,alx) +endef + +$(eval $(call KernelPackage,alx)) + + define KernelPackage/atl2 SUBMENU:=$(NETWORK_DEVICES_MENU) TITLE:=Atheros L2 Fast Ethernet support @@ -113,7 +125,7 @@ $(eval $(call KernelPackage,mii)) define KernelPackage/mdio-gpio SUBMENU:=$(NETWORK_DEVICES_MENU) TITLE:= Supports GPIO lib-based MDIO busses - DEPENDS:=+kmod-libphy @GPIO_SUPPORT +(TARGET_armvirt||TARGET_brcm2708_bcm2708||TARGET_samsung):kmod-of-mdio + DEPENDS:=+kmod-libphy @GPIO_SUPPORT +(TARGET_armvirt||TARGET_brcm2708_bcm2708||TARGET_samsung||TARGET_tegra):kmod-of-mdio KCONFIG:= \ CONFIG_MDIO_BITBANG \ CONFIG_MDIO_GPIO @@ -261,7 +273,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_brcm2708_bcm2708||TARGET_samsung):kmod-of-mdio + DEPENDS:=@GPIO_SUPPORT +kmod-swconfig +(TARGET_armvirt||TARGET_brcm2708_bcm2708||TARGET_samsung||TARGET_tegra):kmod-of-mdio KCONFIG:=CONFIG_RTL8366_SMI FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8366_smi.ko AUTOLOAD:=$(call AutoLoad,42,rtl8366_smi) @@ -642,39 +654,6 @@ endef $(eval $(call KernelPackage,ixgbevf)) -define KernelPackage/i40e - SUBMENU:=$(NETWORK_DEVICES_MENU) - TITLE:=Intel(R) Ethernet Controller XL710 Family support - DEPENDS:=@PCI_SUPPORT +kmod-mdio +kmod-ptp +kmod-hwmon-core - KCONFIG:=CONFIG_I40E \ - CONFIG_I40E_DCB=n - FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/i40e/i40e.ko - AUTOLOAD:=$(call AutoProbe,i40e) -endef - -define KernelPackage/i40e/description - Kernel modules for Intel(R) Ethernet Controller XL710 Family 40 Gigabit Ethernet adapters. -endef - -$(eval $(call KernelPackage,i40e)) - - -define KernelPackage/i40evf - SUBMENU:=$(NETWORK_DEVICES_MENU) - TITLE:=Intel(R) Ethernet Adaptive Virtual Function support - DEPENDS:=@PCI_SUPPORT +kmod-i40e - KCONFIG:=CONFIG_I40EVF - FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/i40evf/i40evf.ko - AUTOLOAD:=$(call AutoProbe,i40evf) -endef - -define KernelPackage/i40evf/description - Kernel modules for Intel(R) Ethernet Controller XL710 Family Virtual Function Ethernet adapters. -endef - -$(eval $(call KernelPackage,i40evf)) - - define KernelPackage/b44 TITLE:=Broadcom 44xx driver KCONFIG:=CONFIG_B44 @@ -733,7 +712,7 @@ define KernelPackage/tg3 TITLE:=Broadcom Tigon3 Gigabit Ethernet KCONFIG:=CONFIG_TIGON3 \ CONFIG_TIGON3_HWMON=n - DEPENDS:=+!TARGET_brcm47xx:kmod-libphy +(LINUX_3_18||LINUX_4_9):kmod-hwmon-core +kmod-ptp + DEPENDS:=+!TARGET_brcm47xx:kmod-libphy +LINUX_4_9:kmod-hwmon-core +kmod-ptp SUBMENU:=$(NETWORK_DEVICES_MENU) FILES:=$(LINUX_DIR)/drivers/net/ethernet/broadcom/tg3.ko AUTOLOAD:=$(call AutoLoad,19,tg3,1) diff --git a/package/kernel/linux/modules/netfilter.mk b/package/kernel/linux/modules/netfilter.mk index d2841a4d1..cc4c5ecb2 100644 --- a/package/kernel/linux/modules/netfilter.mk +++ b/package/kernel/linux/modules/netfilter.mk @@ -152,7 +152,7 @@ define KernelPackage/nf-flow CONFIG_NETFILTER_INGRESS=y \ CONFIG_NF_FLOW_TABLE \ CONFIG_NF_FLOW_TABLE_HW - DEPENDS:=+kmod-nf-conntrack @!LINUX_3_18 @!LINUX_4_9 + DEPENDS:=+kmod-nf-conntrack @!LINUX_4_9 FILES:= \ $(LINUX_DIR)/net/netfilter/nf_flow_table.ko \ $(LINUX_DIR)/net/netfilter/nf_flow_table_hw.ko @@ -245,7 +245,7 @@ $(eval $(call KernelPackage,ipt-filter)) define KernelPackage/ipt-offload TITLE:=Netfilter routing/NAT offload support - KCONFIG:=CONFIG_NETFILTER_XT_TARGET_FLOWOFFLOAD + KCONFIG:=$(KCONFIG_IPT_FLOW) FILES:=$(foreach mod,$(IPT_FLOW-m),$(LINUX_DIR)/net/$(mod).ko) AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_FLOW-m))) $(call AddDepends/ipt,+kmod-nf-flow) @@ -330,6 +330,7 @@ define KernelPackage/ipt-ipset CONFIG_IP_SET_BITMAP_IPMAC \ CONFIG_IP_SET_BITMAP_PORT \ CONFIG_IP_SET_HASH_IP \ + CONFIG_IP_SET_HASH_IPMAC \ CONFIG_IP_SET_HASH_IPMARK \ CONFIG_IP_SET_HASH_IPPORT \ CONFIG_IP_SET_HASH_IPPORTIP \ @@ -645,11 +646,8 @@ $(eval $(call KernelPackage,ipt-led)) define KernelPackage/ipt-tproxy TITLE:=Transparent proxying support DEPENDS+=+kmod-ipt-conntrack +IPV6:kmod-nf-conntrack6 +IPV6:kmod-ip6tables - KCONFIG:= \ - CONFIG_NETFILTER_XT_MATCH_SOCKET \ - CONFIG_NETFILTER_XT_TARGET_TPROXY - FILES:= \ - $(foreach mod,$(IPT_TPROXY-m),$(LINUX_DIR)/net/$(mod).ko) + KCONFIG:=$(KCONFIG_IPT_TPROXY) + FILES:=$(foreach mod,$(IPT_TPROXY-m),$(LINUX_DIR)/net/$(mod).ko) AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_TPROXY-m))) $(call AddDepends/ipt) endef @@ -663,11 +661,8 @@ $(eval $(call KernelPackage,ipt-tproxy)) define KernelPackage/ipt-tee TITLE:=TEE support DEPENDS:=+kmod-ipt-conntrack - KCONFIG:= \ - CONFIG_NETFILTER_XT_TARGET_TEE - FILES:= \ - $(LINUX_DIR)/net/netfilter/xt_TEE.ko \ - $(foreach mod,$(IPT_TEE-m),$(LINUX_DIR)/net/$(mod).ko) + KCONFIG:=$(KCONFIG_IPT_TEE) + FILES:=$(foreach mod,$(IPT_TEE-m),$(LINUX_DIR)/net/$(mod).ko) AUTOLOAD:=$(call AutoProbe,$(notdir nf_tee $(IPT_TEE-m))) $(call AddDepends/ipt) endef @@ -681,11 +676,8 @@ $(eval $(call KernelPackage,ipt-tee)) define KernelPackage/ipt-u32 TITLE:=U32 support - KCONFIG:= \ - CONFIG_NETFILTER_XT_MATCH_U32 - FILES:= \ - $(LINUX_DIR)/net/netfilter/xt_u32.ko \ - $(foreach mod,$(IPT_U32-m),$(LINUX_DIR)/net/$(mod).ko) + KCONFIG:=$(KCONFIG_IPT_U32) + FILES:=$(foreach mod,$(IPT_U32-m),$(LINUX_DIR)/net/$(mod).ko) AUTOLOAD:=$(call AutoProbe,$(notdir nf_tee $(IPT_U32-m))) $(call AddDepends/ipt) endef @@ -698,11 +690,8 @@ $(eval $(call KernelPackage,ipt-u32)) define KernelPackage/ipt-checksum TITLE:=CHECKSUM support - KCONFIG:= \ - CONFIG_NETFILTER_XT_TARGET_CHECKSUM - FILES:= \ - $(LINUX_DIR)/net/netfilter/xt_CHECKSUM.ko \ - $(foreach mod,$(IPT_CHECKSUM-m),$(LINUX_DIR)/net/$(mod).ko) + KCONFIG:=$(KCONFIG_IPT_CHECKSUM) + FILES:=$(foreach mod,$(IPT_CHECKSUM-m),$(LINUX_DIR)/net/$(mod).ko) AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CHECKSUM-m))) $(call AddDepends/ipt) endef diff --git a/package/kernel/linux/modules/netsupport.mk b/package/kernel/linux/modules/netsupport.mk index 236931ac0..44408a720 100644 --- a/package/kernel/linux/modules/netsupport.mk +++ b/package/kernel/linux/modules/netsupport.mk @@ -128,6 +128,23 @@ endef $(eval $(call KernelPackage,geneve)) +define KernelPackage/nsh + SUBMENU:=$(NETWORK_SUPPORT_MENU) + TITLE:=Network Service Header (NSH) protocol + DEPENDS:= + KCONFIG:=CONFIG_NET_NSH + FILES:=$(LINUX_DIR)/net/nsh/nsh.ko@ge4.14 + AUTOLOAD:=$(call AutoLoad,13,nsh) +endef + +define KernelPackage/nsh/description + Network Service Header is an implementation of Service Function + Chaining (RFC 7665). Requires kernel 4.14 or newer +endef + +$(eval $(call KernelPackage,nsh)) + + define KernelPackage/capi SUBMENU:=$(NETWORK_SUPPORT_MENU) TITLE:=CAPI (ISDN) Support @@ -383,6 +400,22 @@ endef $(eval $(call KernelPackage,ip6-vti)) +define KernelPackage/xfrm-interface + SUBMENU:=$(NETWORK_SUPPORT_MENU) + TITLE:=IPsec XFRM Interface + DEPENDS:=+kmod-ipsec4 +kmod-ipsec6 @!LINUX_4_14 @!LINUX_4_9 + KCONFIG:=CONFIG_XFRM_INTERFACE + FILES:=$(LINUX_DIR)/net/xfrm/xfrm_interface.ko + AUTOLOAD:=$(call AutoProbe,xfrm_interface) +endef + +define KernelPackage/xfrm-interface/description + Kernel module for XFRM interface support +endef + +$(eval $(call KernelPackage,xfrm-interface)) + + define KernelPackage/iptunnel4 SUBMENU:=$(NETWORK_SUPPORT_MENU) TITLE:=IPv4 tunneling @@ -700,7 +733,7 @@ $(eval $(call KernelPackage,ipoa)) define KernelPackage/mppe SUBMENU:=$(NETWORK_SUPPORT_MENU) TITLE:=Microsoft PPP compression/encryption - DEPENDS:=kmod-ppp +kmod-crypto-sha1 +kmod-crypto-ecb + DEPENDS:=kmod-ppp +kmod-crypto-arc4 +kmod-crypto-sha1 +kmod-crypto-ecb KCONFIG:= \ CONFIG_PPP_MPPE_MPPC \ CONFIG_PPP_MPPE @@ -716,8 +749,8 @@ $(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_fw cls_route cls_flow cls_tcindex cls_u32 em_u32 act_mirred act_skbedit -SCHED_MODULES_FILTER = $(SCHED_MODULES_CORE) act_connmark sch_netem +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_mirred act_skbedit cls_matchall +SCHED_MODULES_FILTER = $(SCHED_MODULES_CORE) act_connmark act_ctinfo 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)) @@ -734,6 +767,7 @@ define KernelPackage/sched-core 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 \ @@ -741,6 +775,7 @@ define KernelPackage/sched-core CONFIG_NET_CLS_U32 \ CONFIG_NET_ACT_MIRRED \ CONFIG_NET_ACT_SKBEDIT \ + CONFIG_NET_CLS_MATCHALL \ CONFIG_NET_EMATCH=y \ CONFIG_NET_EMATCH_U32 FILES:=$(SCHED_FILES) @@ -754,6 +789,53 @@ endef $(eval $(call KernelPackage,sched-core)) +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-act-vlan + SUBMENU:=$(NETWORK_SUPPORT_MENU) + TITLE:=Traffic VLAN manipulation + DEPENDS:=+kmod-sched-core + KCONFIG:=CONFIG_NET_ACT_VLAN + FILES:=$(LINUX_DIR)/net/sched/act_vlan.ko + AUTOLOAD:=$(call AutoProbe, act_vlan) +endef + +define KernelPackage/sched-act-vlan/description + Allows to configure rules to push or pop vlan headers. +endef + +$(eval $(call KernelPackage,sched-act-vlan)) + + +define KernelPackage/sched-mqprio + SUBMENU:=$(NETWORK_SUPPORT_MENU) + 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 + +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-connmark SUBMENU:=$(NETWORK_SUPPORT_MENU) TITLE:=Traffic shaper conntrack mark support @@ -764,10 +846,59 @@ define KernelPackage/sched-connmark endef $(eval $(call KernelPackage,sched-connmark)) +define KernelPackage/sched-ctinfo + SUBMENU:=$(NETWORK_SUPPORT_MENU) + TITLE:=Traffic shaper ctinfo support + DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-ipt-conntrack-extra + KCONFIG:=CONFIG_NET_ACT_CTINFO + FILES:=$(LINUX_DIR)/net/sched/act_ctinfo.ko + AUTOLOAD:=$(call AutoLoad,71, act_ctinfo) +endef +$(eval $(call KernelPackage,sched-ctinfo)) + +define KernelPackage/sched-ipset + SUBMENU:=$(NETWORK_SUPPORT_MENU) + TITLE:=Traffic shaper ipset support + DEPENDS:=+kmod-sched-core +kmod-ipt-ipset + KCONFIG:= \ + CONFIG_NET_EMATCH_IPSET + FILES:= \ + $(LINUX_DIR)/net/sched/em_ipset.ko + AUTOLOAD:=$(call AutoLoad,72,em_ipset) +endef + +$(eval $(call KernelPackage,sched-ipset)) + + +define KernelPackage/sched-bpf + 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) +endef + +$(eval $(call KernelPackage,sched-bpf)) + + +define KernelPackage/bpf-test + SUBMENU:=$(NETWORK_SUPPORT_MENU) + TITLE:=Test Berkeley Packet Filter functionality + KCONFIG:=CONFIG_TEST_BPF + FILES:=$(LINUX_DIR)/lib/test_bpf.ko +endef + +$(eval $(call KernelPackage,bpf-test)) + + define KernelPackage/sched SUBMENU:=$(NETWORK_SUPPORT_MENU) TITLE:=Extra traffic schedulers - DEPENDS:=+kmod-sched-core +kmod-ipt-core + DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-lib-crc32c KCONFIG:= \ CONFIG_NET_SCH_CODEL \ CONFIG_NET_SCH_DSMARK \ @@ -780,9 +911,12 @@ define KernelPackage/sched CONFIG_NET_SCH_TEQL \ CONFIG_NET_SCH_FQ \ CONFIG_NET_SCH_PIE \ - CONFIG_NET_CLS_BASIC \ CONFIG_NET_ACT_POLICE \ + CONFIG_NET_ACT_GACT \ CONFIG_NET_ACT_IPT \ + CONFIG_NET_ACT_PEDIT \ + CONFIG_NET_ACT_SIMP \ + CONFIG_NET_ACT_CSUM \ CONFIG_NET_EMATCH_CMP \ CONFIG_NET_EMATCH_NBYTE \ CONFIG_NET_EMATCH_META \ @@ -801,7 +935,7 @@ $(eval $(call KernelPackage,sched)) define KernelPackage/tcp-bbr SUBMENU:=$(NETWORK_SUPPORT_MENU) TITLE:=BBR TCP congestion control - DEPENDS:=@!LINUX_3_18 +LINUX_4_9:kmod-sched + DEPENDS:=+LINUX_4_9:kmod-sched KCONFIG:= \ CONFIG_TCP_CONG_ADVANCED=y \ CONFIG_TCP_CONG_BBR=m @@ -1017,7 +1151,7 @@ $(eval $(call KernelPackage,rxrpc)) define KernelPackage/mpls SUBMENU:=$(NETWORK_SUPPORT_MENU) TITLE:=MPLS support - DEPENDS:=@!LINUX_3_18 +LINUX_4_19:kmod-iptunnel + DEPENDS:=+LINUX_4_19:kmod-iptunnel KCONFIG:= \ CONFIG_MPLS=y \ CONFIG_LWTUNNEL=y \ @@ -1094,7 +1228,7 @@ $(eval $(call KernelPackage,mdio)) define KernelPackage/macsec SUBMENU:=$(NETWORK_SUPPORT_MENU) TITLE:=IEEE 802.1AE MAC-level encryption (MAC) - DEPENDS:=+kmod-crypto-gcm @!LINUX_3_18 + DEPENDS:=+kmod-crypto-gcm KCONFIG:=CONFIG_MACSEC FILES:=$(LINUX_DIR)/drivers/net/macsec.ko AUTOLOAD:=$(call AutoLoad,13,macsec) diff --git a/package/kernel/linux/modules/other.mk b/package/kernel/linux/modules/other.mk index 653e8f931..0ffaac201 100644 --- a/package/kernel/linux/modules/other.mk +++ b/package/kernel/linux/modules/other.mk @@ -30,7 +30,7 @@ $(eval $(call KernelPackage,6lowpan)) define KernelPackage/bluetooth SUBMENU:=$(OTHER_MENU) TITLE:=Bluetooth support - DEPENDS:=@USB_SUPPORT +kmod-usb-core +kmod-crypto-hash +kmod-crypto-ecb +kmod-lib-crc16 +kmod-hid +!LINUX_3_18:kmod-crypto-cmac +!LINUX_3_18:kmod-regmap-core +!(LINUX_3_18||LINUX_4_9):kmod-crypto-ecdh + DEPENDS:=@USB_SUPPORT +kmod-usb-core +kmod-crypto-hash +kmod-crypto-ecb +kmod-lib-crc16 +kmod-hid +kmod-crypto-cmac +kmod-regmap-core +!LINUX_4_9:kmod-crypto-ecdh KCONFIG:= \ CONFIG_BT \ CONFIG_BT_BREDR=y \ @@ -219,7 +219,7 @@ $(eval $(call KernelPackage,gpio-dev)) define KernelPackage/gpio-mcp23s08 SUBMENU:=$(OTHER_MENU) TITLE:=Microchip MCP23xxx I/O expander - DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core +!(LINUX_3_18||LINUX_4_9):kmod-regmap-i2c + DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core +!LINUX_4_9:kmod-regmap-i2c KCONFIG:= \ CONFIG_GPIO_MCP23S08 \ CONFIG_PINCTRL_MCP23S08 @@ -476,7 +476,7 @@ define KernelPackage/rtc-ds1307 SUBMENU:=$(OTHER_MENU) TITLE:=Dallas/Maxim DS1307 (and compatible) RTC support DEFAULT:=m if ALL_KMODS && RTC_SUPPORT - DEPENDS:=+kmod-i2c-core +!(LINUX_3_18||LINUX_4_9):kmod-regmap-i2c +!(LINUX_3_18||LINUX_4_9):kmod-hwmon-core + DEPENDS:=+kmod-i2c-core +!LINUX_4_9:kmod-regmap-i2c +!LINUX_4_9:kmod-hwmon-core KCONFIG:=CONFIG_RTC_DRV_DS1307 \ CONFIG_RTC_CLASS=y FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1307.ko @@ -528,6 +528,24 @@ endef $(eval $(call KernelPackage,rtc-ds1672)) +define KernelPackage/rtc-em3027 + SUBMENU:=$(OTHER_MENU) + TITLE:=Microelectronic EM3027 RTC support + DEFAULT:=m if ALL_KMODS && RTC_SUPPORT + DEPENDS:=+kmod-i2c-core + KCONFIG:=CONFIG_RTC_DRV_EM3027 \ + CONFIG_RTC_CLASS=y + FILES:=$(LINUX_DIR)/drivers/rtc/rtc-em3027.ko + AUTOLOAD:=$(call AutoProbe,rtc-em3027) +endef + +define KernelPackage/rtc-em3027/description + Kernel module for Microelectronic EM3027 RTC. +endef + +$(eval $(call KernelPackage,rtc-em3027)) + + define KernelPackage/rtc-isl1208 SUBMENU:=$(OTHER_MENU) TITLE:=Intersil ISL1208 RTC support @@ -581,6 +599,23 @@ endef $(eval $(call KernelPackage,rtc-pcf2123)) +define KernelPackage/rtc-pcf2127 + SUBMENU:=$(OTHER_MENU) + TITLE:=NXP PCF2127 and PCF2129 RTC support + DEFAULT:=m if ALL_KMODS && RTC_SUPPORT + DEPENDS:=+kmod-i2c-core +kmod-regmap-spi + KCONFIG:=CONFIG_RTC_DRV_PCF2127 \ + CONFIG_RTC_CLASS=y + FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2127.ko + AUTOLOAD:=$(call AutoProbe,rtc-pcf2127) +endef + +define KernelPackage/rtc-pcf2127/description + Kernel module for NXP PCF2127 and PCF2129 RTC chip +endef + +$(eval $(call KernelPackage,rtc-pcf2127)) + define KernelPackage/rtc-pt7c4338 SUBMENU:=$(OTHER_MENU) TITLE:=Pericom PT7C4338 RTC support @@ -615,6 +650,23 @@ endef $(eval $(call KernelPackage,rtc-rs5c372a)) +define KernelPackage/rtc-rx8025 + SUBMENU:=$(OTHER_MENU) + TITLE:=Epson RX-8025 / RX-8035 + DEFAULT:=m if ALL_KMODS && RTC_SUPPORT + DEPENDS:=+kmod-i2c-core + KCONFIG:=CONFIG_RTC_DRV_RX8025 \ + CONFIG_RTC_CLASS=y + FILES:=$(LINUX_DIR)/drivers/rtc/rtc-rx8025.ko + AUTOLOAD:=$(call AutoLoad,50,rtc-rx8025,1) +endef + +define KernelPackage/rtc-rx8025/description + Kernel module for Epson RX-8025 and RX-8035 I2C RTC chip +endef + +$(eval $(call KernelPackage,rtc-rx8025)) + define KernelPackage/mtdtests SUBMENU:=$(OTHER_MENU) @@ -891,7 +943,7 @@ $(eval $(call KernelPackage,ptp)) define KernelPackage/ptp-gianfar SUBMENU:=$(OTHER_MENU) TITLE:=Freescale Gianfar PTP support - DEPENDS:=@TARGET_mpc85xx +kmod-ptp + DEPENDS:=@TARGET_mpc85xx +kmod-ptp @!LINUX_4_19 KCONFIG:=CONFIG_PTP_1588_CLOCK_GIANFAR FILES:=$(LINUX_DIR)/drivers/net/ethernet/freescale/gianfar_ptp.ko AUTOLOAD:=$(call AutoProbe,gianfar_ptp) @@ -904,6 +956,22 @@ endef $(eval $(call KernelPackage,ptp-gianfar)) +define KernelPackage/ptp-qoriq + SUBMENU:=$(OTHER_MENU) + TITLE:=Freescale QorIQ PTP support + DEPENDS:=@TARGET_mpc85xx +kmod-ptp @LINUX_4_19 + KCONFIG:=CONFIG_PTP_1588_CLOCK_QORIQ + FILES:=$(LINUX_DIR)/drivers/ptp/ptp_qoriq.o + AUTOLOAD:=$(call AutoProbe,ptp_qoriq) +endef + + +define KernelPackage/ptp-qoriq/description + Kernel module for IEEE 1588 support for Freescale + QorIQ Ethernet drivers +endef + +$(eval $(call KernelPackage,ptp-qoriq)) define KernelPackage/random-core SUBMENU:=$(OTHER_MENU) @@ -918,21 +986,6 @@ endef $(eval $(call KernelPackage,random-core)) -define KernelPackage/random-omap - SUBMENU:=$(OTHER_MENU) - TITLE:=Hardware Random Number Generator OMAP support - KCONFIG:=CONFIG_HW_RANDOM_OMAP - FILES:=$(LINUX_DIR)/drivers/char/hw_random/omap-rng.ko - DEPENDS:=@TARGET_omap24xx +kmod-random-core - AUTOLOAD:=$(call AutoProbe,random-omap) -endef - -define KernelPackage/random-omap/description - Kernel module for the OMAP Random Number Generator - found on OMAP16xx, OMAP2/3/4/5 and AM33xx/AM43xx multimedia processors. -endef - -$(eval $(call KernelPackage,random-omap)) define KernelPackage/random-tpm SUBMENU:=$(OTHER_MENU) @@ -1019,7 +1072,7 @@ $(eval $(call KernelPackage,echo)) define KernelPackage/bmp085 SUBMENU:=$(OTHER_MENU) TITLE:=BMP085/BMP18x pressure sensor - DEPENDS:= +kmod-regmap-core @!LINUX_3_18 + DEPENDS:= +kmod-regmap-core KCONFIG:= CONFIG_BMP085 FILES:= $(LINUX_DIR)/drivers/misc/bmp085.ko endef @@ -1066,6 +1119,7 @@ $(eval $(call KernelPackage,bmp085-spi)) define KernelPackage/tpm SUBMENU:=$(OTHER_MENU) TITLE:=TPM Hardware Support + DEPENDS:= +!LINUX_4_14:kmod-random-core KCONFIG:= CONFIG_TCG_TPM FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm.ko AUTOLOAD:=$(call AutoLoad,10,tpm,1) diff --git a/package/kernel/linux/modules/sound.mk b/package/kernel/linux/modules/sound.mk index bf4bd5d7c..c83e553d8 100644 --- a/package/kernel/linux/modules/sound.mk +++ b/package/kernel/linux/modules/sound.mk @@ -191,6 +191,7 @@ define KernelPackage/sound-soc-core DEPENDS:=+kmod-regmap-core +kmod-ac97 KCONFIG:= \ CONFIG_SND_SOC \ + CONFIG_SND_SOC_ADI=n \ CONFIG_SND_SOC_DMAENGINE_PCM=y \ CONFIG_SND_SOC_ALL_CODECS=n FILES:=$(LINUX_DIR)/sound/soc/snd-soc-core.ko diff --git a/package/kernel/linux/modules/usb.mk b/package/kernel/linux/modules/usb.mk index 8ac4f76e2..45c409f4c 100644 --- a/package/kernel/linux/modules/usb.mk +++ b/package/kernel/linux/modules/usb.mk @@ -39,7 +39,6 @@ endef define KernelPackage/usb-ledtrig-usbport TITLE:=LED trigger for USB ports KCONFIG:=CONFIG_USB_LEDS_TRIGGER_USBPORT - DEPENDS:=@!LINUX_3_18 FILES:=$(LINUX_DIR)/drivers/usb/core/ledtrig-usbport.ko AUTOLOAD:=$(call AutoLoad,50,ledtrig-usbport) $(call AddDepends/usb) @@ -73,7 +72,7 @@ $(eval $(call KernelPackage,usb-phy-nop)) define KernelPackage/usb-phy-qcom-dwc3 TITLE:=DWC3 USB QCOM PHY driver - DEPENDS:=@!LINUX_4_19 @TARGET_ipq806x +kmod-usb-dwc3-of-simple + DEPENDS:=@(TARGET_ipq40xx||TARGET_ipq806x) +kmod-usb-dwc3-of-simple KCONFIG:= CONFIG_PHY_QCOM_DWC3 FILES:= \ $(LINUX_DIR)/drivers/phy/phy-qcom-dwc3.ko@lt4.13 \ @@ -237,6 +236,22 @@ endef $(eval $(call KernelPackage,usb-gadget-mass-storage)) +define KernelPackage/usb-gadget-cdc-composite + TITLE:= USB CDC Composite (Ethernet + ACM) + KCONFIG:=CONFIG_USB_CDC_COMPOSITE + DEPENDS:=+kmod-usb-gadget +kmod-usb-lib-composite \ + +kmod-usb-gadget-eth +kmod-usb-gadget-serial + FILES:= $(LINUX_DIR)/drivers/usb/gadget/legacy/g_cdc.ko + $(call AddDepends/usb) +endef + +define KernelPackage/usb-gadget-cdc-composite/description + Kernel support for the USB CDC Composite gadget. + This appears as an ethernet + ACM serial gadget. +endef + +$(eval $(call KernelPackage,usb-gadget-cdc-composite)) + define KernelPackage/usb-uhci TITLE:=Support for UHCI controllers @@ -379,7 +394,13 @@ define KernelPackage/usb2 ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/host/ehci-atmel.ko),) FILES+=$(LINUX_DIR)/drivers/usb/host/ehci-atmel.ko endif - AUTOLOAD:=$(call AutoLoad,40,ehci-hcd ehci-platform ehci-orion ehci-atmel,1) + ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/host/ehci-fsl.ko),) + FILES+=$(LINUX_DIR)/drivers/usb/host/ehci-fsl.ko + endif + ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/host/fsl-mph-dr-of.ko),) + FILES+=$(LINUX_DIR)/drivers/usb/host/fsl-mph-dr-of.ko + endif + AUTOLOAD:=$(call AutoLoad,40,ehci-hcd ehci-platform ehci-orion ehci-atmel ehci-fsl fsl-mph-dr-of,1) $(call AddDepends/usb) endef @@ -459,7 +480,7 @@ $(eval $(call KernelPackage,usb-dwc3)) define KernelPackage/usb-dwc3-of-simple TITLE:=DWC3 USB simple OF driver - DEPENDS:=@!LINUX_4_19 @TARGET_ipq40xx||@TARGET_ipq806x +kmod-usb-dwc3 + DEPENDS:=@!LINUX_4_19 @(TARGET_ipq40xx||TARGET_ipq806x) +kmod-usb-dwc3 KCONFIG:= CONFIG_USB_DWC3_OF_SIMPLE FILES:= $(LINUX_DIR)/drivers/usb/dwc3/dwc3-of-simple.ko AUTOLOAD:=$(call AutoLoad,53,dwc3-of-simple,1) @@ -477,7 +498,7 @@ $(eval $(call KernelPackage,usb-dwc3-of-simple)) define KernelPackage/usb-dwc3-qcom TITLE:=DWC3 Qualcomm USB driver - DEPENDS:=@LINUX_4_19 @TARGET_ipq40xx||@TARGET_ipq806x +kmod-usb-dwc3 + DEPENDS:=@LINUX_4_19 @(TARGET_ipq40xx||TARGET_ipq806x) +kmod-usb-dwc3 KCONFIG:= CONFIG_USB_DWC3_QCOM FILES:= $(LINUX_DIR)/drivers/usb/dwc3/dwc3-qcom.ko AUTOLOAD:=$(call AutoLoad,53,dwc3-qcom,1) @@ -1378,7 +1399,7 @@ define KernelPackage/usb-net-cdc-mbim endef define KernelPackage/usb-net-cdc-mbim/description - Kernel module for Option USB High Speed Mobile Devices + Kernel module for CDC MBIM (Mobile Broadband Interface Model) devices endef $(eval $(call KernelPackage,usb-net-cdc-mbim)) @@ -1653,7 +1674,6 @@ define KernelPackage/usb3 CONFIG_USB_XHCI_HCD \ CONFIG_USB_XHCI_PCI \ CONFIG_USB_XHCI_PLATFORM \ - CONFIG_USB_XHCI_MVEBU=y \ CONFIG_USB_XHCI_MTK \ CONFIG_USB_XHCI_HCD_DEBUGGING=n FILES:= \ diff --git a/package/kernel/linux/modules/video.mk b/package/kernel/linux/modules/video.mk index f4b19e59a..5e2484cec 100644 --- a/package/kernel/linux/modules/video.mk +++ b/package/kernel/linux/modules/video.mk @@ -176,7 +176,7 @@ define KernelPackage/fb-sys-ram AUTOLOAD:=$(call AutoLoad,07,syscopyarea sysfillrect sysimgblt) endef -define KernelPackage/fb-sys-fops/description +define KernelPackage/fb-sys-ram/description Kernel support for framebuffers in system RAM endef @@ -187,7 +187,7 @@ define KernelPackage/fb-tft SUBMENU:=$(VIDEO_MENU) TITLE:=Support for small TFT LCD display modules DEPENDS:= \ - @GPIO_SUPPORT @!LINUX_3_18 @!LINUX_4_9 +kmod-backlight \ + @GPIO_SUPPORT @!LINUX_4_9 +kmod-backlight \ +kmod-fb +kmod-fb-sys-fops +kmod-fb-sys-ram +kmod-spi-bitbang KCONFIG:= \ CONFIG_FB_BACKLIGHT=y \ @@ -433,7 +433,7 @@ endef define KernelPackage/video-videobuf2 TITLE:=videobuf2 lib - DEPENDS:=+kmod-dma-buf @!LINUX_3_18 + DEPENDS:=+kmod-dma-buf KCONFIG:= \ CONFIG_VIDEOBUF2_CORE \ CONFIG_VIDEOBUF2_MEMOPS \ @@ -990,7 +990,7 @@ define KernelPackage/video-gspca-gl860 $(call AddDepends/camera-gspca) endef -define KernelPackage/video-gspca-gl800/description +define KernelPackage/video-gspca-gl860/description The GL860 USB Camera Driver (gl860) kernel module endef diff --git a/package/kernel/linux/modules/w1.mk b/package/kernel/linux/modules/w1.mk index baf6b0662..5055d78a1 100644 --- a/package/kernel/linux/modules/w1.mk +++ b/package/kernel/linux/modules/w1.mk @@ -14,7 +14,7 @@ define KernelPackage/w1 TITLE:=Dallas's 1-wire support KCONFIG:=CONFIG_W1 FILES:=$(LINUX_DIR)/drivers/w1/wire.ko - DEPENDS:=+!(LINUX_3_18||LINUX_4_9):kmod-hwmon-core + DEPENDS:=+!LINUX_4_9:kmod-hwmon-core endef define KernelPackage/w1/description diff --git a/package/kernel/linux/modules/wpan.mk b/package/kernel/linux/modules/wpan.mk index d8d58fa0b..1e986ee0c 100644 --- a/package/kernel/linux/modules/wpan.mk +++ b/package/kernel/linux/modules/wpan.mk @@ -9,7 +9,6 @@ WPAN_MENU:=WPAN 802.15.4 Support define KernelPackage/ieee802154 SUBMENU:=$(WPAN_MENU) TITLE:=IEEE-802.15.4 support - DEPENDS:=@!LINUX_3_18 KCONFIG:= \ CONFIG_IEEE802154 \ CONFIG_IEEE802154_SOCKET=y \ @@ -33,7 +32,7 @@ $(eval $(call KernelPackage,ieee802154)) define KernelPackage/mac802154 SUBMENU:=$(WPAN_MENU) TITLE:=MAC-802.15.4 support - DEPENDS:=+kmod-ieee802154 +kmod-crypto-aead +kmod-lib-crc-ccitt @!LINUX_3_18 + DEPENDS:=+kmod-ieee802154 +kmod-crypto-aead +kmod-lib-crc-ccitt KCONFIG:= \ CONFIG_MAC802154 \ CONFIG_IEEE802154_DRIVERS=y @@ -56,7 +55,7 @@ $(eval $(call KernelPackage,mac802154)) define KernelPackage/fakelb SUBMENU:=$(WPAN_MENU) TITLE:=Fake LR-WPAN driver - DEPENDS:=+kmod-mac802154 @!LINUX_3_18 + DEPENDS:=+kmod-mac802154 KCONFIG:=CONFIG_IEEE802154_FAKELB FILES:=$(LINUX_DIR)/drivers/net/ieee802154/fakelb.ko AUTOLOAD:=$(call AutoLoad,92,fakelb) @@ -69,6 +68,17 @@ endef $(eval $(call KernelPackage,fakelb)) +define KernelPackage/atusb + SUBMENU:=$(WPAN_MENU) + TITLE:=ATUSB transceiver driver + DEPENDS:=@USB_SUPPORT +kmod-usb-core +kmod-mac802154 + KCONFIG:=CONFIG_IEEE802154_ATUSB + FILES:=$(LINUX_DIR)/drivers/net/ieee802154/atusb.ko + AUTOLOAD:=$(call AutoProbe,atusb) +endef + +$(eval $(call KernelPackage,atusb)) + define KernelPackage/at86rf230 SUBMENU:=$(WPAN_MENU) TITLE:=AT86RF230 transceiver driver @@ -109,7 +119,7 @@ $(eval $(call KernelPackage,cc2520)) define KernelPackage/ieee802154_6lowpan SUBMENU:=$(WPAN_MENU) TITLE:= 6LoWPAN support over IEEE-802.15.4 - DEPENDS:=@!LINUX_3_18 +kmod-6lowpan +kmod-ieee802154 + DEPENDS:=+kmod-6lowpan +kmod-ieee802154 KCONFIG:=CONFIG_IEEE802154_6LOWPAN FILES:= \ $(LINUX_DIR)/net/ieee802154/6lowpan/ieee802154_6lowpan.ko@ge4.0 \ diff --git a/target/linux/x86/Makefile b/target/linux/x86/Makefile index 26b13dca1..259cecd0e 100644 --- a/target/linux/x86/Makefile +++ b/target/linux/x86/Makefile @@ -13,7 +13,7 @@ FEATURES:=squashfs vdi vmdk pcmcia fpu SUBTARGETS:=64 generic legacy geode MAINTAINER:=Felix Fietkau -KERNEL_PATCHVER:=4.19 +KERNEL_PATCHVER:=4.9 KERNELNAME:=bzImage diff --git a/target/linux/x86/patches-4.14/900-x86-Enable-fast-strings-on-Intel-if-BIOS-hasn-t-already.patch b/target/linux/x86/patches-4.14/900-x86-Enable-fast-strings-on-Intel-if-BIOS-hasn-t-already.patch new file mode 100644 index 000000000..06e64e3d4 --- /dev/null +++ b/target/linux/x86/patches-4.14/900-x86-Enable-fast-strings-on-Intel-if-BIOS-hasn-t-already.patch @@ -0,0 +1,53 @@ +diff --git a/arch/x86/kernel/cpu/intel.c b/arch/x86/kernel/cpu/intel.c +index 1905ce9..a4a3ef2 100644 +--- a/arch/x86/kernel/cpu/intel.c ++++ b/arch/x86/kernel/cpu/intel.c +@@ -164,6 +164,7 @@ + static void early_init_intel(struct cpuinfo_x86 *c) + { + u64 misc_enable; ++ bool allow_fast_string = true; + + /* Unmask CPUID levels if masked: */ + if (c->x86 > 6 || (c->x86 == 6 && c->x86_model >= 0xd)) { +@@ -259,17 +260,35 @@ + * + * Enable PAT WC only on P4, Core 2 or later CPUs. + */ +- if (c->x86 == 6 && c->x86_model < 15) ++ if (c->x86 == 6 && c->x86_model < 15) { ++ allow_fast_string = false; + clear_cpu_cap(c, X86_FEATURE_PAT); +- ++ } + /* +- * If fast string is not enabled in IA32_MISC_ENABLE for any reason, +- * clear the fast string and enhanced fast string CPU capabilities. ++ * If BIOS didn't enable fast string operation, try to enable ++ * it ourselves. If that fails, then clear the fast string ++ * and enhanced fast string CPU capabilities. + */ + if (c->x86 > 6 || (c->x86 == 6 && c->x86_model >= 0xd)) { + rdmsrl(MSR_IA32_MISC_ENABLE, misc_enable); ++ ++ if (allow_fast_string && ++ !(misc_enable & MSR_IA32_MISC_ENABLE_FAST_STRING)) { ++ misc_enable |= MSR_IA32_MISC_ENABLE_FAST_STRING; ++ wrmsrl_safe(MSR_IA32_MISC_ENABLE, misc_enable); ++ ++ /* Re-read to make sure it stuck. */ ++ rdmsrl(MSR_IA32_MISC_ENABLE, misc_enable); ++ ++ if (misc_enable & MSR_IA32_MISC_ENABLE_FAST_STRING) ++ printk_once(KERN_INFO "BIOS disabled fast string operation, re-enabled sucessfully.\n"); ++ } ++ + if (!(misc_enable & MSR_IA32_MISC_ENABLE_FAST_STRING)) { +- pr_info("Disabled fast string operations\n"); ++ if (allow_fast_string) ++ printk_once(KERN_INFO FW_WARN "BIOS disabled fast string operation, re-enable failed.\n"); ++ else ++ printk_once(KERN_INFO "Disabled fast string operations\n"); + setup_clear_cpu_cap(X86_FEATURE_REP_GOOD); + setup_clear_cpu_cap(X86_FEATURE_ERMS); + }