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 linus/master v6.10-rc1 next-20240529] [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-berlin-Make-use-of-struct-pinfunction/20240529-035554 base: https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl.git devel patch link: https://lore.kernel.org/r/20240528194951.1489887-8-andy.shevchenko%40gmail.com patch subject: [PATCH v2 07/11] pinctrl: imx: Convert to use func member config: microblaze-allyesconfig (https://download.01.org/0day-ci/archive/20240530/202405301147.XaijPkPT-lkp@xxxxxxxxx/config) compiler: microblaze-linux-gcc (GCC) 13.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240530/202405301147.XaijPkPT-lkp@xxxxxxxxx/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@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202405301147.XaijPkPT-lkp@xxxxxxxxx/ All errors (new ones prefixed by >>): drivers/pinctrl/freescale/pinctrl-imx.c: In function 'imx_pinctrl_parse_functions': >> drivers/pinctrl/freescale/pinctrl-imx.c:603:52: error: 'struct function_desc' has no member named 'ngroups' 603 | group_names = devm_kcalloc(ipctl->dev, func->ngroups, sizeof(*func->func.groups), | ^~ vim +603 drivers/pinctrl/freescale/pinctrl-imx.c 577 578 static int imx_pinctrl_parse_functions(struct device_node *np, 579 struct imx_pinctrl *ipctl, 580 u32 index) 581 { 582 struct pinctrl_dev *pctl = ipctl->pctl; 583 struct device_node *child; 584 struct function_desc *func; 585 struct group_desc *grp; 586 const char **group_names; 587 u32 i; 588 589 dev_dbg(pctl->dev, "parse function(%d): %pOFn\n", index, np); 590 591 func = pinmux_generic_get_function(pctl, index); 592 if (!func) 593 return -EINVAL; 594 595 /* Initialise function */ 596 func->func.name = np->name; 597 func->func.ngroups = of_get_child_count(np); 598 if (func->func.ngroups == 0) { 599 dev_info(ipctl->dev, "no groups defined in %pOF\n", np); 600 return -EINVAL; 601 } 602 > 603 group_names = devm_kcalloc(ipctl->dev, func->ngroups, sizeof(*func->func.groups), 604 GFP_KERNEL); 605 if (!group_names) 606 return -ENOMEM; 607 i = 0; 608 for_each_child_of_node(np, child) 609 group_names[i++] = child->name; 610 func->func.groups = group_names; 611 612 i = 0; 613 for_each_child_of_node(np, child) { 614 grp = devm_kzalloc(ipctl->dev, sizeof(*grp), GFP_KERNEL); 615 if (!grp) { 616 of_node_put(child); 617 return -ENOMEM; 618 } 619 620 mutex_lock(&ipctl->mutex); 621 radix_tree_insert(&pctl->pin_group_tree, 622 ipctl->group_index++, grp); 623 mutex_unlock(&ipctl->mutex); 624 625 imx_pinctrl_parse_groups(child, grp, ipctl, i++); 626 } 627 628 return 0; 629 } 630 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki