Hi Scott, [auto build test ERROR on iio/togreg] [also build test ERROR on v4.9 next-20161224] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Scott-Matheina/Checkpatch-fixes-to-driver-staging-iio-addac/20161226-041021 base: https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git togreg config: i386-randconfig-x001-201652 (attached as .config) compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901 reproduce: # save the attached .config to linux build tree make ARCH=i386 All error/warnings (new ones prefixed by >>): drivers/staging/iio/addac/adt7316.c: In function 'adt7316_show_DAC_A': >> drivers/staging/iio/addac/adt7316.c:1488:9: error: implicit declaration of function 'adt7316_show_dac' [-Werror=implicit-function-declaration] return adt7316_show_dac(chip, 0, buf); ^~~~~~~~~~~~~~~~ drivers/staging/iio/addac/adt7316.c: In function 'adt7316_store_DAC_A': >> drivers/staging/iio/addac/adt7316.c:1499:9: error: implicit declaration of function 'adt7316_store_dac' [-Werror=implicit-function-declaration] return adt7316_store_dac(chip, 0, buf, len); ^~~~~~~~~~~~~~~~~ drivers/staging/iio/addac/adt7316.c: At top level: >> drivers/staging/iio/addac/adt7316.c:1664:3: error: 'iio_dev_attr_enable_proportion_daca' undeclared here (not in a function) &iio_dev_attr_enable_proportion_daca.dev_attr.attr, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/staging/iio/addac/adt7316.c:1665:3: error: 'iio_dev_attr_enable_proportion_dacb' undeclared here (not in a function) &iio_dev_attr_enable_proportion_dacb.dev_attr.attr, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/staging/iio/addac/adt7316.c:1666:3: error: 'iio_dev_attr_dac_2vref_channels_mask' undeclared here (not in a function) &iio_dev_attr_dac_2vref_channels_mask.dev_attr.attr, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/staging/iio/addac/adt7316.c:1667:3: error: 'iio_dev_attr_dac_internal_vref' undeclared here (not in a function) &iio_dev_attr_dac_internal_vref.dev_attr.attr, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/staging/iio/addac/adt7316.c:1668:3: error: 'iio_dev_attr_all_dac_update_modes' undeclared here (not in a function) &iio_dev_attr_all_dac_update_modes.dev_attr.attr, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/staging/iio/addac/adt7316.c:1669:3: error: 'iio_dev_attr_update_dac' undeclared here (not in a function) &iio_dev_attr_update_dac.dev_attr.attr, ^~~~~~~~~~~~~~~~~~~~~~~ >> drivers/staging/iio/addac/adt7316.c:1670:3: error: 'iio_dev_attr_da_ab_vref_bypass' undeclared here (not in a function) &iio_dev_attr_da_ab_vref_bypass.dev_attr.attr, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/staging/iio/addac/adt7316.c:1671:3: error: 'iio_dev_attr_da_cd_vref_bypass' undeclared here (not in a function) &iio_dev_attr_da_cd_vref_bypass.dev_attr.attr, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/staging/iio/addac/adt7316.c:1673:3: error: 'iio_dev_attr_vdd' undeclared here (not in a function) &iio_dev_attr_vdd.dev_attr.attr, ^~~~~~~~~~~~~~~~ >> drivers/staging/iio/addac/adt7316.c:1680:3: error: 'iio_dev_attr_dac_a' undeclared here (not in a function) &iio_dev_attr_dac_a.dev_attr.attr, ^~~~~~~~~~~~~~~~~~ >> drivers/staging/iio/addac/adt7316.c:1681:3: error: 'iio_dev_attr_dac_b' undeclared here (not in a function) &iio_dev_attr_dac_b.dev_attr.attr, ^~~~~~~~~~~~~~~~~~ >> drivers/staging/iio/addac/adt7316.c:1682:3: error: 'iio_dev_attr_dac_c' undeclared here (not in a function) &iio_dev_attr_dac_c.dev_attr.attr, ^~~~~~~~~~~~~~~~~~ >> drivers/staging/iio/addac/adt7316.c:1683:3: error: 'iio_dev_attr_dac_d' undeclared here (not in a function) &iio_dev_attr_dac_d.dev_attr.attr, ^~~~~~~~~~~~~~~~~~ >> drivers/staging/iio/addac/adt7316.c:1706:3: error: 'iio_dev_attr_ain_internal_vref' undeclared here (not in a function) &iio_dev_attr_ain_internal_vref.dev_attr.attr, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/staging/iio/addac/adt7316.c:1706:33: error: request for member 'dev_attr' in something not a structure or union &iio_dev_attr_ain_internal_vref.dev_attr.attr, ^ >> drivers/staging/iio/addac/adt7316.c:1706:42: error: request for member 'attr' in something not a structure or union &iio_dev_attr_ain_internal_vref.dev_attr.attr, ^ >> drivers/staging/iio/addac/adt7316.c:1706:2: error: initializer element is not constant &iio_dev_attr_ain_internal_vref.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1706:2: note: (near initialization for 'adt7516_attributes[10]') drivers/staging/iio/addac/adt7316.c:1708:38: error: request for member 'dev_attr' in something not a structure or union &iio_dev_attr_enable_proportion_daca.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1708:47: error: request for member 'attr' in something not a structure or union &iio_dev_attr_enable_proportion_daca.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1708:2: error: initializer element is not constant &iio_dev_attr_enable_proportion_daca.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1708:2: note: (near initialization for 'adt7516_attributes[12]') drivers/staging/iio/addac/adt7316.c:1709:38: error: request for member 'dev_attr' in something not a structure or union &iio_dev_attr_enable_proportion_dacb.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1709:47: error: request for member 'attr' in something not a structure or union &iio_dev_attr_enable_proportion_dacb.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1709:2: error: initializer element is not constant &iio_dev_attr_enable_proportion_dacb.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1709:2: note: (near initialization for 'adt7516_attributes[13]') drivers/staging/iio/addac/adt7316.c:1710:39: error: request for member 'dev_attr' in something not a structure or union &iio_dev_attr_dac_2vref_channels_mask.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1710:48: error: request for member 'attr' in something not a structure or union &iio_dev_attr_dac_2vref_channels_mask.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1710:2: error: initializer element is not constant &iio_dev_attr_dac_2vref_channels_mask.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1710:2: note: (near initialization for 'adt7516_attributes[14]') >> drivers/staging/iio/addac/adt7316.c:1711:3: error: 'iio_dev_attr_dac_update_mode' undeclared here (not in a function) &iio_dev_attr_dac_update_mode.dev_attr.attr, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/staging/iio/addac/adt7316.c:1711:31: error: request for member 'dev_attr' in something not a structure or union &iio_dev_attr_dac_update_mode.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1711:40: error: request for member 'attr' in something not a structure or union &iio_dev_attr_dac_update_mode.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1711:2: error: initializer element is not constant &iio_dev_attr_dac_update_mode.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1711:2: note: (near initialization for 'adt7516_attributes[15]') drivers/staging/iio/addac/adt7316.c:1712:36: error: request for member 'dev_attr' in something not a structure or union &iio_dev_attr_all_dac_update_modes.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1712:45: error: request for member 'attr' in something not a structure or union &iio_dev_attr_all_dac_update_modes.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1712:2: error: initializer element is not constant &iio_dev_attr_all_dac_update_modes.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1712:2: note: (near initialization for 'adt7516_attributes[16]') drivers/staging/iio/addac/adt7316.c:1713:26: error: request for member 'dev_attr' in something not a structure or union &iio_dev_attr_update_dac.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1713:35: error: request for member 'attr' in something not a structure or union &iio_dev_attr_update_dac.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1713:2: error: initializer element is not constant &iio_dev_attr_update_dac.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1713:2: note: (near initialization for 'adt7516_attributes[17]') drivers/staging/iio/addac/adt7316.c:1714:33: error: request for member 'dev_attr' in something not a structure or union &iio_dev_attr_da_ab_vref_bypass.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1714:42: error: request for member 'attr' in something not a structure or union &iio_dev_attr_da_ab_vref_bypass.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1714:2: error: initializer element is not constant &iio_dev_attr_da_ab_vref_bypass.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1714:2: note: (near initialization for 'adt7516_attributes[18]') drivers/staging/iio/addac/adt7316.c:1715:33: error: request for member 'dev_attr' in something not a structure or union &iio_dev_attr_da_cd_vref_bypass.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1715:42: error: request for member 'attr' in something not a structure or union &iio_dev_attr_da_cd_vref_bypass.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1715:2: error: initializer element is not constant &iio_dev_attr_da_cd_vref_bypass.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1715:2: note: (near initialization for 'adt7516_attributes[19]') drivers/staging/iio/addac/adt7316.c:1716:33: error: request for member 'dev_attr' in something not a structure or union &iio_dev_attr_dac_internal_vref.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1716:42: error: request for member 'attr' in something not a structure or union &iio_dev_attr_dac_internal_vref.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1716:2: error: initializer element is not constant &iio_dev_attr_dac_internal_vref.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1716:2: note: (near initialization for 'adt7516_attributes[20]') drivers/staging/iio/addac/adt7316.c:1717:19: error: request for member 'dev_attr' in something not a structure or union &iio_dev_attr_vdd.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1717:28: error: request for member 'attr' in something not a structure or union &iio_dev_attr_vdd.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1717:2: error: initializer element is not constant &iio_dev_attr_vdd.dev_attr.attr, ^ drivers/staging/iio/addac/adt7316.c:1717:2: note: (near initialization for 'adt7516_attributes[21]') vim +/adt7316_show_dac +1488 drivers/staging/iio/addac/adt7316.c 1482 struct device_attribute *attr, 1483 char *buf) 1484 { 1485 struct iio_dev *dev_info = dev_to_iio_dev(dev); 1486 struct adt7316_chip_info *chip = iio_priv(dev_info); 1487 > 1488 return adt7316_show_dac(chip, 0, buf); 1489 } 1490 1491 static ssize_t adt7316_store_DAC_A(struct device *dev, 1492 struct device_attribute *attr, 1493 const char *buf, 1494 size_t len) 1495 { 1496 struct iio_dev *dev_info = dev_to_iio_dev(dev); 1497 struct adt7316_chip_info *chip = iio_priv(dev_info); 1498 > 1499 return adt7316_store_dac(chip, 0, buf, len); 1500 } 1501 1502 static IIO_DEVICE_ATTR(DAC_A, S_IRUGO | S_IWUSR, adt7316_show_DAC_A, 1503 adt7316_store_DAC_A, 0); 1504 1505 static ssize_t adt7316_show_DAC_B(struct device *dev, 1506 struct device_attribute *attr, 1507 char *buf) 1508 { 1509 struct iio_dev *dev_info = dev_to_iio_dev(dev); 1510 struct adt7316_chip_info *chip = iio_priv(dev_info); 1511 1512 return adt7316_show_dac(chip, 1, buf); 1513 } 1514 1515 static ssize_t adt7316_store_DAC_B(struct device *dev, 1516 struct device_attribute *attr, 1517 const char *buf, 1518 size_t len) 1519 { 1520 struct iio_dev *dev_info = dev_to_iio_dev(dev); 1521 struct adt7316_chip_info *chip = iio_priv(dev_info); 1522 1523 return adt7316_store_dac(chip, 1, buf, len); 1524 } 1525 1526 static IIO_DEVICE_ATTR(DAC_B, S_IRUGO | S_IWUSR, adt7316_show_DAC_B, 1527 adt7316_store_DAC_B, 0); 1528 1529 static ssize_t adt7316_show_DAC_C(struct device *dev, 1530 struct device_attribute *attr, 1531 char *buf) 1532 { 1533 struct iio_dev *dev_info = dev_to_iio_dev(dev); 1534 struct adt7316_chip_info *chip = iio_priv(dev_info); 1535 1536 return adt7316_show_dac(chip, 2, buf); 1537 } 1538 1539 static ssize_t adt7316_store_DAC_C(struct device *dev, 1540 struct device_attribute *attr, 1541 const char *buf, 1542 size_t len) 1543 { 1544 struct iio_dev *dev_info = dev_to_iio_dev(dev); 1545 struct adt7316_chip_info *chip = iio_priv(dev_info); 1546 1547 return adt7316_store_dac(chip, 2, buf, len); 1548 } 1549 1550 static IIO_DEVICE_ATTR(DAC_C, S_IRUGO | S_IWUSR, adt7316_show_DAC_C, 1551 adt7316_store_DAC_C, 0); 1552 1553 static ssize_t adt7316_show_DAC_D(struct device *dev, 1554 struct device_attribute *attr, 1555 char *buf) 1556 { 1557 struct iio_dev *dev_info = dev_to_iio_dev(dev); 1558 struct adt7316_chip_info *chip = iio_priv(dev_info); 1559 1560 return adt7316_show_dac(chip, 3, buf); 1561 } 1562 1563 static ssize_t adt7316_store_DAC_D(struct device *dev, 1564 struct device_attribute *attr, 1565 const char *buf, 1566 size_t len) 1567 { 1568 struct iio_dev *dev_info = dev_to_iio_dev(dev); 1569 struct adt7316_chip_info *chip = iio_priv(dev_info); 1570 1571 return adt7316_store_dac(chip, 3, buf, len); 1572 } 1573 > 1574 static IIO_DEVICE_ATTR(DAC_D, S_IRUGO | S_IWUSR, adt7316_show_DAC_D, 1575 adt7316_store_DAC_D, 0); 1576 1577 static ssize_t adt7316_show_device_id(struct device *dev, 1578 struct device_attribute *attr, 1579 char *buf) 1580 { 1581 struct iio_dev *dev_info = dev_to_iio_dev(dev); 1582 struct adt7316_chip_info *chip = iio_priv(dev_info); 1583 u8 id; 1584 int ret; 1585 1586 ret = chip->bus.read(chip->bus.client, ADT7316_DEVICE_ID, &id); 1587 if (ret) 1588 return -EIO; 1589 1590 return sprintf(buf, "%d\n", id); 1591 } 1592 1593 static IIO_DEVICE_ATTR(device_id, S_IRUGO, adt7316_show_device_id, NULL, 0); 1594 1595 static ssize_t adt7316_show_manufactorer_id(struct device *dev, 1596 struct device_attribute *attr, 1597 char *buf) 1598 { 1599 struct iio_dev *dev_info = dev_to_iio_dev(dev); 1600 struct adt7316_chip_info *chip = iio_priv(dev_info); 1601 u8 id; 1602 int ret; 1603 1604 ret = chip->bus.read(chip->bus.client, ADT7316_MANUFACTURE_ID, &id); 1605 if (ret) 1606 return -EIO; 1607 1608 return sprintf(buf, "%d\n", id); 1609 } 1610 1611 static IIO_DEVICE_ATTR(manufactorer_id, S_IRUGO, 1612 adt7316_show_manufactorer_id, NULL, 0); 1613 1614 static ssize_t adt7316_show_device_rev(struct device *dev, 1615 struct device_attribute *attr, 1616 char *buf) 1617 { 1618 struct iio_dev *dev_info = dev_to_iio_dev(dev); 1619 struct adt7316_chip_info *chip = iio_priv(dev_info); 1620 u8 rev; 1621 int ret; 1622 1623 ret = chip->bus.read(chip->bus.client, ADT7316_DEVICE_REV, &rev); 1624 if (ret) 1625 return -EIO; 1626 1627 return sprintf(buf, "%d\n", rev); 1628 } 1629 1630 static IIO_DEVICE_ATTR(device_rev, S_IRUGO, adt7316_show_device_rev, NULL, 0); 1631 1632 static ssize_t adt7316_show_bus_type(struct device *dev, 1633 struct device_attribute *attr, 1634 char *buf) 1635 { 1636 struct iio_dev *dev_info = dev_to_iio_dev(dev); 1637 struct adt7316_chip_info *chip = iio_priv(dev_info); 1638 u8 stat; 1639 int ret; 1640 1641 ret = chip->bus.read(chip->bus.client, ADT7316_SPI_LOCK_STAT, &stat); 1642 if (ret) 1643 return -EIO; 1644 1645 if (stat) 1646 return sprintf(buf, "spi\n"); 1647 1648 return sprintf(buf, "i2c\n"); 1649 } 1650 1651 static IIO_DEVICE_ATTR(bus_type, S_IRUGO, adt7316_show_bus_type, NULL, 0); 1652 1653 static struct attribute *adt7316_attributes[] = { 1654 &iio_dev_attr_all_modes.dev_attr.attr, 1655 &iio_dev_attr_mode.dev_attr.attr, 1656 &iio_dev_attr_enabled.dev_attr.attr, 1657 &iio_dev_attr_ad_channel.dev_attr.attr, 1658 &iio_dev_attr_all_ad_channels.dev_attr.attr, 1659 &iio_dev_attr_disable_averaging.dev_attr.attr, 1660 &iio_dev_attr_enable_smbus_timeout.dev_attr.attr, 1661 &iio_dev_attr_powerdown.dev_attr.attr, 1662 &iio_dev_attr_fast_ad_clock.dev_attr.attr, 1663 &iio_dev_attr_da_high_resolution.dev_attr.attr, > 1664 &iio_dev_attr_enable_proportion_daca.dev_attr.attr, > 1665 &iio_dev_attr_enable_proportion_dacb.dev_attr.attr, > 1666 &iio_dev_attr_dac_2vref_channels_mask.dev_attr.attr, > 1667 &iio_dev_attr_dac_internal_vref.dev_attr.attr, > 1668 &iio_dev_attr_all_dac_update_modes.dev_attr.attr, > 1669 &iio_dev_attr_update_dac.dev_attr.attr, > 1670 &iio_dev_attr_da_ab_vref_bypass.dev_attr.attr, > 1671 &iio_dev_attr_da_cd_vref_bypass.dev_attr.attr, 1672 &iio_dev_attr_dac_internal_vref.dev_attr.attr, > 1673 &iio_dev_attr_vdd.dev_attr.attr, 1674 &iio_dev_attr_in_temp.dev_attr.attr, 1675 &iio_dev_attr_ex_temp.dev_attr.attr, 1676 &iio_dev_attr_in_temp_offset.dev_attr.attr, 1677 &iio_dev_attr_ex_temp_offset.dev_attr.attr, 1678 &iio_dev_attr_in_analog_temp_offset.dev_attr.attr, 1679 &iio_dev_attr_ex_analog_temp_offset.dev_attr.attr, > 1680 &iio_dev_attr_dac_a.dev_attr.attr, > 1681 &iio_dev_attr_dac_b.dev_attr.attr, > 1682 &iio_dev_attr_dac_c.dev_attr.attr, > 1683 &iio_dev_attr_dac_d.dev_attr.attr, 1684 &iio_dev_attr_device_id.dev_attr.attr, 1685 &iio_dev_attr_manufactorer_id.dev_attr.attr, 1686 &iio_dev_attr_device_rev.dev_attr.attr, --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation