tree:
https://chromium.googlesource.com/chromiumos/third_party/kernel chromeos-4.14
head: 6f8992e59d85c46b0273cd2a3a9ab9cea8ddb4a1
commit: 999225d0e44ef997ab7f8965b2ffb262864dae35 [17/19] CHROMIUM: drm/evdi: Create sysfs
link from evdi to its parent device and unlink on detach
config:
arm64-chromiumos-arm64-customedconfig-chrome-os:chromeos-4.14:1bf13820918c8ea2f8d01d646008dbc3c1cb5bee
(attached as .config)
compiler: aarch64-linux-gcc (GCC) 7.5.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 remote add chrome-os
https://chromium.googlesource.com/chromiumos/third_party/kernel
git fetch --no-tags chrome-os chromeos-4.14
git checkout 999225d0e44ef997ab7f8965b2ffb262864dae35
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-7.5.0 make.cross ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
drivers/gpu/drm/evdi/evdi_drv.c:83:6: error: no previous prototype for
'evdi_platform_device_is_free' [-Werror=missing-prototypes]
bool evdi_platform_device_is_free(struct platform_device *pdev)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
> drivers/gpu/drm/evdi/evdi_drv.c:95:6: error: no previous
prototype for 'evdi_platform_device_link' [-Werror=missing-prototypes]
void evdi_platform_device_link(struct platform_device *pdev,
^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/evdi/evdi_drv.c: In function 'add_device_with_usb_path':
drivers/gpu/drm/evdi/evdi_drv.c:442:8: error: variable 'itf_token' set but not
used [-Werror=unused-but-set-variable]
char *itf_token = NULL;
^~~~~~~~~
cc1: all warnings being treated as errors
vim +/evdi_platform_device_link +95 drivers/gpu/drm/evdi/evdi_drv.c
82
83 bool evdi_platform_device_is_free(struct platform_device *pdev)
84 {
85 struct evdi_platform_device_data *data =
86 (struct evdi_platform_device_data *)platform_get_drvdata(pdev);
87 struct evdi_device *evdi = data->drm_dev->dev_private;
88
89 if (evdi && !evdi_painter_is_connected(evdi) &&
90 !data->symlinked)
91 return true;
92 return false;
93 }
94
95 void evdi_platform_device_link(struct platform_device *pdev,
96 struct device *parent)
97 {
98 struct evdi_platform_device_data *data = NULL;
99 int ret = 0;
100
101 if (!parent || !pdev)
102 return;
103
104 data = (struct evdi_platform_device_data *)platform_get_drvdata(pdev);
105 if (!evdi_platform_device_is_free(pdev)) {
106 EVDI_FATAL("Device is already attached can't symlink again\n");
107 return;
108 }
109
110 ret = sysfs_create_link(&pdev->dev.kobj, &parent->kobj,
"device");
111 if (ret) {
112 EVDI_FATAL("Failed to create sysfs link to parent device\n");
113 } else {
114 data->symlinked = true;
115 data->parent = parent;
116 }
117 }
118
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org