tree: https://github.com/Xilinx/linux-xlnx xlnx_rebase_v5.10 head: cd1a972ed275ace731d851a8c88f575456262e75 commit: 14b43d6a7f3c4f09ad4a2eab1dd20df757c07154 [767/1745] spi: spi-xilinx: Updated axi-qspi controller driver config: arm-defconfig (attached as .config) compiler: arm-linux-gnueabi-gcc (GCC) 9.3.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 # https://github.com/Xilinx/linux-xlnx/commit/14b43d6a7f3c4f09ad4a2eab1dd20df757c07154 git remote add xlnx https://github.com/Xilinx/linux-xlnx git fetch --no-tags xlnx xlnx_rebase_v5.10 git checkout 14b43d6a7f3c4f09ad4a2eab1dd20df757c07154 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot Note: the xlnx/xlnx_rebase_v5.10 HEAD cd1a972ed275ace731d851a8c88f575456262e75 builds fine. It only hurts bisectibility. All errors (new ones prefixed by >>): drivers/spi/spi-xilinx.c: In function 'xspi_start_transfer': >> drivers/spi/spi-xilinx.c:407:14: error: 'struct spi_transfer' has no member named 'dummy' 407 | if (transfer->dummy) { | ^~ drivers/spi/spi-xilinx.c:408:56: error: 'struct spi_transfer' has no member named 'dummy' 408 | xqspi->bytes_to_transfer = (transfer->len - (transfer->dummy / 8)) | ^~ drivers/spi/spi-xilinx.c:409:20: error: 'struct spi_transfer' has no member named 'dummy' 409 | + ((transfer->dummy / 8) * | ^~ drivers/spi/spi-xilinx.c:411:55: error: 'struct spi_transfer' has no member named 'dummy' 411 | xqspi->bytes_to_receive = (transfer->len - (transfer->dummy / 8)) | ^~ drivers/spi/spi-xilinx.c:412:20: error: 'struct spi_transfer' has no member named 'dummy' 412 | + ((transfer->dummy / 8) * | ^~ vim +407 drivers/spi/spi-xilinx.c 382 383 /** 384 * xspi_start_transfer - Initiates the SPI transfer 385 * @master: Pointer to the spi_master structure which provides 386 * information about the controller. 387 * @qspi: Pointer to the spi_device structure 388 * @transfer: Pointer to the spi_transfer structure which provide information 389 * about next transfer parameters 390 * 391 * This function fills the TX FIFO, starts the SPI transfer, and waits for the 392 * transfer to be completed. 393 * 394 * Return: Number of bytes transferred in the last transfer 395 */ 396 397 static int xspi_start_transfer(struct spi_master *master, 398 struct spi_device *qspi, 399 struct spi_transfer *transfer) 400 { 401 struct xilinx_spi *xqspi = spi_master_get_devdata(master); 402 u32 cr; 403 404 xqspi->tx_ptr = transfer->tx_buf; 405 xqspi->rx_ptr = transfer->rx_buf; 406 > 407 if (transfer->dummy) { 408 xqspi->bytes_to_transfer = (transfer->len - (transfer->dummy / 8)) 409 + ((transfer->dummy / 8) * 410 xqspi->rx_bus_width); 411 xqspi->bytes_to_receive = (transfer->len - (transfer->dummy / 8)) 412 + ((transfer->dummy / 8) * 413 xqspi->rx_bus_width); 414 } else { 415 xqspi->bytes_to_transfer = transfer->len; 416 xqspi->bytes_to_receive = transfer->len; 417 } 418 419 xilinx_spi_setup_transfer(qspi, transfer); 420 cr = xqspi->read_fn(xqspi->regs + XSPI_CR_OFFSET); 421 /* Enable master transaction inhibit */ 422 cr |= XSPI_CR_TRANS_INHIBIT; 423 xqspi->write_fn(cr, xqspi->regs + XSPI_CR_OFFSET); 424 xqspi->tx_fifo(xqspi); 425 /* Disable master transaction inhibit */ 426 cr &= ~XSPI_CR_TRANS_INHIBIT; 427 xqspi->write_fn(cr, xqspi->regs + XSPI_CR_OFFSET); 428 xqspi->write_fn(XIPIF_V123B_GINTR_ENABLE, 429 xqspi->regs + XIPIF_V123B_DGIER_OFFSET); 430 431 return transfer->len; 432 } 433 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org