summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFlorian Bomers2025-11-10 17:39:34 +0000
committerChristian Marangi2025-11-11 11:13:40 +0000
commit4daff067d7c2197f9fd7b21577ff7ddcb927063b (patch)
treeb08668060d117de50a69fa8fb7986f5df48381aa
parent6f99711b1b2cfc541e9e545faf0d2a8f9a24c75f (diff)
downloadopenwrt-4daff067d7c2197f9fd7b21577ff7ddcb927063b.tar.gz
kernel: sound: add support for MIDI 2.0 and UMP
New Packages / build options: * sound-midi2: enable MIDI 2.0 / UMP in ALSA MIDI * sound-midi2-seq: enable MIDI 2.0 / UMP in ALSA sequencer * sound-midi2-usb: enable USB MIDI 2.0 support * sound-dynamic-minors: allow more than 8 MIDI devices More info about ALSA MIDI 2.0: https://docs.kernel.org/6.12/sound/designs/midi-2.0.html More info about MIDI 2.0: https://midi.org/midi-2-0 Signed-off-by: Florian Bomers <github@bome.com> Link: https://github.com/openwrt/openwrt/pull/20727 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
-rw-r--r--package/kernel/linux/modules/sound.mk52
-rw-r--r--package/kernel/linux/modules/usb.mk2
2 files changed, 53 insertions, 1 deletions
diff --git a/package/kernel/linux/modules/sound.mk b/package/kernel/linux/modules/sound.mk
index af5aadd360..5645d31878 100644
--- a/package/kernel/linux/modules/sound.mk
+++ b/package/kernel/linux/modules/sound.mk
@@ -604,3 +604,55 @@ define KernelPackage/sound-hda-intel/description
endef
$(eval $(call KernelPackage,sound-hda-intel))
+
+
+define KernelPackage/sound-midi2
+ TITLE:=MIDI 2.0 and UMP Support
+ KCONFIG:= \
+ CONFIG_SND_UMP=y \
+ CONFIG_SND_UMP_LEGACY_RAWMIDI=y
+ FILES:=$(LINUX_DIR)/sound/core/snd-ump.ko
+ AUTOLOAD:=$(call AutoProbe,snd-ump)
+ $(call AddDepends/sound)
+endef
+
+define KernelPackage/sound-midi2/description
+ Kernel module for MIDI 2.0: sequencer, rawmidi, and USB-MIDI 2.0 support.
+endef
+
+$(eval $(call KernelPackage,sound-midi2))
+
+define KernelPackage/sound-midi2-seq
+ TITLE:=MIDI 2.0 and UMP Support for Sequencer
+ KCONFIG:= \
+ CONFIG_SND_SEQ_UMP=y \
+ CONFIG_SND_SEQ_UMP_CLIENT=y
+ DEPENDS:=+kmod-sound-midi2 +kmod-sound-seq
+ $(call AddDepends/sound)
+endef
+
+$(eval $(call KernelPackage,sound-midi2-seq))
+
+
+define KernelPackage/sound-midi2-usb
+ TITLE:=MIDI 2.0 and UMP Support for USB-MIDI
+ KCONFIG:=CONFIG_SND_USB_AUDIO_MIDI_V2=y
+ DEPENDS:=+kmod-sound-midi2 +kmod-usb-audio
+ $(call AddDepends/sound)
+endef
+
+$(eval $(call KernelPackage,sound-midi2-usb))
+
+
+define KernelPackage/sound-dynamic-minors
+ TITLE:=Support more than 8 audio and MIDI devices
+ KCONFIG:=CONFIG_SND_DYNAMIC_MINORS=y
+ $(call AddDepends/sound)
+endef
+
+define KernelPackage/sound-dynamic-minors/description
+ Kernel module for dynamic minor device support.
+ Required for using more than 8 audio and MIDI devices.
+endef
+
+$(eval $(call KernelPackage,sound-dynamic-minors))
diff --git a/package/kernel/linux/modules/usb.mk b/package/kernel/linux/modules/usb.mk
index 121e3aed51..5c67669139 100644
--- a/package/kernel/linux/modules/usb.mk
+++ b/package/kernel/linux/modules/usb.mk
@@ -616,7 +616,7 @@ define KernelPackage/usb-audio
CONFIG_SND_USB_AUDIO
$(call AddDepends/usb)
$(call AddDepends/sound)
- DEPENDS+=+kmod-media-controller
+ DEPENDS+=+kmod-media-controller +PACKAGE_kmod-sound-midi2-usb:kmod-sound-midi2
FILES:= \
$(LINUX_DIR)/sound/usb/snd-usbmidi-lib.ko \
$(LINUX_DIR)/sound/usb/snd-usb-audio.ko