[staging:staging-next 430/430] drivers/staging/kpc2000/kpc2000/core.c:76:5: error: implicit declaration of function 'writeq'; did you mean 'writeb'?

kbuild test robot lkp at intel.com
Sun Apr 21 10:47:19 UTC 2019


tree:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git staging-next
head:   7dc7967fc39af81191558f63eeaf3d2b83899b1c
commit: 7dc7967fc39af81191558f63eeaf3d2b83899b1c [430/430] staging: kpc2000: add initial set of Daktronics drivers
config: arm-allyesconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (Debian 7.2.0-11) 7.2.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout 7dc7967fc39af81191558f63eeaf3d2b83899b1c
        # save the attached .config to linux build tree
        GCC_VERSION=7.2.0 make.cross ARCH=arm 

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp at intel.com>


All errors (new ones prefixed by >>):

   drivers/staging/kpc2000/kpc2000/core.c: In function 'show_cpld_config_reg':
   drivers/staging/kpc2000/kpc2000/core.c:56:8: error: implicit declaration of function 'readq'; did you mean 'readb'? [-Werror=implicit-function-declaration]
     val = readq(pcard->sysinfo_regs_base + REG_CPLD_CONFIG);
           ^~~~~
           readb
   drivers/staging/kpc2000/kpc2000/core.c: In function 'cpld_reconfigure':
>> drivers/staging/kpc2000/kpc2000/core.c:76:5: error: implicit declaration of function 'writeq'; did you mean 'writeb'? [-Werror=implicit-function-declaration]
        writeq(wr_val, pcard->sysinfo_regs_base + REG_CPLD_CONFIG);
        ^~~~~~
        writeb
   In file included from include/linux/pci.h:31:0,
                    from drivers/staging/kpc2000/kpc2000/core.c:4:
   drivers/staging/kpc2000/kpc2000/core.c: In function 'read_system_regs':
   drivers/staging/kpc2000/kpc2000/core.c:148:36: warning: format '%lx' expects argument of type 'long unsigned int', but argument 4 has type 'long long int' [-Wformat=]
            dev_err(&pcard->pdev->dev, "Invalid magic!  Got: 0x%016llx  Want: 0x%016lx\n", read_val, KP2000_MAGIC_VALUE);
                                       ^
   include/linux/device.h:1400:22: note: in definition of macro 'dev_fmt'
    #define dev_fmt(fmt) fmt
                         ^~~
   drivers/staging/kpc2000/kpc2000/core.c:148:9: note: in expansion of macro 'dev_err'
            dev_err(&pcard->pdev->dev, "Invalid magic!  Got: 0x%016llx  Want: 0x%016lx\n", read_val, KP2000_MAGIC_VALUE);
            ^~~~~~~
   cc1: some warnings being treated as errors
--
   drivers/staging/kpc2000/kpc2000/cell_probe.c: In function 'kp2000_check_uio_irq':
   drivers/staging/kpc2000/kpc2000/cell_probe.c:212:31: error: implicit declaration of function 'readq'; did you mean 'readb'? [-Werror=implicit-function-declaration]
        u64 interrupt_active   =  readq(pcard->sysinfo_regs_base + REG_INTERRUPT_ACTIVE);
                                  ^~~~~
                                  readb
   drivers/staging/kpc2000/kpc2000/cell_probe.c: In function 'kuio_handler':
>> drivers/staging/kpc2000/kpc2000/cell_probe.c:231:9: error: implicit declaration of function 'writeq'; did you mean 'writeb'? [-Werror=implicit-function-declaration]
            writeq((1 << kudev->cte.irq_base_num), kudev->pcard->sysinfo_regs_base + REG_INTERRUPT_ACTIVE); // Clear the active flag
            ^~~~~~
            writeb
   cc1: some warnings being treated as errors
--
   drivers/staging/kpc2000/kpc_i2c/i2c_driver.c: In function 'i801_check_pre':
   drivers/staging/kpc2000/kpc_i2c/i2c_driver.c:128:18: error: implicit declaration of function 'readq'; did you mean 'readb'? [-Werror=implicit-function-declaration]
    #define inb_p(a) readq((void*)a)
                     ^
   drivers/staging/kpc2000/kpc_i2c/i2c_driver.c:140:14: note: in expansion of macro 'inb_p'
        status = inb_p(SMBHSTSTS(priv));
                 ^~~~~
>> drivers/staging/kpc2000/kpc_i2c/i2c_driver.c:130:21: error: implicit declaration of function 'writeq'; did you mean 'writeb'? [-Werror=implicit-function-declaration]
    #define outb_p(d,a) writeq(d,(void*)a)
                        ^
   drivers/staging/kpc2000/kpc_i2c/i2c_driver.c:149:9: note: in expansion of macro 'outb_p'
            outb_p(status, SMBHSTSTS(priv));
            ^~~~~~
   cc1: some warnings being treated as errors
--
   drivers/staging/kpc2000/kpc_spi/spi_driver.c:97:5: note: offset of packed bit-field 'wl' has changed in GCC 4.4
        } bitfield;
        ^
   drivers/staging/kpc2000/kpc_spi/spi_driver.c:97:5: note: offset of packed bit-field 'cs' has changed in GCC 4.4
   drivers/staging/kpc2000/kpc_spi/spi_driver.c:97:5: note: offset of packed bit-field 'wcnt' has changed in GCC 4.4
   drivers/staging/kpc2000/kpc_spi/spi_driver.c: In function 'kp_spi_read_reg':
   drivers/staging/kpc2000/kpc_spi/spi_driver.c:158:11: error: implicit declaration of function 'readq'; did you mean 'readl'? [-Werror=implicit-function-declaration]
        val = readq((void*)addr);
              ^~~~~
              readl
   drivers/staging/kpc2000/kpc_spi/spi_driver.c: In function 'kp_spi_write_reg':
>> drivers/staging/kpc2000/kpc_spi/spi_driver.c:167:5: error: implicit declaration of function 'writeq'; did you mean 'writeb'? [-Werror=implicit-function-declaration]
        writeq(val, (void*)addr);
        ^~~~~~
        writeb
   cc1: some warnings being treated as errors

vim +76 drivers/staging/kpc2000/kpc2000/core.c

    42	
    43	static ssize_t  show_cpld_config_reg(struct device *dev, struct device_attribute *attr, char *buf)
    44	{
    45		struct pci_dev *pdev = to_pci_dev(dev);
    46		struct kp2000_device *pcard;
    47		u64 val;
    48	
    49		if (!pdev)
    50			return -ENXIO;
    51	
    52		pcard = pci_get_drvdata(pdev);
    53		if (!pcard)
    54			return -ENXIO;
    55	
  > 56		val = readq(pcard->sysinfo_regs_base + REG_CPLD_CONFIG);
    57		return scnprintf(buf, PAGE_SIZE, "%016llx\n", val);
    58	}
    59	static ssize_t cpld_reconfigure(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)
    60	{
    61	    struct pci_dev *pdev = to_pci_dev(dev);
    62	    long wr_val;
    63	    struct kp2000_device *pcard;
    64	    int rv;
    65	
    66	    if (!pdev)  return -ENXIO;
    67	    pcard = pci_get_drvdata(pdev);
    68	    if (!pcard)  return -ENXIO;
    69	    
    70	    rv = kstrtol(buf, 0, &wr_val);
    71	    if (rv < 0)  return rv;
    72	    if (wr_val > 7)  return -EINVAL;
    73	    
    74	    wr_val = wr_val << 8;
    75	    wr_val |= 0x1; // Set the "Configure Go" bit
  > 76	    writeq(wr_val, pcard->sysinfo_regs_base + REG_CPLD_CONFIG);
    77	    return count;
    78	}
    79	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 67534 bytes
Desc: not available
URL: <http://driverdev.linuxdriverproject.org/pipermail/driverdev-devel/attachments/20190421/1eda180c/attachment-0001.bin>


More information about the devel mailing list