[tj-libata:for-4.14 8/10] drivers/ata/pata_ftide010.c:376:31: error: assignment of member 'flags' in read-only object

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



tree:   https://git.kernel.org/pub/scm/linux/kernel/git/tj/libata.git for-4.14
head:   1916a98f8d0c84065b2f73aa571ccebafb63e90f
commit: 8ab84a8d2ae554f248d3e59b5ad8242e2352b4c1 [8/10] ata: ftide010: constify ata_port_info
config: arm-allmodconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (Debian 6.1.1-9) 6.1.1 20160705
reproduce:
        wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout 8ab84a8d2ae554f248d3e59b5ad8242e2352b4c1
        # save the attached .config to linux build tree
        make.cross ARCH=arm 

All errors (new ones prefixed by >>):

   drivers/ata/pata_ftide010.c: In function 'pata_ftide010_gemini_init':
>> drivers/ata/pata_ftide010.c:376:31: error: assignment of member 'flags' in read-only object
      ftide010_port_info[0].flags |= ATA_FLAG_SATA;
                                  ^~

vim +/flags +376 drivers/ata/pata_ftide010.c

be4e456e Linus Walleij 2017-06-04  350  
be4e456e Linus Walleij 2017-06-04  351  static int pata_ftide010_gemini_init(struct ftide010 *ftide,
be4e456e Linus Walleij 2017-06-04  352  				     bool is_ata1)
be4e456e Linus Walleij 2017-06-04  353  {
be4e456e Linus Walleij 2017-06-04  354  	struct device *dev = ftide->dev;
be4e456e Linus Walleij 2017-06-04  355  	struct sata_gemini *sg;
be4e456e Linus Walleij 2017-06-04  356  	enum gemini_muxmode muxmode;
be4e456e Linus Walleij 2017-06-04  357  
be4e456e Linus Walleij 2017-06-04  358  	/* Look up SATA bridge */
be4e456e Linus Walleij 2017-06-04  359  	sg = gemini_sata_bridge_get();
be4e456e Linus Walleij 2017-06-04  360  	if (IS_ERR(sg))
be4e456e Linus Walleij 2017-06-04  361  		return PTR_ERR(sg);
be4e456e Linus Walleij 2017-06-04  362  	ftide->sg = sg;
be4e456e Linus Walleij 2017-06-04  363  
be4e456e Linus Walleij 2017-06-04  364  	muxmode = gemini_sata_get_muxmode(sg);
be4e456e Linus Walleij 2017-06-04  365  
be4e456e Linus Walleij 2017-06-04  366  	/* Special ops */
be4e456e Linus Walleij 2017-06-04  367  	pata_ftide010_port_ops.port_start =
be4e456e Linus Walleij 2017-06-04  368  		pata_ftide010_gemini_port_start;
be4e456e Linus Walleij 2017-06-04  369  	pata_ftide010_port_ops.port_stop =
be4e456e Linus Walleij 2017-06-04  370  		pata_ftide010_gemini_port_stop;
be4e456e Linus Walleij 2017-06-04  371  	pata_ftide010_port_ops.cable_detect =
be4e456e Linus Walleij 2017-06-04  372  		pata_ftide010_gemini_cable_detect;
be4e456e Linus Walleij 2017-06-04  373  
be4e456e Linus Walleij 2017-06-04  374  	/* Flag port as SATA-capable */
be4e456e Linus Walleij 2017-06-04  375  	if (gemini_sata_bridge_enabled(sg, is_ata1))
be4e456e Linus Walleij 2017-06-04 @376  		ftide010_port_info[0].flags |= ATA_FLAG_SATA;
be4e456e Linus Walleij 2017-06-04  377  
be4e456e Linus Walleij 2017-06-04  378  	/*
be4e456e Linus Walleij 2017-06-04  379  	 * We assume that a simple 40-wire cable is used in the PATA mode.
be4e456e Linus Walleij 2017-06-04  380  	 * if you're adding a system using the PATA interface, make sure
be4e456e Linus Walleij 2017-06-04  381  	 * the right cable is set up here, it might be necessary to use
be4e456e Linus Walleij 2017-06-04  382  	 * special hardware detection or encode the cable type in the device
be4e456e Linus Walleij 2017-06-04  383  	 * tree with special properties.
be4e456e Linus Walleij 2017-06-04  384  	 */
be4e456e Linus Walleij 2017-06-04  385  	if (!is_ata1) {
be4e456e Linus Walleij 2017-06-04  386  		switch (muxmode) {
be4e456e Linus Walleij 2017-06-04  387  		case GEMINI_MUXMODE_0:
be4e456e Linus Walleij 2017-06-04  388  			ftide->master_cbl = ATA_CBL_SATA;
be4e456e Linus Walleij 2017-06-04  389  			ftide->slave_cbl = ATA_CBL_PATA40;
be4e456e Linus Walleij 2017-06-04  390  			ftide->master_to_sata0 = true;
be4e456e Linus Walleij 2017-06-04  391  			break;
be4e456e Linus Walleij 2017-06-04  392  		case GEMINI_MUXMODE_1:
be4e456e Linus Walleij 2017-06-04  393  			ftide->master_cbl = ATA_CBL_SATA;
be4e456e Linus Walleij 2017-06-04  394  			ftide->slave_cbl = ATA_CBL_NONE;
be4e456e Linus Walleij 2017-06-04  395  			ftide->master_to_sata0 = true;
be4e456e Linus Walleij 2017-06-04  396  			break;
be4e456e Linus Walleij 2017-06-04  397  		case GEMINI_MUXMODE_2:
be4e456e Linus Walleij 2017-06-04  398  			ftide->master_cbl = ATA_CBL_PATA40;
be4e456e Linus Walleij 2017-06-04  399  			ftide->slave_cbl = ATA_CBL_PATA40;
be4e456e Linus Walleij 2017-06-04  400  			break;
be4e456e Linus Walleij 2017-06-04  401  		case GEMINI_MUXMODE_3:
be4e456e Linus Walleij 2017-06-04  402  			ftide->master_cbl = ATA_CBL_SATA;
be4e456e Linus Walleij 2017-06-04  403  			ftide->slave_cbl = ATA_CBL_SATA;
be4e456e Linus Walleij 2017-06-04  404  			ftide->master_to_sata0 = true;
be4e456e Linus Walleij 2017-06-04  405  			ftide->slave_to_sata1 = true;
be4e456e Linus Walleij 2017-06-04  406  			break;
be4e456e Linus Walleij 2017-06-04  407  		}
be4e456e Linus Walleij 2017-06-04  408  	} else {
be4e456e Linus Walleij 2017-06-04  409  		switch (muxmode) {
be4e456e Linus Walleij 2017-06-04  410  		case GEMINI_MUXMODE_0:
be4e456e Linus Walleij 2017-06-04  411  			ftide->master_cbl = ATA_CBL_SATA;
be4e456e Linus Walleij 2017-06-04  412  			ftide->slave_cbl = ATA_CBL_NONE;
be4e456e Linus Walleij 2017-06-04  413  			ftide->master_to_sata1 = true;
be4e456e Linus Walleij 2017-06-04  414  			break;
be4e456e Linus Walleij 2017-06-04  415  		case GEMINI_MUXMODE_1:
be4e456e Linus Walleij 2017-06-04  416  			ftide->master_cbl = ATA_CBL_SATA;
be4e456e Linus Walleij 2017-06-04  417  			ftide->slave_cbl = ATA_CBL_PATA40;
be4e456e Linus Walleij 2017-06-04  418  			ftide->master_to_sata1 = true;
be4e456e Linus Walleij 2017-06-04  419  			break;
be4e456e Linus Walleij 2017-06-04  420  		case GEMINI_MUXMODE_2:
be4e456e Linus Walleij 2017-06-04  421  			ftide->master_cbl = ATA_CBL_SATA;
be4e456e Linus Walleij 2017-06-04  422  			ftide->slave_cbl = ATA_CBL_SATA;
be4e456e Linus Walleij 2017-06-04  423  			ftide->slave_to_sata0 = true;
be4e456e Linus Walleij 2017-06-04  424  			ftide->master_to_sata1 = true;
be4e456e Linus Walleij 2017-06-04  425  			break;
be4e456e Linus Walleij 2017-06-04  426  		case GEMINI_MUXMODE_3:
be4e456e Linus Walleij 2017-06-04  427  			ftide->master_cbl = ATA_CBL_PATA40;
be4e456e Linus Walleij 2017-06-04  428  			ftide->slave_cbl = ATA_CBL_PATA40;
be4e456e Linus Walleij 2017-06-04  429  			break;
be4e456e Linus Walleij 2017-06-04  430  		}
be4e456e Linus Walleij 2017-06-04  431  	}
be4e456e Linus Walleij 2017-06-04  432  	dev_info(dev, "set up Gemini PATA%d\n", is_ata1);
be4e456e Linus Walleij 2017-06-04  433  
be4e456e Linus Walleij 2017-06-04  434  	return 0;
be4e456e Linus Walleij 2017-06-04  435  }
be4e456e Linus Walleij 2017-06-04  436  #else
be4e456e Linus Walleij 2017-06-04  437  static int pata_ftide010_gemini_init(struct ftide010 *ftide,
be4e456e Linus Walleij 2017-06-04  438  				     bool is_ata1)
be4e456e Linus Walleij 2017-06-04  439  {
be4e456e Linus Walleij 2017-06-04  440  	return -ENOTSUPP;
be4e456e Linus Walleij 2017-06-04  441  }
be4e456e Linus Walleij 2017-06-04  442  #endif
be4e456e Linus Walleij 2017-06-04  443  
be4e456e Linus Walleij 2017-06-04  444  

:::::: The code at line 376 was first introduced by commit
:::::: be4e456ed3a5918f4e75f532837bb19128a690c9 ata: Add driver for Faraday Technology FTIDE010

:::::: TO: Linus Walleij <linus.walleij@xxxxxxxxxx>
:::::: CC: Tejun Heo <tj@xxxxxxxxxx>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux