lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Wed, 6 Dec 2017 00:49:36 +0000
From:   Anthony Kim <Anthony.Kim@...eep.com>
To:     'kbuild test robot' <fengguang.wu@...el.com>
CC:     "'kbuild-all@...org'" <kbuild-all@...org>,
        "'linux-kernel@...r.kernel.org'" <linux-kernel@...r.kernel.org>,
        "'Dmitry Torokhov'" <dmitry.torokhov@...il.com>
Subject: RE: drivers/input/touchscreen/hideep.c:670:3: error: implicit
 declaration of function 'gpiod_set_value_cansleep'; did you mean
 'gpio_set_value_cansleep'?

Sorry, for my late response.
There is missing some header file about gpio. So I will send patch as soon as.
Thank you your advice.

Anthony.

-----Original Message-----
From: kbuild test robot [mailto:fengguang.wu@...el.com] 
Sent: Tuesday, December 5, 2017 9:23 PM
To: Anthony Kim <Anthony.Kim@...eep.com>
Cc: kbuild-all@...org; linux-kernel@...r.kernel.org; Dmitry Torokhov <dmitry.torokhov@...il.com>
Subject: drivers/input/touchscreen/hideep.c:670:3: error: implicit declaration of function 'gpiod_set_value_cansleep'; did you mean 'gpio_set_value_cansleep'?

Hi Anthony,

FYI, the error/warning still remains.

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   fd6d2e506ce6f850d45342a15c896591291b77b5
commit: 842ff286166e8512450573f6b6eb5e04e626a07f Input: add support for HiDeep touchscreen
date:   4 weeks ago
config: x86_64-randconfig-b0-12051921 (attached as .config)
compiler: gcc-7 (Debian 7.2.0-12) 7.2.1 20171025
reproduce:
        git checkout 842ff286166e8512450573f6b6eb5e04e626a07f
        # save the attached .config to linux build tree
        make ARCH=x86_64 

All errors (new ones prefixed by >>):

   drivers/input/touchscreen/hideep.c: In function 'hideep_power_on':
>> drivers/input/touchscreen/hideep.c:670:3: error: implicit declaration of function 'gpiod_set_value_cansleep'; did you mean 'gpio_set_value_cansleep'? [-Werror=implicit-function-declaration]
      gpiod_set_value_cansleep(ts->reset_gpio, 0);
      ^~~~~~~~~~~~~~~~~~~~~~~~
      gpio_set_value_cansleep
   drivers/input/touchscreen/hideep.c: In function 'hideep_power_off':
>> drivers/input/touchscreen/hideep.c:688:3: error: implicit declaration of function 'gpiod_set_value'; did you mean 'gpio_set_value'? [-Werror=implicit-function-declaration]
      gpiod_set_value(ts->reset_gpio, 1);
      ^~~~~~~~~~~~~~~
      gpio_set_value
   drivers/input/touchscreen/hideep.c: In function 'hideep_probe':
>> drivers/input/touchscreen/hideep.c:1039:19: error: implicit declaration of function 'devm_gpiod_get_optional'; did you mean 'devm_regulator_get_optional'? [-Werror=implicit-function-declaration]
     ts->reset_gpio = devm_gpiod_get_optional(&client->dev,
                      ^~~~~~~~~~~~~~~~~~~~~~~
                      devm_regulator_get_optional
>> drivers/input/touchscreen/hideep.c:1040:17: error: 'GPIOD_OUT_HIGH' undeclared (first use in this function); did you mean 'GPIOF_INIT_HIGH'?
           "reset", GPIOD_OUT_HIGH);
                    ^~~~~~~~~~~~~~
                    GPIOF_INIT_HIGH
   drivers/input/touchscreen/hideep.c:1040:17: note: each undeclared identifier is reported only once for each function it appears in
   In file included from include/uapi/linux/stddef.h:2:0,
                    from include/linux/stddef.h:5,
                    from include/uapi/linux/posix_types.h:5,
                    from include/uapi/linux/types.h:14,
                    from include/linux/types.h:6,
                    from include/linux/list.h:5,
                    from include/linux/module.h:9,
                    from drivers/input/touchscreen/hideep.c:9:
   drivers/input/touchscreen/hideep.c: At top level:
   include/linux/compiler.h:163:4: warning: '______f' is static but declared in inline function 'strcpy' which is not static
       ______f = {     \
       ^
   include/linux/compiler.h:155:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
   include/linux/string.h:422:2: note: in expansion of macro 'if'
     if (p_size == (size_t)-1 && q_size == (size_t)-1)
     ^~
   include/linux/compiler.h:163:4: warning: '______f' is static but declared in inline function 'kmemdup' which is not static
       ______f = {     \
       ^
   include/linux/compiler.h:155:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
   include/linux/string.h:412:2: note: in expansion of macro 'if'
     if (p_size < size)
     ^~
   include/linux/compiler.h:163:4: warning: '______f' is static but declared in inline function 'kmemdup' which is not static
       ______f = {     \
       ^
   include/linux/compiler.h:155:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
   include/linux/string.h:410:2: note: in expansion of macro 'if'
     if (__builtin_constant_p(size) && p_size < size)
     ^~
   include/linux/compiler.h:163:4: warning: '______f' is static but declared in inline function 'memchr_inv' which is not static
       ______f = {     \
       ^
   include/linux/compiler.h:155:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
   include/linux/string.h:401:2: note: in expansion of macro 'if'
     if (p_size < size)
     ^~
   include/linux/compiler.h:163:4: warning: '______f' is static but declared in inline function 'memchr_inv' which is not static
       ______f = {     \
       ^
   include/linux/compiler.h:155:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
   include/linux/string.h:399:2: note: in expansion of macro 'if'
     if (__builtin_constant_p(size) && p_size < size)
     ^~
   include/linux/compiler.h:163:4: warning: '______f' is static but declared in inline function 'memchr' which is not static
       ______f = {     \
       ^
   include/linux/compiler.h:155:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
   include/linux/string.h:390:2: note: in expansion of macro 'if'
     if (p_size < size)
     ^~
   include/linux/compiler.h:163:4: warning: '______f' is static but declared in inline function 'memchr' which is not static
       ______f = {     \
       ^
   include/linux/compiler.h:155:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
   include/linux/string.h:388:2: note: in expansion of macro 'if'
     if (__builtin_constant_p(size) && p_size < size)
     ^~
   include/linux/compiler.h:163:4: warning: '______f' is static but declared in inline function 'memcmp' which is not static
       ______f = {     \
       ^
   include/linux/compiler.h:155:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
   include/linux/string.h:380:2: note: in expansion of macro 'if'
     if (p_size < size || q_size < size)
     ^~
   include/linux/compiler.h:163:4: warning: '______f' is static but declared in inline function 'memcmp' which is not static
       ______f = {     \
       ^
   include/linux/compiler.h:155:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
   include/linux/string.h:377:3: note: in expansion of macro 'if'
      if (q_size < size)
      ^~
   include/linux/compiler.h:163:4: warning: '______f' is static but declared in inline function 'memcmp' which is not static
       ______f = {     \
       ^
   include/linux/compiler.h:155:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~

vim +670 drivers/input/touchscreen/hideep.c

   649	
   650	static int hideep_power_on(struct hideep_ts *ts)
   651	{
   652		int error = 0;
   653	
   654		error = regulator_enable(ts->vcc_vdd);
   655		if (error)
   656			dev_err(&ts->client->dev,
   657				"failed to enable 'vdd' regulator: %d", error);
   658	
   659		usleep_range(999, 1000);
   660	
   661		error = regulator_enable(ts->vcc_vid);
   662		if (error)
   663			dev_err(&ts->client->dev,
   664				"failed to enable 'vcc_vid' regulator: %d",
   665				error);
   666	
   667		msleep(30);
   668	
   669		if (ts->reset_gpio) {
 > 670			gpiod_set_value_cansleep(ts->reset_gpio, 0);
   671		} else {
   672			error = regmap_write(ts->reg, HIDEEP_RESET_CMD, 0x01);
   673			if (error)
   674				dev_err(&ts->client->dev,
   675					"failed to send 'reset' command: %d\n", error);
   676		}
   677	
   678		msleep(50);
   679	
   680		return error;
   681	}
   682	
   683	static void hideep_power_off(void *data)
   684	{
   685		struct hideep_ts *ts = data;
   686	
   687		if (ts->reset_gpio)
 > 688			gpiod_set_value(ts->reset_gpio, 1);
   689	
   690		regulator_disable(ts->vcc_vid);
   691		regulator_disable(ts->vcc_vdd);
   692	}
   693	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Powered by blists - more mailing lists