[PATCH] gpu: anx7808: fix a missing check of return value

kbuild test robot lkp at intel.com
Thu Dec 20 22:17:16 UTC 2018


Hi Kangjie,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on linus/master]
[also build test ERROR on v4.20-rc7 next-20181220]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Kangjie-Lu/gpu-anx7808-fix-a-missing-check-of-return-value/20181221-054313
config: x86_64-randconfig-x013-201850 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

All error/warnings (new ones prefixed by >>):

   drivers/gpu/drm/bridge/analogix-anx78xx.c: In function 'anx78xx_poweron':
>> drivers/gpu/drm/bridge/analogix-anx78xx.c:646:3: error: implicit declaration of function 'anx78xx_poweroff'; did you mean 'anx78xx_poweron'? [-Werror=implicit-function-declaration]
      anx78xx_poweroff(anx78xx);
      ^~~~~~~~~~~~~~~~
      anx78xx_poweron
   drivers/gpu/drm/bridge/analogix-anx78xx.c: At top level:
>> drivers/gpu/drm/bridge/analogix-anx78xx.c:655:13: warning: conflicting types for 'anx78xx_poweroff'
    static void anx78xx_poweroff(struct anx78xx *anx78xx)
                ^~~~~~~~~~~~~~~~
>> drivers/gpu/drm/bridge/analogix-anx78xx.c:655:13: error: static declaration of 'anx78xx_poweroff' follows non-static declaration
   drivers/gpu/drm/bridge/analogix-anx78xx.c:646:3: note: previous implicit declaration of 'anx78xx_poweroff' was here
      anx78xx_poweroff(anx78xx);
      ^~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors

vim +646 drivers/gpu/drm/bridge/analogix-anx78xx.c

   612	
   613	static int anx78xx_poweron(struct anx78xx *anx78xx)
   614	{
   615		struct anx78xx_platform_data *pdata = &anx78xx->pdata;
   616		int err = 0;
   617	
   618		if (WARN_ON(anx78xx->powered))
   619			return err;
   620	
   621		if (pdata->dvdd10) {
   622			err = regulator_enable(pdata->dvdd10);
   623			if (err) {
   624				DRM_ERROR("Failed to enable DVDD10 regulator: %d\n",
   625					  err);
   626				return err;
   627			}
   628	
   629			usleep_range(1000, 2000);
   630		}
   631	
   632		gpiod_set_value_cansleep(pdata->gpiod_reset, 1);
   633		usleep_range(1000, 2000);
   634	
   635		gpiod_set_value_cansleep(pdata->gpiod_pd, 0);
   636		usleep_range(1000, 2000);
   637	
   638		gpiod_set_value_cansleep(pdata->gpiod_reset, 0);
   639	
   640		/* Power on registers module */
   641		err = anx78xx_set_bits(anx78xx->map[I2C_IDX_TX_P2], SP_POWERDOWN_CTRL_REG,
   642				 SP_HDCP_PD | SP_AUDIO_PD | SP_VIDEO_PD | SP_LINK_PD);
   643		err |= anx78xx_clear_bits(anx78xx->map[I2C_IDX_TX_P2], SP_POWERDOWN_CTRL_REG,
   644				   SP_REGISTER_PD | SP_TOTAL_PD);
   645		if (err) { 
 > 646			anx78xx_poweroff(anx78xx);
   647			return err;
   648		}
   649	
   650		anx78xx->powered = true;
   651	
   652		return err;
   653	}
   654	
 > 655	static void anx78xx_poweroff(struct anx78xx *anx78xx)
   656	{
   657		struct anx78xx_platform_data *pdata = &anx78xx->pdata;
   658		int err;
   659	
   660		if (WARN_ON(!anx78xx->powered))
   661			return;
   662	
   663		gpiod_set_value_cansleep(pdata->gpiod_reset, 1);
   664		usleep_range(1000, 2000);
   665	
   666		gpiod_set_value_cansleep(pdata->gpiod_pd, 1);
   667		usleep_range(1000, 2000);
   668	
   669		if (pdata->dvdd10) {
   670			err = regulator_disable(pdata->dvdd10);
   671			if (err) {
   672				DRM_ERROR("Failed to disable DVDD10 regulator: %d\n",
   673					  err);
   674				return;
   675			}
   676	
   677			usleep_range(1000, 2000);
   678		}
   679	
   680		anx78xx->powered = false;
   681	}
   682	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 31426 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20181221/da3a9015/attachment-0001.gz>


More information about the dri-devel mailing list