Re: s3c6400_defconfig: arch/arm/mach-s3c/mach-crag6410.c:183:12: error: use of undeclared identifier 'KEY_VOLUMEUP'

From: Arnd Bergmann
Date: Thu Oct 27 2022 - 05:09:38 EST


On Thu, Oct 27, 2022, at 09:29, Naresh Kamboju wrote:
> Following build warnings / errors noticed while building arm s3c6400_defconfig
> with clang tool chain.

Do you mean this is a clang specific issue?

> arch/arm/mach-s3c/mach-crag6410.c:183:12: error: use of undeclared
> identifier 'KEY_VOLUMEUP'
> KEY(0, 0, KEY_VOLUMEUP),
> ^

I can see that KEY_VOLUMEUP is defined in <linux/input-event-codes.h>,
which is included by a couple of files in the kernel, but not
from this specific board file, so I don't see how it works with gcc.

Isn't this just a regression from commit 1810e248b2dc ("Input:
matrix_keypad - replace header inclusions by forward declarations")?

If that is the problem, I would expect to see the same thing in
all of these files, regardless of the compiler:

$ git grep -wl '\(linux/input/matrix_keypad.h\|linux/mfd/twl.h\|linux/platform_data/keyboard-spear.h\|linux/platform_data/keypad-nomadik-ske.h\|linux/platform_data/keypad-omap.h\|linux/platform_data/keypad-pxa27x.h\|linux/input/samsung-keypad.h\|\"keypad.h\"\)' | xargs grep -l \\\<KEY_ | xargs grep -L '\(linux/input-events-code.h\|linux/input.h\)' | grep '\.c$'

arch/arm/mach-pxa/corgi.c
arch/arm/mach-pxa/littleton.c
arch/arm/mach-pxa/spitz.c
arch/arm/mach-pxa/tavorevb.c
arch/arm/mach-pxa/z2.c
arch/arm/mach-pxa/zylonite.c
arch/arm/mach-s3c/mach-crag6410.c

Arnd