Hi Nickey, Thank you for the patch! Yet something to improve:
[auto build test ERROR on drm/drm-next] [also build test ERROR on v4.15-rc1 next-20171201] [cannot apply to rockchip/for-next] [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/Nickey-Yang/Update-ROCKCHIP-DSI-driver-that-uses-dw-mipi-dsi-bridge/20171201-125654 base: git://people.freedesktop.org/~airlied/linux.git drm-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 make.cross ARCH=arm Note: the linux-review/Nickey-Yang/Update-ROCKCHIP-DSI-driver-that-uses-dw-mipi-dsi-bridge/20171201-125654 HEAD f1eee2e077700ada27d5585bae6dedf4ac671bb5 builds fine. It only hurts bisectibility. All error/warnings (new ones prefixed by >>): drivers/gpu/drm/stm/dw_mipi_dsi-stm.c: In function 'dw_mipi_dsi_stm_probe': >> drivers/gpu/drm/stm/dw_mipi_dsi-stm.c:321:6: warning: assignment makes >> integer from pointer without a cast [-Wint-conversion] ret = dw_mipi_dsi_probe(pdev, &dw_mipi_dsi_stm_plat_data); ^ drivers/gpu/drm/stm/dw_mipi_dsi-stm.c: In function 'dw_mipi_dsi_stm_remove': >> drivers/gpu/drm/stm/dw_mipi_dsi-stm.c:335:21: error: passing argument 1 of >> 'dw_mipi_dsi_remove' from incompatible pointer type >> [-Werror=incompatible-pointer-types] dw_mipi_dsi_remove(pdev); ^~~~ In file included from drivers/gpu/drm/stm/dw_mipi_dsi-stm.c:15:0: include/drm/bridge/dw_mipi_dsi.h:37:6: note: expected 'struct dw_mipi_dsi *' but argument is of type 'struct platform_device *' void dw_mipi_dsi_remove(struct dw_mipi_dsi *dsi); ^~~~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors vim +/dw_mipi_dsi_remove +335 drivers/gpu/drm/stm/dw_mipi_dsi-stm.c c1c026db Philippe CORNU 2017-07-17 281 c1c026db Philippe CORNU 2017-07-17 282 static int dw_mipi_dsi_stm_probe(struct platform_device *pdev) c1c026db Philippe CORNU 2017-07-17 283 { c1c026db Philippe CORNU 2017-07-17 284 struct device *dev = &pdev->dev; c1c026db Philippe CORNU 2017-07-17 285 struct dw_mipi_dsi_stm *dsi; c1c026db Philippe CORNU 2017-07-17 286 struct resource *res; c1c026db Philippe CORNU 2017-07-17 287 int ret; c1c026db Philippe CORNU 2017-07-17 288 c1c026db Philippe CORNU 2017-07-17 289 dsi = devm_kzalloc(dev, sizeof(*dsi), GFP_KERNEL); c1c026db Philippe CORNU 2017-07-17 290 if (!dsi) c1c026db Philippe CORNU 2017-07-17 291 return -ENOMEM; c1c026db Philippe CORNU 2017-07-17 292 c1c026db Philippe CORNU 2017-07-17 293 res = platform_get_resource(pdev, IORESOURCE_MEM, 0); c1c026db Philippe CORNU 2017-07-17 294 if (!res) { c1c026db Philippe CORNU 2017-07-17 295 DRM_ERROR("Unable to get resource\n"); c1c026db Philippe CORNU 2017-07-17 296 return -ENODEV; c1c026db Philippe CORNU 2017-07-17 297 } c1c026db Philippe CORNU 2017-07-17 298 c1c026db Philippe CORNU 2017-07-17 299 dsi->base = devm_ioremap_resource(dev, res); c1c026db Philippe CORNU 2017-07-17 300 if (IS_ERR(dsi->base)) { c1c026db Philippe CORNU 2017-07-17 301 DRM_ERROR("Unable to get dsi registers\n"); c1c026db Philippe CORNU 2017-07-17 302 return PTR_ERR(dsi->base); c1c026db Philippe CORNU 2017-07-17 303 } c1c026db Philippe CORNU 2017-07-17 304 c1c026db Philippe CORNU 2017-07-17 305 dsi->pllref_clk = devm_clk_get(dev, "ref"); c1c026db Philippe CORNU 2017-07-17 306 if (IS_ERR(dsi->pllref_clk)) { c1c026db Philippe CORNU 2017-07-17 307 ret = PTR_ERR(dsi->pllref_clk); c1c026db Philippe CORNU 2017-07-17 308 dev_err(dev, "Unable to get pll reference clock: %d\n", ret); c1c026db Philippe CORNU 2017-07-17 309 return ret; c1c026db Philippe CORNU 2017-07-17 310 } c1c026db Philippe CORNU 2017-07-17 311 c1c026db Philippe CORNU 2017-07-17 312 ret = clk_prepare_enable(dsi->pllref_clk); c1c026db Philippe CORNU 2017-07-17 313 if (ret) { c1c026db Philippe CORNU 2017-07-17 314 dev_err(dev, "%s: Failed to enable pllref_clk\n", __func__); c1c026db Philippe CORNU 2017-07-17 315 return ret; c1c026db Philippe CORNU 2017-07-17 316 } c1c026db Philippe CORNU 2017-07-17 317 c1c026db Philippe CORNU 2017-07-17 318 dw_mipi_dsi_stm_plat_data.base = dsi->base; c1c026db Philippe CORNU 2017-07-17 319 dw_mipi_dsi_stm_plat_data.priv_data = dsi; c1c026db Philippe CORNU 2017-07-17 320 c1c026db Philippe CORNU 2017-07-17 @321 ret = dw_mipi_dsi_probe(pdev, &dw_mipi_dsi_stm_plat_data); c1c026db Philippe CORNU 2017-07-17 322 if (ret) { c1c026db Philippe CORNU 2017-07-17 323 DRM_ERROR("Failed to initialize mipi dsi host\n"); c1c026db Philippe CORNU 2017-07-17 324 clk_disable_unprepare(dsi->pllref_clk); c1c026db Philippe CORNU 2017-07-17 325 } c1c026db Philippe CORNU 2017-07-17 326 c1c026db Philippe CORNU 2017-07-17 327 return ret; c1c026db Philippe CORNU 2017-07-17 328 } c1c026db Philippe CORNU 2017-07-17 329 c1c026db Philippe CORNU 2017-07-17 330 static int dw_mipi_dsi_stm_remove(struct platform_device *pdev) c1c026db Philippe CORNU 2017-07-17 331 { c1c026db Philippe CORNU 2017-07-17 332 struct dw_mipi_dsi_stm *dsi = dw_mipi_dsi_stm_plat_data.priv_data; c1c026db Philippe CORNU 2017-07-17 333 c1c026db Philippe CORNU 2017-07-17 334 clk_disable_unprepare(dsi->pllref_clk); c1c026db Philippe CORNU 2017-07-17 @335 dw_mipi_dsi_remove(pdev); c1c026db Philippe CORNU 2017-07-17 336 c1c026db Philippe CORNU 2017-07-17 337 return 0; c1c026db Philippe CORNU 2017-07-17 338 } c1c026db Philippe CORNU 2017-07-17 339 :::::: The code at line 335 was first introduced by commit :::::: c1c026dbc183497379502496316d5e2a22876b7e drm/stm: Add STM32 DSI controller driver :::::: TO: Philippe CORNU <philippe.co...@st.com> :::::: CC: Benjamin Gaignard <benjamin.gaign...@linaro.org> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
.config.gz
Description: application/gzip