Open martroben opened 1 year ago
I've the same output and it also doesn't work for me anymore. I'm also on Ubuntu 22.04.
This appears to be the new error caused by the removal of a pre-existing variable (force_status_change) in the original kernel file patch_cs8409.h at base linux kernel version 5.19. Ubuntu as usual has backported this change to its kernel version 5.15 subversion 47 (maybe 1 or 2 earlier).
Doesnt seem to be a good solution to these sort of updates without having multiple patch files - which have to depend on differing kernel versions depending on distribution.
instructions to fix:
you need to look at patch_patch_cs8409.h.diff 1st run the install script which will fail because the patch of patch_cs8409.h with patch_patch_cs8409.h.diff fails. hunk3 will fail because of changes in patch_cs8409.h ie removal of original kernel variable force_status_change. look at hunk3 (the patch part starting @@ -305,6 +328,9 @@ struct sub_codec { in patch_patch_cs8409.h.diff) manually edit the file patch_cs8409.h and add the lines:
unsigned int linein_jack_in:1;
after the line unsigned int mic_jack_in:1; for file patch_cs8409.h
do not rerun the install script manually run the following commands in the build/hda-.... directory (where ... is part of kernel version) make (or sudo make if permission issues) then if ok sudo make install
Thanks for the quick answer!!!
The following lines already are in the file patch_cs8409.h after the line unsigned int mic_jack_in:1;
unsigned int linein_jack_in:1;
...so no need to add them. Error still there...
I need to see the specific error messages - if those lines are in then you cant get the errors as listed by martroben.
With the pull request of BenChaimberg included, everyting works as expected. Thank you so much :)
I can also confirm, that after applying the pull request by @BenChaimberg, it starts working again.
git clone https://github.com/davidjo/snd_hda_macbookpro
cd snd_hda_macbookpro/
curl https://patch-diff.githubusercontent.com/raw/davidjo/snd_hda_macbookpro/pull/64.diff | git apply
sudo ./install.cirrus.driver.sh
Thank you! This works like a charm!
confirmed this worked on clean (updated) installation of Fedora 36 after installing the dependencies in the main readme and a missing package patch
there was a signing error during patch creation, however that doesn't seem to affect output using below
:-------------------:: OS: Fedora
:-----------/shhOHbmp---:\ Kernel: x86_64 Linux 5.19.9-200.fc36.x86_64
/-----------omMMMNNNMMD ---: Uptime: 7m
:-----------sMMMMNMNMP. ---: Packages: 1815
:-----------:MMMdP------- ---\ Shell: bash 5.1.16
,------------:MMMd-------- ---: Resolution: 1920x1200
:------------:MMMd------- .---: DE: GNOME 42.3
:---- oNMMMMMMMMMNho .----: WM: Mutter
:-- .+shhhMMMmhhy++ .------/ WM Theme: Adwaita
:- -------:MMMd--------------: GTK Theme: Adwaita [GTK2/3]
:- --------/MMMd-------------; Icon Theme: Adwaita
:- ------/hMMMy------------: Font: Cantarell 11
:-- :dMNdhhdNMMNo------------; Disk: 9.1G / 466G (2%)
:---:sdNMMMMNds:------------: CPU: Intel Core i5-7360U @ 4x 3.6GHz [62.0°C]
:------:://:-------------:: GPU: Mesa Intel(R) Iris(R) Plus Graphics 640 (Kaby Lake GT3e) (KBL GT3)
:---------------------:// RAM: 1969MiB / 7810MiB
I can confirm that after testing. Patch work great with Ubuntu 22.04 in all kernel until 5.19, Linux Mint, Pop_os!, Also work perfect with Arch Linux and Garuda Linux distro with kernel 5.19. I have failed to work with MX and antix Linux in kernel 5.10 until kernel ahs5.18
With Kernel 6.1 after try to install patch
git clone https://github.com/davidjo/snd_hda_macbookpro cd snd_hda_macbookpro/ curl https://patch-diff.githubusercontent.com/raw/davidjo/snd_hda_macbookpro/pull/64.diff | git apply sudo ./install.cirrus.driver.sh reboot
i take this error :
error: patch failed: patch_patch_cs8409.h.diff:420 error: patch_patch_cs8409.h.diff: patch does not apply
With Kernel 6.1 after try to install patch
git clone https://github.com/davidjo/snd_hda_macbookpro cd snd_hda_macbookpro/ curl https://patch-diff.githubusercontent.com/raw/davidjo/snd_hda_macbookpro/pull/64.diff | git apply sudo ./install.cirrus.driver.sh reboot
i take this error :
error: patch failed: patch_patch_cs8409.h.diff:420 error: patch_patch_cs8409.h.diff: patch does not apply
I have this exact issue on kernel 6.2.6. Help much appreciated.
You may not need the 64.diff patch now - I added a fixup for this I think in January. Clear out the build directory and just run sudo ./install.cirrus.driver.sh
This worked for me thank you very much! I do want to ask though, as I'm not as familiar with linux as I'd like to be: this audio driver is installed as a patch onto the kernel, right? So if apt updates my kernel, will it also automatically apply the patch to the new one or will I have to reinstall the driver?
The linux kernel has kernel modules for adding functionality, its not really a patch. This repo creates a modified kernel module (ie it is an updated version of an existing kernel module) which is added to the kernel modules (usually stored in /lib/modules/kernel version dependent names) for a specific kernel version. You have to rebuild the module (ie rerun sudo ./install.cirrus.driver.sh) every time a new kernel is installed - as it will have a different kernel version number so will go into a different /lib/modules directory. (There are ways to do an auto update when a new kernel is loaded but there are still issues with kernel source updates causing the issues eg which were fixed by the 64.diff patch so dont think this modules kernel source is stable enough to use such techniques).
The linux kernel has kernel modules for adding functionality, its not really a patch. This repo creates a modified kernel module (ie it is an updated version of an existing kernel module) which is added to the kernel modules (usually stored in /lib/modules/kernel version dependent names) for a specific kernel version. You have to rebuild the module (ie rerun sudo ./install.cirrus.driver.sh) every time a new kernel is installed - as it will have a different kernel version number so will go into a different /lib/modules directory. (There are ways to do an auto update when a new kernel is loaded but there are still issues with kernel source updates causing the issues eg which were fixed by the 64.diff patch so dont think this modules kernel source is stable enough to use such techniques).
Thanks Davidjo for you good job and for your info This is an update message. Today and after update my Linux to Kernel 6.2.17 with Arch Garuda distro your driver working perfect with out apply any patch. Thanks for your help
I've been re-installing the driver periodically, since somehow my system always drops back to "dummy output" after apt upgrades. It has always worked well. Now I got an unexpected "dummy output" just from connect headphones. (The same headphones have always worked fine before.)
I rebooted, did a fresh clone of the repository and attempted to re-install the driver. Alas, it doesn't seem to work anymore. Here's the output:
After running the script and rebooting, the device audio is still at "dummy output" and there is no sound. I also tried re-installing the linux-headers, but it's already at the latest version.
Here's the system info:
I'm not sure if it's an issue with the script or with my system. Would you mind giving me some pointers on how to investigate and solve the problem?