CC: [email protected]
CC: [email protected]
TO: Vishal Sagar <[email protected]>
CC: Michal Simek <[email protected]>
CC: Hyun Kwon <[email protected]>

tree:   https://github.com/Xilinx/linux-xlnx master
head:   043f8a226a752a1dd11f7ff64cee6dbe7334d394
commit: c0b33b8ccd38096c815f2dd39746044d0aa079d3 [59/60] staging: xlnxsync: Fix 
the uapi header license
:::::: branch date: 9 months ago
:::::: commit date: 9 months ago
compiler: nios2-linux-gcc (GCC) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email protected]>


cppcheck possible warnings: (new ones prefixed by >>, may not real problems)

   drivers/mtd/spi-nor/spi-nor.c:4170:24: warning: Boolean result is used in 
bitwise operation. Clarify expression with parentheses. [clarifyCondition]
     map_id = map_id << 1 | !!(*buf & read_data_mask);
                          ^
>> drivers/mtd/spi-nor/spi-nor.c:5455:22: warning: Unused variable: np_spi 
>> [unusedVariable]
    struct device_node *np_spi;
                        ^
   drivers/mtd/spi-nor/spi-nor.c:5456:6: warning: Unused variable: is_dual 
[unusedVariable]
    u32 is_dual;
        ^

vim +5455 drivers/mtd/spi-nor/spi-nor.c

620df2497415a9 Tudor Ambarus           2019-08-24  5444  
cfc5604c488ccd Cyrille Pitchen         2017-04-25  5445  int 
spi_nor_scan(struct spi_nor *nor, const char *name,
cfc5604c488ccd Cyrille Pitchen         2017-04-25  5446                  const 
struct spi_nor_hwcaps *hwcaps)
b199489d37b21c Huang Shijie            2014-02-24  5447  {
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5448         struct 
flash_info *info = NULL;
b199489d37b21c Huang Shijie            2014-02-24  5449         struct device 
*dev = nor->dev;
1976367173a47f Brian Norris            2015-08-13  5450         struct mtd_info 
*mtd = &nor->mtd;
9c7d787508be6d Brian Norris            2015-10-30  5451         struct 
device_node *np = spi_nor_get_flash_node(nor);
1e35a56781b4b5 Tudor Ambarus           2019-08-23  5452         struct 
spi_nor_flash_parameter *params = &nor->params;
b199489d37b21c Huang Shijie            2014-02-24  5453         int ret;
b199489d37b21c Huang Shijie            2014-02-24  5454         int i;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19 @5455         struct 
device_node *np_spi;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5456         u32 is_dual;
b199489d37b21c Huang Shijie            2014-02-24  5457  
b199489d37b21c Huang Shijie            2014-02-24  5458         ret = 
spi_nor_check(nor);
b199489d37b21c Huang Shijie            2014-02-24  5459         if (ret)
b199489d37b21c Huang Shijie            2014-02-24  5460                 return 
ret;
b199489d37b21c Huang Shijie            2014-02-24  5461  
cfc5604c488ccd Cyrille Pitchen         2017-04-25  5462         /* Reset SPI 
protocol for all commands. */
cfc5604c488ccd Cyrille Pitchen         2017-04-25  5463         nor->reg_proto 
= SNOR_PROTO_1_1_1;
cfc5604c488ccd Cyrille Pitchen         2017-04-25  5464         nor->read_proto 
= SNOR_PROTO_1_1_1;
cfc5604c488ccd Cyrille Pitchen         2017-04-25  5465         
nor->write_proto = SNOR_PROTO_1_1_1;
cfc5604c488ccd Cyrille Pitchen         2017-04-25  5466  
f173f26a4d543f Vignesh Raghavendra     2019-08-06  5467         /*
f173f26a4d543f Vignesh Raghavendra     2019-08-06  5468          * We need the 
bounce buffer early to read/write registers when going
f173f26a4d543f Vignesh Raghavendra     2019-08-06  5469          * through the 
spi-mem layer (buffers have to be DMA-able).
b35b9a10362d20 Boris Brezillon         2019-08-06  5470          * For spi-mem 
drivers, we'll reallocate a new buffer if
b35b9a10362d20 Boris Brezillon         2019-08-06  5471          * 
nor->page_size turns out to be greater than PAGE_SIZE (which
b35b9a10362d20 Boris Brezillon         2019-08-06  5472          * shouldn't 
happen before long since NOR pages are usually less
b35b9a10362d20 Boris Brezillon         2019-08-06  5473          * than 1KB) 
after spi_nor_scan() returns.
f173f26a4d543f Vignesh Raghavendra     2019-08-06  5474          */
f173f26a4d543f Vignesh Raghavendra     2019-08-06  5475         
nor->bouncebuf_size = PAGE_SIZE;
f173f26a4d543f Vignesh Raghavendra     2019-08-06  5476         nor->bouncebuf 
= devm_kmalloc(dev, nor->bouncebuf_size,
f173f26a4d543f Vignesh Raghavendra     2019-08-06  5477                         
              GFP_KERNEL);
f173f26a4d543f Vignesh Raghavendra     2019-08-06  5478         if 
(!nor->bouncebuf)
f173f26a4d543f Vignesh Raghavendra     2019-08-06  5479                 return 
-ENOMEM;
f173f26a4d543f Vignesh Raghavendra     2019-08-06  5480  
620df2497415a9 Tudor Ambarus           2019-08-24  5481         info = 
spi_nor_get_flash_info(nor, name);
620df2497415a9 Tudor Ambarus           2019-08-24  5482         if 
(IS_ERR(info))
620df2497415a9 Tudor Ambarus           2019-08-24  5483                 return 
PTR_ERR(info);
b199489d37b21c Huang Shijie            2014-02-24  5484  
b296379fef7ce9 Boris Brezillon         2018-12-06  5485         nor->info = 
info;
b296379fef7ce9 Boris Brezillon         2018-12-06  5486  
dcc935b06f1f29 Zhuohao Lee             2019-08-28  5487         
spi_nor_debugfs_init(nor, info);
dcc935b06f1f29 Zhuohao Lee             2019-08-28  5488  
b199489d37b21c Huang Shijie            2014-02-24  5489         
mutex_init(&nor->lock);
b199489d37b21c Huang Shijie            2014-02-24  5490  
e99ca98f1d7190 Ricardo Ribalda Delgado 2016-12-02  5491         /*
e99ca98f1d7190 Ricardo Ribalda Delgado 2016-12-02  5492          * Make sure 
the XSR_RDY flag is set before calling
e99ca98f1d7190 Ricardo Ribalda Delgado 2016-12-02  5493          * 
spi_nor_wait_till_ready(). Xilinx S3AN share MFR
e99ca98f1d7190 Ricardo Ribalda Delgado 2016-12-02  5494          * with Atmel 
spi-nor
e99ca98f1d7190 Ricardo Ribalda Delgado 2016-12-02  5495          */
ad3bba06b63697 Boris Brezillon         2019-07-30  5496         if (info->flags 
& SPI_NOR_XSR_RDY)
e99ca98f1d7190 Ricardo Ribalda Delgado 2016-12-02  5497                 
nor->flags |=  SNOR_F_READY_XSR_RDY;
e99ca98f1d7190 Ricardo Ribalda Delgado 2016-12-02  5498  
dff972458acb05 Boris Brezillon         2019-08-24  5499         if (info->flags 
& SPI_NOR_HAS_LOCK)
dff972458acb05 Boris Brezillon         2019-08-24  5500                 
nor->flags |= SNOR_F_HAS_LOCK;
dff972458acb05 Boris Brezillon         2019-08-24  5501  
bc9834d82ffb13 Sai Krishna Potthuri    2019-12-26  5502         if 
((u16)JEDEC_MFR(nor->info) != SNOR_MFR_MICRON)
bc9834d82ffb13 Sai Krishna Potthuri    2019-12-26  5503                 
nor->flags |= SNOR_F_BROKEN_OCTAL_DDR;
bc9834d82ffb13 Sai Krishna Potthuri    2019-12-26  5504  
191f5c2ed4b6fa Tudor Ambarus           2019-06-10  5505         /*
191f5c2ed4b6fa Tudor Ambarus           2019-06-10  5506          * Atmel, SST, 
Intel/Numonyx, and others serial NOR tend to power up
191f5c2ed4b6fa Tudor Ambarus           2019-06-10  5507          * with the 
software protection bits set.
191f5c2ed4b6fa Tudor Ambarus           2019-06-10  5508          */
191f5c2ed4b6fa Tudor Ambarus           2019-06-10  5509         if 
(JEDEC_MFR(nor->info) == SNOR_MFR_ATMEL ||
191f5c2ed4b6fa Tudor Ambarus           2019-06-10  5510             
JEDEC_MFR(nor->info) == SNOR_MFR_INTEL ||
191f5c2ed4b6fa Tudor Ambarus           2019-06-10  5511             
JEDEC_MFR(nor->info) == SNOR_MFR_SST ||
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5512             
nor->info->flags & SPI_NOR_HAS_LOCK) {
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5513                 
write_enable(nor);
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5514                 
write_sr(nor, 0);
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5515                 if 
(info->flags & SST_GLOBAL_PROT_UNLK) {
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5516                         
write_enable(nor);
abd3edf0a1c724 Amit Kumar Mahapatra    2020-02-17  5517                         
if (nor->spimem) {
abd3edf0a1c724 Amit Kumar Mahapatra    2020-02-17  5518                         
        struct spi_mem_op op =
abd3edf0a1c724 Amit Kumar Mahapatra    2020-02-17  5519                         
                SPI_MEM_OP(SPI_MEM_OP_CMD(GLOBAL_BLKPROT_UNLK, 1),
abd3edf0a1c724 Amit Kumar Mahapatra    2020-02-17  5520                         
                           SPI_MEM_OP_NO_ADDR,
abd3edf0a1c724 Amit Kumar Mahapatra    2020-02-17  5521                         
                           SPI_MEM_OP_NO_DUMMY,
abd3edf0a1c724 Amit Kumar Mahapatra    2020-02-17  5522                         
                           SPI_MEM_OP_NO_DATA);
abd3edf0a1c724 Amit Kumar Mahapatra    2020-02-17  5523  
abd3edf0a1c724 Amit Kumar Mahapatra    2020-02-17  5524                         
        spi_mem_exec_op(nor->spimem, &op);
abd3edf0a1c724 Amit Kumar Mahapatra    2020-02-17  5525                         
} else {
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5526                         
        /* Unlock global write protection bits */
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5527                         
        nor->write_reg(nor, GLOBAL_BLKPROT_UNLK, NULL, 0);
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5528                         
}
abd3edf0a1c724 Amit Kumar Mahapatra    2020-02-17  5529                 }
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5530                 
spi_nor_wait_till_ready(nor);
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5531         }
191f5c2ed4b6fa Tudor Ambarus           2019-06-10  5532  
1c1d8d98e1c706 Tudor Ambarus           2019-08-24  5533         /* Init flash 
parameters based on flash_info struct and SFDP */
1c1d8d98e1c706 Tudor Ambarus           2019-08-24  5534         
spi_nor_init_params(nor);
cfc5604c488ccd Cyrille Pitchen         2017-04-25  5535  
32f1b7c8352fd3 Rafał Miłecki           2014-09-28  5536         if (!mtd->name)
b199489d37b21c Huang Shijie            2014-02-24  5537                 
mtd->name = dev_name(dev);
c9ec3900abf279 Brian Norris            2015-08-13  5538         mtd->priv = nor;
b199489d37b21c Huang Shijie            2014-02-24  5539         mtd->type = 
MTD_NORFLASH;
b199489d37b21c Huang Shijie            2014-02-24  5540         mtd->writesize 
= 1;
b199489d37b21c Huang Shijie            2014-02-24  5541         mtd->flags = 
MTD_CAP_NORFLASH;
1e35a56781b4b5 Tudor Ambarus           2019-08-23  5542         mtd->size = 
params->size;
b199489d37b21c Huang Shijie            2014-02-24  5543         mtd->_erase = 
spi_nor_erase;
b199489d37b21c Huang Shijie            2014-02-24  5544         mtd->_read = 
spi_nor_read;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5545         nor->page_size 
= params->page_size;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5546  #ifdef CONFIG_OF
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5547         np_spi = 
of_get_next_parent(np);
e48e22ba9df304 Amit Kumar Mahapatra    2020-01-19  5548         if 
(((of_property_match_string(np_spi, "compatible",
e48e22ba9df304 Amit Kumar Mahapatra    2020-01-19  5549                         
               "xlnx,zynq-qspi-1.0") >= 0) ||
e48e22ba9df304 Amit Kumar Mahapatra    2020-01-19  5550                 
(of_property_match_string(np_spi, "compatible",
e48e22ba9df304 Amit Kumar Mahapatra    2020-01-19  5551                         
        "xlnx,zynqmp-qspi-1.0") >= 0)) ||
e48e22ba9df304 Amit Kumar Mahapatra    2020-01-19  5552                 
(of_property_match_string(np_spi, "compatible",
e48e22ba9df304 Amit Kumar Mahapatra    2020-01-19  5553                         
        "xlnx,versal-qspi-1.0") >= 0)) {
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5554                 if 
(of_property_read_u32(np_spi, "is-dual",
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5555                         
                 &is_dual) < 0) {
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5556                         
/* Default to single if prop not defined */
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5557                         
nor->shift = 0;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5558                         
nor->isstacked = 0;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5559                         
nor->isparallel = 0;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5560                 } else {
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5561                         
if (is_dual == 1) {
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5562                         
        /* dual parallel */
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5563                         
        nor->shift = 1;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5564                         
        info->sector_size <<= nor->shift;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5565                         
        info->page_size <<= nor->shift;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5566                         
        mtd->size <<= nor->shift;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5567                         
        nor->isparallel = 1;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5568                         
        nor->isstacked = 0;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5569                         
        nor->spi->master->flags |=
e48e22ba9df304 Amit Kumar Mahapatra    2020-01-19  5570                         
                        (SPI_MASTER_DATA_STRIPE
e48e22ba9df304 Amit Kumar Mahapatra    2020-01-19  5571                         
                        | SPI_MASTER_BOTH_CS);
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5572                         
} else {
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5573  #ifdef 
CONFIG_SPI_ZYNQ_QSPI_DUAL_STACKED
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5574                         
        /* dual stacked */
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5575                         
        nor->shift = 0;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5576                         
        mtd->size <<= 1;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5577                         
        info->n_sectors <<= 1;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5578                         
        nor->isstacked = 1;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5579                         
        nor->isparallel = 0;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5580  #else
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5581                         
        u32 is_stacked;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5582  
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5583                         
        if (of_property_read_u32(np_spi,
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5584                         
                                 "is-stacked",
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5585                         
                                 &is_stacked) < 0) {
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5586                         
                is_stacked = 0;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5587                         
        }
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5588                         
        if (is_stacked) {
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5589                         
                /* dual stacked */
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5590                         
                nor->shift = 0;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5591                         
                mtd->size <<= 1;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5592                         
                info->n_sectors <<= 1;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5593                         
                nor->isstacked = 1;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5594                         
                nor->isparallel = 0;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5595                         
        } else {
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5596                         
                /* single */
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5597                         
                nor->shift = 0;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5598                         
                nor->isstacked = 0;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5599                         
                nor->isparallel = 0;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5600                         
        }
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5601  #endif
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5602                         
}
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5603                 }
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5604         }
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5605  #else
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5606         /* Default to 
single */
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5607         nor->shift = 0;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5608         nor->isstacked 
= 0;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5609         nor->isparallel 
= 0;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5610  #endif
d6084fc83c8249 Kamal Dasu              2017-08-22  5611         mtd->_resume = 
spi_nor_resume;
b199489d37b21c Huang Shijie            2014-02-24  5612  
dff972458acb05 Boris Brezillon         2019-08-24  5613         if 
(nor->params.locking_ops) {
b199489d37b21c Huang Shijie            2014-02-24  5614                 
mtd->_lock = spi_nor_lock;
b199489d37b21c Huang Shijie            2014-02-24  5615                 
mtd->_unlock = spi_nor_unlock;
5bf0e69b67a560 Brian Norris            2015-09-01  5616                 
mtd->_is_locked = spi_nor_is_locked;
b199489d37b21c Huang Shijie            2014-02-24  5617         }
b199489d37b21c Huang Shijie            2014-02-24  5618  
b199489d37b21c Huang Shijie            2014-02-24  5619         /* sst nor 
chips use AAI word program */
b199489d37b21c Huang Shijie            2014-02-24  5620         if (info->flags 
& SST_WRITE)
b199489d37b21c Huang Shijie            2014-02-24  5621                 
mtd->_write = sst_write;
b199489d37b21c Huang Shijie            2014-02-24  5622         else
b199489d37b21c Huang Shijie            2014-02-24  5623                 
mtd->_write = spi_nor_write;
b199489d37b21c Huang Shijie            2014-02-24  5624  
51983b7dcf3a50 Brian Norris            2014-09-10  5625         if (info->flags 
& USE_FSR)
51983b7dcf3a50 Brian Norris            2014-09-10  5626                 
nor->flags |= SNOR_F_USE_FSR;
3dd8012a8eeb37 Brian Norris            2016-01-29  5627         if (info->flags 
& SPI_NOR_HAS_TB)
3dd8012a8eeb37 Brian Norris            2016-01-29  5628                 
nor->flags |= SNOR_F_HAS_SR_TB;
2f5ad7f0f3e167 mar.krzeminski          2017-01-06  5629         if (info->flags 
& NO_CHIP_ERASE)
2f5ad7f0f3e167 mar.krzeminski          2017-01-06  5630                 
nor->flags |= SNOR_F_NO_OP_CHIP_ERASE;
c4b3eacc1dfef5 Alexander Sverdlin      2017-07-17  5631         if (info->flags 
& USE_CLSR)
c4b3eacc1dfef5 Alexander Sverdlin      2017-07-17  5632                 
nor->flags |= SNOR_F_USE_CLSR;
c14deddec1fbd8 [email protected]      2014-04-29  5633  
b199489d37b21c Huang Shijie            2014-02-24  5634         if (info->flags 
& SPI_NOR_NO_ERASE)
b199489d37b21c Huang Shijie            2014-02-24  5635                 
mtd->flags |= MTD_NO_ERASE;
b199489d37b21c Huang Shijie            2014-02-24  5636  
b199489d37b21c Huang Shijie            2014-02-24  5637         mtd->dev.parent 
= dev;
4a15e396e500a0 Amit Kumar Mahapatra    2020-01-19  5638         nor->jedec_id = 
info->id[0];
b199489d37b21c Huang Shijie            2014-02-24  5639         
mtd->writebufsize = nor->page_size;
b199489d37b21c Huang Shijie            2014-02-24  5640  
bb276262e88dae Brian Norris            2018-07-27  5641         if 
(of_property_read_bool(np, "broken-flash-reset"))
bb276262e88dae Brian Norris            2018-07-27  5642                 
nor->flags |= SNOR_F_BROKEN_RESET;
bb276262e88dae Brian Norris            2018-07-27  5643  
cfc5604c488ccd Cyrille Pitchen         2017-04-25  5644         /*
cfc5604c488ccd Cyrille Pitchen         2017-04-25  5645          * Configure 
the SPI memory:
cfc5604c488ccd Cyrille Pitchen         2017-04-25  5646          * - select op 
codes for (Fast) Read, Page Program and Sector Erase.
cfc5604c488ccd Cyrille Pitchen         2017-04-25  5647          * - set the 
number of dummy cycles (mode cycles + wait states).
cfc5604c488ccd Cyrille Pitchen         2017-04-25  5648          * - set the 
SPI protocols for register and memory accesses.
cfc5604c488ccd Cyrille Pitchen         2017-04-25  5649          */
1e35a56781b4b5 Tudor Ambarus           2019-08-23  5650         ret = 
spi_nor_setup(nor, hwcaps);
cfc5604c488ccd Cyrille Pitchen         2017-04-25  5651         if (ret)
b199489d37b21c Huang Shijie            2014-02-24  5652                 return 
ret;
b199489d37b21c Huang Shijie            2014-02-24  5653  
92094ebc385ef5 Boris Brezillon         2019-08-24  5654         if (info->flags 
& SPI_NOR_4B_OPCODES)
548ed6847f5303 Boris Brezillon         2018-12-06  5655                 
nor->flags |= SNOR_F_4B_OPCODES;
548ed6847f5303 Boris Brezillon         2018-12-06  5656  
696ce50f4e9377 Tudor Ambarus           2019-08-24  5657         ret = 
spi_nor_set_addr_width(nor);
696ce50f4e9377 Tudor Ambarus           2019-08-24  5658         if (ret)
696ce50f4e9377 Tudor Ambarus           2019-08-24  5659                 return 
ret;
c67cbb839da9cc Brian Norris            2015-11-10  5660  
46dde01f6bab35 Kamal Dasu              2017-08-22  5661         /* Send all the 
required SPI flash commands to initialize device */
46dde01f6bab35 Kamal Dasu              2017-08-22  5662         ret = 
spi_nor_init(nor);
46dde01f6bab35 Kamal Dasu              2017-08-22  5663         if (ret)
46dde01f6bab35 Kamal Dasu              2017-08-22  5664                 return 
ret;
46dde01f6bab35 Kamal Dasu              2017-08-22  5665  
06bb6f5a69dfc5 Rafał Miłecki           2015-08-10  5666         dev_info(dev, 
"%s (%lld Kbytes)\n", info->name,
b199489d37b21c Huang Shijie            2014-02-24  5667                         
(long long)mtd->size >> 10);
b199489d37b21c Huang Shijie            2014-02-24  5668  
b199489d37b21c Huang Shijie            2014-02-24  5669         dev_dbg(dev,
b199489d37b21c Huang Shijie            2014-02-24  5670                 "mtd 
.name = %s, .size = 0x%llx (%lldMiB), "
b199489d37b21c Huang Shijie            2014-02-24  5671                 
".erasesize = 0x%.8x (%uKiB) .numeraseregions = %d\n",
b199489d37b21c Huang Shijie            2014-02-24  5672                 
mtd->name, (long long)mtd->size, (long long)(mtd->size >> 20),
b199489d37b21c Huang Shijie            2014-02-24  5673                 
mtd->erasesize, mtd->erasesize / 1024, mtd->numeraseregions);
b199489d37b21c Huang Shijie            2014-02-24  5674  
bc9834d82ffb13 Sai Krishna Potthuri    2019-12-26  5675         if 
(hwcaps->mask & (SNOR_HWCAPS_READ_8_8_8 | SNOR_HWCAPS_PP_8_8_8)) {
bc9834d82ffb13 Sai Krishna Potthuri    2019-12-26  5676                 if 
(!(nor->flags & SNOR_F_BROKEN_OCTAL_DDR)) {
bc9834d82ffb13 Sai Krishna Potthuri    2019-12-26  5677                         
ret = spi_nor_switch_micron_octal_ddr(nor);
bc9834d82ffb13 Sai Krishna Potthuri    2019-12-26  5678                         
if (ret)
bc9834d82ffb13 Sai Krishna Potthuri    2019-12-26  5679                         
        return ret;
bc9834d82ffb13 Sai Krishna Potthuri    2019-12-26  5680                 }
bc9834d82ffb13 Sai Krishna Potthuri    2019-12-26  5681         }
bc9834d82ffb13 Sai Krishna Potthuri    2019-12-26  5682  
b199489d37b21c Huang Shijie            2014-02-24  5683         if 
(mtd->numeraseregions)
b199489d37b21c Huang Shijie            2014-02-24  5684                 for (i 
= 0; i < mtd->numeraseregions; i++)
b199489d37b21c Huang Shijie            2014-02-24  5685                         
dev_dbg(dev,
b199489d37b21c Huang Shijie            2014-02-24  5686                         
        "mtd.eraseregions[%d] = { .offset = 0x%llx, "
b199489d37b21c Huang Shijie            2014-02-24  5687                         
        ".erasesize = 0x%.8x (%uKiB), "
b199489d37b21c Huang Shijie            2014-02-24  5688                         
        ".numblocks = %d }\n",
b199489d37b21c Huang Shijie            2014-02-24  5689                         
        i, (long long)mtd->eraseregions[i].offset,
b199489d37b21c Huang Shijie            2014-02-24  5690                         
        mtd->eraseregions[i].erasesize,
b199489d37b21c Huang Shijie            2014-02-24  5691                         
        mtd->eraseregions[i].erasesize / 1024,
b199489d37b21c Huang Shijie            2014-02-24  5692                         
        mtd->eraseregions[i].numblocks);
b199489d37b21c Huang Shijie            2014-02-24  5693         return 0;
b199489d37b21c Huang Shijie            2014-02-24  5694  }
b61834b0d0ed50 Brian Norris            2014-04-08  5695  
EXPORT_SYMBOL_GPL(spi_nor_scan);
b199489d37b21c Huang Shijie            2014-02-24  5696  

:::::: The code at line 5455 was first introduced by commit
:::::: 4a15e396e500a03a854a3a7de0b8df38af2dcf9d mtd: spi-nor: Add dual parallel 
and stacked support for Zynq QSPI controller

:::::: TO: Amit Kumar Mahapatra <[email protected]>
:::::: CC: Michal Simek <[email protected]>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]
_______________________________________________
kbuild mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to