Is this fix available on Ubuntu 22.04? I'm stuck with this version for development purposes. Mine seems to fail on during the build process as well...
Running on a HP Envy Laptop 16 h1023dx
Log below:
calvinjs@calvinjs-HP-ENVY-Laptop-16-h1xxx:~/git/hp-15-ew0xxx-snd-fix$ ccat /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/make.log
DKMS make.log for snd-hda-scodec-cs35l41-0.1 for kernel 6.5.0-21-generic (x86_64)
Thu Feb 29 06:44:53 PM MST 2024
make: Entering directory '/usr/src/linux-headers-6.5.0-21-generic'
warning: the compiler differs from the one used to build the kernel
The kernel was built by: x86_64-linux-gnu-gcc-12 (Ubuntu 12.3.0-1ubuntu1~22.04) 12.3.0
You are using: gcc-12 (Ubuntu 12.3.0-1ubuntu1~22.04) 12.3.0
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/hda_bind.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/hda_codec.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/hda_jack.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/hda_auto_parser.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/hda_sysfs.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/hda_controller.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/hda_proc.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/hda_hwdep.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/hda_beep.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/hda_generic.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/patch_realtek.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/patch_cmedia.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/patch_analog.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/patch_sigmatel.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/patch_si3054.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/patch_cirrus.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/patch_cs8409.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/patch_cs8409-tables.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/patch_ca0110.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/patch_ca0132.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/patch_conexant.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/patch_via.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/patch_hdmi.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/hda_eld.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda_i2c.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda_spi.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/hda_cs_dsp_ctl.o
CC [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/hda_intel.o
LD [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/snd-hda-codec-cmedia.o
LD [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/snd-hda-codec-analog.o
LD [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/snd-hda-codec-si3054.o
LD [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/snd-hda-codec-cirrus.o
LD [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/snd-hda-codec-cs8409.o
LD [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/snd-hda-codec-ca0110.o
LD [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/snd-hda-scodec-cs35l41-i2c.o
LD [M] /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/snd-hda-scodec-cs35l41-spi.o
/var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda.c: In function ‘cs35l41_hda_playback_hook’:
/var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda.c:517:45: error: passing argument 1 of ‘cs35l41_global_enable’ from incompatible pointer type [-Werror=incompatible-pointer-types]
517 | ret = cs35l41_global_enable(reg, cs35l41->hw_cfg.bst_type, 1, NULL);
| ^~~
| |
| struct regmap *
In file included from /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda.h:17,
from /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda.c:20:
./include/sound/cs35l41.h:908:42: note: expected ‘struct device *’ but argument is of type ‘struct regmap *’
908 | int cs35l41_global_enable(struct device *dev, struct regmap *regmap, enum cs35l41_boost_type b_type,
| ~~~~~~~~~~~~~~~^~~
/var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda.c:517:65: error: incompatible type for argument 2 of ‘cs35l41_global_enable’
517 | ret = cs35l41_global_enable(reg, cs35l41->hw_cfg.bst_type, 1, NULL);
| ~~~~~~~~~~~~~~~^~~~~~~~~
| |
| enum cs35l41_boost_type
./include/sound/cs35l41.h:908:62: note: expected ‘struct regmap *’ but argument is of type ‘enum cs35l41_boost_type’
908 | int cs35l41_global_enable(struct device *dev, struct regmap *regmap, enum cs35l41_boost_type b_type,
| ~~~~~~~~~~~~~~~^~~~~~
In file included from ./include/uapi/linux/posix_types.h:5,
from ./include/uapi/linux/types.h:14,
from ./include/linux/types.h:6,
from ./include/linux/kasan-checks.h:5,
from ./include/asm-generic/rwonce.h:26,
from ./arch/x86/include/generated/asm/rwonce.h:1,
from ./include/linux/compiler.h:246,
from ./include/linux/build_bug.h:5,
from ./include/linux/bits.h:21,
from ./include/linux/ioport.h:13,
from ./include/linux/acpi.h:12,
from /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda.c:9:
./include/linux/stddef.h:8:14: warning: passing argument 4 of ‘cs35l41_global_enable’ makes integer from pointer without a cast [-Wint-conversion]
8 | #define NULL ((void *)0)
| ^~~~~~~~~~~
| |
| void *
/var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda.c:517:79: note: in expansion of macro ‘NULL’
517 | ret = cs35l41_global_enable(reg, cs35l41->hw_cfg.bst_type, 1, NULL);
| ^~~~
./include/sound/cs35l41.h:909:31: note: expected ‘int’ but argument is of type ‘void *’
909 | int enable, struct completion *pll_lock, bool firmware_running);
| ~~~~^~~~~~
/var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda.c:517:23: error: too few arguments to function ‘cs35l41_global_enable’
517 | ret = cs35l41_global_enable(reg, cs35l41->hw_cfg.bst_type, 1, NULL);
| ^~~~~~~~~~~~~~~~~~~~~
./include/sound/cs35l41.h:908:5: note: declared here
908 | int cs35l41_global_enable(struct device *dev, struct regmap *regmap, enum cs35l41_boost_type b_type,
| ^~~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda.c:523:45: error: passing argument 1 of ‘cs35l41_global_enable’ from incompatible pointer type [-Werror=incompatible-pointer-types]
523 | ret = cs35l41_global_enable(reg, cs35l41->hw_cfg.bst_type, 0, NULL);
| ^~~
| |
| struct regmap *
./include/sound/cs35l41.h:908:42: note: expected ‘struct device *’ but argument is of type ‘struct regmap *’
908 | int cs35l41_global_enable(struct device *dev, struct regmap *regmap, enum cs35l41_boost_type b_type,
| ~~~~~~~~~~~~~~~^~~
/var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda.c:523:65: error: incompatible type for argument 2 of ‘cs35l41_global_enable’
523 | ret = cs35l41_global_enable(reg, cs35l41->hw_cfg.bst_type, 0, NULL);
| ~~~~~~~~~~~~~~~^~~~~~~~~
| |
| enum cs35l41_boost_type
./include/sound/cs35l41.h:908:62: note: expected ‘struct regmap *’ but argument is of type ‘enum cs35l41_boost_type’
908 | int cs35l41_global_enable(struct device *dev, struct regmap *regmap, enum cs35l41_boost_type b_type,
| ~~~~~~~~~~~~~~~^~~~~~
./include/linux/stddef.h:8:14: warning: passing argument 4 of ‘cs35l41_global_enable’ makes integer from pointer without a cast [-Wint-conversion]
8 | #define NULL ((void *)0)
| ^~~~~~~~~~~
| |
| void *
/var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda.c:523:79: note: in expansion of macro ‘NULL’
523 | ret = cs35l41_global_enable(reg, cs35l41->hw_cfg.bst_type, 0, NULL);
| ^~~~
./include/sound/cs35l41.h:909:31: note: expected ‘int’ but argument is of type ‘void *’
909 | int enable, struct completion *pll_lock, bool firmware_running);
| ~~~~^~~~~~
/var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda.c:523:23: error: too few arguments to function ‘cs35l41_global_enable’
523 | ret = cs35l41_global_enable(reg, cs35l41->hw_cfg.bst_type, 0, NULL);
| ^~~~~~~~~~~~~~~~~~~~~
./include/sound/cs35l41.h:908:5: note: declared here
908 | int cs35l41_global_enable(struct device *dev, struct regmap *regmap, enum cs35l41_boost_type b_type,
| ^~~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda.c: In function ‘cs35l41_runtime_suspend’:
/var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda.c:675:46: error: passing argument 1 of ‘cs35l41_global_enable’ from incompatible pointer type [-Werror=incompatible-pointer-types]
675 | cs35l41_global_enable(cs35l41->regmap, cs35l41->hw_cfg.bst_type, 0, NULL);
| ~~~~~~~^~~~~~~~
| |
| struct regmap *
./include/sound/cs35l41.h:908:42: note: expected ‘struct device *’ but argument is of type ‘struct regmap *’
908 | int cs35l41_global_enable(struct device *dev, struct regmap *regmap, enum cs35l41_boost_type b_type,
| ~~~~~~~~~~~~~~~^~~
/var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda.c:675:71: error: incompatible type for argument 2 of ‘cs35l41_global_enable’
675 | cs35l41_global_enable(cs35l41->regmap, cs35l41->hw_cfg.bst_type, 0, NULL);
| ~~~~~~~~~~~~~~~^~~~~~~~~
| |
| enum cs35l41_boost_type
./include/sound/cs35l41.h:908:62: note: expected ‘struct regmap *’ but argument is of type ‘enum cs35l41_boost_type’
908 | int cs35l41_global_enable(struct device *dev, struct regmap *regmap, enum cs35l41_boost_type b_type,
| ~~~~~~~~~~~~~~~^~~~~~
./include/linux/stddef.h:8:14: warning: passing argument 4 of ‘cs35l41_global_enable’ makes integer from pointer without a cast [-Wint-conversion]
8 | #define NULL ((void *)0)
| ^~~~~~~~~~~
| |
| void *
/var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda.c:675:85: note: in expansion of macro ‘NULL’
675 | cs35l41_global_enable(cs35l41->regmap, cs35l41->hw_cfg.bst_type, 0, NULL);
| ^~~~
./include/sound/cs35l41.h:909:31: note: expected ‘int’ but argument is of type ‘void *’
909 | int enable, struct completion *pll_lock, bool firmware_running);
| ~~~~^~~~~~
/var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda.c:675:17: error: too few arguments to function ‘cs35l41_global_enable’
675 | cs35l41_global_enable(cs35l41->regmap, cs35l41->hw_cfg.bst_type, 0, NULL);
| ^~~~~~~~~~~~~~~~~~~~~
./include/sound/cs35l41.h:908:5: note: declared here
908 | int cs35l41_global_enable(struct device *dev, struct regmap *regmap, enum cs35l41_boost_type b_type,
| ^~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:251: /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build/cs35l41_hda.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [/usr/src/linux-headers-6.5.0-21-generic/Makefile:2039: /var/lib/dkms/snd-hda-scodec-cs35l41/0.1/build] Error 2
make: *** [Makefile:234: __sub-make] Error 2
make: Leaving directory '/usr/src/linux-headers-6.5.0-21-generic'
Is this fix available on Ubuntu 22.04? I'm stuck with this version for development purposes. Mine seems to fail on during the build process as well...
Running on a HP Envy Laptop 16 h1023dx
Log below:
Thank you