* drivers/spi/spi-fsi.c:404:1-20: iterator with update on line 466
@ 2020-09-02 9:17 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2020-09-02 9:17 UTC (permalink / raw
To: kbuild
[-- Attachment #1: Type: text/plain, Size: 6768 bytes --]
CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Eddie James <eajames@linux.ibm.com>
CC: Mark Brown <broonie@kernel.org>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 9c7d619be5a002ea29c172df5e3c1227c22cbb41
commit: bbb6b2f9865b3ed23eb457131b9ea541a3173a66 spi: Add FSI-attached SPI controller driver
date: 6 months ago
:::::: branch date: 7 hours ago
:::::: commit date: 6 months ago
config: x86_64-randconfig-c002-20200901 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Julia Lawall <julia.lawall@lip6.fr>
coccinelle warnings: (new ones prefixed by >>)
>> drivers/spi/spi-fsi.c:404:1-20: iterator with update on line 466
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=bbb6b2f9865b3ed23eb457131b9ea541a3173a66
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout bbb6b2f9865b3ed23eb457131b9ea541a3173a66
vim +404 drivers/spi/spi-fsi.c
bbb6b2f9865b3e Eddie James 2020-03-06 395
bbb6b2f9865b3e Eddie James 2020-03-06 396 static int fsi_spi_transfer_one_message(struct spi_controller *ctlr,
bbb6b2f9865b3e Eddie James 2020-03-06 397 struct spi_message *mesg)
bbb6b2f9865b3e Eddie James 2020-03-06 398 {
bbb6b2f9865b3e Eddie James 2020-03-06 399 int rc = 0;
bbb6b2f9865b3e Eddie James 2020-03-06 400 u8 seq_slave = SPI_FSI_SEQUENCE_SEL_SLAVE(mesg->spi->chip_select + 1);
bbb6b2f9865b3e Eddie James 2020-03-06 401 struct spi_transfer *transfer;
bbb6b2f9865b3e Eddie James 2020-03-06 402 struct fsi_spi *ctx = spi_controller_get_devdata(ctlr);
bbb6b2f9865b3e Eddie James 2020-03-06 403
bbb6b2f9865b3e Eddie James 2020-03-06 @404 list_for_each_entry(transfer, &mesg->transfers, transfer_list) {
bbb6b2f9865b3e Eddie James 2020-03-06 405 struct fsi_spi_sequence seq;
bbb6b2f9865b3e Eddie James 2020-03-06 406 struct spi_transfer *next = NULL;
bbb6b2f9865b3e Eddie James 2020-03-06 407
bbb6b2f9865b3e Eddie James 2020-03-06 408 /* Sequencer must do shift out (tx) first. */
bbb6b2f9865b3e Eddie James 2020-03-06 409 if (!transfer->tx_buf ||
bbb6b2f9865b3e Eddie James 2020-03-06 410 transfer->len > SPI_FSI_MAX_TRANSFER_SIZE) {
bbb6b2f9865b3e Eddie James 2020-03-06 411 rc = -EINVAL;
bbb6b2f9865b3e Eddie James 2020-03-06 412 goto error;
bbb6b2f9865b3e Eddie James 2020-03-06 413 }
bbb6b2f9865b3e Eddie James 2020-03-06 414
bbb6b2f9865b3e Eddie James 2020-03-06 415 dev_dbg(ctx->dev, "Start tx of %d bytes.\n", transfer->len);
bbb6b2f9865b3e Eddie James 2020-03-06 416
bbb6b2f9865b3e Eddie James 2020-03-06 417 rc = fsi_spi_transfer_init(ctx);
bbb6b2f9865b3e Eddie James 2020-03-06 418 if (rc < 0)
bbb6b2f9865b3e Eddie James 2020-03-06 419 goto error;
bbb6b2f9865b3e Eddie James 2020-03-06 420
bbb6b2f9865b3e Eddie James 2020-03-06 421 fsi_spi_sequence_init(&seq);
bbb6b2f9865b3e Eddie James 2020-03-06 422 fsi_spi_sequence_add(&seq, seq_slave);
bbb6b2f9865b3e Eddie James 2020-03-06 423
bbb6b2f9865b3e Eddie James 2020-03-06 424 rc = fsi_spi_sequence_transfer(ctx, &seq, transfer);
bbb6b2f9865b3e Eddie James 2020-03-06 425 if (rc)
bbb6b2f9865b3e Eddie James 2020-03-06 426 goto error;
bbb6b2f9865b3e Eddie James 2020-03-06 427
bbb6b2f9865b3e Eddie James 2020-03-06 428 if (!list_is_last(&transfer->transfer_list,
bbb6b2f9865b3e Eddie James 2020-03-06 429 &mesg->transfers)) {
bbb6b2f9865b3e Eddie James 2020-03-06 430 next = list_next_entry(transfer, transfer_list);
bbb6b2f9865b3e Eddie James 2020-03-06 431
bbb6b2f9865b3e Eddie James 2020-03-06 432 /* Sequencer can only do shift in (rx) after tx. */
bbb6b2f9865b3e Eddie James 2020-03-06 433 if (next->rx_buf) {
bbb6b2f9865b3e Eddie James 2020-03-06 434 if (next->len > SPI_FSI_MAX_TRANSFER_SIZE) {
bbb6b2f9865b3e Eddie James 2020-03-06 435 rc = -EINVAL;
bbb6b2f9865b3e Eddie James 2020-03-06 436 goto error;
bbb6b2f9865b3e Eddie James 2020-03-06 437 }
bbb6b2f9865b3e Eddie James 2020-03-06 438
bbb6b2f9865b3e Eddie James 2020-03-06 439 dev_dbg(ctx->dev, "Sequence rx of %d bytes.\n",
bbb6b2f9865b3e Eddie James 2020-03-06 440 next->len);
bbb6b2f9865b3e Eddie James 2020-03-06 441
bbb6b2f9865b3e Eddie James 2020-03-06 442 rc = fsi_spi_sequence_transfer(ctx, &seq,
bbb6b2f9865b3e Eddie James 2020-03-06 443 next);
bbb6b2f9865b3e Eddie James 2020-03-06 444 if (rc)
bbb6b2f9865b3e Eddie James 2020-03-06 445 goto error;
bbb6b2f9865b3e Eddie James 2020-03-06 446 } else {
bbb6b2f9865b3e Eddie James 2020-03-06 447 next = NULL;
bbb6b2f9865b3e Eddie James 2020-03-06 448 }
bbb6b2f9865b3e Eddie James 2020-03-06 449 }
bbb6b2f9865b3e Eddie James 2020-03-06 450
bbb6b2f9865b3e Eddie James 2020-03-06 451 fsi_spi_sequence_add(&seq, SPI_FSI_SEQUENCE_SEL_SLAVE(0));
bbb6b2f9865b3e Eddie James 2020-03-06 452
bbb6b2f9865b3e Eddie James 2020-03-06 453 rc = fsi_spi_write_reg(ctx, SPI_FSI_SEQUENCE, seq.data);
bbb6b2f9865b3e Eddie James 2020-03-06 454 if (rc)
bbb6b2f9865b3e Eddie James 2020-03-06 455 goto error;
bbb6b2f9865b3e Eddie James 2020-03-06 456
bbb6b2f9865b3e Eddie James 2020-03-06 457 rc = fsi_spi_transfer_data(ctx, transfer);
bbb6b2f9865b3e Eddie James 2020-03-06 458 if (rc)
bbb6b2f9865b3e Eddie James 2020-03-06 459 goto error;
bbb6b2f9865b3e Eddie James 2020-03-06 460
bbb6b2f9865b3e Eddie James 2020-03-06 461 if (next) {
bbb6b2f9865b3e Eddie James 2020-03-06 462 rc = fsi_spi_transfer_data(ctx, next);
bbb6b2f9865b3e Eddie James 2020-03-06 463 if (rc)
bbb6b2f9865b3e Eddie James 2020-03-06 464 goto error;
bbb6b2f9865b3e Eddie James 2020-03-06 465
bbb6b2f9865b3e Eddie James 2020-03-06 @466 transfer = next;
bbb6b2f9865b3e Eddie James 2020-03-06 467 }
bbb6b2f9865b3e Eddie James 2020-03-06 468 }
bbb6b2f9865b3e Eddie James 2020-03-06 469
bbb6b2f9865b3e Eddie James 2020-03-06 470 error:
bbb6b2f9865b3e Eddie James 2020-03-06 471 mesg->status = rc;
bbb6b2f9865b3e Eddie James 2020-03-06 472 spi_finalize_current_message(ctlr);
bbb6b2f9865b3e Eddie James 2020-03-06 473
bbb6b2f9865b3e Eddie James 2020-03-06 474 return rc;
bbb6b2f9865b3e Eddie James 2020-03-06 475 }
bbb6b2f9865b3e Eddie James 2020-03-06 476
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 34457 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2020-09-02 9:17 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-09-02 9:17 drivers/spi/spi-fsi.c:404:1-20: iterator with update on line 466 kernel 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.