Re: [patch 1/2] i2c: add master driver for mellanox systems

From: kbuild test robot
Date: Thu Aug 25 2016 - 01:51:03 EST


Hi Vadim,

[auto build test ERROR on wsa/i2c/for-next]
[also build test ERROR on v4.8-rc3 next-20160824]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
[Suggest to use git(>=2.9.0) format-patch --base=<commit> (or --base=auto for convenience) to record what (public, well-known) commit your patch series was built on]
[Check https://git-scm.com/docs/git-format-patch for more information]

url: https://github.com/0day-ci/linux/commits/vadimp-mellanox-com/i2c-add-master-driver-for-mellanox-systems/20160824-200057
base: https://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git i2c/for-next
config: x86_64-randconfig-s1-08242121 (attached as .config)
compiler: gcc-4.4 (Debian 4.4.7-8) 4.4.7
reproduce:
# save the attached .config to linux build tree
make ARCH=x86_64

All errors (new ones prefixed by >>):

drivers/i2c/busses/i2c-mlxcpld.c: In function 'mlxcpld_i2c_lpc_write_buf':
>> drivers/i2c/busses/i2c-mlxcpld.c:148: error: implicit declaration of function 'outl'
>> drivers/i2c/busses/i2c-mlxcpld.c:153: error: implicit declaration of function 'outb'
drivers/i2c/busses/i2c-mlxcpld.c: In function 'mlxcpld_i2c_lpc_read_buf':
>> drivers/i2c/busses/i2c-mlxcpld.c:163: error: implicit declaration of function 'inl'
>> drivers/i2c/busses/i2c-mlxcpld.c:168: error: implicit declaration of function 'inb'
drivers/i2c/busses/i2c-mlxcpld.c: In function 'mlxcpld_i2c_read_comm':
>> drivers/i2c/busses/i2c-mlxcpld.c:181: error: implicit declaration of function 'inw'
drivers/i2c/busses/i2c-mlxcpld.c: In function 'mlxcpld_i2c_write_comm':
>> drivers/i2c/busses/i2c-mlxcpld.c:206: error: implicit declaration of function 'outw'

vim +/outl +148 drivers/i2c/busses/i2c-mlxcpld.c

142 {
143 int i, nbyte, ndword;
144
145 nbyte = len % 4;
146 ndword = len / 4;
147 for (i = 0; i < ndword; i++)
> 148 outl(*((u32 *)data + i), addr + i * 4);
149 ndword *= 4;
150 addr += ndword;
151 data += ndword;
152 for (i = 0; i < nbyte; i++)
> 153 outb(*(data + i), addr + i);
154 }
155
156 static void mlxcpld_i2c_lpc_read_buf(u8 *data, u8 len, u32 addr)
157 {
158 int i, nbyte, ndword;
159
160 nbyte = len % 4;
161 ndword = len / 4;
162 for (i = 0; i < ndword; i++)
> 163 *((u32 *)data + i) = inl(addr + i * 4);
164 ndword *= 4;
165 addr += ndword;
166 data += ndword;
167 for (i = 0; i < nbyte; i++)
> 168 *(data + i) = inb(addr + i);
169 }
170
171 static void mlxcpld_i2c_read_comm(struct mlxcpld_i2c_priv *priv, u8 offs,
172 u8 *data, u8 datalen)
173 {
174 u32 addr = priv->base_addr + offs;
175
176 switch (datalen) {
177 case 1:
178 *(data) = inb(addr);
179 break;
180 case 2:
> 181 *((u16 *)data) = inw(addr);
182 break;
183 case 3:
184 *((u16 *)data) = inw(addr);
185 *(data + 2) = inb(addr + 2);
186 break;
187 case 4:
188 *((u32 *)data) = inl(addr);
189 break;
190 default:
191 mlxcpld_i2c_lpc_read_buf(data, datalen, addr);
192 break;
193 }
194 }
195
196 static void mlxcpld_i2c_write_comm(struct mlxcpld_i2c_priv *priv, u8 offs,
197 u8 *data, u8 datalen)
198 {
199 u32 addr = priv->base_addr + offs;
200
201 switch (datalen) {
202 case 1:
203 outb(*(data), addr);
204 break;
205 case 2:
> 206 outw(*((u16 *)data), addr);
207 break;
208 case 3:
209 outw(*((u16 *)data), addr);

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation

Attachment: .config.gz
Description: Binary data