Hi Eberhard,
kernel test robot noticed the following build warnings:
[auto build test WARNING on 05d3ef8bba77c1b5f98d941d8b2d4aeab8118ef1]
url: https://github.com/intel-lab-lkp/linux/commits/Eberhard-Stoll/spi-Add-parame... base: 05d3ef8bba77c1b5f98d941d8b2d4aeab8118ef1 patch link: https://lore.kernel.org/r/20231026152316.2729575-5-estl%40gmx.net patch subject: [PATCH 4/4] spi: spi-fsl-qspi: Add support for rx data sample point adjustment config: m68k-allyesconfig (https://download.01.org/0day-ci/archive/20231027/202310270332.mcbckKCr-lkp@i...) compiler: m68k-linux-gcc (GCC) 13.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231027/202310270332.mcbckKCr-lkp@i...)
If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot lkp@intel.com | Closes: https://lore.kernel.org/oe-kbuild-all/202310270332.mcbckKCr-lkp@intel.com/
All warnings (new ones prefixed by >>):
drivers/spi/spi-fsl-qspi.c: In function 'fsl_qspi_select_mem':
drivers/spi/spi-fsl-qspi.c:558:38: warning: suggest parentheses around comparison in operand of '|' [-Wparentheses]
558 | if (chip->rx_sample_delay_ns != spi->rx_sample_delay_ns | | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
vim +558 drivers/spi/spi-fsl-qspi.c
550 551 static void fsl_qspi_select_mem(struct fsl_qspi *q, struct spi_device *spi) 552 { 553 unsigned long rate = spi->max_speed_hz; 554 int ret; 555 struct fsl_qspi_chip_data *chip = spi_get_ctldata(spi); 556 const char *sampling_ident = sampling_mode[0]; 557
558 if (chip->rx_sample_delay_ns != spi->rx_sample_delay_ns |
559 chip->rate != rate) { 560 chip->rx_sample_delay_ns = spi->rx_sample_delay_ns; 561 chip->rate = rate; 562 563 chip->smpr_sampling = 564 (2 * spi->rx_sample_delay_ns * (rate >> 10)) / (1000000000 >> 10); 565 dev_dbg(q->dev, "smpr_sampling = %u (delay %u ns)\n", 566 chip->smpr_sampling, spi->rx_sample_delay_ns); 567 568 if (chip->smpr_sampling > 3) { 569 dev_err(q->dev, "rx sample delay for device %s exceeds hw capabilities! Clamp value to maximum setting.\n", 570 dev_name(&spi->dev)); 571 chip->smpr_sampling = 3; 572 sampling_ident = "(I2 clamped to max)"; 573 } else { 574 sampling_ident = sampling_mode[chip->smpr_sampling]; 575 } 576 577 chip->smpr_sampling <<= 5; 578 dev_info(q->dev, "sampling point %s at %lu kHz used for device %s\n", 579 sampling_ident, rate / 1000, dev_name(&spi->dev)); 580 fsl_qspi_update_smpr_sampling(q, chip->smpr_sampling); 581 } 582 583 if (q->selected == spi_get_chipselect(spi, 0)) 584 return; 585 586 fsl_qspi_update_smpr_sampling(q, chip->smpr_sampling); 587 588 if (needs_4x_clock(q)) 589 rate *= 4; 590 591 fsl_qspi_clk_disable_unprep(q); 592 593 ret = clk_set_rate(q->clk, rate); 594 if (ret) 595 return; 596 597 ret = fsl_qspi_clk_prep_enable(q); 598 if (ret) 599 return; 600 601 q->selected = spi_get_chipselect(spi, 0); 602 603 fsl_qspi_invalidate(q); 604 } 605