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
Attachment:
.config.gz
Description: application/gzip
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel