Hi,
I have been trying to jack working on various single board computers, like the anbernic rg35xx series, r36s, raspi zero 2w, etc. Since some of these devices are not completely open source (device trees, firmware, modified kernels, etc), it is difficult to get jack working on them (rt patch, support for POSIX IPC, usb audio modules, etc).
Considering that a lot of jack configuration is actually to do with the kernel, I was wondering if the right place for jack is actually a loadable kernel module, since that way we can bypass the need for rt permissions, memlock, IPC, etc. In other words, it could be a module just like alsa, just plug and play. Wrt the implementation, I guess the challenges would be to allocate memory to keep track of connections and a buffer to service audio/midi stream for each connection? I was thinking of just starting with the jack repo and at least implement a kernel module that responds to something like jack_connect, jack_lsp, etc., but doesnt actually make any audio connections as a starting point.
Does this sound reasonable? Or are there any fundamental constraints that jack has to be in user space?