arch/arm/mach-omap1/board-ams-delta.c:689:9: sparse: sparse: incorrect type in argument 1 (different base types)

From: kernel test robot
Date: Sat Jul 03 2021 - 00:16:13 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: d6b63b5b7d7f363c6a54421533791e9849adf2e0
commit: e5fc436f06eef54ef512ea55a9db8eb9f2e76959 sparse: use static inline for __chk_{user,io}_ptr()
date: 10 months ago
config: arm-randconfig-s032-20210702 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.3-341-g8af24329-dirty
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e5fc436f06eef54ef512ea55a9db8eb9f2e76959
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout e5fc436f06eef54ef512ea55a9db8eb9f2e76959
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=arm

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>


sparse warnings: (new ones prefixed by >>)
>> arch/arm/mach-omap1/board-ams-delta.c:689:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/arm/mach-omap1/board-ams-delta.c:689:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/arm/mach-omap1/board-ams-delta.c:689:9: sparse: got unsigned int

vim +689 arch/arm/mach-omap1/board-ams-delta.c

97abda99a56949 Janusz Krzysztofik 2018-06-22 657
1464d031c45da4 Janusz Krzysztofik 2018-09-10 658 /*
1464d031c45da4 Janusz Krzysztofik 2018-09-10 659 * Initialize latch2 pins with values which are safe for dependent on-board
1464d031c45da4 Janusz Krzysztofik 2018-09-10 660 * devices or useful for their successull initialization even before GPIO
1464d031c45da4 Janusz Krzysztofik 2018-09-10 661 * driver takes control over the latch pins:
1464d031c45da4 Janusz Krzysztofik 2018-09-10 662 * - LATCH2_PIN_LCD_VBLEN = 0
1464d031c45da4 Janusz Krzysztofik 2018-09-10 663 * - LATCH2_PIN_LCD_NDISP = 0 Keep LCD device powered off before its
1464d031c45da4 Janusz Krzysztofik 2018-09-10 664 * driver takes control over it.
1464d031c45da4 Janusz Krzysztofik 2018-09-10 665 * - LATCH2_PIN_NAND_NCE = 0
1464d031c45da4 Janusz Krzysztofik 2018-09-10 666 * - LATCH2_PIN_NAND_NWP = 0 Keep NAND device down and write-
1464d031c45da4 Janusz Krzysztofik 2018-09-10 667 * protected before its driver takes
1464d031c45da4 Janusz Krzysztofik 2018-09-10 668 * control over it.
1464d031c45da4 Janusz Krzysztofik 2018-09-10 669 * - LATCH2_PIN_KEYBRD_PWR = 0 Keep keyboard powered off before serio
1464d031c45da4 Janusz Krzysztofik 2018-09-10 670 * driver takes control over it.
1464d031c45da4 Janusz Krzysztofik 2018-09-10 671 * - LATCH2_PIN_KEYBRD_DATAOUT = 0 Keep low to avoid corruption of first
1464d031c45da4 Janusz Krzysztofik 2018-09-10 672 * byte of data received from attached
1464d031c45da4 Janusz Krzysztofik 2018-09-10 673 * keyboard when serio device is probed;
1464d031c45da4 Janusz Krzysztofik 2018-09-10 674 * the pin is also hogged low by the latch2
1464d031c45da4 Janusz Krzysztofik 2018-09-10 675 * GPIO driver as soon as it is ready.
1464d031c45da4 Janusz Krzysztofik 2018-09-10 676 * - LATCH2_PIN_MODEM_NRESET = 1 Enable voice MODEM device, allowing for
1464d031c45da4 Janusz Krzysztofik 2018-09-10 677 * its successful probe even before a
1464d031c45da4 Janusz Krzysztofik 2018-09-10 678 * regulator it depends on, which in turn
1464d031c45da4 Janusz Krzysztofik 2018-09-10 679 * takes control over the pin, is set up.
1464d031c45da4 Janusz Krzysztofik 2018-09-10 680 * - LATCH2_PIN_MODEM_CODEC = 1 Attach voice MODEM CODEC data port
1464d031c45da4 Janusz Krzysztofik 2018-09-10 681 * to the MODEM so the CODEC is under
1464d031c45da4 Janusz Krzysztofik 2018-09-10 682 * control even if audio driver doesn't
1464d031c45da4 Janusz Krzysztofik 2018-09-10 683 * take it over.
1464d031c45da4 Janusz Krzysztofik 2018-09-10 684 */
1464d031c45da4 Janusz Krzysztofik 2018-09-10 685 static void __init ams_delta_latch2_init(void)
1464d031c45da4 Janusz Krzysztofik 2018-09-10 686 {
1464d031c45da4 Janusz Krzysztofik 2018-09-10 687 u16 latch2 = 1 << LATCH2_PIN_MODEM_NRESET | 1 << LATCH2_PIN_MODEM_CODEC;
1464d031c45da4 Janusz Krzysztofik 2018-09-10 688
1464d031c45da4 Janusz Krzysztofik 2018-09-10 @689 __raw_writew(latch2, LATCH2_VIRT);
97abda99a56949 Janusz Krzysztofik 2018-06-22 690 }
97abda99a56949 Janusz Krzysztofik 2018-06-22 691

:::::: The code at line 689 was first introduced by commit
:::::: 1464d031c45da44da6988623c0978b63241df40b ARM: OMAP1: ams-delta: initialize latch2 pins to safe values

:::::: TO: Janusz Krzysztofik <jmkrzyszt@xxxxxxxxx>
:::::: CC: Tony Lindgren <tony@xxxxxxxxxxx>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip