* [ezequielg:unbind-your-drm-love-2 2/2] drivers/gpu//drm/rockchip/rockchip_drm_vop.c:2007:19: error: passing argument 1 of 'vop_crtc_destroy' from incompatible pointer type
@ 2019-12-20 21:56 kbuild test robot
0 siblings, 0 replies; only message in thread
From: kbuild test robot @ 2019-12-20 21:56 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 4836 bytes --]
tree: git://git.infradead.org/users/ezequielg/linux unbind-your-drm-love-2
head: c3dc88a90ead00f8dec82034beb9858df81c647b
commit: c3dc88a90ead00f8dec82034beb9858df81c647b [2/2] drm/rockchip: Fix CRTC unbind
config: arm64-allmodconfig (attached as .config)
compiler: aarch64-linux-gcc (GCC) 7.5.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout c3dc88a90ead00f8dec82034beb9858df81c647b
# save the attached .config to linux build tree
GCC_VERSION=7.5.0 make.cross ARCH=arm64
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
drivers/gpu//drm/rockchip/rockchip_drm_vop.c: In function 'vop_create_crtc':
drivers/gpu//drm/rockchip/rockchip_drm_vop.c:1629:61: warning: unused variable 'tmp' [-Wunused-variable]
struct drm_plane *primary = NULL, *cursor = NULL, *plane, *tmp;
^~~
drivers/gpu//drm/rockchip/rockchip_drm_vop.c: In function 'vop_bind':
>> drivers/gpu//drm/rockchip/rockchip_drm_vop.c:2007:19: error: passing argument 1 of 'vop_crtc_destroy' from incompatible pointer type [-Werror=incompatible-pointer-types]
vop_crtc_destroy(vop);
^~~
drivers/gpu//drm/rockchip/rockchip_drm_vop.c:1388:13: note: expected 'struct drm_crtc *' but argument is of type 'struct vop *'
static void vop_crtc_destroy(struct drm_crtc *crtc)
^~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +/vop_crtc_destroy +2007 drivers/gpu//drm/rockchip/rockchip_drm_vop.c
1917
1918 static int vop_bind(struct device *dev, struct device *master, void *data)
1919 {
1920 struct platform_device *pdev = to_platform_device(dev);
1921 const struct vop_data *vop_data;
1922 struct drm_device *drm_dev = data;
1923 struct vop *vop;
1924 struct resource *res;
1925 int ret, irq;
1926
1927 vop_data = of_device_get_match_data(dev);
1928 if (!vop_data)
1929 return -ENODEV;
1930
1931 /* Allocate vop struct and its vop_win array */
1932 vop = devm_kzalloc(dev, struct_size(vop, win, vop_data->win_size),
1933 GFP_KERNEL);
1934 if (!vop)
1935 return -ENOMEM;
1936
1937 vop->dev = dev;
1938 vop->data = vop_data;
1939 vop->drm_dev = drm_dev;
1940 dev_set_drvdata(dev, vop);
1941
1942 vop_win_init(vop);
1943
1944 res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
1945 vop->len = resource_size(res);
1946 vop->regs = devm_ioremap_resource(dev, res);
1947 if (IS_ERR(vop->regs))
1948 return PTR_ERR(vop->regs);
1949
1950 res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
1951 if (res) {
1952 if (!vop_data->lut_size) {
1953 DRM_DEV_ERROR(dev, "no gamma LUT size defined\n");
1954 return -EINVAL;
1955 }
1956 vop->lut_regs = devm_ioremap_resource(dev, res);
1957 if (IS_ERR(vop->lut_regs))
1958 return PTR_ERR(vop->lut_regs);
1959 }
1960
1961 vop->regsbak = devm_kzalloc(dev, vop->len, GFP_KERNEL);
1962 if (!vop->regsbak)
1963 return -ENOMEM;
1964
1965 irq = platform_get_irq(pdev, 0);
1966 if (irq < 0) {
1967 DRM_DEV_ERROR(dev, "cannot find irq for vop\n");
1968 return irq;
1969 }
1970 vop->irq = (unsigned int)irq;
1971
1972 spin_lock_init(&vop->reg_lock);
1973 spin_lock_init(&vop->irq_lock);
1974 mutex_init(&vop->vop_lock);
1975
1976 ret = vop_create_crtc(vop);
1977 if (ret)
1978 return ret;
1979
1980 pm_runtime_enable(&pdev->dev);
1981
1982 ret = vop_initial(vop);
1983 if (ret < 0) {
1984 DRM_DEV_ERROR(&pdev->dev,
1985 "cannot initial vop dev - err %d\n", ret);
1986 goto err_disable_pm_runtime;
1987 }
1988
1989 ret = devm_request_irq(dev, vop->irq, vop_isr,
1990 IRQF_SHARED, dev_name(dev), vop);
1991 if (ret)
1992 goto err_disable_pm_runtime;
1993
1994 if (vop->data->feature & VOP_FEATURE_INTERNAL_RGB) {
1995 vop->rgb = rockchip_rgb_init(dev, &vop->crtc, vop->drm_dev);
1996 if (IS_ERR(vop->rgb)) {
1997 ret = PTR_ERR(vop->rgb);
1998 goto err_disable_pm_runtime;
1999 }
2000 }
2001
2002 return 0;
2003
2004 err_disable_pm_runtime:
2005 pm_runtime_disable(&pdev->dev);
2006 vop_plane_cleanup(vop);
> 2007 vop_crtc_destroy(vop);
2008 return ret;
2009 }
2010
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org Intel Corporation
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 69328 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2019-12-20 21:56 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-12-20 21:56 [ezequielg:unbind-your-drm-love-2 2/2] drivers/gpu//drm/rockchip/rockchip_drm_vop.c:2007:19: error: passing argument 1 of 'vop_crtc_destroy' from incompatible pointer type kbuild test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.