Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ASoC: codecs: tas2764: Fix Wvoid-pointer-to-enum-cast warning

'devid' is an enum, thus cast of pointer on 64-bit compile test with
clang and W=1 causes:

tas2764.c:879:19: error: cast to smaller integer type 'enum tas2764_devid' from 'const void *' [-Werror,-Wvoid-pointer-to-enum-cast]

One of the discussions in 2023 on LKML suggested warning is not suitable
for kernel. Nothing changed in this regard for more than a year, so
assume the warning will stay and we want to have warnings-free builds.

Link: https://lore.kernel.org/all/20230814160457.GA2836@dev-arch.thelio-3990X/
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://patch.msgid.link/20250427105105.18164-4-krzysztof.kozlowski@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org>

authored by

Krzysztof Kozlowski and committed by
Mark Brown
c23c7c60 9cd54a6b

+1 -1
+1 -1
sound/soc/codecs/tas2764.c
··· 876 876 if (!tas2764) 877 877 return -ENOMEM; 878 878 879 - tas2764->devid = (enum tas2764_devid)of_device_get_match_data(&client->dev); 879 + tas2764->devid = (kernel_ulong_t)of_device_get_match_data(&client->dev); 880 880 881 881 tas2764->dev = &client->dev; 882 882 tas2764->irq = client->irq;