tree: https://github.com/0day-ci/linux/commits/UPDATE-20200802-160235/Bernard-Zhao/drm-panel-remove-return-value-of-function-drm_panel_add/20200801-200317 head: 6a416063d9c57eaec79459174f08c5edd94ad385 commit: 6a416063d9c57eaec79459174f08c5edd94ad385 [1/1] drm: Remove unnecessary drm_panel_attach and drm_panel_detach config: arm64-allyesconfig (attached as .config) compiler: aarch64-linux-gcc (GCC) 9.3.0 reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross git checkout 6a416063d9c57eaec79459174f08c5edd94ad385 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All errors (new ones prefixed by >>): drivers/gpu/drm/mediatek/mtk_dsi.c: In function 'mtk_dsi_create_connector': >> drivers/gpu/drm/mediatek/mtk_dsi.c:862:9: error: implicit declaration of function 'drm_panel_attach'; did you mean 'drm_panel_add'? [-Werror=implicit-function-declaration] 862 | ret = drm_panel_attach(dsi->panel, &dsi->conn); | ^~~~~~~~~~~~~~~~ | drm_panel_add drivers/gpu/drm/mediatek/mtk_dsi.c: In function 'mtk_dsi_destroy_conn_enc': >> drivers/gpu/drm/mediatek/mtk_dsi.c:922:3: error: implicit declaration of function 'drm_panel_detach'; did you mean 'drm_panel_disable'? [-Werror=implicit-function-declaration] 922 | drm_panel_detach(dsi->panel); | ^~~~~~~~~~~~~~~~ | drm_panel_disable cc1: some warnings being treated as errors vim +862 drivers/gpu/drm/mediatek/mtk_dsi.c 2e54c14e310f65 CK Hu 2016-01-04 844 2e54c14e310f65 CK Hu 2016-01-04 845 static int mtk_dsi_create_connector(struct drm_device *drm, struct mtk_dsi *dsi) 2e54c14e310f65 CK Hu 2016-01-04 846 { 2e54c14e310f65 CK Hu 2016-01-04 847 int ret; 2e54c14e310f65 CK Hu 2016-01-04 848 2e54c14e310f65 CK Hu 2016-01-04 849 ret = drm_connector_init(drm, &dsi->conn, &mtk_dsi_connector_funcs, 2e54c14e310f65 CK Hu 2016-01-04 850 DRM_MODE_CONNECTOR_DSI); 2e54c14e310f65 CK Hu 2016-01-04 851 if (ret) { 2e54c14e310f65 CK Hu 2016-01-04 852 DRM_ERROR("Failed to connector init to drm\n"); 2e54c14e310f65 CK Hu 2016-01-04 853 return ret; 2e54c14e310f65 CK Hu 2016-01-04 854 } 2e54c14e310f65 CK Hu 2016-01-04 855 2e54c14e310f65 CK Hu 2016-01-04 856 drm_connector_helper_add(&dsi->conn, &mtk_dsi_connector_helper_funcs); 2e54c14e310f65 CK Hu 2016-01-04 857 2e54c14e310f65 CK Hu 2016-01-04 858 dsi->conn.dpms = DRM_MODE_DPMS_OFF; cde4c44d8769c1 Daniel Vetter 2018-07-09 859 drm_connector_attach_encoder(&dsi->conn, &dsi->encoder); 2e54c14e310f65 CK Hu 2016-01-04 860 2e54c14e310f65 CK Hu 2016-01-04 861 if (dsi->panel) { 2e54c14e310f65 CK Hu 2016-01-04 @862 ret = drm_panel_attach(dsi->panel, &dsi->conn); 2e54c14e310f65 CK Hu 2016-01-04 863 if (ret) { 2e54c14e310f65 CK Hu 2016-01-04 864 DRM_ERROR("Failed to attach panel to drm\n"); 2e54c14e310f65 CK Hu 2016-01-04 865 goto err_connector_cleanup; 2e54c14e310f65 CK Hu 2016-01-04 866 } 2e54c14e310f65 CK Hu 2016-01-04 867 } 2e54c14e310f65 CK Hu 2016-01-04 868 2e54c14e310f65 CK Hu 2016-01-04 869 return 0; 2e54c14e310f65 CK Hu 2016-01-04 870 2e54c14e310f65 CK Hu 2016-01-04 871 err_connector_cleanup: 2e54c14e310f65 CK Hu 2016-01-04 872 drm_connector_cleanup(&dsi->conn); 2e54c14e310f65 CK Hu 2016-01-04 873 return ret; 2e54c14e310f65 CK Hu 2016-01-04 874 } 2e54c14e310f65 CK Hu 2016-01-04 875 2e54c14e310f65 CK Hu 2016-01-04 876 static int mtk_dsi_create_conn_enc(struct drm_device *drm, struct mtk_dsi *dsi) 2e54c14e310f65 CK Hu 2016-01-04 877 { 2e54c14e310f65 CK Hu 2016-01-04 878 int ret; 2e54c14e310f65 CK Hu 2016-01-04 879 b534c4f550d9ee Thomas Zimmermann 2020-03-05 880 ret = drm_simple_encoder_init(drm, &dsi->encoder, b534c4f550d9ee Thomas Zimmermann 2020-03-05 881 DRM_MODE_ENCODER_DSI); 2e54c14e310f65 CK Hu 2016-01-04 882 if (ret) { 2e54c14e310f65 CK Hu 2016-01-04 883 DRM_ERROR("Failed to encoder init to drm\n"); 2e54c14e310f65 CK Hu 2016-01-04 884 return ret; 2e54c14e310f65 CK Hu 2016-01-04 885 } 2e54c14e310f65 CK Hu 2016-01-04 886 drm_encoder_helper_add(&dsi->encoder, &mtk_dsi_encoder_helper_funcs); 2e54c14e310f65 CK Hu 2016-01-04 887 2e54c14e310f65 CK Hu 2016-01-04 888 /* 2e54c14e310f65 CK Hu 2016-01-04 889 * Currently display data paths are statically assigned to a crtc each. 2e54c14e310f65 CK Hu 2016-01-04 890 * crtc 0 is OVL0 -> COLOR0 -> AAL -> OD -> RDMA0 -> UFOE -> DSI0 2e54c14e310f65 CK Hu 2016-01-04 891 */ 2e54c14e310f65 CK Hu 2016-01-04 892 dsi->encoder.possible_crtcs = 1; 2e54c14e310f65 CK Hu 2016-01-04 893 2e54c14e310f65 CK Hu 2016-01-04 894 /* If there's a bridge, attach to it and let it create the connector */ a0071bc455da7b Nicolas Boichat 2018-11-26 895 if (dsi->bridge) { a25b988ff83f3c Laurent Pinchart 2020-02-26 896 ret = drm_bridge_attach(&dsi->encoder, dsi->bridge, NULL, 0); 2e54c14e310f65 CK Hu 2016-01-04 897 if (ret) { 3bb80f249525c0 Laurent Pinchart 2016-11-28 898 DRM_ERROR("Failed to attach bridge to drm\n"); a0071bc455da7b Nicolas Boichat 2018-11-26 899 goto err_encoder_cleanup; a0071bc455da7b Nicolas Boichat 2018-11-26 900 } a0071bc455da7b Nicolas Boichat 2018-11-26 901 } else { 2e54c14e310f65 CK Hu 2016-01-04 902 /* Otherwise create our own connector and attach to a panel */ 2e54c14e310f65 CK Hu 2016-01-04 903 ret = mtk_dsi_create_connector(drm, dsi); 2e54c14e310f65 CK Hu 2016-01-04 904 if (ret) 2e54c14e310f65 CK Hu 2016-01-04 905 goto err_encoder_cleanup; 2e54c14e310f65 CK Hu 2016-01-04 906 } 2e54c14e310f65 CK Hu 2016-01-04 907 2e54c14e310f65 CK Hu 2016-01-04 908 return 0; 2e54c14e310f65 CK Hu 2016-01-04 909 2e54c14e310f65 CK Hu 2016-01-04 910 err_encoder_cleanup: 2e54c14e310f65 CK Hu 2016-01-04 911 drm_encoder_cleanup(&dsi->encoder); 2e54c14e310f65 CK Hu 2016-01-04 912 return ret; 2e54c14e310f65 CK Hu 2016-01-04 913 } 2e54c14e310f65 CK Hu 2016-01-04 914 2e54c14e310f65 CK Hu 2016-01-04 915 static void mtk_dsi_destroy_conn_enc(struct mtk_dsi *dsi) 2e54c14e310f65 CK Hu 2016-01-04 916 { 2e54c14e310f65 CK Hu 2016-01-04 917 drm_encoder_cleanup(&dsi->encoder); 2e54c14e310f65 CK Hu 2016-01-04 918 /* Skip connector cleanup if creation was delegated to the bridge */ 2ea9f31799adce Philipp Zabel 2016-05-26 919 if (dsi->conn.dev) 2e54c14e310f65 CK Hu 2016-01-04 920 drm_connector_cleanup(&dsi->conn); 8fd7a37b191f93 Hsin-Yi Wang 2019-05-29 921 if (dsi->panel) 8fd7a37b191f93 Hsin-Yi Wang 2019-05-29 @922 drm_panel_detach(dsi->panel); 2e54c14e310f65 CK Hu 2016-01-04 923 } 2e54c14e310f65 CK Hu 2016-01-04 924 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org