From: Arnd Bergmann <arnd@xxxxxxxx> The previous bugfix caused a warning on 64-bit builds: drivers/input/touchscreen/ads7846.c:1126:17: warning: cast to smaller integer type 'u32' (aka 'unsigned int') from 'const void *' [-Wvoid-pointer-to-int-cast] Change the cast back to something that works on both 32-bit and 64-bit kernels. Reported-by: kernel test robot <lkp@xxxxxxxxx> Closes: https://lore.kernel.org/oe-kbuild-all/202306100442.jStknDT1-lkp@xxxxxxxxx/ Fixes: 8f7913c04f6a7 ("Input: ads7846 - Fix usage of match data") Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> --- I got the report and applied this locally to fix it quickly drivers/input/touchscreen/ads7846.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/input/touchscreen/ads7846.c b/drivers/input/touchscreen/ads7846.c index fe6fe8acd8a66..faea40dd66d01 100644 --- a/drivers/input/touchscreen/ads7846.c +++ b/drivers/input/touchscreen/ads7846.c @@ -1123,7 +1123,7 @@ static const struct ads7846_platform_data *ads7846_get_props(struct device *dev) if (!pdata) return ERR_PTR(-ENOMEM); - pdata->model = (u32)device_get_match_data(dev); + pdata->model = (uintptr_t)device_get_match_data(dev); device_property_read_u16(dev, "ti,vref-delay-usecs", &pdata->vref_delay_usecs); -- 2.39.2