Hi Chandan, Thank you for the patch! Yet something to improve: [auto build test ERROR on robclark/msm-next] [also build test ERROR on v5.0-rc1 next-20190108] [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/Chandan-Uddaraju/List-of-patches-for-DP-drivers-on-SnapDragon/20190109-052537 base: git://people.freedesktop.org/~robclark/linux msm-next config: arm-allmodconfig (attached as .config) compiler: arm-linux-gnueabi-gcc (Debian 7.2.0-11) 7.2.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree GCC_VERSION=7.2.0 make.cross ARCH=arm All error/warnings (new ones prefixed by >>): In file included from drivers/gpu/drm/msm/dp/dp_link.c:9:0: drivers/gpu/drm/msm/dp/dp_panel.h:20:26: error: field 'drm_mode' has incomplete type struct drm_display_mode drm_mode; ^~~~~~~~ drivers/gpu/drm/msm/dp/dp_link.c: In function 'dp_link_get_period': drivers/gpu/drm/msm/dp/dp_link.c:52:3: error: implicit declaration of function 'DRM_ERROR'; did you mean 'DRM_IOR'? [-Werror=implicit-function-declaration] DRM_ERROR("failed to read test_audio_period (0x%x)\n", addr); ^~~~~~~~~ DRM_IOR drivers/gpu/drm/msm/dp/dp_link.c: In function 'dp_link_parse_audio_channel_period': drivers/gpu/drm/msm/dp/dp_link.c:75:33: error: 'DP_TEST_AUDIO_PERIOD_CH1' undeclared (first use in this function); did you mean 'DP_TEST_BIT_DEPTH_12'? ret = dp_link_get_period(link, DP_TEST_AUDIO_PERIOD_CH1); ^~~~~~~~~~~~~~~~~~~~~~~~ DP_TEST_BIT_DEPTH_12 drivers/gpu/drm/msm/dp/dp_link.c:75:33: note: each undeclared identifier is reported only once for each function it appears in drivers/gpu/drm/msm/dp/dp_link.c:80:2: error: implicit declaration of function 'DRM_DEBUG_DP'; did you mean 'KERN_DEBUG'? [-Werror=implicit-function-declaration] DRM_DEBUG_DP("test_audio_period_ch_1 = 0x%x\n", ret); ^~~~~~~~~~~~ KERN_DEBUG >> drivers/gpu/drm/msm/dp/dp_link.c:82:33: error: 'DP_TEST_AUDIO_PERIOD_CH2' undeclared (first use in this function); did you mean 'DP_TEST_AUDIO_PERIOD_CH1'? ret = dp_link_get_period(link, DP_TEST_AUDIO_PERIOD_CH2); ^~~~~~~~~~~~~~~~~~~~~~~~ DP_TEST_AUDIO_PERIOD_CH1 >> drivers/gpu/drm/msm/dp/dp_link.c:90:33: error: 'DP_TEST_AUDIO_PERIOD_CH3' undeclared (first use in this function); did you mean 'DP_TEST_AUDIO_PERIOD_CH2'? ret = dp_link_get_period(link, DP_TEST_AUDIO_PERIOD_CH3); ^~~~~~~~~~~~~~~~~~~~~~~~ DP_TEST_AUDIO_PERIOD_CH2 >> drivers/gpu/drm/msm/dp/dp_link.c:97:33: error: 'DP_TEST_AUDIO_PERIOD_CH4' undeclared (first use in this function); did you mean 'DP_TEST_AUDIO_PERIOD_CH3'? ret = dp_link_get_period(link, DP_TEST_AUDIO_PERIOD_CH4); ^~~~~~~~~~~~~~~~~~~~~~~~ DP_TEST_AUDIO_PERIOD_CH3 >> drivers/gpu/drm/msm/dp/dp_link.c:104:33: error: 'DP_TEST_AUDIO_PERIOD_CH5' undeclared (first use in this function); did you mean 'DP_TEST_AUDIO_PERIOD_CH4'? ret = dp_link_get_period(link, DP_TEST_AUDIO_PERIOD_CH5); ^~~~~~~~~~~~~~~~~~~~~~~~ DP_TEST_AUDIO_PERIOD_CH4 >> drivers/gpu/drm/msm/dp/dp_link.c:111:33: error: 'DP_TEST_AUDIO_PERIOD_CH6' undeclared (first use in this function); did you mean 'DP_TEST_AUDIO_PERIOD_CH5'? ret = dp_link_get_period(link, DP_TEST_AUDIO_PERIOD_CH6); ^~~~~~~~~~~~~~~~~~~~~~~~ DP_TEST_AUDIO_PERIOD_CH5 >> drivers/gpu/drm/msm/dp/dp_link.c:118:33: error: 'DP_TEST_AUDIO_PERIOD_CH7' undeclared (first use in this function); did you mean 'DP_TEST_AUDIO_PERIOD_CH6'? ret = dp_link_get_period(link, DP_TEST_AUDIO_PERIOD_CH7); ^~~~~~~~~~~~~~~~~~~~~~~~ DP_TEST_AUDIO_PERIOD_CH6 >> drivers/gpu/drm/msm/dp/dp_link.c:125:33: error: 'DP_TEST_AUDIO_PERIOD_CH8' undeclared (first use in this function); did you mean 'DP_TEST_AUDIO_PERIOD_CH7'? ret = dp_link_get_period(link, DP_TEST_AUDIO_PERIOD_CH8); ^~~~~~~~~~~~~~~~~~~~~~~~ DP_TEST_AUDIO_PERIOD_CH7 drivers/gpu/drm/msm/dp/dp_link.c: In function 'dp_link_parse_audio_pattern_type': >> drivers/gpu/drm/msm/dp/dp_link.c:143:5: error: 'DP_TEST_AUDIO_PATTERN_TYPE' undeclared (first use in this function); did you mean 'DP_TEST_PHY_PATTERN'? DP_TEST_AUDIO_PATTERN_TYPE, &data); ^~~~~~~~~~~~~~~~~~~~~~~~~~ DP_TEST_PHY_PATTERN drivers/gpu/drm/msm/dp/dp_link.c: In function 'dp_link_parse_audio_mode': drivers/gpu/drm/msm/dp/dp_link.c:172:47: error: 'DP_TEST_AUDIO_MODE' undeclared (first use in this function); did you mean 'DP_TEST_COUNT_MASK'? rlen = drm_dp_dpcd_readb(link->aux->drm_aux, DP_TEST_AUDIO_MODE, &data); ^~~~~~~~~~~~~~~~~~ DP_TEST_COUNT_MASK drivers/gpu/drm/msm/dp/dp_link.c: In function 'dp_link_is_video_audio_test_requested': >> drivers/gpu/drm/msm/dp/dp_link.c:577:5: error: 'DP_TEST_LINK_AUDIO_PATTERN' undeclared (first use in this function); did you mean 'DP_TEST_LINK_VIDEO_PATTERN'? DP_TEST_LINK_AUDIO_PATTERN | ^~~~~~~~~~~~~~~~~~~~~~~~~~ DP_TEST_LINK_VIDEO_PATTERN >> drivers/gpu/drm/msm/dp/dp_link.c:578:5: error: 'DP_TEST_LINK_AUDIO_DISABLED_VIDEO' undeclared (first use in this function); did you mean 'DP_TEST_LINK_AUDIO_PATTERN'? DP_TEST_LINK_AUDIO_DISABLED_VIDEO); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ DP_TEST_LINK_AUDIO_PATTERN drivers/gpu/drm/msm/dp/dp_link.c: In function 'dp_link_is_video_pattern_requested': >> drivers/gpu/drm/msm/dp/dp_link.c:974:3: error: 'DP_TEST_LINK_AUDIO_DISABLED_VIDEO' undeclared (first use in this function); did you mean 'DP_TEST_LINK_VIDEO_PATTERN'? DP_TEST_LINK_AUDIO_DISABLED_VIDEO); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ DP_TEST_LINK_VIDEO_PATTERN drivers/gpu/drm/msm/dp/dp_link.c: In function 'dp_link_is_audio_pattern_requested': drivers/gpu/drm/msm/dp/dp_link.c:979:41: error: 'DP_TEST_LINK_AUDIO_PATTERN' undeclared (first use in this function); did you mean 'DP_TEST_LINK_VIDEO_PATTERN'? return (link->request.test_requested & DP_TEST_LINK_AUDIO_PATTERN); ^~~~~~~~~~~~~~~~~~~~~~~~~~ DP_TEST_LINK_VIDEO_PATTERN drivers/gpu/drm/msm/dp/dp_link.c: In function 'dp_link_process_request': drivers/gpu/drm/msm/dp/dp_link.c:1052:28: error: 'DP_TEST_LINK_AUDIO_PATTERN' undeclared (first use in this function); did you mean 'DP_TEST_LINK_VIDEO_PATTERN'? dp_link->sink_request |= DP_TEST_LINK_AUDIO_PATTERN; ^~~~~~~~~~~~~~~~~~~~~~~~~~ DP_TEST_LINK_VIDEO_PATTERN drivers/gpu/drm/msm/dp/dp_link.c: In function 'dp_link_get_colorimetry_config': >> drivers/gpu/drm/msm/dp/dp_link.c:1078:8: error: 'DP_TEST_DYNAMIC_RANGE_VESA' undeclared (first use in this function); did you mean 'DP_TEST_DYNAMIC_RANGE_CEA'? cc = DP_TEST_DYNAMIC_RANGE_VESA; ^~~~~~~~~~~~~~~~~~~~~~~~~~ DP_TEST_DYNAMIC_RANGE_CEA drivers/gpu/drm/msm/dp/dp_link.c: In function 'dp_link_is_video_pattern_requested': >> drivers/gpu/drm/msm/dp/dp_link.c:975:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ drivers/gpu/drm/msm/dp/dp_link.c: In function 'dp_link_is_audio_pattern_requested': drivers/gpu/drm/msm/dp/dp_link.c:980:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ cc1: some warnings being treated as errors vim +82 drivers/gpu/drm/msm/dp/dp_link.c 69 70 static int dp_link_parse_audio_channel_period(struct dp_link_private *link) 71 { 72 int ret = 0; 73 struct dp_link_test_audio *req = &link->dp_link.test_audio; 74 > 75 ret = dp_link_get_period(link, DP_TEST_AUDIO_PERIOD_CH1); 76 if (ret == -EINVAL) 77 goto exit; 78 79 req->test_audio_period_ch_1 = ret; 80 DRM_DEBUG_DP("test_audio_period_ch_1 = 0x%x\n", ret); 81 > 82 ret = dp_link_get_period(link, DP_TEST_AUDIO_PERIOD_CH2); 83 if (ret == -EINVAL) 84 goto exit; 85 86 req->test_audio_period_ch_2 = ret; 87 DRM_DEBUG_DP("test_audio_period_ch_2 = 0x%x\n", ret); 88 89 /* TEST_AUDIO_PERIOD_CH_3 (Byte 0x275) */ > 90 ret = dp_link_get_period(link, DP_TEST_AUDIO_PERIOD_CH3); 91 if (ret == -EINVAL) 92 goto exit; 93 94 req->test_audio_period_ch_3 = ret; 95 DRM_DEBUG_DP("test_audio_period_ch_3 = 0x%x\n", ret); 96 > 97 ret = dp_link_get_period(link, DP_TEST_AUDIO_PERIOD_CH4); 98 if (ret == -EINVAL) 99 goto exit; 100 101 req->test_audio_period_ch_4 = ret; 102 DRM_DEBUG_DP("test_audio_period_ch_4 = 0x%x\n", ret); 103 > 104 ret = dp_link_get_period(link, DP_TEST_AUDIO_PERIOD_CH5); 105 if (ret == -EINVAL) 106 goto exit; 107 108 req->test_audio_period_ch_5 = ret; 109 DRM_DEBUG_DP("test_audio_period_ch_5 = 0x%x\n", ret); 110 > 111 ret = dp_link_get_period(link, DP_TEST_AUDIO_PERIOD_CH6); 112 if (ret == -EINVAL) 113 goto exit; 114 115 req->test_audio_period_ch_6 = ret; 116 DRM_DEBUG_DP("test_audio_period_ch_6 = 0x%x\n", ret); 117 > 118 ret = dp_link_get_period(link, DP_TEST_AUDIO_PERIOD_CH7); 119 if (ret == -EINVAL) 120 goto exit; 121 122 req->test_audio_period_ch_7 = ret; 123 DRM_DEBUG_DP("test_audio_period_ch_7 = 0x%x\n", ret); 124 > 125 ret = dp_link_get_period(link, DP_TEST_AUDIO_PERIOD_CH8); 126 if (ret == -EINVAL) 127 goto exit; 128 129 req->test_audio_period_ch_8 = ret; 130 DRM_DEBUG_DP("test_audio_period_ch_8 = 0x%x\n", ret); 131 exit: 132 return ret; 133 } 134 135 static int dp_link_parse_audio_pattern_type(struct dp_link_private *link) 136 { 137 int ret = 0; 138 u8 data; 139 ssize_t rlen; 140 int const max_audio_pattern_type = 0x1; 141 142 rlen = drm_dp_dpcd_readb(link->aux->drm_aux, > 143 DP_TEST_AUDIO_PATTERN_TYPE, &data); 144 if (rlen < 0) { 145 DRM_ERROR("failed to read link audio mode. rlen=%zd\n", rlen); 146 return rlen; 147 } 148 149 /* Audio Pattern Type - Bits 7:0 */ 150 if ((int)data > max_audio_pattern_type) { 151 DRM_ERROR("invalid audio pattern type = 0x%x\n", data); 152 ret = -EINVAL; 153 goto exit; 154 } 155 156 link->dp_link.test_audio.test_audio_pattern_type = data; 157 DRM_DEBUG_DP("audio pattern type = 0x%x\n", data); 158 exit: 159 return ret; 160 } 161 162 static int dp_link_parse_audio_mode(struct dp_link_private *link) 163 { 164 int ret = 0; 165 u8 data; 166 ssize_t rlen; 167 int const max_audio_sampling_rate = 0x6; 168 int const max_audio_channel_count = 0x8; 169 int sampling_rate = 0x0; 170 int channel_count = 0x0; 171 > 172 rlen = drm_dp_dpcd_readb(link->aux->drm_aux, DP_TEST_AUDIO_MODE, &data); 173 if (rlen < 0) { 174 DRM_ERROR("failed to read link audio mode. rlen=%zd\n", rlen); 175 return rlen; 176 } 177 178 /* Sampling Rate - Bits 3:0 */ 179 sampling_rate = data & 0xF; 180 if (sampling_rate > max_audio_sampling_rate) { 181 DRM_ERROR("sampling rate (0x%x) greater than max (0x%x)\n", 182 sampling_rate, max_audio_sampling_rate); 183 ret = -EINVAL; 184 goto exit; 185 } 186 187 /* Channel Count - Bits 7:4 */ 188 channel_count = ((data & 0xF0) >> 4) + 1; 189 if (channel_count > max_audio_channel_count) { 190 DRM_ERROR("channel_count (0x%x) greater than max (0x%x)\n", 191 channel_count, max_audio_channel_count); 192 ret = -EINVAL; 193 goto exit; 194 } 195 196 link->dp_link.test_audio.test_audio_sampling_rate = sampling_rate; 197 link->dp_link.test_audio.test_audio_channel_count = channel_count; 198 DRM_DEBUG_DP("sampling_rate = 0x%x, channel_count = 0x%x\n", 199 sampling_rate, channel_count); 200 exit: 201 return ret; 202 } 203 --- 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