summaryrefslogtreecommitdiffstats
path: root/package/kernel/linux
diff options
context:
space:
mode:
Diffstat (limited to 'package/kernel/linux')
-rw-r--r--package/kernel/linux/modules/block.mk12
-rw-r--r--package/kernel/linux/modules/can.mk10
-rw-r--r--package/kernel/linux/modules/crypto.mk2
-rw-r--r--package/kernel/linux/modules/i2c.mk36
-rw-r--r--package/kernel/linux/modules/netdevices.mk8
-rw-r--r--package/kernel/linux/modules/netfilter.mk2
-rw-r--r--package/kernel/linux/modules/other.mk333
-rw-r--r--package/kernel/linux/modules/rtc.mk255
-rw-r--r--package/kernel/linux/modules/video.mk79
9 files changed, 457 insertions, 280 deletions
diff --git a/package/kernel/linux/modules/block.mk b/package/kernel/linux/modules/block.mk
index 4f3a6e085f..3dbeca9f9f 100644
--- a/package/kernel/linux/modules/block.mk
+++ b/package/kernel/linux/modules/block.mk
@@ -89,6 +89,18 @@ endef
$(eval $(call KernelPackage,ata-artop))
+define KernelPackage/ata-ahci-dwc
+ TITLE:=Synopsys DWC AHCI SATA
+ KCONFIG:= \
+ CONFIG_AHCI_DWC \
+ CONFIG_SATA_HOST=y
+ FILES:=$(LINUX_DIR)/drivers/ata/ahci_dwc.ko
+ DEPENDS:=+kmod-ata-ahci-platform
+ AUTOLOAD:=$(call AutoLoad,41,ahci_dwc,1)
+ $(call AddDepends/ata,@TARGET_rockchip)
+endef
+
+$(eval $(call KernelPackage,ata-ahci-dwc))
define KernelPackage/ata-nvidia-sata
TITLE:=Nvidia Serial ATA support
diff --git a/package/kernel/linux/modules/can.mk b/package/kernel/linux/modules/can.mk
index eda9b0c487..603976ef5f 100644
--- a/package/kernel/linux/modules/can.mk
+++ b/package/kernel/linux/modules/can.mk
@@ -235,9 +235,13 @@ $(eval $(call KernelPackage,can-usb-ems))
define KernelPackage/can-usb-esd
TITLE:=ESD USB/2 CAN/USB interface
- KCONFIG:=CONFIG_CAN_ESD_USB2
- FILES:=$(LINUX_DIR)/drivers/net/can/usb/esd_usb2.ko
- AUTOLOAD:=$(call AutoProbe,esd_usb2)
+ KCONFIG:= \
+ CONFIG_CAN_ESD_USB2@lt6.0 \
+ CONFIG_CAN_ESD_USB@ge6.0
+ FILES:= \
+ $(LINUX_DIR)/drivers/net/can/usb/esd_usb2.ko@lt6.0 \
+ $(LINUX_DIR)/drivers/net/can/usb/esd_usb.ko@ge6.0
+ AUTOLOAD:=$(call AutoProbe,esd_usb2 esd_usb)
$(call AddDepends/can,+kmod-usb-core)
endef
diff --git a/package/kernel/linux/modules/crypto.mk b/package/kernel/linux/modules/crypto.mk
index 4a8a283d37..638182d712 100644
--- a/package/kernel/linux/modules/crypto.mk
+++ b/package/kernel/linux/modules/crypto.mk
@@ -411,7 +411,7 @@ define KernelPackage/crypto-hw-ixp4xx
KCONFIG:= \
CONFIG_CRYPTO_HW=y \
CONFIG_CRYPTO_DEV_IXP4XX
- FILES:=$(LINUX_DIR)/drivers/crypto/ixp4xx_crypto.ko
+ FILES:=$(LINUX_DIR)/drivers/crypto/intel/ixp4xx/ixp4xx_crypto.ko
AUTOLOAD:=$(call AutoProbe,ixp4xx_crypto)
$(call AddDepends/crypto)
endef
diff --git a/package/kernel/linux/modules/i2c.mk b/package/kernel/linux/modules/i2c.mk
index 7cd69dbb95..3aaf560ea9 100644
--- a/package/kernel/linux/modules/i2c.mk
+++ b/package/kernel/linux/modules/i2c.mk
@@ -169,6 +169,24 @@ endef
$(eval $(call KernelPackage,i2c-i801))
+I2C_MLXCPLD_MODULES:= \
+ CONFIG_I2C_MLXCPLD:drivers/i2c/busses/i2c-mlxcpld
+
+define KernelPackage/i2c-mlxcpld
+ $(call i2c_defaults,$(I2C_MLXCPLD_MODULES),59)
+ TITLE:=Mellanox I2C driver
+ DEPENDS:=@TARGET_x86_64 +kmod-regmap-core
+endef
+
+define KernelPackage/i2c-mlxcpld/description
+ This exposes the Mellanox platform I2C busses
+ to the linux I2C layer for X86 based systems.
+ Controller is implemented as CPLD logic.
+endef
+
+$(eval $(call KernelPackage,i2c-mlxcpld))
+
+
I2C_MUX_MODULES:= \
CONFIG_I2C_MUX:drivers/i2c/i2c-mux
@@ -200,6 +218,24 @@ endef
$(eval $(call KernelPackage,i2c-mux-gpio))
+I2C_MUX_MLXCPLD_MODULES:= \
+ CONFIG_I2C_MUX_MLXCPLD:drivers/i2c/muxes/i2c-mux-mlxcpld
+
+define KernelPackage/i2c-mux-mlxcpld
+ $(call i2c_defaults,$(I2C_MUX_MLXCPLD_MODULES),51)
+ TITLE:=Mellanox CPLD based I2C multiplexer
+ DEPENDS:=+kmod-i2c-mlxcpld +kmod-i2c-mux
+endef
+
+define KernelPackage/i2c-mux-mlxcpld/description
+ This driver provides access to
+ I2C busses connected through a MUX, which is controlled
+ by a CPLD register.
+endef
+
+$(eval $(call KernelPackage,i2c-mux-mlxcpld))
+
+
I2C_MUX_REG_MODULES:= \
CONFIG_I2C_MUX_REG:drivers/i2c/muxes/i2c-mux-reg
diff --git a/package/kernel/linux/modules/netdevices.mk b/package/kernel/linux/modules/netdevices.mk
index e0110764c2..06bae6a7ed 100644
--- a/package/kernel/linux/modules/netdevices.mk
+++ b/package/kernel/linux/modules/netdevices.mk
@@ -142,7 +142,7 @@ $(eval $(call KernelPackage,mii))
define KernelPackage/mdio-devres
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Supports MDIO device registration
- DEPENDS:=+kmod-libphy +(TARGET_armsr||TARGET_bcm27xx_bcm2708||TARGET_malta||TARGET_tegra):kmod-of-mdio
+ DEPENDS:=+kmod-libphy +(TARGET_armsr||TARGET_bcm27xx_bcm2708||TARGET_loongarch64||TARGET_malta||TARGET_tegra):kmod-of-mdio
KCONFIG:=CONFIG_MDIO_DEVRES
HIDDEN:=1
FILES:=$(LINUX_DIR)/drivers/net/phy/mdio_devres.ko
@@ -159,7 +159,7 @@ $(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_armsr||TARGET_bcm27xx_bcm2708||TARGET_malta||TARGET_tegra):kmod-of-mdio
+ DEPENDS:=+kmod-libphy @GPIO_SUPPORT +(TARGET_armsr||TARGET_bcm27xx_bcm2708||TARGET_loongarch64||TARGET_malta||TARGET_tegra):kmod-of-mdio
KCONFIG:= \
CONFIG_MDIO_BITBANG \
CONFIG_MDIO_GPIO
@@ -523,7 +523,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_armsr||TARGET_bcm27xx_bcm2708||TARGET_malta||TARGET_tegra):kmod-of-mdio
+ DEPENDS:=@GPIO_SUPPORT +kmod-swconfig +(TARGET_armsr||TARGET_bcm27xx_bcm2708||TARGET_loongarch64||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)
@@ -1607,7 +1607,7 @@ $(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 +LINUX_6_6:kmod-of-mdio +kmod-ptp
+ DEPENDS:=@TARGET_x86_64||TARGET_armsr_armv8 +kmod-pcs-xpcs +kmod-ptp
KCONFIG:=CONFIG_STMMAC_ETH \
CONFIG_STMMAC_SELFTESTS=n \
CONFIG_STMMAC_PLATFORM \
diff --git a/package/kernel/linux/modules/netfilter.mk b/package/kernel/linux/modules/netfilter.mk
index da3e69e49a..76697f5d2f 100644
--- a/package/kernel/linux/modules/netfilter.mk
+++ b/package/kernel/linux/modules/netfilter.mk
@@ -807,7 +807,7 @@ define KernelPackage/ipt-clusterip
KCONFIG:=$(KCONFIG_IPT_CLUSTERIP)
FILES:=$(foreach mod,$(IPT_CLUSTERIP-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CLUSTERIP-m)))
- $(call AddDepends/ipt,+kmod-nf-conntrack)
+ $(call AddDepends/ipt,+kmod-nf-conntrack @LINUX_5_15||LINUX_6_1)
endef
define KernelPackage/ipt-clusterip/description
diff --git a/package/kernel/linux/modules/other.mk b/package/kernel/linux/modules/other.mk
index e227fd6a0f..36a8ef46d0 100644
--- a/package/kernel/linux/modules/other.mk
+++ b/package/kernel/linux/modules/other.mk
@@ -244,6 +244,92 @@ endef
$(eval $(call KernelPackage,lkdtm))
+define KernelPackage/mlx_wdt
+ SUBMENU:=$(OTHER_MENU)
+ TITLE:=Mellanox Watchdog
+ DEPENDS:=@TARGET_x86 +kmod-regmap-core
+ KCONFIG:= \
+ CONFIG_MELLANOX_PLATFORM=y \
+ CONFIG_MLX_WDT
+ FILES:=$(LINUX_DIR)/drivers/watchdog/mlx_wdt.ko
+ AUTOLOAD:=$(call AutoProbe,mlx_wdt)
+endef
+
+define KernelPackage/mlx_wdt/description
+ This is the driver for the hardware watchdog on Mellanox systems.
+ This driver can be used together with the watchdog daemon.
+ It can also watch your kernel to make sure it doesn't freeze,
+ and if it does, it reboots your system after a certain amount of
+ time.
+endef
+
+$(eval $(call KernelPackage,mlx_wdt))
+
+
+define KernelPackage/mlxreg
+ SUBMENU:=$(OTHER_MENU)
+ TITLE:=Mellanox platform register access
+ DEPENDS:=@TARGET_x86 +kmod-i2c-mux-mlxcpld
+ KCONFIG:= \
+ CONFIG_MELLANOX_PLATFORM=y \
+ CONFIG_MLX_PLATFORM \
+ CONFIG_MLXREG_HOTPLUG \
+ CONFIG_MLXREG_IO \
+ CONFIG_SENSORS_MLXREG_FAN \
+ CONFIG_LEDS_MLXREG
+ FILES:= \
+ $(LINUX_DIR)/drivers/platform/x86/mlx-platform.ko \
+ $(LINUX_DIR)/drivers/platform/mellanox/mlxreg-hotplug.ko \
+ $(LINUX_DIR)/drivers/platform/mellanox/mlxreg-io.ko \
+ $(LINUX_DIR)/drivers/hwmon/mlxreg-fan.ko \
+ $(LINUX_DIR)/drivers/leds/leds-mlxreg.ko
+ AUTOLOAD:=$(call AutoProbe,mlx-platform mlxreg-hotplug mlxreg-io mlxreg-fan leds-mlxreg)
+endef
+
+define KernelPackage/mlxreg/description
+ Allows access to Mellanox programmable device register
+ space through sysfs interface. The sets of registers for sysfs access
+ are defined per system type bases and include the registers related
+ to system resets operation, system reset causes monitoring and some
+ kinds of mux selection.
+endef
+
+$(eval $(call KernelPackage,mlxreg))
+
+
+define KernelPackage/mlxreg-lc
+ SUBMENU:=$(OTHER_MENU)
+ TITLE:=Mellanox line card platform support
+ DEPENDS:=kmod-mlxreg +kmod-regmap-i2c
+ KCONFIG:=CONFIG_MLXREG_LC
+ FILES:=$(LINUX_DIR)/drivers/platform/mellanox/mlxreg-lc.ko
+ AUTOLOAD:=$(call AutoProbe,mlxreg-lc)
+endef
+
+define KernelPackage/mlxreg-lc/description
+ Provides support for the Mellanox MSN4800-XX line cards,
+ which are the part of MSN4800 Ethernet modular switch systems.
+endef
+
+$(eval $(call KernelPackage,mlxreg-lc))
+
+
+define KernelPackage/mlxreg-sn2201
+ SUBMENU:=$(OTHER_MENU)
+ TITLE:=Nvidia SN2201 platform support
+ DEPENDS:=kmod-mlxreg +kmod-regmap-i2c
+ KCONFIG:=CONFIG_NVSW_SN2201
+ FILES:=$(LINUX_DIR)/drivers/platform/mellanox/nvsw-sn2201.ko
+ AUTOLOAD:=$(call AutoProbe,nvsw-sn2201)
+endef
+
+define KernelPackage/mlxreg-sn2201/description
+ Provides support for the Nvidia SN2201 platform.
+endef
+
+$(eval $(call KernelPackage,mlxreg-sn2201))
+
+
define KernelPackage/pinctrl-mcp23s08
SUBMENU:=$(OTHER_MENU)
TITLE:=Microchip MCP23xxx I/O expander
@@ -486,253 +572,6 @@ endef
$(eval $(call KernelPackage,bcma))
-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 +kmod-regmap-i2c +kmod-hwmon-core
- KCONFIG:=CONFIG_RTC_DRV_DS1307 \
- CONFIG_RTC_CLASS=y
- FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1307.ko
- AUTOLOAD:=$(call AutoProbe,rtc-ds1307)
-endef
-
-define KernelPackage/rtc-ds1307/description
- Kernel module for Dallas/Maxim DS1307/DS1337/DS1338/DS1340/DS1388/DS3231,
- Epson RX-8025 and various other compatible RTC chips connected via I2C.
-endef
-
-$(eval $(call KernelPackage,rtc-ds1307))
-
-
-define KernelPackage/rtc-ds1374
- SUBMENU:=$(OTHER_MENU)
- TITLE:=Dallas/Maxim DS1374 RTC support
- DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
- DEPENDS:=+kmod-i2c-core
- KCONFIG:=CONFIG_RTC_DRV_DS1374 \
- CONFIG_RTC_DRV_DS1374_WDT=n \
- CONFIG_RTC_CLASS=y
- FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1374.ko
- AUTOLOAD:=$(call AutoProbe,rtc-ds1374)
-endef
-
-define KernelPackage/rtc-ds1374/description
- Kernel module for Dallas/Maxim DS1374.
-endef
-
-$(eval $(call KernelPackage,rtc-ds1374))
-
-
-define KernelPackage/rtc-ds1672
- SUBMENU:=$(OTHER_MENU)
- TITLE:=Dallas/Maxim DS1672 RTC support
- DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
- DEPENDS:=+kmod-i2c-core
- KCONFIG:=CONFIG_RTC_DRV_DS1672 \
- CONFIG_RTC_CLASS=y
- FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1672.ko
- AUTOLOAD:=$(call AutoProbe,rtc-ds1672)
-endef
-
-define KernelPackage/rtc-ds1672/description
- Kernel module for Dallas/Maxim DS1672 RTC.
-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
- DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
- DEPENDS:=+kmod-i2c-core
- KCONFIG:=CONFIG_RTC_DRV_ISL1208 \
- CONFIG_RTC_CLASS=y
- FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
- AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
-endef
-
-define KernelPackage/rtc-isl1208/description
- Kernel module for Intersil ISL1208 RTC.
-endef
-
-$(eval $(call KernelPackage,rtc-isl1208))
-
-
-define KernelPackage/rtc-mv
- SUBMENU:=$(OTHER_MENU)
- TITLE:=Marvell SoC RTC support
- DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
- KCONFIG:=CONFIG_RTC_DRV_MV \
- CONFIG_RTC_CLASS=y
- FILES:=$(LINUX_DIR)/drivers/rtc/rtc-mv.ko
- AUTOLOAD:=$(call AutoProbe,rtc-mv)
-endef
-
-define KernelPackage/rtc-mv/description
- Kernel module for Marvell SoC RTC.
-endef
-
-$(eval $(call KernelPackage,rtc-mv))
-
-
-define KernelPackage/rtc-pcf8563
- SUBMENU:=$(OTHER_MENU)
- TITLE:=Philips PCF8563/Epson RTC8564 RTC support
- DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
- DEPENDS:=+kmod-i2c-core
- KCONFIG:=CONFIG_RTC_DRV_PCF8563 \
- CONFIG_RTC_CLASS=y
- FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
- AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
-endef
-
-define KernelPackage/rtc-pcf8563/description
- Kernel module for Philips PCF8563 RTC chip.
- The Epson RTC8564 should work as well.
-endef
-
-$(eval $(call KernelPackage,rtc-pcf8563))
-
-
-define KernelPackage/rtc-pcf2123
- SUBMENU:=$(OTHER_MENU)
- TITLE:=Philips PCF2123 RTC support
- DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
- DEPENDS:=+kmod-regmap-spi
- KCONFIG:=CONFIG_RTC_DRV_PCF2123 \
- CONFIG_RTC_CLASS=y
- FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
- AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
-endef
-
-define KernelPackage/rtc-pcf2123/description
- Kernel module for Philips PCF2123 RTC chip
-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-r7301
- SUBMENU:=$(OTHER_MENU)
- TITLE:=Epson RTC7301 support
- DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
- DEPENDS:=+kmod-regmap-mmio
- KCONFIG:=CONFIG_RTC_DRV_R7301 \
- CONFIG_RTC_CLASS=y
- FILES:=$(LINUX_DIR)/drivers/rtc/rtc-r7301.ko
- AUTOLOAD:=$(call AutoProbe,rtc-r7301)
-endef
-
-define KernelPackage/rtc-r7301/description
- Kernel module for Epson RTC7301 RTC chip
-endef
-
-$(eval $(call KernelPackage,rtc-r7301))
-
-define KernelPackage/rtc-rs5c372a
- SUBMENU:=$(OTHER_MENU)
- TITLE:=Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A
- DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
- DEPENDS:=+kmod-i2c-core
- KCONFIG:=CONFIG_RTC_DRV_RS5C372 \
- CONFIG_RTC_CLASS=y
- FILES:=$(LINUX_DIR)/drivers/rtc/rtc-rs5c372.ko
- AUTOLOAD:=$(call AutoLoad,50,rtc-rs5c372,1)
-endef
-
-define KernelPackage/rtc-rs5c372a/description
- Kernel module for Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A RTC on chip module
-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/rtc-s35390a
- SUBMENU:=$(OTHER_MENU)
- TITLE:=Seico S-35390A
- DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
- DEPENDS:=+kmod-i2c-core
- KCONFIG:=CONFIG_RTC_DRV_S35390A \
- CONFIG_RTC_CLASS=y
- FILES:=$(LINUX_DIR)/drivers/rtc/rtc-s35390a.ko
- AUTOLOAD:=$(call AutoLoad,50,rtc-s35390a,1)
-endef
-
-define KernelPackage/rtc-s35390a/description
- Kernel module for Seiko Instruments S-35390A I2C RTC chip
-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)
TITLE:=MTD subsystem tests
diff --git a/package/kernel/linux/modules/rtc.mk b/package/kernel/linux/modules/rtc.mk
new file mode 100644
index 0000000000..3658e8598c
--- /dev/null
+++ b/package/kernel/linux/modules/rtc.mk
@@ -0,0 +1,255 @@
+#
+# Copyright (C) 2006-2024 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+RTC_MENU:=RTC Real-Time Clock Support
+
+define KernelPackage/rtc-ds1307
+ SUBMENU:=$(RTC_MENU)
+ TITLE:=Dallas/Maxim DS1307 (and compatible) RTC support
+ DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
+ DEPENDS:=+kmod-i2c-core +kmod-regmap-i2c +kmod-hwmon-core
+ KCONFIG:=CONFIG_RTC_DRV_DS1307 \
+ CONFIG_RTC_CLASS=y
+ FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1307.ko
+ AUTOLOAD:=$(call AutoProbe,rtc-ds1307)
+endef
+
+define KernelPackage/rtc-ds1307/description
+ Kernel module for Dallas/Maxim DS1307/DS1337/DS1338/DS1340/DS1388/DS3231,
+ Epson RX-8025 and various other compatible RTC chips connected via I2C.
+endef
+
+$(eval $(call KernelPackage,rtc-ds1307))
+
+
+define KernelPackage/rtc-ds1374
+ SUBMENU:=$(RTC_MENU)
+ TITLE:=Dallas/Maxim DS1374 RTC support
+ DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
+ DEPENDS:=+kmod-i2c-core
+ KCONFIG:=CONFIG_RTC_DRV_DS1374 \
+ CONFIG_RTC_DRV_DS1374_WDT=n \
+ CONFIG_RTC_CLASS=y
+ FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1374.ko
+ AUTOLOAD:=$(call AutoProbe,rtc-ds1374)
+endef
+
+define KernelPackage/rtc-ds1374/description
+ Kernel module for Dallas/Maxim DS1374.
+endef
+
+$(eval $(call KernelPackage,rtc-ds1374))
+
+
+define KernelPackage/rtc-ds1672
+ SUBMENU:=$(RTC_MENU)
+ TITLE:=Dallas/Maxim DS1672 RTC support
+ DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
+ DEPENDS:=+kmod-i2c-core
+ KCONFIG:=CONFIG_RTC_DRV_DS1672 \
+ CONFIG_RTC_CLASS=y
+ FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1672.ko
+ AUTOLOAD:=$(call AutoProbe,rtc-ds1672)
+endef
+
+define KernelPackage/rtc-ds1672/description
+ Kernel module for Dallas/Maxim DS1672 RTC.
+endef
+
+$(eval $(call KernelPackage,rtc-ds1672))
+
+
+define KernelPackage/rtc-em3027
+ SUBMENU:=$(RTC_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:=$(RTC_MENU)
+ TITLE:=Intersil ISL1208 RTC support
+ DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
+ DEPENDS:=+kmod-i2c-core
+ KCONFIG:=CONFIG_RTC_DRV_ISL1208 \
+ CONFIG_RTC_CLASS=y
+ FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
+ AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
+endef
+
+define KernelPackage/rtc-isl1208/description
+ Kernel module for Intersil ISL1208 RTC.
+endef
+
+$(eval $(call KernelPackage,rtc-isl1208))
+
+
+define KernelPackage/rtc-mv
+ SUBMENU:=$(RTC_MENU)
+ TITLE:=Marvell SoC RTC support
+ DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
+ KCONFIG:=CONFIG_RTC_DRV_MV \
+ CONFIG_RTC_CLASS=y
+ FILES:=$(LINUX_DIR)/drivers/rtc/rtc-mv.ko
+ AUTOLOAD:=$(call AutoProbe,rtc-mv)
+endef
+
+define KernelPackage/rtc-mv/description
+ Kernel module for Marvell SoC RTC.
+endef
+
+$(eval $(call KernelPackage,rtc-mv))
+
+
+define KernelPackage/rtc-pcf8563
+ SUBMENU:=$(RTC_MENU)
+ TITLE:=Philips PCF8563/Epson RTC8564 RTC support
+ DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
+ DEPENDS:=+kmod-i2c-core
+ KCONFIG:=CONFIG_RTC_DRV_PCF8563 \
+ CONFIG_RTC_CLASS=y
+ FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
+ AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
+endef
+
+define KernelPackage/rtc-pcf8563/description
+ Kernel module for Philips PCF8563 RTC chip.
+ The Epson RTC8564 should work as well.
+endef
+
+$(eval $(call KernelPackage,rtc-pcf8563))
+
+
+define KernelPackage/rtc-pcf2123
+ SUBMENU:=$(RTC_MENU)
+ TITLE:=Philips PCF2123 RTC support
+ DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
+ DEPENDS:=+kmod-regmap-spi
+ KCONFIG:=CONFIG_RTC_DRV_PCF2123 \
+ CONFIG_RTC_CLASS=y
+ FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
+ AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
+endef
+
+define KernelPackage/rtc-pcf2123/description
+ Kernel module for Philips PCF2123 RTC chip
+endef
+
+$(eval $(call KernelPackage,rtc-pcf2123))
+
+define KernelPackage/rtc-pcf2127
+ SUBMENU:=$(RTC_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-r7301
+ SUBMENU:=$(RTC_MENU)
+ TITLE:=Epson RTC7301 support
+ DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
+ DEPENDS:=+kmod-regmap-mmio
+ KCONFIG:=CONFIG_RTC_DRV_R7301 \
+ CONFIG_RTC_CLASS=y
+ FILES:=$(LINUX_DIR)/drivers/rtc/rtc-r7301.ko
+ AUTOLOAD:=$(call AutoProbe,rtc-r7301)
+endef
+
+define KernelPackage/rtc-r7301/description
+ Kernel module for Epson RTC7301 RTC chip
+endef
+
+$(eval $(call KernelPackage,rtc-r7301))
+
+define KernelPackage/rtc-rs5c372a
+ SUBMENU:=$(RTC_MENU)
+ TITLE:=Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A
+ DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
+ DEPENDS:=+kmod-i2c-core
+ KCONFIG:=CONFIG_RTC_DRV_RS5C372 \
+ CONFIG_RTC_CLASS=y
+ FILES:=$(LINUX_DIR)/drivers/rtc/rtc-rs5c372.ko
+ AUTOLOAD:=$(call AutoLoad,50,rtc-rs5c372,1)
+endef
+
+define KernelPackage/rtc-rs5c372a/description
+ Kernel module for Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A RTC on chip module
+endef
+
+$(eval $(call KernelPackage,rtc-rs5c372a))
+
+define KernelPackage/rtc-rx8025
+ SUBMENU:=$(RTC_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/rtc-s35390a
+ SUBMENU:=$(RTC_MENU)
+ TITLE:=Seico S-35390A
+ DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
+ DEPENDS:=+kmod-i2c-core
+ KCONFIG:=CONFIG_RTC_DRV_S35390A \
+ CONFIG_RTC_CLASS=y
+ FILES:=$(LINUX_DIR)/drivers/rtc/rtc-s35390a.ko
+ AUTOLOAD:=$(call AutoLoad,50,rtc-s35390a,1)
+endef
+
+define KernelPackage/rtc-s35390a/description
+ Kernel module for Seiko Instruments S-35390A I2C RTC chip
+endef
+
+$(eval $(call KernelPackage,rtc-s35390a))
+
+define KernelPackage/rtc-x1205
+ SUBMENU:=$(RTC_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))
diff --git a/package/kernel/linux/modules/video.mk b/package/kernel/linux/modules/video.mk
index b282d7695c..e40915fbd5 100644
--- a/package/kernel/linux/modules/video.mk
+++ b/package/kernel/linux/modules/video.mk
@@ -19,19 +19,23 @@ V4L2_MEM2MEM_DIR=platform
define KernelPackage/acpi-video
SUBMENU:=$(VIDEO_MENU)
TITLE:=ACPI Extensions For Display Adapters
- DEPENDS:=@TARGET_x86 +kmod-backlight
+ DEPENDS:=@TARGET_x86||TARGET_loongarch64 +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)
+ KCONFIG:=CONFIG_ACPI_VIDEO
+ FILES:=$(LINUX_DIR)/drivers/acpi/video.ko
+ AUTOLOAD:=$(call AutoProbe,video)
endef
define KernelPackage/acpi-video/description
Kernel support for integrated graphics devices.
endef
+define KernelPackage/acpi-video/x86
+ KCONFIG+=CONFIG_ACPI_WMI
+ FILES+=$(LINUX_DIR)/drivers/platform/x86/wmi.ko
+ AUTOLOAD:=$(call AutoProbe,wmi video)
+endef
+
$(eval $(call KernelPackage,acpi-video))
define KernelPackage/backlight
@@ -79,6 +83,7 @@ define KernelPackage/fb
DEPENDS:=@DISPLAY_SUPPORT
KCONFIG:= \
CONFIG_FB \
+ CONFIG_FB_DEVICE=y \
CONFIG_FB_MXS=n \
CONFIG_FB_SM750=n \
CONFIG_FRAMEBUFFER_CONSOLE=y \
@@ -372,7 +377,7 @@ $(eval $(call KernelPackage,drm-suballoc-helper))
define KernelPackage/drm-amdgpu
SUBMENU:=$(VIDEO_MENU)
TITLE:=AMDGPU DRM support
- DEPENDS:=@TARGET_x86 @DISPLAY_SUPPORT +kmod-backlight +kmod-drm-ttm \
+ DEPENDS:=@TARGET_x86||TARGET_loongarch64 @DISPLAY_SUPPORT +kmod-backlight +kmod-drm-ttm \
+kmod-drm-ttm-helper +kmod-drm-kms-helper +kmod-i2c-algo-bit +amdgpu-firmware \
+kmod-drm-display-helper +kmod-drm-buddy +kmod-acpi-video \
+LINUX_6_6:kmod-drm-exec +LINUX_6_6:kmod-drm-suballoc-helper
@@ -391,6 +396,13 @@ define KernelPackage/drm-amdgpu/description
Direct Rendering Manager (DRM) support for AMDGPU Cards
endef
+define KernelPackage/drm-amdgpu/loongarch64
+ KCONFIG+=CONFIG_DRM_AMDGPU_USERPTR=y \
+ CONFIG_DRM_AMD_DC=y \
+ CONFIG_DRM_AMD_DC_FP=y \
+ CONFIG_DRM_AMD_DC_SI=y
+endef
+
$(eval $(call KernelPackage,drm-amdgpu))
@@ -413,7 +425,8 @@ define KernelPackage/drm-imx
CONFIG_DRM_IMX_LDB=n \
CONFIG_DRM_IMX_HDMI=n
FILES:= \
- $(LINUX_DIR)/drivers/gpu/drm/imx/imxdrm.ko \
+ $(LINUX_DIR)/drivers/gpu/drm/imx/imxdrm.ko@lt6.6 \
+ $(LINUX_DIR)/drivers/gpu/drm/imx/ipuv3/imxdrm.ko@ge6.6 \
$(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)
@@ -428,14 +441,15 @@ $(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 +LINUX_6_1:kmod-drm-display-helper
+ DEPENDS:=+kmod-sound-core kmod-drm-imx kmod-drm-display-helper
KCONFIG:=CONFIG_DRM_IMX_HDMI \
CONFIG_DRM_DW_HDMI_AHB_AUDIO \
CONFIG_DRM_DW_HDMI_I2S_AUDIO
FILES:= \
$(LINUX_DIR)/drivers/gpu/drm/bridge/synopsys/dw-hdmi.ko \
$(LINUX_DIR)/drivers/gpu/drm/bridge/synopsys/dw-hdmi-ahb-audio.ko \
- $(LINUX_DIR)/drivers/gpu/drm/imx/dw_hdmi-imx.ko
+ $(LINUX_DIR)/drivers/gpu/drm/imx/dw_hdmi-imx.ko@lt6.6 \
+ $(LINUX_DIR)/drivers/gpu/drm/imx/ipuv3/dw_hdmi-imx.ko@ge6.6
AUTOLOAD:=$(call AutoLoad,08,dw-hdmi dw-hdmi-ahb-audio.ko dw_hdmi-imx)
endef
@@ -448,7 +462,7 @@ $(eval $(call KernelPackage,drm-imx-hdmi))
define KernelPackage/drm-imx-ldb
SUBMENU:=$(VIDEO_MENU)
TITLE:=Freescale i.MX LVDS DRM support
- DEPENDS:=@(TARGET_imx&&!TARGET_imx_cortexa53) +kmod-backlight kmod-drm-imx
+ DEPENDS:=@(TARGET_imx&&TARGET_imx_cortexa9) +kmod-backlight kmod-drm-imx
KCONFIG:=CONFIG_DRM_IMX_LDB \
CONFIG_DRM_PANEL_SIMPLE \
CONFIG_DRM_PANEL=y \
@@ -459,7 +473,8 @@ define KernelPackage/drm-imx-ldb
CONFIG_DRM_PANEL_LVDS=n \
CONFIG_DRM_PANEL_S6E8AA0=n \
CONFIG_DRM_PANEL_SITRONIX_ST7789V=n
- FILES:=$(LINUX_DIR)/drivers/gpu/drm/imx/imx-ldb.ko \
+ FILES:=$(LINUX_DIR)/drivers/gpu/drm/imx/imx-ldb.ko@lt6.6 \
+ $(LINUX_DIR)/drivers/gpu/drm/imx/ipuv3/imx-ldb.ko@ge6.6 \
$(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)
@@ -1161,28 +1176,44 @@ endef
$(eval $(call KernelPackage,video-mem2mem))
-define KernelPackage/video-dma
+define KernelPackage/video-dma-contig
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)
+ KCONFIG:=CONFIG_VIDEOBUF2_DMA_CONTIG
+ FILES:=$(LINUX_DIR)/drivers/media/common/videobuf2/videobuf2-dma-contig.ko
+ AUTOLOAD:=$(call AutoLoad,66,videobuf2-dma-contig)
+ $(call AddDepends/video)
+endef
+
+define KernelPackage/video-dma-contig/description
+ Video DMA support Contig
+endef
+
+
+$(eval $(call KernelPackage,video-dma-contig))
+
+define KernelPackage/video-dma-sg
+ SUBMENU:=$(VIDEO_MENU)
+ TITLE:=Video DMA support
+ HIDDEN:=1
+ DEPENDS:=+kmod-video-videobuf2
+ KCONFIG:=CONFIG_VIDEOBUF2_DMA_SG
+ FILES:=$(LINUX_DIR)/drivers/media/common/videobuf2/videobuf2-dma-sg.ko
+ AUTOLOAD:=$(call AutoLoad,66,videobuf2-dma-sg)
$(call AddDepends/video)
endef
-define KernelPackage/video-dma/description
- Video DMA support
+define KernelPackage/video-dma-sg/description
+ Video DMA support SG
endef
-$(eval $(call KernelPackage,video-dma))
+$(eval $(call KernelPackage,video-dma-sg))
define KernelPackage/video-coda
TITLE:=i.MX VPU support
- DEPENDS:=@(TARGET_imx&&TARGET_imx_cortexa9) +kmod-video-mem2mem +kmod-video-dma
+ DEPENDS:=@(TARGET_imx&&TARGET_imx_cortexa9) +kmod-video-mem2mem +kmod-video-dma-contig
KCONFIG:= \
CONFIG_VIDEO_CODA \
CONFIG_VIDEO_IMX_VDOA
@@ -1204,7 +1235,7 @@ $(eval $(call KernelPackage,video-coda))
define KernelPackage/video-pxp
TITLE:=i.MX PXP support
- DEPENDS:=@TARGET_imx +kmod-video-mem2mem +kmod-video-dma
+ DEPENDS:=@TARGET_imx +kmod-video-mem2mem +kmod-video-dma-contig
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
@@ -1222,7 +1253,7 @@ $(eval $(call KernelPackage,video-pxp))
define KernelPackage/video-tw686x
TITLE:=TW686x support
- DEPENDS:=@PCIE_SUPPORT +kmod-video-dma +kmod-sound-core
+ DEPENDS:=@PCIE_SUPPORT +kmod-video-dma-contig +kmod-video-dma-sg +kmod-sound-core
KCONFIG:= CONFIG_VIDEO_TW686X
FILES:= $(LINUX_DIR)/drivers/media/pci/tw686x/tw686x.ko
AUTOLOAD:=$(call AutoProbe,tw686x)