* [gpio:gpio-descriptors-spi 14/14] drivers/spi/spi-pl022.c:451:27: error: no member named 'cur_cs' in 'struct pl022'; did you mean 'cur_msg'?
@ 2019-06-26 0:42 kbuild test robot
0 siblings, 0 replies; only message in thread
From: kbuild test robot @ 2019-06-26 0:42 UTC (permalink / raw)
To: Linus Walleij; +Cc: kbuild-all, linux-gpio
[-- Attachment #1: Type: text/plain, Size: 25732 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio.git gpio-descriptors-spi
head: d52781e8bf3600398a5da184d4df22072a8e5e57
commit: d52781e8bf3600398a5da184d4df22072a8e5e57 [14/14] slask
config: arm64-defconfig (attached as .config)
compiler: clang version 9.0.0 (git://gitmirror/llvm_project fee855b5bc1abe1f3f89e977ce4c81cf9bdbc2e4)
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout d52781e8bf3600398a5da184d4df22072a8e5e57
# save the attached .config to linux build tree
make.cross ARCH=arm64
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
>> drivers/spi/spi-pl022.c:451:27: error: no member named 'cur_cs' in 'struct pl022'; did you mean 'cur_msg'?
tmp &= ~(1UL << (pl022->cur_cs));
^~~~~~
cur_msg
drivers/spi/spi-pl022.c:379:22: note: 'cur_msg' declared here
struct spi_message *cur_msg;
^
>> drivers/spi/spi-pl022.c:451:16: error: invalid operands to binary expression ('unsigned long' and 'struct spi_message *')
tmp &= ~(1UL << (pl022->cur_cs));
~~~ ^ ~~~~~~~~~~~~~~~
drivers/spi/spi-pl022.c:453:26: error: no member named 'cur_cs' in 'struct pl022'; did you mean 'cur_msg'?
tmp |= (1UL << (pl022->cur_cs));
^~~~~~
cur_msg
drivers/spi/spi-pl022.c:379:22: note: 'cur_msg' declared here
struct spi_message *cur_msg;
^
drivers/spi/spi-pl022.c:453:15: error: invalid operands to binary expression ('unsigned long' and 'struct spi_message *')
tmp |= (1UL << (pl022->cur_cs));
~~~ ^ ~~~~~~~~~~~~~~~
>> drivers/spi/spi-pl022.c:502:4: error: implicit declaration of function 'pl022_cs_control' [-Werror,-Wimplicit-function-declaration]
pl022_cs_control(pl022, SSP_CHIP_DESELECT);
^
drivers/spi/spi-pl022.c:843:3: error: implicit declaration of function 'pl022_cs_control' [-Werror,-Wimplicit-function-declaration]
pl022_cs_control(pl022, SSP_CHIP_DESELECT);
^
drivers/spi/spi-pl022.c:1314:4: error: implicit declaration of function 'pl022_cs_control' [-Werror,-Wimplicit-function-declaration]
pl022_cs_control(pl022, SSP_CHIP_DESELECT);
^
drivers/spi/spi-pl022.c:1397:4: error: implicit declaration of function 'pl022_cs_control' [-Werror,-Wimplicit-function-declaration]
pl022_cs_control(pl022, SSP_CHIP_SELECT);
^
drivers/spi/spi-pl022.c:1436:3: error: implicit declaration of function 'pl022_cs_control' [-Werror,-Wimplicit-function-declaration]
pl022_cs_control(pl022, SSP_CHIP_SELECT);
^
drivers/spi/spi-pl022.c:1510:5: error: implicit declaration of function 'pl022_cs_control' [-Werror,-Wimplicit-function-declaration]
pl022_cs_control(pl022, SSP_CHIP_SELECT);
^
drivers/spi/spi-pl022.c:1515:5: error: implicit declaration of function 'pl022_cs_control' [-Werror,-Wimplicit-function-declaration]
pl022_cs_control(pl022, SSP_CHIP_SELECT);
^
drivers/spi/spi-pl022.c:1551:4: error: implicit declaration of function 'pl022_cs_control' [-Werror,-Wimplicit-function-declaration]
pl022_cs_control(pl022, SSP_CHIP_DESELECT);
^
>> drivers/spi/spi-pl022.c:1580:25: error: no member named 'chipselects' in 'struct pl022'
pl022->cur_cs = pl022->chipselects[msg->spi->chip_select];
~~~~~ ^
drivers/spi/spi-pl022.c:1580:9: error: no member named 'cur_cs' in 'struct pl022'; did you mean 'cur_msg'?
pl022->cur_cs = pl022->chipselects[msg->spi->chip_select];
^~~~~~
cur_msg
drivers/spi/spi-pl022.c:379:22: note: 'cur_msg' declared here
struct spi_message *cur_msg;
^
>> drivers/spi/spi-pl022.c:1861:4: error: implicit declaration of function 'of_property_read_u32' [-Werror,-Wimplicit-function-declaration]
of_property_read_u32(np, "pl022,interface",
^
>> drivers/spi/spi-pl022.c:1923:7: error: implicit declaration of function 'gpio_is_valid' [-Werror,-Wimplicit-function-declaration]
if (!gpio_is_valid(pl022->chipselects[spi->chip_select]))
^
drivers/spi/spi-pl022.c:1923:7: note: did you mean 'uuid_is_valid'?
include/linux/uuid.h:79:46: note: 'uuid_is_valid' declared here
bool __attribute__((__warn_unused_result__)) uuid_is_valid(const char *uuid);
^
drivers/spi/spi-pl022.c:1923:28: error: no member named 'chipselects' in 'struct pl022'
if (!gpio_is_valid(pl022->chipselects[spi->chip_select]))
~~~~~ ^
drivers/spi/spi-pl022.c:2086:2: error: implicit declaration of function 'of_property_read_u32' [-Werror,-Wimplicit-function-declaration]
of_property_read_u32(np, "num-cs", &tmp);
^
>> drivers/spi/spi-pl022.c:2090:11: error: implicit declaration of function 'of_property_read_bool' [-Werror,-Wimplicit-function-declaration]
pd->rt = of_property_read_bool(np, "pl022,rt");
^
drivers/spi/spi-pl022.c:2090:11: note: did you mean 'of_property_read_u32'?
drivers/spi/spi-pl022.c:1861:4: note: 'of_property_read_u32' declared here
of_property_read_u32(np, "pl022,interface",
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
vim +451 drivers/spi/spi-pl022.c
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 338
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 339 /**
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 340 * struct pl022 - This is the private SSP driver data structure
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 341 * @adev: AMBA device model hookup
12e8b325f drivers/spi/amba-pl022.c Linus Walleij 2011-02-08 342 * @vendor: vendor data for the IP block
12e8b325f drivers/spi/amba-pl022.c Linus Walleij 2011-02-08 343 * @phybase: the physical memory where the SSP device resides
12e8b325f drivers/spi/amba-pl022.c Linus Walleij 2011-02-08 344 * @virtbase: the virtual memory where the SSP is mapped
12e8b325f drivers/spi/amba-pl022.c Linus Walleij 2011-02-08 345 * @clk: outgoing clock "SPICLK" for the SPI bus
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 346 * @master: SPI framework hookup
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 347 * @master_info: controller-specific data from machine setup
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 348 * @pump_transfers: Tasklet used in Interrupt Transfer mode
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 349 * @cur_msg: Pointer to current spi_message being processed
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 350 * @cur_transfer: Pointer to current spi_transfer
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 351 * @cur_chip: pointer to current clients chip(assigned from controller_state)
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 352 * @next_msg_cs_active: the next message in the queue has been examined
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 353 * and it was found that it uses the same chip select as the previous
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 354 * message, so we left it active after the previous transfer, and it's
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 355 * active already.
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 356 * @tx: current position in TX buffer to be read
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 357 * @tx_end: end position in TX buffer to be read
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 358 * @rx: current position in RX buffer to be written
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 359 * @rx_end: end position in RX buffer to be written
12e8b325f drivers/spi/amba-pl022.c Linus Walleij 2011-02-08 360 * @read: the type of read currently going on
12e8b325f drivers/spi/amba-pl022.c Linus Walleij 2011-02-08 361 * @write: the type of write currently going on
12e8b325f drivers/spi/amba-pl022.c Linus Walleij 2011-02-08 362 * @exp_fifo_level: expected FIFO level
12e8b325f drivers/spi/amba-pl022.c Linus Walleij 2011-02-08 363 * @dma_rx_channel: optional channel for RX DMA
12e8b325f drivers/spi/amba-pl022.c Linus Walleij 2011-02-08 364 * @dma_tx_channel: optional channel for TX DMA
12e8b325f drivers/spi/amba-pl022.c Linus Walleij 2011-02-08 365 * @sgt_rx: scattertable for the RX transfer
12e8b325f drivers/spi/amba-pl022.c Linus Walleij 2011-02-08 366 * @sgt_tx: scattertable for the TX transfer
12e8b325f drivers/spi/amba-pl022.c Linus Walleij 2011-02-08 367 * @dummypage: a dummy page used for driving data on the bus with DMA
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 368 */
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 369 struct pl022 {
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 370 struct amba_device *adev;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 371 struct vendor_data *vendor;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 372 resource_size_t phybase;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 373 void __iomem *virtbase;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 374 struct clk *clk;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 375 struct spi_master *master;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 376 struct pl022_ssp_controller *master_info;
ffbbdd213 drivers/spi/spi-pl022.c Linus Walleij 2012-02-22 377 /* Message per-transfer pump */
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 378 struct tasklet_struct pump_transfers;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 @379 struct spi_message *cur_msg;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 380 struct spi_transfer *cur_transfer;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 381 struct chip_data *cur_chip;
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 382 bool next_msg_cs_active;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 383 void *tx;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 384 void *tx_end;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 385 void *rx;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 386 void *rx_end;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 387 enum ssp_reading read;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 388 enum ssp_writing write;
fc05475f8 drivers/spi/amba-pl022.c Linus Walleij 2010-01-22 389 u32 exp_fifo_level;
083be3f05 drivers/spi/spi-pl022.c Linus Walleij 2011-06-16 390 enum ssp_rx_level_trig rx_lev_trig;
083be3f05 drivers/spi/spi-pl022.c Linus Walleij 2011-06-16 391 enum ssp_tx_level_trig tx_lev_trig;
b1b6b9aa6 drivers/spi/amba-pl022.c Linus Walleij 2010-09-29 392 /* DMA settings */
b1b6b9aa6 drivers/spi/amba-pl022.c Linus Walleij 2010-09-29 393 #ifdef CONFIG_DMA_ENGINE
b1b6b9aa6 drivers/spi/amba-pl022.c Linus Walleij 2010-09-29 394 struct dma_chan *dma_rx_channel;
b1b6b9aa6 drivers/spi/amba-pl022.c Linus Walleij 2010-09-29 395 struct dma_chan *dma_tx_channel;
b1b6b9aa6 drivers/spi/amba-pl022.c Linus Walleij 2010-09-29 396 struct sg_table sgt_rx;
b1b6b9aa6 drivers/spi/amba-pl022.c Linus Walleij 2010-09-29 397 struct sg_table sgt_tx;
b1b6b9aa6 drivers/spi/amba-pl022.c Linus Walleij 2010-09-29 398 char *dummypage;
ffbbdd213 drivers/spi/spi-pl022.c Linus Walleij 2012-02-22 399 bool dma_running;
b1b6b9aa6 drivers/spi/amba-pl022.c Linus Walleij 2010-09-29 400 #endif
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 401 };
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 402
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 403 /**
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 404 * struct chip_data - To maintain runtime state of SSP for each client chip
556f4aeb7 drivers/spi/amba-pl022.c Linus Walleij 2010-05-05 405 * @cr0: Value of control register CR0 of SSP - on later ST variants this
556f4aeb7 drivers/spi/amba-pl022.c Linus Walleij 2010-05-05 406 * register is 32 bits wide rather than just 16
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 407 * @cr1: Value of control register CR1 of SSP
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 408 * @dmacr: Value of DMA control Register of SSP
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 409 * @cpsr: Value of Clock prescale register
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 410 * @n_bytes: how many bytes(power of 2) reqd for a given data width of client
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 411 * @enable_dma: Whether to enable DMA or not
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 412 * @read: function ptr to be used to read when doing xfer for this chip
12e8b325f drivers/spi/amba-pl022.c Linus Walleij 2011-02-08 413 * @write: function ptr to be used to write when doing xfer for this chip
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 414 * @xfer_type: polling/interrupt/DMA
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 415 *
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 416 * Runtime state of the SSP controller, maintained per chip,
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 417 * This would be set according to the current message that would be served
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 418 */
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 419 struct chip_data {
556f4aeb7 drivers/spi/amba-pl022.c Linus Walleij 2010-05-05 420 u32 cr0;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 421 u16 cr1;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 422 u16 dmacr;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 423 u16 cpsr;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 424 u8 n_bytes;
b1b6b9aa6 drivers/spi/amba-pl022.c Linus Walleij 2010-09-29 425 bool enable_dma;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 426 enum ssp_reading read;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 427 enum ssp_writing write;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 428 int xfer_type;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 429 };
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 430
d52781e8b drivers/spi/spi-pl022.c Linus Walleij 2019-06-25 431 static void pl022_set_cs(struct spi_device *spi, bool enable)
db4fa45ed drivers/spi/spi-pl022.c Anders Berg 2014-09-17 432 {
d52781e8b drivers/spi/spi-pl022.c Linus Walleij 2019-06-25 433 struct pl022 *pl022 = spi_controller_get_devdata(spi->controller);
db4fa45ed drivers/spi/spi-pl022.c Anders Berg 2014-09-17 434 u32 tmp;
db4fa45ed drivers/spi/spi-pl022.c Anders Berg 2014-09-17 435
d52781e8b drivers/spi/spi-pl022.c Linus Walleij 2019-06-25 436 /*
d52781e8b drivers/spi/spi-pl022.c Linus Walleij 2019-06-25 437 * This callback will ONLY be called of no GPIO descriptors were found
d52781e8b drivers/spi/spi-pl022.c Linus Walleij 2019-06-25 438 * for the device, so we know we are dealing exclusively with variants
d52781e8b drivers/spi/spi-pl022.c Linus Walleij 2019-06-25 439 * that have internal CS control here, but just to be sure: extra check
d52781e8b drivers/spi/spi-pl022.c Linus Walleij 2019-06-25 440 * for now.
d52781e8b drivers/spi/spi-pl022.c Linus Walleij 2019-06-25 441 */
d52781e8b drivers/spi/spi-pl022.c Linus Walleij 2019-06-25 442 if (!pl022->vendor->internal_cs_ctrl) {
d52781e8b drivers/spi/spi-pl022.c Linus Walleij 2019-06-25 443 dev_err(&spi->dev,
d52781e8b drivers/spi/spi-pl022.c Linus Walleij 2019-06-25 444 "called internal CS control on unsupported device\n");
d52781e8b drivers/spi/spi-pl022.c Linus Walleij 2019-06-25 445 return;
d52781e8b drivers/spi/spi-pl022.c Linus Walleij 2019-06-25 446 }
d52781e8b drivers/spi/spi-pl022.c Linus Walleij 2019-06-25 447
d52781e8b drivers/spi/spi-pl022.c Linus Walleij 2019-06-25 448 /* We draw a line low here to imply we enable it */
db4fa45ed drivers/spi/spi-pl022.c Anders Berg 2014-09-17 449 tmp = readw(SSP_CSR(pl022->virtbase));
d52781e8b drivers/spi/spi-pl022.c Linus Walleij 2019-06-25 450 if (enable)
db4fa45ed drivers/spi/spi-pl022.c Anders Berg 2014-09-17 @451 tmp &= ~BIT(pl022->cur_cs);
db4fa45ed drivers/spi/spi-pl022.c Anders Berg 2014-09-17 452 else
db4fa45ed drivers/spi/spi-pl022.c Anders Berg 2014-09-17 453 tmp |= BIT(pl022->cur_cs);
db4fa45ed drivers/spi/spi-pl022.c Anders Berg 2014-09-17 454 writew(tmp, SSP_CSR(pl022->virtbase));
db4fa45ed drivers/spi/spi-pl022.c Anders Berg 2014-09-17 455 }
db4fa45ed drivers/spi/spi-pl022.c Anders Berg 2014-09-17 456
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 457 /**
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 458 * giveback - current spi_message is over, schedule next message and call
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 459 * callback of this message. Assumes that caller already
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 460 * set message->status; dma and pio irqs are blocked
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 461 * @pl022: SSP driver private data structure
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 462 */
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 463 static void giveback(struct pl022 *pl022)
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 464 {
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 465 struct spi_transfer *last_transfer;
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 466 pl022->next_msg_cs_active = false;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 467
23e2c2aa4 drivers/spi/spi-pl022.c Axel Lin 2014-02-12 468 last_transfer = list_last_entry(&pl022->cur_msg->transfers,
23e2c2aa4 drivers/spi/spi-pl022.c Axel Lin 2014-02-12 469 struct spi_transfer, transfer_list);
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 470
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 471 /* Delay if requested before any change in chip select */
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 472 if (last_transfer->delay_usecs)
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 473 /*
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 474 * FIXME: This runs in interrupt context.
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 475 * Is this really smart?
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 476 */
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 477 udelay(last_transfer->delay_usecs);
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 478
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 479 if (!last_transfer->cs_change) {
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 480 struct spi_message *next_msg;
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 481
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 482 /*
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 483 * cs_change was not set. We can keep the chip select
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 484 * enabled if there is message in the queue and it is
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 485 * for the same spi device.
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 486 *
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 487 * We cannot postpone this until pump_messages, because
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 488 * after calling msg->complete (below) the driver that
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 489 * sent the current message could be unloaded, which
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 490 * could invalidate the cs_control() callback...
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 491 */
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 492 /* get a pointer to the next message, if any */
ffbbdd213 drivers/spi/spi-pl022.c Linus Walleij 2012-02-22 493 next_msg = spi_get_next_queued_message(pl022->master);
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 494
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 495 /*
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 496 * see if the next and current messages point
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 497 * to the same spi device.
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 498 */
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 499 if (next_msg && next_msg->spi != pl022->cur_msg->spi)
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 500 next_msg = NULL;
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 501 if (!next_msg || pl022->cur_msg->state == STATE_ERROR)
f6f46de10 drivers/spi/spi-pl022.c Roland Stigge 2012-08-22 @502 pl022_cs_control(pl022, SSP_CHIP_DESELECT);
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 503 else
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 504 pl022->next_msg_cs_active = true;
ffbbdd213 drivers/spi/spi-pl022.c Linus Walleij 2012-02-22 505
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 506 }
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 507
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 508 pl022->cur_msg = NULL;
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 509 pl022->cur_transfer = NULL;
8b8d71916 drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2011-11-10 510 pl022->cur_chip = NULL;
fd316941c drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2012-06-12 511
fd316941c drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2012-06-12 512 /* disable the SPI/SSP operation */
fd316941c drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2012-06-12 513 writew((readw(SSP_CR1(pl022->virtbase)) &
fd316941c drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2012-06-12 514 (~SSP_CR1_MASK_SSE)), SSP_CR1(pl022->virtbase));
fd316941c drivers/spi/spi-pl022.c Virupax Sadashivpetimath 2012-06-12 515
cd6fa8d2c drivers/spi/spi-pl022.c Alexander Sverdlin 2015-02-27 516 spi_finalize_current_message(pl022->master);
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 517 }
b43d65f7e drivers/spi/amba-pl022.c Linus Walleij 2009-06-09 518
:::::: The code at line 451 was first introduced by commit
:::::: db4fa45ed3182d8206af241811dfc99369ffa849 spi: pl022: Add support for chip select extension
:::::: TO: Anders Berg <anders.berg@avagotech.com>
:::::: CC: Mark Brown <broonie@kernel.org>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 44465 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2019-06-26 0:43 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-26 0:42 [gpio:gpio-descriptors-spi 14/14] drivers/spi/spi-pl022.c:451:27: error: no member named 'cur_cs' in 'struct pl022'; did you mean 'cur_msg'? kbuild 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.