struct group_desc is a particular version of the struct pingroup
with associated opaque data. Start switching pin control core and
drivers to use it explicitly.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/pinctrl/core.c | 15 ++++++++++++---
drivers/pinctrl/core.h | 5 +++++
2 files changed, 17 insertions(+), 3 deletions(-)
diff --git a/drivers/pinctrl/core.c b/drivers/pinctrl/core.c
index 3f1fd50fbb10..e08d4b3b0a56 100644
--- a/drivers/pinctrl/core.c
+++ b/drivers/pinctrl/core.c
@@ -559,7 +559,10 @@ const char *pinctrl_generic_get_group_name(struct pinctrl_dev *pctldev,
if (!group)
return NULL;
- return group->name;
+ if (group->name)
+ return group->name;
+
+ return group->grp.name;
}
EXPORT_SYMBOL_GPL(pinctrl_generic_get_group_name);
@@ -585,8 +588,14 @@ int pinctrl_generic_get_group_pins(struct pinctrl_dev *pctldev,
return -EINVAL;
}
- *pins = group->pins;
- *num_pins = group->num_pins;
+ if (group->pins) {
+ *pins = group->pins;
+ *num_pins = group->num_pins;
+ return 0;
+ }
+
+ *pins = group->grp.pins;
+ *num_pins = group->grp.npins;
return 0;
}
diff --git a/drivers/pinctrl/core.h b/drivers/pinctrl/core.h
index 276a631fd49c..863b4956a41e 100644
--- a/drivers/pinctrl/core.h
+++ b/drivers/pinctrl/core.h
@@ -194,14 +194,18 @@ struct pinctrl_maps {
#ifdef CONFIG_GENERIC_PINCTRL_GROUPS
+#include <linux/pinctrl/pinctrl.h>
+
/**
* struct group_desc - generic pin group descriptor
+ * @grp: generic data of the pin group (name and pins)
* @name: name of the pin group
* @pins: array of pins that belong to the group
* @num_pins: number of pins in the group
* @data: pin controller driver specific data
*/
struct group_desc {
+ struct pingroup grp;
const char *name;
const int *pins;
int num_pins;
@@ -211,6 +215,7 @@ struct group_desc {
/* Convenience macro to define a generic pin group descriptor */
#define PINCTRL_GROUP_DESC(_name, _pins, _num_pins, _data) \
(struct group_desc) { \
+ .grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
.name = _name, \
.pins = _pins, \
.num_pins = _num_pins, \
--
2.43.0.rc1.1.gbec44491f096
Hi Andy,
kernel test robot noticed the following build errors:
[auto build test ERROR on linusw-pinctrl/devel]
[also build test ERROR on linusw-pinctrl/for-next next-20231124]
[cannot apply to geert-renesas-drivers/renesas-pinctrl pinctrl-samsung/for-next linus/master v6.7-rc2]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Andy-Shevchenko/pinctrl-qcom-lpass-lpi-Remove-unused-member-in-struct-lpi_pingroup/20231124-043212
base: https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl.git devel
patch link: https://lore.kernel.org/r/20231123193355.3400852-13-andriy.shevchenko%40linux.intel.com
patch subject: [PATCH v2 12/21] pinctrl: core: Embed struct pingroup into struct group_desc
config: i386-buildonly-randconfig-006-20231125 (https://download.01.org/0day-ci/archive/20231125/202311250448.uz5Yom3N-lkp@intel.com/config)
compiler: gcc-7 (Ubuntu 7.5.0-6ubuntu2) 7.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231125/202311250448.uz5Yom3N-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202311250448.uz5Yom3N-lkp@intel.com/
All error/warnings (new ones prefixed by >>):
In file included from drivers/pinctrl/pinctrl-ingenic.c:29:0:
drivers/pinctrl/core.h:217:21: error: initializer element is not constant
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:200:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("mmc-1bit", jz4730_mmc_1bit, 1),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:21: note: (near initialization for 'jz4730_groups')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:200:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("mmc-1bit", jz4730_mmc_1bit, 1),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:21: error: initializer element is not constant
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:296:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("mmc-1bit", jz4740_mmc_1bit, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:21: note: (near initialization for 'jz4740_groups')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:296:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("mmc-1bit", jz4740_mmc_1bit, 0),
^~~~~~~~~~~~~~~~~
In file included from include/linux/gpio/driver.h:13:0,
from drivers/pinctrl/pinctrl-ingenic.c:11:
>> include/linux/pinctrl/pinctrl.h:43:1: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:297:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("mmc-4bit", jz4740_mmc_4bit, 0),
^~~~~~~~~~~~~~~~~
include/linux/pinctrl/pinctrl.h:43:1: note: (near initialization for '(anonymous).grp.name')
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:297:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("mmc-4bit", jz4740_mmc_4bit, 0),
^~~~~~~~~~~~~~~~~
In file included from drivers/pinctrl/pinctrl-ingenic.c:29:0:
drivers/pinctrl/core.h:217:1: warning: missing braces around initializer [-Wmissing-braces]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:297:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("mmc-4bit", jz4740_mmc_4bit, 0),
^~~~~~~~~~~~~~~~~
>> drivers/pinctrl/core.h:217:1: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:297:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("mmc-4bit", jz4740_mmc_4bit, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[1].grp.name')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:297:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("mmc-4bit", jz4740_mmc_4bit, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: error: initializer element is not constant
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:297:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("mmc-4bit", jz4740_mmc_4bit, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[1].grp.name')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:297:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("mmc-4bit", jz4740_mmc_4bit, 0),
^~~~~~~~~~~~~~~~~
In file included from include/linux/gpio/driver.h:13:0,
from drivers/pinctrl/pinctrl-ingenic.c:11:
>> include/linux/pinctrl/pinctrl.h:43:1: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:298:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart0-data", jz4740_uart0_data, 1),
^~~~~~~~~~~~~~~~~
include/linux/pinctrl/pinctrl.h:43:1: note: (near initialization for '(anonymous).grp.name')
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:298:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart0-data", jz4740_uart0_data, 1),
^~~~~~~~~~~~~~~~~
In file included from drivers/pinctrl/pinctrl-ingenic.c:29:0:
drivers/pinctrl/core.h:217:1: warning: missing braces around initializer [-Wmissing-braces]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:298:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart0-data", jz4740_uart0_data, 1),
^~~~~~~~~~~~~~~~~
>> drivers/pinctrl/core.h:217:1: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:298:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart0-data", jz4740_uart0_data, 1),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[1].grp.pins')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:298:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart0-data", jz4740_uart0_data, 1),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: error: initializer element is not constant
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:298:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart0-data", jz4740_uart0_data, 1),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[1].grp.pins')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:298:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart0-data", jz4740_uart0_data, 1),
^~~~~~~~~~~~~~~~~
In file included from include/linux/gpio/driver.h:13:0,
from drivers/pinctrl/pinctrl-ingenic.c:11:
>> include/linux/pinctrl/pinctrl.h:43:1: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:299:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart0-hwflow", jz4740_uart0_hwflow, 1),
^~~~~~~~~~~~~~~~~
include/linux/pinctrl/pinctrl.h:43:1: note: (near initialization for '(anonymous).grp.name')
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:299:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart0-hwflow", jz4740_uart0_hwflow, 1),
^~~~~~~~~~~~~~~~~
In file included from drivers/pinctrl/pinctrl-ingenic.c:29:0:
drivers/pinctrl/core.h:217:1: warning: missing braces around initializer [-Wmissing-braces]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:299:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart0-hwflow", jz4740_uart0_hwflow, 1),
^~~~~~~~~~~~~~~~~
>> drivers/pinctrl/core.h:217:1: warning: initialization makes integer from pointer without a cast [-Wint-conversion]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:299:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart0-hwflow", jz4740_uart0_hwflow, 1),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[1].grp.npins')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:299:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart0-hwflow", jz4740_uart0_hwflow, 1),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: error: initializer element is not constant
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:299:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart0-hwflow", jz4740_uart0_hwflow, 1),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[1].grp.npins')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:299:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart0-hwflow", jz4740_uart0_hwflow, 1),
^~~~~~~~~~~~~~~~~
In file included from include/linux/gpio/driver.h:13:0,
from drivers/pinctrl/pinctrl-ingenic.c:11:
>> include/linux/pinctrl/pinctrl.h:43:1: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:300:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart1-data", jz4740_uart1_data, 2),
^~~~~~~~~~~~~~~~~
include/linux/pinctrl/pinctrl.h:43:1: note: (near initialization for '(anonymous).grp.name')
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:300:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart1-data", jz4740_uart1_data, 2),
^~~~~~~~~~~~~~~~~
In file included from drivers/pinctrl/pinctrl-ingenic.c:29:0:
drivers/pinctrl/core.h:217:1: warning: missing braces around initializer [-Wmissing-braces]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:300:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart1-data", jz4740_uart1_data, 2),
^~~~~~~~~~~~~~~~~
>> drivers/pinctrl/core.h:217:1: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:300:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart1-data", jz4740_uart1_data, 2),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[1].name')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:300:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart1-data", jz4740_uart1_data, 2),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: error: initializer element is not constant
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:300:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart1-data", jz4740_uart1_data, 2),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[1].name')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:300:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("uart1-data", jz4740_uart1_data, 2),
^~~~~~~~~~~~~~~~~
In file included from include/linux/gpio/driver.h:13:0,
from drivers/pinctrl/pinctrl-ingenic.c:11:
>> include/linux/pinctrl/pinctrl.h:43:1: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:301:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-8bit", jz4740_lcd_8bit, 0),
^~~~~~~~~~~~~~~~~
include/linux/pinctrl/pinctrl.h:43:1: note: (near initialization for '(anonymous).grp.name')
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:301:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-8bit", jz4740_lcd_8bit, 0),
^~~~~~~~~~~~~~~~~
In file included from drivers/pinctrl/pinctrl-ingenic.c:29:0:
drivers/pinctrl/core.h:217:1: warning: missing braces around initializer [-Wmissing-braces]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:301:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-8bit", jz4740_lcd_8bit, 0),
^~~~~~~~~~~~~~~~~
>> drivers/pinctrl/core.h:217:1: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:301:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-8bit", jz4740_lcd_8bit, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[1].pins')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:301:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-8bit", jz4740_lcd_8bit, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: error: initializer element is not constant
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:301:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-8bit", jz4740_lcd_8bit, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[1].pins')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:301:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-8bit", jz4740_lcd_8bit, 0),
^~~~~~~~~~~~~~~~~
In file included from include/linux/gpio/driver.h:13:0,
from drivers/pinctrl/pinctrl-ingenic.c:11:
>> include/linux/pinctrl/pinctrl.h:43:1: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:302:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-16bit", jz4740_lcd_16bit, 0),
^~~~~~~~~~~~~~~~~
include/linux/pinctrl/pinctrl.h:43:1: note: (near initialization for '(anonymous).grp.name')
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:302:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-16bit", jz4740_lcd_16bit, 0),
^~~~~~~~~~~~~~~~~
In file included from drivers/pinctrl/pinctrl-ingenic.c:29:0:
drivers/pinctrl/core.h:217:1: warning: missing braces around initializer [-Wmissing-braces]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:302:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-16bit", jz4740_lcd_16bit, 0),
^~~~~~~~~~~~~~~~~
>> drivers/pinctrl/core.h:217:1: warning: initialization makes integer from pointer without a cast [-Wint-conversion]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:302:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-16bit", jz4740_lcd_16bit, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[1].num_pins')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:302:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-16bit", jz4740_lcd_16bit, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: error: initializer element is not constant
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:302:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-16bit", jz4740_lcd_16bit, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[1].num_pins')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:302:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-16bit", jz4740_lcd_16bit, 0),
^~~~~~~~~~~~~~~~~
In file included from include/linux/gpio/driver.h:13:0,
from drivers/pinctrl/pinctrl-ingenic.c:11:
>> include/linux/pinctrl/pinctrl.h:43:1: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:303:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-18bit", jz4740_lcd_18bit, 0),
^~~~~~~~~~~~~~~~~
include/linux/pinctrl/pinctrl.h:43:1: note: (near initialization for '(anonymous).grp.name')
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:303:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-18bit", jz4740_lcd_18bit, 0),
^~~~~~~~~~~~~~~~~
In file included from drivers/pinctrl/pinctrl-ingenic.c:29:0:
drivers/pinctrl/core.h:217:1: warning: missing braces around initializer [-Wmissing-braces]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:303:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-18bit", jz4740_lcd_18bit, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:303:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-18bit", jz4740_lcd_18bit, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: error: initializer element is not constant
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:303:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-18bit", jz4740_lcd_18bit, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[1].data')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:303:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-18bit", jz4740_lcd_18bit, 0),
^~~~~~~~~~~~~~~~~
In file included from include/linux/gpio/driver.h:13:0,
from drivers/pinctrl/pinctrl-ingenic.c:11:
>> include/linux/pinctrl/pinctrl.h:43:1: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:304:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-special", jz4740_lcd_special, 0),
^~~~~~~~~~~~~~~~~
include/linux/pinctrl/pinctrl.h:43:1: note: (near initialization for '(anonymous).grp.name')
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:304:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-special", jz4740_lcd_special, 0),
^~~~~~~~~~~~~~~~~
In file included from drivers/pinctrl/pinctrl-ingenic.c:29:0:
drivers/pinctrl/core.h:217:1: warning: missing braces around initializer [-Wmissing-braces]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:304:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-special", jz4740_lcd_special, 0),
^~~~~~~~~~~~~~~~~
>> drivers/pinctrl/core.h:217:1: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:304:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-special", jz4740_lcd_special, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[2].grp.name')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:304:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-special", jz4740_lcd_special, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: error: initializer element is not constant
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:304:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-special", jz4740_lcd_special, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[2].grp.name')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:304:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-special", jz4740_lcd_special, 0),
^~~~~~~~~~~~~~~~~
In file included from include/linux/gpio/driver.h:13:0,
from drivers/pinctrl/pinctrl-ingenic.c:11:
>> include/linux/pinctrl/pinctrl.h:43:1: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:305:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-generic", jz4740_lcd_generic, 0),
^~~~~~~~~~~~~~~~~
include/linux/pinctrl/pinctrl.h:43:1: note: (near initialization for '(anonymous).grp.name')
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:305:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-generic", jz4740_lcd_generic, 0),
^~~~~~~~~~~~~~~~~
In file included from drivers/pinctrl/pinctrl-ingenic.c:29:0:
drivers/pinctrl/core.h:217:1: warning: missing braces around initializer [-Wmissing-braces]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:305:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-generic", jz4740_lcd_generic, 0),
^~~~~~~~~~~~~~~~~
>> drivers/pinctrl/core.h:217:1: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:305:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-generic", jz4740_lcd_generic, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[2].grp.pins')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:305:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-generic", jz4740_lcd_generic, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: error: initializer element is not constant
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:305:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-generic", jz4740_lcd_generic, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[2].grp.pins')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:305:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("lcd-generic", jz4740_lcd_generic, 0),
^~~~~~~~~~~~~~~~~
In file included from include/linux/gpio/driver.h:13:0,
from drivers/pinctrl/pinctrl-ingenic.c:11:
>> include/linux/pinctrl/pinctrl.h:43:1: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:306:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("nand-cs1", jz4740_nand_cs1, 0),
^~~~~~~~~~~~~~~~~
include/linux/pinctrl/pinctrl.h:43:1: note: (near initialization for '(anonymous).grp.name')
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:306:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("nand-cs1", jz4740_nand_cs1, 0),
^~~~~~~~~~~~~~~~~
In file included from drivers/pinctrl/pinctrl-ingenic.c:29:0:
drivers/pinctrl/core.h:217:1: warning: missing braces around initializer [-Wmissing-braces]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:306:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("nand-cs1", jz4740_nand_cs1, 0),
^~~~~~~~~~~~~~~~~
>> drivers/pinctrl/core.h:217:1: warning: initialization makes integer from pointer without a cast [-Wint-conversion]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:306:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("nand-cs1", jz4740_nand_cs1, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[2].grp.npins')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:306:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("nand-cs1", jz4740_nand_cs1, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: error: initializer element is not constant
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:306:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("nand-cs1", jz4740_nand_cs1, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[2].grp.npins')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:306:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("nand-cs1", jz4740_nand_cs1, 0),
^~~~~~~~~~~~~~~~~
In file included from include/linux/gpio/driver.h:13:0,
from drivers/pinctrl/pinctrl-ingenic.c:11:
>> include/linux/pinctrl/pinctrl.h:43:1: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:307:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("nand-cs2", jz4740_nand_cs2, 0),
^~~~~~~~~~~~~~~~~
include/linux/pinctrl/pinctrl.h:43:1: note: (near initialization for '(anonymous).grp.name')
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:307:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("nand-cs2", jz4740_nand_cs2, 0),
^~~~~~~~~~~~~~~~~
In file included from drivers/pinctrl/pinctrl-ingenic.c:29:0:
drivers/pinctrl/core.h:217:1: warning: missing braces around initializer [-Wmissing-braces]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:307:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("nand-cs2", jz4740_nand_cs2, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:307:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("nand-cs2", jz4740_nand_cs2, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[2].name')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:307:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("nand-cs2", jz4740_nand_cs2, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: error: initializer element is not constant
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:307:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("nand-cs2", jz4740_nand_cs2, 0),
^~~~~~~~~~~~~~~~~
drivers/pinctrl/core.h:217:1: note: (near initialization for 'jz4740_groups[2].name')
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:307:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("nand-cs2", jz4740_nand_cs2, 0),
^~~~~~~~~~~~~~~~~
In file included from include/linux/gpio/driver.h:13:0,
from drivers/pinctrl/pinctrl-ingenic.c:11:
include/linux/pinctrl/pinctrl.h:43:1: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:308:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("nand-cs3", jz4740_nand_cs3, 0),
^~~~~~~~~~~~~~~~~
include/linux/pinctrl/pinctrl.h:43:1: note: (near initialization for '(anonymous).grp.name')
(struct pingroup) { \
^
drivers/pinctrl/core.h:218:9: note: in expansion of macro 'PINCTRL_PINGROUP'
.grp = PINCTRL_PINGROUP(_name, _pins, _num_pins), \
^~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
PINCTRL_GROUP_DESC(name, id##_pins, ARRAY_SIZE(id##_pins), (void *)(func))
^~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-ingenic.c:308:2: note: in expansion of macro 'INGENIC_PIN_GROUP'
INGENIC_PIN_GROUP("nand-cs3", jz4740_nand_cs3, 0),
^~~~~~~~~~~~~~~~~
In file included from drivers/pinctrl/pinctrl-ingenic.c:29:0:
drivers/pinctrl/core.h:217:1: warning: missing braces around initializer [-Wmissing-braces]
(struct group_desc) { \
^
drivers/pinctrl/pinctrl-ingenic.c:89:2: note: in expansion of macro 'PINCTRL_GROUP_DESC'
vim +43 include/linux/pinctrl/pinctrl.h
003cbe04617159 Basavaraj Natikar 2022-06-01 40
003cbe04617159 Basavaraj Natikar 2022-06-01 41 /* Convenience macro to define a single named or anonymous pingroup */
003cbe04617159 Basavaraj Natikar 2022-06-01 42 #define PINCTRL_PINGROUP(_name, _pins, _npins) \
003cbe04617159 Basavaraj Natikar 2022-06-01 @43 (struct pingroup) { \
003cbe04617159 Basavaraj Natikar 2022-06-01 44 .name = _name, \
003cbe04617159 Basavaraj Natikar 2022-06-01 45 .pins = _pins, \
003cbe04617159 Basavaraj Natikar 2022-06-01 46 .npins = _npins, \
003cbe04617159 Basavaraj Natikar 2022-06-01 47 }
003cbe04617159 Basavaraj Natikar 2022-06-01 48
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
On Sat, Nov 25, 2023 at 07:39:02AM +0800, kernel test robot wrote: > Hi Andy, > > kernel test robot noticed the following build errors: > [also build test ERROR on linusw-pinctrl/for-next next-20231124] Hmm... I have compiled tested on Linux Next it several times, I can't reproduce this neither with GCC nor with LLVM. -- With Best Regards, Andy Shevchenko
On Tue, Nov 28, 2023 at 05:53:21PM +0200, Andy Shevchenko wrote: > On Sat, Nov 25, 2023 at 07:39:02AM +0800, kernel test robot wrote: > > Hi Andy, > > > > kernel test robot noticed the following build errors: > > > [also build test ERROR on linusw-pinctrl/for-next next-20231124] > > Hmm... I have compiled tested on Linux Next it several times, I can't reproduce > this neither with GCC nor with LLVM. Actually it rings a bell that some versions of GCC have a bug (?) that they may not identify initializations like this to be converted to constants as we are using compound literal it should make no difference. -- With Best Regards, Andy Shevchenko
© 2016 - 2025 Red Hat, Inc.