[PATCH v3 1/5] drm/bridge/synopsys: stop clobbering drvdata

kbuild test robot lkp at intel.com
Fri Dec 1 23:47:19 UTC 2017


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.cornu at st.com>
:::::: CC: Benjamin Gaignard <benjamin.gaignard at linaro.org>

---
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: 64146 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20171202/a5895ba5/attachment-0001.gz>


More information about the dri-devel mailing list