lkml.org 
[lkml]   [2023]   [Jan]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v6 5/7] cdx: add cdx controller
Hi Nipun,

I love your patch! Yet something to improve:

[auto build test ERROR on next-20230127]
[cannot apply to masahiroy-kbuild/for-next masahiroy-kbuild/fixes robh/for-next joro-iommu/next linus/master v6.2-rc5 v6.2-rc4 v6.2-rc3 v6.2-rc5]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url: https://github.com/intel-lab-lkp/linux/commits/Nipun-Gupta/cdx-add-the-cdx-bus-driver/20230128-161622
patch link: https://lore.kernel.org/r/20230126104630.15493-6-nipun.gupta%40amd.com
patch subject: [PATCH v6 5/7] cdx: add cdx controller
config: powerpc-buildonly-randconfig-r004-20230129 (https://download.01.org/0day-ci/archive/20230129/202301290233.80xUAwYL-lkp@intel.com/config)
compiler: clang version 16.0.0 (https://github.com/llvm/llvm-project 4196ca3278f78c6e19246e54ab0ecb364e37d66a)
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
# install powerpc cross compiling tool for clang build
# apt-get install binutils-powerpc-linux-gnu
# https://github.com/intel-lab-lkp/linux/commit/f412d73800370b8e51d1be454e651d3c4ff796a8
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Nipun-Gupta/cdx-add-the-cdx-bus-driver/20230128-161622
git checkout f412d73800370b8e51d1be454e651d3c4ff796a8
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=powerpc olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=powerpc SHELL=/bin/bash drivers/cdx/controller/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

>> drivers/cdx/controller/cdx_controller.c:102:13: error: call to undeclared function 'kzalloc'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
cdx_mcdi = kzalloc(sizeof(*cdx_mcdi), GFP_KERNEL);
^
>> drivers/cdx/controller/cdx_controller.c:102:11: error: incompatible integer to pointer conversion assigning to 'struct cdx_mcdi *' from 'int' [-Wint-conversion]
cdx_mcdi = kzalloc(sizeof(*cdx_mcdi), GFP_KERNEL);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/cdx/controller/cdx_controller.c:115:6: error: incompatible integer to pointer conversion assigning to 'struct cdx_controller *' from 'int' [-Wint-conversion]
cdx = kzalloc(sizeof(*cdx), GFP_KERNEL);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/cdx/controller/cdx_controller.c:131:2: error: call to undeclared function 'kfree'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
kfree(cdx_mcdi);
^
drivers/cdx/controller/cdx_controller.c:141:2: error: call to undeclared function 'kfree'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
kfree(cdx);
^
5 errors generated.
--
>> drivers/cdx/controller/mcdi.c:272:2: error: call to undeclared function 'FIELD_PREP'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
CDX_POPULATE_DWORD_7(hdr[0],
^
drivers/cdx/controller/bitfield.h:72:30: note: expanded from macro 'CDX_POPULATE_DWORD_7'
#define CDX_POPULATE_DWORD_7 CDX_POPULATE_DWORD
^
drivers/cdx/controller/bitfield.h:69:32: note: expanded from macro 'CDX_POPULATE_DWORD'
(dword).cdx_u32 = cpu_to_le32(CDX_INSERT_FIELDS(__VA_ARGS__))
^
drivers/cdx/controller/bitfield.h:60:3: note: expanded from macro 'CDX_INSERT_FIELDS'
(CDX_INSERT_FIELD(field1, (value1)) | \
^
drivers/cdx/controller/bitfield.h:46:3: note: expanded from macro 'CDX_INSERT_FIELD'
(FIELD_PREP(GENMASK(CDX_HIGH_BIT(field), \
^
>> drivers/cdx/controller/mcdi.c:635:12: error: call to undeclared function 'FIELD_GET'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
respseq = CDX_DWORD_FIELD(outbuf[0], MCDI_HEADER_SEQ);
^
drivers/cdx/controller/bitfield.h:38:3: note: expanded from macro 'CDX_DWORD_FIELD'
(FIELD_GET(GENMASK(CDX_HIGH_BIT(field), CDX_LOW_BIT(field)), \
^
drivers/cdx/controller/mcdi.c:692:12: error: call to undeclared function 'FIELD_GET'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
respcmd = CDX_DWORD_FIELD(outbuf[0], MCDI_HEADER_CODE);
^
drivers/cdx/controller/bitfield.h:38:3: note: expanded from macro 'CDX_DWORD_FIELD'
(FIELD_GET(GENMASK(CDX_HIGH_BIT(field), CDX_LOW_BIT(field)), \
^
3 errors generated.
--
>> drivers/cdx/controller/mcdi_functions.c:25:9: error: call to undeclared function 'FIELD_GET'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
return MCDI_DWORD(outbuf, CDX_BUS_ENUM_BUSES_OUT_BUS_COUNT);
^
drivers/cdx/controller/mcdi.h:223:2: note: expanded from macro 'MCDI_DWORD'
CDX_DWORD_FIELD(*_MCDI_DWORD(_buf, _field), CDX_DWORD)
^
drivers/cdx/controller/bitfield.h:38:3: note: expanded from macro 'CDX_DWORD_FIELD'
(FIELD_GET(GENMASK(CDX_HIGH_BIT(field), CDX_LOW_BIT(field)), \
^
>> drivers/cdx/controller/mcdi_functions.c:35:2: error: call to undeclared function 'FIELD_PREP'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
MCDI_SET_DWORD(inbuf, CDX_BUS_ENUM_DEVICES_IN_BUS, bus_num);
^
drivers/cdx/controller/mcdi.h:221:2: note: expanded from macro 'MCDI_SET_DWORD'
CDX_POPULATE_DWORD_1(*_MCDI_DWORD(_buf, _field), CDX_DWORD, _value)
^
drivers/cdx/controller/bitfield.h:84:2: note: expanded from macro 'CDX_POPULATE_DWORD_1'
CDX_POPULATE_DWORD_2(dword, CDX_DWORD, 0, __VA_ARGS__)
^
drivers/cdx/controller/bitfield.h:82:2: note: expanded from macro 'CDX_POPULATE_DWORD_2'
CDX_POPULATE_DWORD_3(dword, CDX_DWORD, 0, __VA_ARGS__)
^
note: (skipping 5 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
drivers/cdx/controller/bitfield.h:69:32: note: expanded from macro 'CDX_POPULATE_DWORD'
(dword).cdx_u32 = cpu_to_le32(CDX_INSERT_FIELDS(__VA_ARGS__))
^
drivers/cdx/controller/bitfield.h:60:3: note: expanded from macro 'CDX_INSERT_FIELDS'
(CDX_INSERT_FIELD(field1, (value1)) | \
^
drivers/cdx/controller/bitfield.h:46:3: note: expanded from macro 'CDX_INSERT_FIELD'
(FIELD_PREP(GENMASK(CDX_HIGH_BIT(field), \
^
drivers/cdx/controller/mcdi_functions.c:45:9: error: call to undeclared function 'FIELD_GET'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
return MCDI_DWORD(outbuf, CDX_BUS_ENUM_DEVICES_OUT_DEVICE_COUNT);
^
drivers/cdx/controller/mcdi.h:223:2: note: expanded from macro 'MCDI_DWORD'
CDX_DWORD_FIELD(*_MCDI_DWORD(_buf, _field), CDX_DWORD)
^
drivers/cdx/controller/bitfield.h:38:3: note: expanded from macro 'CDX_DWORD_FIELD'
(FIELD_GET(GENMASK(CDX_HIGH_BIT(field), CDX_LOW_BIT(field)), \
^
drivers/cdx/controller/mcdi_functions.c:59:2: error: call to undeclared function 'FIELD_PREP'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
MCDI_SET_DWORD(inbuf, CDX_BUS_GET_DEVICE_CONFIG_IN_BUS, bus_num);
^
drivers/cdx/controller/mcdi.h:221:2: note: expanded from macro 'MCDI_SET_DWORD'
CDX_POPULATE_DWORD_1(*_MCDI_DWORD(_buf, _field), CDX_DWORD, _value)
^
drivers/cdx/controller/bitfield.h:84:2: note: expanded from macro 'CDX_POPULATE_DWORD_1'
CDX_POPULATE_DWORD_2(dword, CDX_DWORD, 0, __VA_ARGS__)
^
drivers/cdx/controller/bitfield.h:82:2: note: expanded from macro 'CDX_POPULATE_DWORD_2'
CDX_POPULATE_DWORD_3(dword, CDX_DWORD, 0, __VA_ARGS__)
^
note: (skipping 5 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
drivers/cdx/controller/bitfield.h:69:32: note: expanded from macro 'CDX_POPULATE_DWORD'
(dword).cdx_u32 = cpu_to_le32(CDX_INSERT_FIELDS(__VA_ARGS__))
^
drivers/cdx/controller/bitfield.h:60:3: note: expanded from macro 'CDX_INSERT_FIELDS'
(CDX_INSERT_FIELD(field1, (value1)) | \
^
drivers/cdx/controller/bitfield.h:46:3: note: expanded from macro 'CDX_INSERT_FIELD'
(FIELD_PREP(GENMASK(CDX_HIGH_BIT(field), \
^
drivers/cdx/controller/mcdi_functions.c:73:11: error: call to undeclared function 'FIELD_GET'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
req_id = MCDI_DWORD(outbuf, CDX_BUS_GET_DEVICE_CONFIG_OUT_REQUESTER_ID);
^
drivers/cdx/controller/mcdi.h:223:2: note: expanded from macro 'MCDI_DWORD'
CDX_DWORD_FIELD(*_MCDI_DWORD(_buf, _field), CDX_DWORD)
^
drivers/cdx/controller/bitfield.h:38:3: note: expanded from macro 'CDX_DWORD_FIELD'
(FIELD_GET(GENMASK(CDX_HIGH_BIT(field), CDX_LOW_BIT(field)), \
^
5 errors generated.


vim +/kzalloc +102 drivers/cdx/controller/cdx_controller.c

95
96 static int xlnx_cdx_probe(struct platform_device *pdev)
97 {
98 struct cdx_controller *cdx;
99 struct cdx_mcdi *cdx_mcdi;
100 int ret;
101
> 102 cdx_mcdi = kzalloc(sizeof(*cdx_mcdi), GFP_KERNEL);
103 if (!cdx_mcdi)
104 return -ENOMEM;
105
106 /* Store the MCDI ops */
107 cdx_mcdi->mcdi_ops = &mcdi_ops;
108 /* MCDI FW: Initialize the FW path */
109 ret = cdx_mcdi_init(cdx_mcdi);
110 if (ret) {
111 dev_err_probe(&pdev->dev, ret, "MCDI Initialization failed\n");
112 goto mcdi_init_fail;
113 }
114
> 115 cdx = kzalloc(sizeof(*cdx), GFP_KERNEL);
116 if (!cdx) {
117 ret = -ENOMEM;
118 goto cdx_alloc_fail;
119 }
120 platform_set_drvdata(pdev, cdx);
121
122 cdx->dev = &pdev->dev;
123 cdx->priv = cdx_mcdi;
124 cdx->ops = &cdx_ops;
125
126 return 0;
127
128 cdx_alloc_fail:
129 cdx_mcdi_finish(cdx_mcdi);
130 mcdi_init_fail:
> 131 kfree(cdx_mcdi);
132
133 return ret;
134 }
135

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests

\
 
 \ /
  Last update: 2023-03-27 00:00    [W:5.998 / U:0.020 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site