diff mbox series

[2/2] pinctrl: qcom: Refactor generic qcom pinctrl driver

Message ID 1683892553-19882-3-git-send-email-quic_rohiagar@quicinc.com
State New
Headers show
Series Refactor the pinctrl driver | expand

Commit Message

Rohit Agarwal May 12, 2023, 11:55 a.m. UTC
Reuse the generic pingroup struct from pinctrl.h in msm_pingroup
along with the macro defined.

Signed-off-by: Rohit Agarwal <quic_rohiagar@quicinc.com>
Suggested-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Reviewed-by: Bjorn Andersson <andersson@kernel.org>
---
 drivers/pinctrl/qcom/pinctrl-apq8064.c  | 12 ++++++------
 drivers/pinctrl/qcom/pinctrl-apq8084.c  | 12 ++++++------
 drivers/pinctrl/qcom/pinctrl-ipq4019.c  |  6 +++---
 drivers/pinctrl/qcom/pinctrl-ipq5332.c  |  6 +++---
 drivers/pinctrl/qcom/pinctrl-ipq6018.c  |  6 +++---
 drivers/pinctrl/qcom/pinctrl-ipq8064.c  | 12 ++++++------
 drivers/pinctrl/qcom/pinctrl-ipq8074.c  |  6 +++---
 drivers/pinctrl/qcom/pinctrl-ipq9574.c  |  6 +++---
 drivers/pinctrl/qcom/pinctrl-mdm9607.c  | 12 ++++++------
 drivers/pinctrl/qcom/pinctrl-mdm9615.c  |  6 +++---
 drivers/pinctrl/qcom/pinctrl-msm.c      | 10 +++++-----
 drivers/pinctrl/qcom/pinctrl-msm.h      |  8 ++------
 drivers/pinctrl/qcom/pinctrl-msm8226.c  | 12 ++++++------
 drivers/pinctrl/qcom/pinctrl-msm8660.c  | 12 ++++++------
 drivers/pinctrl/qcom/pinctrl-msm8909.c  | 12 ++++++------
 drivers/pinctrl/qcom/pinctrl-msm8916.c  | 12 ++++++------
 drivers/pinctrl/qcom/pinctrl-msm8953.c  | 12 ++++++------
 drivers/pinctrl/qcom/pinctrl-msm8960.c  | 12 ++++++------
 drivers/pinctrl/qcom/pinctrl-msm8976.c  | 12 ++++++------
 drivers/pinctrl/qcom/pinctrl-msm8994.c  | 12 ++++++------
 drivers/pinctrl/qcom/pinctrl-msm8996.c  | 12 ++++++------
 drivers/pinctrl/qcom/pinctrl-msm8998.c  | 18 +++++++++---------
 drivers/pinctrl/qcom/pinctrl-msm8x74.c  | 18 +++++++++---------
 drivers/pinctrl/qcom/pinctrl-qcm2290.c  | 18 +++++++++---------
 drivers/pinctrl/qcom/pinctrl-qcs404.c   | 12 ++++++------
 drivers/pinctrl/qcom/pinctrl-qdf2xxx.c  |  6 +++---
 drivers/pinctrl/qcom/pinctrl-qdu1000.c  | 18 +++++++++---------
 drivers/pinctrl/qcom/pinctrl-sa8775p.c  | 18 +++++++++---------
 drivers/pinctrl/qcom/pinctrl-sc7180.c   | 18 +++++++++---------
 drivers/pinctrl/qcom/pinctrl-sc7280.c   | 18 +++++++++---------
 drivers/pinctrl/qcom/pinctrl-sc8180x.c  | 18 +++++++++---------
 drivers/pinctrl/qcom/pinctrl-sc8280xp.c | 18 +++++++++---------
 drivers/pinctrl/qcom/pinctrl-sdm660.c   | 12 ++++++------
 drivers/pinctrl/qcom/pinctrl-sdm670.c   | 24 ++++++++++++------------
 drivers/pinctrl/qcom/pinctrl-sdm845.c   | 18 +++++++++---------
 drivers/pinctrl/qcom/pinctrl-sdx55.c    | 12 ++++++------
 drivers/pinctrl/qcom/pinctrl-sdx65.c    | 18 +++++++++---------
 drivers/pinctrl/qcom/pinctrl-sm6115.c   | 18 +++++++++---------
 drivers/pinctrl/qcom/pinctrl-sm6125.c   | 18 +++++++++---------
 drivers/pinctrl/qcom/pinctrl-sm6350.c   | 18 +++++++++---------
 drivers/pinctrl/qcom/pinctrl-sm6375.c   | 18 +++++++++---------
 drivers/pinctrl/qcom/pinctrl-sm8150.c   | 18 +++++++++---------
 drivers/pinctrl/qcom/pinctrl-sm8250.c   | 18 +++++++++---------
 drivers/pinctrl/qcom/pinctrl-sm8350.c   | 18 +++++++++---------
 drivers/pinctrl/qcom/pinctrl-sm8450.c   | 18 +++++++++---------
 drivers/pinctrl/qcom/pinctrl-sm8550.c   | 18 +++++++++---------
 46 files changed, 316 insertions(+), 320 deletions(-)

Comments

kernel test robot May 12, 2023, 6:15 p.m. UTC | #1
Hi Rohit,

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.4-rc1 next-20230512]
[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/Rohit-Agarwal/pinctrl-qcom-Remove-the-msm_function-struct/20230512-195910
base:   https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl.git devel
patch link:    https://lore.kernel.org/r/1683892553-19882-3-git-send-email-quic_rohiagar%40quicinc.com
patch subject: [PATCH 2/2] pinctrl: qcom: Refactor generic qcom pinctrl driver
config: arm64-buildonly-randconfig-r006-20230511 (https://download.01.org/0day-ci/archive/20230513/202305130211.tEiFmM2W-lkp@intel.com/config)
compiler: clang version 17.0.0 (https://github.com/llvm/llvm-project b0fb98227c90adf2536c9ad644a74d5e92961111)
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # install arm64 cross compiling tool for clang build
        # apt-get install binutils-aarch64-linux-gnu
        # https://github.com/intel-lab-lkp/linux/commit/1894575a5b0f681fb8697a05ac2aa68ef97e48e8
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Rohit-Agarwal/pinctrl-qcom-Remove-the-msm_function-struct/20230512-195910
        git checkout 1894575a5b0f681fb8697a05ac2aa68ef97e48e8
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm64 olddefconfig
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm64 SHELL=/bin/bash drivers/pinctrl/qcom/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>
| Link: https://lore.kernel.org/oe-kbuild-all/202305130211.tEiFmM2W-lkp@intel.com/

All errors (new ones prefixed by >>):

   drivers/pinctrl/qcom/pinctrl-sm7150.c:969:50: error: array has incomplete element type 'const struct msm_function'
   static const struct msm_function sm7150_functions[] = {
                                                    ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:969:21: note: forward declaration of 'struct msm_function'
   static const struct msm_function sm7150_functions[] = {
                       ^
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:1089:8: error: field designator 'name' does not refer to any field in type 'const struct msm_pingroup'
           [0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:4: note: expanded from macro 'PINGROUP'
                   .name = "gpio" #id,                     \
                   ~^~~~~~~~~~~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:1089:8: error: field designator 'pins' does not refer to any field in type 'const struct msm_pingroup'
           [0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:4: note: expanded from macro 'PINGROUP'
                   .pins = gpio##id##_pins,                \
                   ~^~~~~~~~~~~~~~~~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:1089:8: error: field designator 'npins' does not refer to any field in type 'const struct msm_pingroup'
           [0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:4: note: expanded from macro 'PINGROUP'
                   .npins = ARRAY_SIZE(gpio##id##_pins),   \
                   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1090:8: error: field designator 'name' does not refer to any field in type 'const struct msm_pingroup'
           [1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:4: note: expanded from macro 'PINGROUP'
                   .name = "gpio" #id,                     \
                   ~^~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1090:8: error: field designator 'pins' does not refer to any field in type 'const struct msm_pingroup'
           [1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:4: note: expanded from macro 'PINGROUP'
                   .pins = gpio##id##_pins,                \
                   ~^~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1090:8: error: field designator 'npins' does not refer to any field in type 'const struct msm_pingroup'
           [1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:4: note: expanded from macro 'PINGROUP'
                   .npins = ARRAY_SIZE(gpio##id##_pins),   \
                   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1091:8: error: field designator 'name' does not refer to any field in type 'const struct msm_pingroup'
           [2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:4: note: expanded from macro 'PINGROUP'
                   .name = "gpio" #id,                     \
                   ~^~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1091:8: error: field designator 'pins' does not refer to any field in type 'const struct msm_pingroup'
           [2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:4: note: expanded from macro 'PINGROUP'
                   .pins = gpio##id##_pins,                \
                   ~^~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1091:8: error: field designator 'npins' does not refer to any field in type 'const struct msm_pingroup'
           [2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:4: note: expanded from macro 'PINGROUP'
                   .npins = ARRAY_SIZE(gpio##id##_pins),   \
                   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1092:8: error: field designator 'name' does not refer to any field in type 'const struct msm_pingroup'
           [3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:4: note: expanded from macro 'PINGROUP'
                   .name = "gpio" #id,                     \
                   ~^~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1092:8: error: field designator 'pins' does not refer to any field in type 'const struct msm_pingroup'
           [3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:4: note: expanded from macro 'PINGROUP'
                   .pins = gpio##id##_pins,                \
                   ~^~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1092:8: error: field designator 'npins' does not refer to any field in type 'const struct msm_pingroup'
           [3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:4: note: expanded from macro 'PINGROUP'
                   .npins = ARRAY_SIZE(gpio##id##_pins),   \
                   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1093:8: error: field designator 'name' does not refer to any field in type 'const struct msm_pingroup'
           [4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:4: note: expanded from macro 'PINGROUP'
                   .name = "gpio" #id,                     \
                   ~^~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1093:8: error: field designator 'pins' does not refer to any field in type 'const struct msm_pingroup'
           [4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:4: note: expanded from macro 'PINGROUP'
                   .pins = gpio##id##_pins,                \
                   ~^~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1093:8: error: field designator 'npins' does not refer to any field in type 'const struct msm_pingroup'
           [4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:4: note: expanded from macro 'PINGROUP'
                   .npins = ARRAY_SIZE(gpio##id##_pins),   \
                   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1094:8: error: field designator 'name' does not refer to any field in type 'const struct msm_pingroup'
           [5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:4: note: expanded from macro 'PINGROUP'
                   .name = "gpio" #id,                     \
                   ~^~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1094:8: error: field designator 'pins' does not refer to any field in type 'const struct msm_pingroup'
           [5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:4: note: expanded from macro 'PINGROUP'
                   .pins = gpio##id##_pins,                \
                   ~^~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1094:8: error: field designator 'npins' does not refer to any field in type 'const struct msm_pingroup'
           [5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:4: note: expanded from macro 'PINGROUP'
                   .npins = ARRAY_SIZE(gpio##id##_pins),   \
                   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   fatal error: too many errors emitted, stopping now [-ferror-limit=]
   20 errors generated.


vim +1089 drivers/pinctrl/qcom/pinctrl-sm7150.c

b915395c9e0436 Danila Tikhonov 2023-03-12  1081  
b915395c9e0436 Danila Tikhonov 2023-03-12  1082  /*
b915395c9e0436 Danila Tikhonov 2023-03-12  1083   * Every pin is maintained as a single group, and missing or non-existing pin
b915395c9e0436 Danila Tikhonov 2023-03-12  1084   * would be maintained as dummy group to synchronize pin group index with
b915395c9e0436 Danila Tikhonov 2023-03-12  1085   * pin descriptor registered with pinctrl core.
b915395c9e0436 Danila Tikhonov 2023-03-12  1086   * Clients would not be able to request these dummy pin groups.
b915395c9e0436 Danila Tikhonov 2023-03-12  1087   */
b915395c9e0436 Danila Tikhonov 2023-03-12  1088  static const struct msm_pingroup sm7150_groups[] = {
b915395c9e0436 Danila Tikhonov 2023-03-12 @1089  	[0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1090  	[1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1091  	[2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1092  	[3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1093  	[4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1094  	[5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1095  	[6] = PINGROUP(6, NORTH, qup11, _, phase_flag, ddr_pxi0, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1096  	[7] = PINGROUP(7, NORTH, qup11, ddr_bist, _, phase_flag, atest_tsens2, vsense_trigger, atest_usb1, ddr_pxi0, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1097  	[8] = PINGROUP(8, NORTH, qup11, gp_pdm1, ddr_bist, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1098  	[9] = PINGROUP(9, NORTH, qup11, ddr_bist, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1099  	[10] = PINGROUP(10, NORTH, mdp_vsync, ddr_bist, _, phase_flag, wlan2_adc1, atest_usb1, ddr_pxi2, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1100  	[11] = PINGROUP(11, NORTH, mdp_vsync, edp_lcd, _, phase_flag, wlan2_adc0, atest_usb1, ddr_pxi2, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1101  	[12] = PINGROUP(12, SOUTH, mdp_vsync, m_voc, qup01, _, phase_flag, ddr_pxi3, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1102  	[13] = PINGROUP(13, SOUTH, cam_mclk, pll_bypassnl, _, phase_flag, qdss, ddr_pxi3, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1103  	[14] = PINGROUP(14, SOUTH, cam_mclk, pll_reset, _, phase_flag, qdss, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1104  	[15] = PINGROUP(15, SOUTH, cam_mclk, _, phase_flag, qdss, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1105  	[16] = PINGROUP(16, SOUTH, cam_mclk, _, phase_flag, qdss, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1106  	[17] = PINGROUP(17, SOUTH, cci_i2c, _, phase_flag, qdss, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1107  	[18] = PINGROUP(18, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1108  	[19] = PINGROUP(19, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1109  	[20] = PINGROUP(20, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1110  	[21] = PINGROUP(21, SOUTH, cci_timer0, gcc_gp2, _, qdss, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1111  	[22] = PINGROUP(22, SOUTH, cci_timer1, gcc_gp3, _, qdss, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1112  	[23] = PINGROUP(23, SOUTH, cci_timer2, qdss, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1113  	[24] = PINGROUP(24, SOUTH, cci_timer3, cci_async, _, phase_flag, qdss, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1114  	[25] = PINGROUP(25, SOUTH, cci_timer4, cci_async, _, phase_flag, qdss, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1115  	[26] = PINGROUP(26, SOUTH, cci_async, jitter_bist, _, phase_flag, qdss, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1116  	[27] = PINGROUP(27, SOUTH, cci_i2c, pll_bist, _, phase_flag, qdss, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1117  	[28] = PINGROUP(28, SOUTH, cci_i2c, agera_pll, _, phase_flag, qdss, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1118  	[29] = PINGROUP(29, NORTH, _, _, phase_flag, qdss, atest_tsens, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1119  	[30] = PINGROUP(30, SOUTH, _, phase_flag, qdss, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1120  	[31] = PINGROUP(31, WEST, _, qdss, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1121  	[32] = PINGROUP(32, NORTH, qdss_cti, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1122  	[33] = PINGROUP(33, NORTH, sd_write, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1123  	[34] = PINGROUP(34, SOUTH, qup02, qdss, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1124  	[35] = PINGROUP(35, SOUTH, qup02, _, phase_flag, qdss, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1125  	[36] = PINGROUP(36, SOUTH, _, phase_flag, qdss, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1126  	[37] = PINGROUP(37, SOUTH, qup01, gp_pdm0, _, phase_flag, qdss, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1127  	[38] = PINGROUP(38, SOUTH, qup03, _, phase_flag, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1128  	[39] = PINGROUP(39, SOUTH, qup03, _, phase_flag, _, wlan1_adc0, atest_usb1, ddr_pxi1, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1129  	[40] = PINGROUP(40, SOUTH, qup03, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1130  	[41] = PINGROUP(41, SOUTH, qup03, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1131  	[42] = PINGROUP(42, NORTH, qup12, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1132  	[43] = PINGROUP(43, NORTH, qup12, _, phase_flag, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1133  	[44] = PINGROUP(44, NORTH, qup12, _, phase_flag, qdss_cti, _, wlan1_adc1, atest_usb1, ddr_pxi1, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1134  	[45] = PINGROUP(45, NORTH, qup12, qdss_cti, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1135  	[46] = PINGROUP(46, NORTH, qup13, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1136  	[47] = PINGROUP(47, NORTH, qup13, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1137  	[48] = PINGROUP(48, WEST, gcc_gp1, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1138  	[49] = PINGROUP(49, WEST, pri_mi2s, qup00, wsa_clk, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1139  	[50] = PINGROUP(50, WEST, pri_mi2s_ws, qup00, wsa_data, gp_pdm1, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1140  	[51] = PINGROUP(51, WEST, pri_mi2s, qup00, atest_usb2, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1141  	[52] = PINGROUP(52, WEST, pri_mi2s, qup00, atest_usb2, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1142  	[53] = PINGROUP(53, WEST, ter_mi2s, qup04, qdss, atest_usb2, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1143  	[54] = PINGROUP(54, WEST, ter_mi2s, qup04, qdss, atest_usb2, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1144  	[55] = PINGROUP(55, WEST, ter_mi2s, qup04, qdss, atest_usb2, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1145  	[56] = PINGROUP(56, WEST, ter_mi2s, qup04, gcc_gp1, _, phase_flag, qdss, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1146  	[57] = PINGROUP(57, WEST, sec_mi2s, qup00, gp_pdm2, _, phase_flag, qdss, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1147  	[58] = PINGROUP(58, WEST, qua_mi2s, qup00, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1148  	[59] = PINGROUP(59, NORTH, qup10, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1149  	[60] = PINGROUP(60, NORTH, qup10, tsif1_error, _, phase_flag, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1150  	[61] = PINGROUP(61, NORTH, qup10, tsif1_sync, _, phase_flag, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1151  	[62] = PINGROUP(62, NORTH, qup10, tsif1_clk, tgu_ch3, _, phase_flag, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1152  	[63] = PINGROUP(63, NORTH, tsif1_en, mdp_vsync0, qup10, mdp_vsync1, mdp_vsync2, mdp_vsync3, tgu_ch0, qdss_cti, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1153  	[64] = PINGROUP(64, NORTH, tsif1_data, sdc4_cmd, qup10, tgu_ch1, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1154  	[65] = PINGROUP(65, NORTH, tsif2_error, sdc43, qup10, vfr_1, tgu_ch2, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1155  	[66] = PINGROUP(66, NORTH, tsif2_clk, sdc4_clk, pci_e, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1156  	[67] = PINGROUP(67, NORTH, tsif2_en, sdc42, pci_e, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1157  	[68] = PINGROUP(68, NORTH, tsif2_data, sdc41, pci_e, gp_pdm0, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1158  	[69] = PINGROUP(69, NORTH, tsif2_sync, sdc40, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1159  	[70] = PINGROUP(70, NORTH, _, _, mdp_vsync, ldo_en, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1160  	[71] = PINGROUP(71, NORTH, _, mdp_vsync, ldo_update, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1161  	[72] = PINGROUP(72, NORTH, prng_rosc, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1162  	[73] = PINGROUP(73, NORTH, _, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1163  	[74] = PINGROUP(74, WEST, _, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1164  	[75] = PINGROUP(75, WEST, uim2_data, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1165  	[76] = PINGROUP(76, WEST, uim2_clk, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1166  	[77] = PINGROUP(77, WEST, uim2_reset, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1167  	[78] = PINGROUP(78, WEST, uim2_present, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1168  	[79] = PINGROUP(79, WEST, uim1_data, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1169  	[80] = PINGROUP(80, WEST, uim1_clk, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1170  	[81] = PINGROUP(81, WEST, uim1_reset, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1171  	[82] = PINGROUP(82, WEST, uim1_present, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1172  	[83] = PINGROUP(83, WEST, _, nav_pps_in, nav_pps_out, gps_tx, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1173  	[84] = PINGROUP(84, WEST, _, nav_pps_in, nav_pps_out, gps_tx, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1174  	[85] = PINGROUP(85, WEST, uim_batt, edp_hot, aoss_cti, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1175  	[86] = PINGROUP(86, NORTH, qdss, atest_char, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1176  	[87] = PINGROUP(87, NORTH, adsp_ext, qdss, atest_char, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1177  	[88] = PINGROUP(88, NORTH, qdss, atest_char, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1178  	[89] = PINGROUP(89, NORTH, qdss, atest_char, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1179  	[90] = PINGROUP(90, NORTH, qdss, atest_char, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1180  	[91] = PINGROUP(91, NORTH, qdss, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1181  	[92] = PINGROUP(92, NORTH, _, _, qup15, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1182  	[93] = PINGROUP(93, NORTH, qdss, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1183  	[94] = PINGROUP(94, SOUTH, _, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1184  	[95] = PINGROUP(95, WEST, _, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1185  	[96] = PINGROUP(96, WEST, qlink_request, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1186  	[97] = PINGROUP(97, WEST, qlink_enable, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1187  	[98] = PINGROUP(98, WEST, _, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1188  	[99] = PINGROUP(99, WEST, _, pa_indicator, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1189  	[100] = PINGROUP(100, WEST, _, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1190  	[101] = PINGROUP(101, NORTH, _, _, qup15, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1191  	[102] = PINGROUP(102, NORTH, _, _, qup15, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1192  	[103] = PINGROUP(103, NORTH, _, qup15, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1193  	[104] = PINGROUP(104, WEST, usb_phy, _, qdss, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1194  	[105] = PINGROUP(105, NORTH, _, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1195  	[106] = PINGROUP(106, NORTH, _, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1196  	[107] = PINGROUP(107, WEST, _, nav_pps_in, nav_pps_out, gps_tx, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1197  	[108] = PINGROUP(108, SOUTH, mss_lte, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1198  	[109] = PINGROUP(109, SOUTH, mss_lte, gps_tx, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1199  	[110] = PINGROUP(110, NORTH, _, _, qup14, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1200  	[111] = PINGROUP(111, NORTH, _, _, qup14, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1201  	[112] = PINGROUP(112, NORTH, _, qup14, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1202  	[113] = PINGROUP(113, NORTH, _, qup14, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1203  	[114] = PINGROUP(114, NORTH, _, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1204  	[115] = PINGROUP(115, NORTH, _, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1205  	[116] = PINGROUP(116, NORTH, _, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1206  	[117] = PINGROUP(117, NORTH, _, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1207  	[118] = PINGROUP(118, NORTH, _, _, _, _, _, _, _, _, _),
b915395c9e0436 Danila Tikhonov 2023-03-12  1208  	[119] = UFS_RESET(ufs_reset, 0x9f000),
b915395c9e0436 Danila Tikhonov 2023-03-12  1209  	[120] = SDC_QDSD_PINGROUP(sdc1_rclk, 0x9a000, 15, 0),
b915395c9e0436 Danila Tikhonov 2023-03-12  1210  	[121] = SDC_QDSD_PINGROUP(sdc1_clk, 0x9a000, 13, 6),
b915395c9e0436 Danila Tikhonov 2023-03-12  1211  	[122] = SDC_QDSD_PINGROUP(sdc1_cmd, 0x9a000, 11, 3),
b915395c9e0436 Danila Tikhonov 2023-03-12  1212  	[123] = SDC_QDSD_PINGROUP(sdc1_data, 0x9a000, 9, 0),
b915395c9e0436 Danila Tikhonov 2023-03-12  1213  	[124] = SDC_QDSD_PINGROUP(sdc2_clk, 0x98000, 14, 6),
b915395c9e0436 Danila Tikhonov 2023-03-12  1214  	[125] = SDC_QDSD_PINGROUP(sdc2_cmd, 0x98000, 11, 3),
b915395c9e0436 Danila Tikhonov 2023-03-12  1215  	[126] = SDC_QDSD_PINGROUP(sdc2_data, 0x98000, 9, 0),
b915395c9e0436 Danila Tikhonov 2023-03-12  1216  };
b915395c9e0436 Danila Tikhonov 2023-03-12  1217
kernel test robot May 12, 2023, 6:26 p.m. UTC | #2
Hi Rohit,

kernel test robot noticed the following build warnings:

[auto build test WARNING on linusw-pinctrl/devel]
[also build test WARNING on linusw-pinctrl/for-next linus/master v6.4-rc1 next-20230512]
[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/Rohit-Agarwal/pinctrl-qcom-Remove-the-msm_function-struct/20230512-195910
base:   https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl.git devel
patch link:    https://lore.kernel.org/r/1683892553-19882-3-git-send-email-quic_rohiagar%40quicinc.com
patch subject: [PATCH 2/2] pinctrl: qcom: Refactor generic qcom pinctrl driver
config: arm-allyesconfig (https://download.01.org/0day-ci/archive/20230513/202305130207.plVMwkCC-lkp@intel.com/config)
compiler: arm-linux-gnueabi-gcc (GCC) 12.1.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/intel-lab-lkp/linux/commit/1894575a5b0f681fb8697a05ac2aa68ef97e48e8
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Rohit-Agarwal/pinctrl-qcom-Remove-the-msm_function-struct/20230512-195910
        git checkout 1894575a5b0f681fb8697a05ac2aa68ef97e48e8
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=arm olddefconfig
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash drivers/pinctrl/qcom/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>
| Link: https://lore.kernel.org/oe-kbuild-all/202305130207.plVMwkCC-lkp@intel.com/

All warnings (new ones prefixed by >>):

   drivers/pinctrl/qcom/pinctrl-sm7150.c:969:34: error: array type has incomplete element type 'struct msm_function'
     969 | static const struct msm_function sm7150_functions[] = {
         |                                  ^~~~~~~~~~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1089:15: note: in expansion of macro 'PINGROUP'
    1089 |         [0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1089:15: note: in expansion of macro 'PINGROUP'
    1089 |         [0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1089:15: note: in expansion of macro 'PINGROUP'
    1089 |         [0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1089:15: note: in expansion of macro 'PINGROUP'
    1089 |         [0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1089:15: note: in expansion of macro 'PINGROUP'
    1089 |         [0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[0].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1089:15: note: in expansion of macro 'PINGROUP'
    1089 |         [0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1089:15: note: in expansion of macro 'PINGROUP'
    1089 |         [0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[0].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1089:15: note: in expansion of macro 'PINGROUP'
    1089 |         [0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1090:15: note: in expansion of macro 'PINGROUP'
    1090 |         [1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1090:15: note: in expansion of macro 'PINGROUP'
    1090 |         [1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1090:15: note: in expansion of macro 'PINGROUP'
    1090 |         [1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1090:15: note: in expansion of macro 'PINGROUP'
    1090 |         [1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1090:15: note: in expansion of macro 'PINGROUP'
    1090 |         [1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[1].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1090:15: note: in expansion of macro 'PINGROUP'
    1090 |         [1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1090:15: note: in expansion of macro 'PINGROUP'
    1090 |         [1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[1].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1090:15: note: in expansion of macro 'PINGROUP'
    1090 |         [1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1091:15: note: in expansion of macro 'PINGROUP'
    1091 |         [2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1091:15: note: in expansion of macro 'PINGROUP'
    1091 |         [2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1091:15: note: in expansion of macro 'PINGROUP'
    1091 |         [2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1091:15: note: in expansion of macro 'PINGROUP'
    1091 |         [2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1091:15: note: in expansion of macro 'PINGROUP'
    1091 |         [2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[2].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1091:15: note: in expansion of macro 'PINGROUP'
    1091 |         [2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1091:15: note: in expansion of macro 'PINGROUP'
    1091 |         [2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[2].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1091:15: note: in expansion of macro 'PINGROUP'
    1091 |         [2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1092:15: note: in expansion of macro 'PINGROUP'
    1092 |         [3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1092:15: note: in expansion of macro 'PINGROUP'
    1092 |         [3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1092:15: note: in expansion of macro 'PINGROUP'
    1092 |         [3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1092:15: note: in expansion of macro 'PINGROUP'
    1092 |         [3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1092:15: note: in expansion of macro 'PINGROUP'
    1092 |         [3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[3].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1092:15: note: in expansion of macro 'PINGROUP'
    1092 |         [3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1092:15: note: in expansion of macro 'PINGROUP'
    1092 |         [3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[3].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1092:15: note: in expansion of macro 'PINGROUP'
    1092 |         [3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1093:15: note: in expansion of macro 'PINGROUP'
    1093 |         [4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1093:15: note: in expansion of macro 'PINGROUP'
    1093 |         [4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1093:15: note: in expansion of macro 'PINGROUP'
    1093 |         [4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1093:15: note: in expansion of macro 'PINGROUP'
    1093 |         [4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1093:15: note: in expansion of macro 'PINGROUP'
    1093 |         [4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[4].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1093:15: note: in expansion of macro 'PINGROUP'
    1093 |         [4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1093:15: note: in expansion of macro 'PINGROUP'
    1093 |         [4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[4].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1093:15: note: in expansion of macro 'PINGROUP'
    1093 |         [4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1094:15: note: in expansion of macro 'PINGROUP'
    1094 |         [5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1094:15: note: in expansion of macro 'PINGROUP'
    1094 |         [5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1094:15: note: in expansion of macro 'PINGROUP'
    1094 |         [5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1094:15: note: in expansion of macro 'PINGROUP'
    1094 |         [5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1094:15: note: in expansion of macro 'PINGROUP'
    1094 |         [5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[5].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1094:15: note: in expansion of macro 'PINGROUP'
    1094 |         [5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1094:15: note: in expansion of macro 'PINGROUP'
    1094 |         [5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[5].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1094:15: note: in expansion of macro 'PINGROUP'
    1094 |         [5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1095:15: note: in expansion of macro 'PINGROUP'
    1095 |         [6] = PINGROUP(6, NORTH, qup11, _, phase_flag, ddr_pxi0, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1095:15: note: in expansion of macro 'PINGROUP'
    1095 |         [6] = PINGROUP(6, NORTH, qup11, _, phase_flag, ddr_pxi0, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1095:15: note: in expansion of macro 'PINGROUP'
    1095 |         [6] = PINGROUP(6, NORTH, qup11, _, phase_flag, ddr_pxi0, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1095:15: note: in expansion of macro 'PINGROUP'
    1095 |         [6] = PINGROUP(6, NORTH, qup11, _, phase_flag, ddr_pxi0, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1095:15: note: in expansion of macro 'PINGROUP'
    1095 |         [6] = PINGROUP(6, NORTH, qup11, _, phase_flag, ddr_pxi0, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[6].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1095:15: note: in expansion of macro 'PINGROUP'
    1095 |         [6] = PINGROUP(6, NORTH, qup11, _, phase_flag, ddr_pxi0, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1095:15: note: in expansion of macro 'PINGROUP'
    1095 |         [6] = PINGROUP(6, NORTH, qup11, _, phase_flag, ddr_pxi0, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[6].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1095:15: note: in expansion of macro 'PINGROUP'
    1095 |         [6] = PINGROUP(6, NORTH, qup11, _, phase_flag, ddr_pxi0, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1096:15: note: in expansion of macro 'PINGROUP'
    1096 |         [7] = PINGROUP(7, NORTH, qup11, ddr_bist, _, phase_flag, atest_tsens2, vsense_trigger, atest_usb1, ddr_pxi0, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1096:15: note: in expansion of macro 'PINGROUP'
    1096 |         [7] = PINGROUP(7, NORTH, qup11, ddr_bist, _, phase_flag, atest_tsens2, vsense_trigger, atest_usb1, ddr_pxi0, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1096:15: note: in expansion of macro 'PINGROUP'
    1096 |         [7] = PINGROUP(7, NORTH, qup11, ddr_bist, _, phase_flag, atest_tsens2, vsense_trigger, atest_usb1, ddr_pxi0, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1096:15: note: in expansion of macro 'PINGROUP'
    1096 |         [7] = PINGROUP(7, NORTH, qup11, ddr_bist, _, phase_flag, atest_tsens2, vsense_trigger, atest_usb1, ddr_pxi0, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1096:15: note: in expansion of macro 'PINGROUP'
    1096 |         [7] = PINGROUP(7, NORTH, qup11, ddr_bist, _, phase_flag, atest_tsens2, vsense_trigger, atest_usb1, ddr_pxi0, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[7].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1096:15: note: in expansion of macro 'PINGROUP'
    1096 |         [7] = PINGROUP(7, NORTH, qup11, ddr_bist, _, phase_flag, atest_tsens2, vsense_trigger, atest_usb1, ddr_pxi0, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1096:15: note: in expansion of macro 'PINGROUP'
    1096 |         [7] = PINGROUP(7, NORTH, qup11, ddr_bist, _, phase_flag, atest_tsens2, vsense_trigger, atest_usb1, ddr_pxi0, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[7].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1096:15: note: in expansion of macro 'PINGROUP'
    1096 |         [7] = PINGROUP(7, NORTH, qup11, ddr_bist, _, phase_flag, atest_tsens2, vsense_trigger, atest_usb1, ddr_pxi0, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1097:15: note: in expansion of macro 'PINGROUP'
    1097 |         [8] = PINGROUP(8, NORTH, qup11, gp_pdm1, ddr_bist, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1097:15: note: in expansion of macro 'PINGROUP'
    1097 |         [8] = PINGROUP(8, NORTH, qup11, gp_pdm1, ddr_bist, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1097:15: note: in expansion of macro 'PINGROUP'
    1097 |         [8] = PINGROUP(8, NORTH, qup11, gp_pdm1, ddr_bist, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1097:15: note: in expansion of macro 'PINGROUP'
    1097 |         [8] = PINGROUP(8, NORTH, qup11, gp_pdm1, ddr_bist, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1097:15: note: in expansion of macro 'PINGROUP'
    1097 |         [8] = PINGROUP(8, NORTH, qup11, gp_pdm1, ddr_bist, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[8].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1097:15: note: in expansion of macro 'PINGROUP'
    1097 |         [8] = PINGROUP(8, NORTH, qup11, gp_pdm1, ddr_bist, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1097:15: note: in expansion of macro 'PINGROUP'
    1097 |         [8] = PINGROUP(8, NORTH, qup11, gp_pdm1, ddr_bist, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[8].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1097:15: note: in expansion of macro 'PINGROUP'
    1097 |         [8] = PINGROUP(8, NORTH, qup11, gp_pdm1, ddr_bist, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1098:15: note: in expansion of macro 'PINGROUP'
    1098 |         [9] = PINGROUP(9, NORTH, qup11, ddr_bist, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1098:15: note: in expansion of macro 'PINGROUP'
    1098 |         [9] = PINGROUP(9, NORTH, qup11, ddr_bist, _, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1098:15: note: in expansion of macro 'PINGROUP'
    1098 |         [9] = PINGROUP(9, NORTH, qup11, ddr_bist, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1098:15: note: in expansion of macro 'PINGROUP'
    1098 |         [9] = PINGROUP(9, NORTH, qup11, ddr_bist, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1098:15: note: in expansion of macro 'PINGROUP'
    1098 |         [9] = PINGROUP(9, NORTH, qup11, ddr_bist, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[9].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1098:15: note: in expansion of macro 'PINGROUP'
    1098 |         [9] = PINGROUP(9, NORTH, qup11, ddr_bist, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1098:15: note: in expansion of macro 'PINGROUP'
    1098 |         [9] = PINGROUP(9, NORTH, qup11, ddr_bist, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[9].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1098:15: note: in expansion of macro 'PINGROUP'
    1098 |         [9] = PINGROUP(9, NORTH, qup11, ddr_bist, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1099:16: note: in expansion of macro 'PINGROUP'
    1099 |         [10] = PINGROUP(10, NORTH, mdp_vsync, ddr_bist, _, phase_flag, wlan2_adc1, atest_usb1, ddr_pxi2, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1099:16: note: in expansion of macro 'PINGROUP'
    1099 |         [10] = PINGROUP(10, NORTH, mdp_vsync, ddr_bist, _, phase_flag, wlan2_adc1, atest_usb1, ddr_pxi2, _, _),
         |                ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1099:16: note: in expansion of macro 'PINGROUP'
    1099 |         [10] = PINGROUP(10, NORTH, mdp_vsync, ddr_bist, _, phase_flag, wlan2_adc1, atest_usb1, ddr_pxi2, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1099:16: note: in expansion of macro 'PINGROUP'
    1099 |         [10] = PINGROUP(10, NORTH, mdp_vsync, ddr_bist, _, phase_flag, wlan2_adc1, atest_usb1, ddr_pxi2, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1099:16: note: in expansion of macro 'PINGROUP'
    1099 |         [10] = PINGROUP(10, NORTH, mdp_vsync, ddr_bist, _, phase_flag, wlan2_adc1, atest_usb1, ddr_pxi2, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[10].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1099:16: note: in expansion of macro 'PINGROUP'
    1099 |         [10] = PINGROUP(10, NORTH, mdp_vsync, ddr_bist, _, phase_flag, wlan2_adc1, atest_usb1, ddr_pxi2, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1099:16: note: in expansion of macro 'PINGROUP'
    1099 |         [10] = PINGROUP(10, NORTH, mdp_vsync, ddr_bist, _, phase_flag, wlan2_adc1, atest_usb1, ddr_pxi2, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[10].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1099:16: note: in expansion of macro 'PINGROUP'
    1099 |         [10] = PINGROUP(10, NORTH, mdp_vsync, ddr_bist, _, phase_flag, wlan2_adc1, atest_usb1, ddr_pxi2, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1100:16: note: in expansion of macro 'PINGROUP'
    1100 |         [11] = PINGROUP(11, NORTH, mdp_vsync, edp_lcd, _, phase_flag, wlan2_adc0, atest_usb1, ddr_pxi2, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1100:16: note: in expansion of macro 'PINGROUP'
    1100 |         [11] = PINGROUP(11, NORTH, mdp_vsync, edp_lcd, _, phase_flag, wlan2_adc0, atest_usb1, ddr_pxi2, _, _),
         |                ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1100:16: note: in expansion of macro 'PINGROUP'
    1100 |         [11] = PINGROUP(11, NORTH, mdp_vsync, edp_lcd, _, phase_flag, wlan2_adc0, atest_usb1, ddr_pxi2, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1100:16: note: in expansion of macro 'PINGROUP'
    1100 |         [11] = PINGROUP(11, NORTH, mdp_vsync, edp_lcd, _, phase_flag, wlan2_adc0, atest_usb1, ddr_pxi2, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1100:16: note: in expansion of macro 'PINGROUP'
    1100 |         [11] = PINGROUP(11, NORTH, mdp_vsync, edp_lcd, _, phase_flag, wlan2_adc0, atest_usb1, ddr_pxi2, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[11].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1100:16: note: in expansion of macro 'PINGROUP'
    1100 |         [11] = PINGROUP(11, NORTH, mdp_vsync, edp_lcd, _, phase_flag, wlan2_adc0, atest_usb1, ddr_pxi2, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1100:16: note: in expansion of macro 'PINGROUP'
    1100 |         [11] = PINGROUP(11, NORTH, mdp_vsync, edp_lcd, _, phase_flag, wlan2_adc0, atest_usb1, ddr_pxi2, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[11].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1100:16: note: in expansion of macro 'PINGROUP'
    1100 |         [11] = PINGROUP(11, NORTH, mdp_vsync, edp_lcd, _, phase_flag, wlan2_adc0, atest_usb1, ddr_pxi2, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1101:16: note: in expansion of macro 'PINGROUP'
    1101 |         [12] = PINGROUP(12, SOUTH, mdp_vsync, m_voc, qup01, _, phase_flag, ddr_pxi3, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1101:16: note: in expansion of macro 'PINGROUP'
    1101 |         [12] = PINGROUP(12, SOUTH, mdp_vsync, m_voc, qup01, _, phase_flag, ddr_pxi3, _, _, _),
         |                ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1101:16: note: in expansion of macro 'PINGROUP'
    1101 |         [12] = PINGROUP(12, SOUTH, mdp_vsync, m_voc, qup01, _, phase_flag, ddr_pxi3, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1101:16: note: in expansion of macro 'PINGROUP'
    1101 |         [12] = PINGROUP(12, SOUTH, mdp_vsync, m_voc, qup01, _, phase_flag, ddr_pxi3, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1101:16: note: in expansion of macro 'PINGROUP'
    1101 |         [12] = PINGROUP(12, SOUTH, mdp_vsync, m_voc, qup01, _, phase_flag, ddr_pxi3, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[12].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1101:16: note: in expansion of macro 'PINGROUP'
    1101 |         [12] = PINGROUP(12, SOUTH, mdp_vsync, m_voc, qup01, _, phase_flag, ddr_pxi3, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1101:16: note: in expansion of macro 'PINGROUP'
    1101 |         [12] = PINGROUP(12, SOUTH, mdp_vsync, m_voc, qup01, _, phase_flag, ddr_pxi3, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[12].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1101:16: note: in expansion of macro 'PINGROUP'
    1101 |         [12] = PINGROUP(12, SOUTH, mdp_vsync, m_voc, qup01, _, phase_flag, ddr_pxi3, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1102:16: note: in expansion of macro 'PINGROUP'
    1102 |         [13] = PINGROUP(13, SOUTH, cam_mclk, pll_bypassnl, _, phase_flag, qdss, ddr_pxi3, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1102:16: note: in expansion of macro 'PINGROUP'
    1102 |         [13] = PINGROUP(13, SOUTH, cam_mclk, pll_bypassnl, _, phase_flag, qdss, ddr_pxi3, _, _, _),
         |                ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1102:16: note: in expansion of macro 'PINGROUP'
    1102 |         [13] = PINGROUP(13, SOUTH, cam_mclk, pll_bypassnl, _, phase_flag, qdss, ddr_pxi3, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1102:16: note: in expansion of macro 'PINGROUP'
    1102 |         [13] = PINGROUP(13, SOUTH, cam_mclk, pll_bypassnl, _, phase_flag, qdss, ddr_pxi3, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1102:16: note: in expansion of macro 'PINGROUP'
    1102 |         [13] = PINGROUP(13, SOUTH, cam_mclk, pll_bypassnl, _, phase_flag, qdss, ddr_pxi3, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[13].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1102:16: note: in expansion of macro 'PINGROUP'
    1102 |         [13] = PINGROUP(13, SOUTH, cam_mclk, pll_bypassnl, _, phase_flag, qdss, ddr_pxi3, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1102:16: note: in expansion of macro 'PINGROUP'
    1102 |         [13] = PINGROUP(13, SOUTH, cam_mclk, pll_bypassnl, _, phase_flag, qdss, ddr_pxi3, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[13].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1102:16: note: in expansion of macro 'PINGROUP'
    1102 |         [13] = PINGROUP(13, SOUTH, cam_mclk, pll_bypassnl, _, phase_flag, qdss, ddr_pxi3, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1103:16: note: in expansion of macro 'PINGROUP'
    1103 |         [14] = PINGROUP(14, SOUTH, cam_mclk, pll_reset, _, phase_flag, qdss, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1103:16: note: in expansion of macro 'PINGROUP'
    1103 |         [14] = PINGROUP(14, SOUTH, cam_mclk, pll_reset, _, phase_flag, qdss, _, _, _, _),
         |                ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1103:16: note: in expansion of macro 'PINGROUP'
    1103 |         [14] = PINGROUP(14, SOUTH, cam_mclk, pll_reset, _, phase_flag, qdss, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1103:16: note: in expansion of macro 'PINGROUP'
    1103 |         [14] = PINGROUP(14, SOUTH, cam_mclk, pll_reset, _, phase_flag, qdss, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1103:16: note: in expansion of macro 'PINGROUP'
    1103 |         [14] = PINGROUP(14, SOUTH, cam_mclk, pll_reset, _, phase_flag, qdss, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[14].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1103:16: note: in expansion of macro 'PINGROUP'
    1103 |         [14] = PINGROUP(14, SOUTH, cam_mclk, pll_reset, _, phase_flag, qdss, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1103:16: note: in expansion of macro 'PINGROUP'
    1103 |         [14] = PINGROUP(14, SOUTH, cam_mclk, pll_reset, _, phase_flag, qdss, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[14].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1103:16: note: in expansion of macro 'PINGROUP'
    1103 |         [14] = PINGROUP(14, SOUTH, cam_mclk, pll_reset, _, phase_flag, qdss, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1104:16: note: in expansion of macro 'PINGROUP'
    1104 |         [15] = PINGROUP(15, SOUTH, cam_mclk, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1104:16: note: in expansion of macro 'PINGROUP'
    1104 |         [15] = PINGROUP(15, SOUTH, cam_mclk, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1104:16: note: in expansion of macro 'PINGROUP'
    1104 |         [15] = PINGROUP(15, SOUTH, cam_mclk, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1104:16: note: in expansion of macro 'PINGROUP'
    1104 |         [15] = PINGROUP(15, SOUTH, cam_mclk, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1104:16: note: in expansion of macro 'PINGROUP'
    1104 |         [15] = PINGROUP(15, SOUTH, cam_mclk, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[15].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1104:16: note: in expansion of macro 'PINGROUP'
    1104 |         [15] = PINGROUP(15, SOUTH, cam_mclk, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1104:16: note: in expansion of macro 'PINGROUP'
    1104 |         [15] = PINGROUP(15, SOUTH, cam_mclk, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[15].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1104:16: note: in expansion of macro 'PINGROUP'
    1104 |         [15] = PINGROUP(15, SOUTH, cam_mclk, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1105:16: note: in expansion of macro 'PINGROUP'
    1105 |         [16] = PINGROUP(16, SOUTH, cam_mclk, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1105:16: note: in expansion of macro 'PINGROUP'
    1105 |         [16] = PINGROUP(16, SOUTH, cam_mclk, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1105:16: note: in expansion of macro 'PINGROUP'
    1105 |         [16] = PINGROUP(16, SOUTH, cam_mclk, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1105:16: note: in expansion of macro 'PINGROUP'
    1105 |         [16] = PINGROUP(16, SOUTH, cam_mclk, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1105:16: note: in expansion of macro 'PINGROUP'
    1105 |         [16] = PINGROUP(16, SOUTH, cam_mclk, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[16].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1105:16: note: in expansion of macro 'PINGROUP'
    1105 |         [16] = PINGROUP(16, SOUTH, cam_mclk, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1105:16: note: in expansion of macro 'PINGROUP'
    1105 |         [16] = PINGROUP(16, SOUTH, cam_mclk, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[16].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1105:16: note: in expansion of macro 'PINGROUP'
    1105 |         [16] = PINGROUP(16, SOUTH, cam_mclk, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1106:16: note: in expansion of macro 'PINGROUP'
    1106 |         [17] = PINGROUP(17, SOUTH, cci_i2c, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1106:16: note: in expansion of macro 'PINGROUP'
    1106 |         [17] = PINGROUP(17, SOUTH, cci_i2c, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1106:16: note: in expansion of macro 'PINGROUP'
    1106 |         [17] = PINGROUP(17, SOUTH, cci_i2c, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1106:16: note: in expansion of macro 'PINGROUP'
    1106 |         [17] = PINGROUP(17, SOUTH, cci_i2c, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1106:16: note: in expansion of macro 'PINGROUP'
    1106 |         [17] = PINGROUP(17, SOUTH, cci_i2c, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[17].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1106:16: note: in expansion of macro 'PINGROUP'
    1106 |         [17] = PINGROUP(17, SOUTH, cci_i2c, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1106:16: note: in expansion of macro 'PINGROUP'
    1106 |         [17] = PINGROUP(17, SOUTH, cci_i2c, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[17].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1106:16: note: in expansion of macro 'PINGROUP'
    1106 |         [17] = PINGROUP(17, SOUTH, cci_i2c, _, phase_flag, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1107:16: note: in expansion of macro 'PINGROUP'
    1107 |         [18] = PINGROUP(18, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1107:16: note: in expansion of macro 'PINGROUP'
    1107 |         [18] = PINGROUP(18, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1107:16: note: in expansion of macro 'PINGROUP'
    1107 |         [18] = PINGROUP(18, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1107:16: note: in expansion of macro 'PINGROUP'
    1107 |         [18] = PINGROUP(18, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1107:16: note: in expansion of macro 'PINGROUP'
    1107 |         [18] = PINGROUP(18, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[18].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1107:16: note: in expansion of macro 'PINGROUP'
    1107 |         [18] = PINGROUP(18, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1107:16: note: in expansion of macro 'PINGROUP'
    1107 |         [18] = PINGROUP(18, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[18].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1107:16: note: in expansion of macro 'PINGROUP'
    1107 |         [18] = PINGROUP(18, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1108:16: note: in expansion of macro 'PINGROUP'
    1108 |         [19] = PINGROUP(19, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1108:16: note: in expansion of macro 'PINGROUP'
    1108 |         [19] = PINGROUP(19, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1108:16: note: in expansion of macro 'PINGROUP'
    1108 |         [19] = PINGROUP(19, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1108:16: note: in expansion of macro 'PINGROUP'
    1108 |         [19] = PINGROUP(19, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1108:16: note: in expansion of macro 'PINGROUP'
    1108 |         [19] = PINGROUP(19, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[19].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1108:16: note: in expansion of macro 'PINGROUP'
    1108 |         [19] = PINGROUP(19, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1108:16: note: in expansion of macro 'PINGROUP'
    1108 |         [19] = PINGROUP(19, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[19].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1108:16: note: in expansion of macro 'PINGROUP'
    1108 |         [19] = PINGROUP(19, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1109:16: note: in expansion of macro 'PINGROUP'
    1109 |         [20] = PINGROUP(20, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1109:16: note: in expansion of macro 'PINGROUP'
    1109 |         [20] = PINGROUP(20, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1109:16: note: in expansion of macro 'PINGROUP'
    1109 |         [20] = PINGROUP(20, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1109:16: note: in expansion of macro 'PINGROUP'
    1109 |         [20] = PINGROUP(20, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1109:16: note: in expansion of macro 'PINGROUP'
    1109 |         [20] = PINGROUP(20, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[20].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1109:16: note: in expansion of macro 'PINGROUP'
    1109 |         [20] = PINGROUP(20, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1109:16: note: in expansion of macro 'PINGROUP'
    1109 |         [20] = PINGROUP(20, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[20].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1109:16: note: in expansion of macro 'PINGROUP'
    1109 |         [20] = PINGROUP(20, SOUTH, cci_i2c, qdss, _, _, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1110:16: note: in expansion of macro 'PINGROUP'
    1110 |         [21] = PINGROUP(21, SOUTH, cci_timer0, gcc_gp2, _, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1110:16: note: in expansion of macro 'PINGROUP'
    1110 |         [21] = PINGROUP(21, SOUTH, cci_timer0, gcc_gp2, _, qdss, _, _, _, _, _),
         |                ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1110:16: note: in expansion of macro 'PINGROUP'
    1110 |         [21] = PINGROUP(21, SOUTH, cci_timer0, gcc_gp2, _, qdss, _, _, _, _, _),


vim +/const +38 drivers/pinctrl/qcom/pinctrl-sm7150.c

b915395c9e04361 Danila Tikhonov 2023-03-12  34  
b915395c9e04361 Danila Tikhonov 2023-03-12  35  #define PINGROUP(id, _tile, f1, f2, f3, f4, f5, f6, f7, f8, f9) \
b915395c9e04361 Danila Tikhonov 2023-03-12  36  	{						\
b915395c9e04361 Danila Tikhonov 2023-03-12  37  		.name = "gpio" #id,			\
b915395c9e04361 Danila Tikhonov 2023-03-12 @38  		.pins = gpio##id##_pins,		\
b915395c9e04361 Danila Tikhonov 2023-03-12  39  		.npins = ARRAY_SIZE(gpio##id##_pins),	\
b915395c9e04361 Danila Tikhonov 2023-03-12  40  		.funcs = (int[]){			\
b915395c9e04361 Danila Tikhonov 2023-03-12  41  			msm_mux_gpio, /* gpio mode */	\
b915395c9e04361 Danila Tikhonov 2023-03-12  42  			msm_mux_##f1,			\
b915395c9e04361 Danila Tikhonov 2023-03-12  43  			msm_mux_##f2,			\
b915395c9e04361 Danila Tikhonov 2023-03-12  44  			msm_mux_##f3,			\
b915395c9e04361 Danila Tikhonov 2023-03-12  45  			msm_mux_##f4,			\
b915395c9e04361 Danila Tikhonov 2023-03-12  46  			msm_mux_##f5,			\
b915395c9e04361 Danila Tikhonov 2023-03-12  47  			msm_mux_##f6,			\
b915395c9e04361 Danila Tikhonov 2023-03-12  48  			msm_mux_##f7,			\
b915395c9e04361 Danila Tikhonov 2023-03-12  49  			msm_mux_##f8,			\
b915395c9e04361 Danila Tikhonov 2023-03-12  50  			msm_mux_##f9			\
b915395c9e04361 Danila Tikhonov 2023-03-12  51  		},					\
b915395c9e04361 Danila Tikhonov 2023-03-12  52  		.nfuncs = 10,				\
b915395c9e04361 Danila Tikhonov 2023-03-12  53  		.ctl_reg = REG_SIZE * id,		\
b915395c9e04361 Danila Tikhonov 2023-03-12  54  		.io_reg = 0x4 + REG_SIZE * id,		\
b915395c9e04361 Danila Tikhonov 2023-03-12  55  		.intr_cfg_reg = 0x8 + REG_SIZE * id,	\
b915395c9e04361 Danila Tikhonov 2023-03-12  56  		.intr_status_reg = 0xc + REG_SIZE * id,	\
b915395c9e04361 Danila Tikhonov 2023-03-12  57  		.intr_target_reg = 0x8 + REG_SIZE * id,	\
b915395c9e04361 Danila Tikhonov 2023-03-12  58  		.tile = _tile,				\
b915395c9e04361 Danila Tikhonov 2023-03-12  59  		.mux_bit = 2,				\
b915395c9e04361 Danila Tikhonov 2023-03-12  60  		.pull_bit = 0,				\
b915395c9e04361 Danila Tikhonov 2023-03-12  61  		.drv_bit = 6,				\
b915395c9e04361 Danila Tikhonov 2023-03-12  62  		.oe_bit = 9,				\
b915395c9e04361 Danila Tikhonov 2023-03-12  63  		.in_bit = 0,				\
b915395c9e04361 Danila Tikhonov 2023-03-12  64  		.out_bit = 1,				\
b915395c9e04361 Danila Tikhonov 2023-03-12  65  		.intr_enable_bit = 0,			\
b915395c9e04361 Danila Tikhonov 2023-03-12  66  		.intr_status_bit = 0,			\
b915395c9e04361 Danila Tikhonov 2023-03-12  67  		.intr_target_bit = 5,			\
b915395c9e04361 Danila Tikhonov 2023-03-12  68  		.intr_target_kpss_val = 3,		\
b915395c9e04361 Danila Tikhonov 2023-03-12  69  		.intr_raw_status_bit = 4,		\
b915395c9e04361 Danila Tikhonov 2023-03-12  70  		.intr_polarity_bit = 1,			\
b915395c9e04361 Danila Tikhonov 2023-03-12  71  		.intr_detection_bit = 2,		\
b915395c9e04361 Danila Tikhonov 2023-03-12  72  		.intr_detection_width = 2,		\
b915395c9e04361 Danila Tikhonov 2023-03-12  73  	}
b915395c9e04361 Danila Tikhonov 2023-03-12  74
kernel test robot May 13, 2023, 5:39 a.m. UTC | #3
Hi Rohit,

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.4-rc1 next-20230512]
[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/Rohit-Agarwal/pinctrl-qcom-Remove-the-msm_function-struct/20230512-195910
base:   https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl.git devel
patch link:    https://lore.kernel.org/r/1683892553-19882-3-git-send-email-quic_rohiagar%40quicinc.com
patch subject: [PATCH 2/2] pinctrl: qcom: Refactor generic qcom pinctrl driver
config: arm-allyesconfig (https://download.01.org/0day-ci/archive/20230513/202305131327.hT8CxYAe-lkp@intel.com/config)
compiler: arm-linux-gnueabi-gcc (GCC) 12.1.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/intel-lab-lkp/linux/commit/1894575a5b0f681fb8697a05ac2aa68ef97e48e8
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Rohit-Agarwal/pinctrl-qcom-Remove-the-msm_function-struct/20230512-195910
        git checkout 1894575a5b0f681fb8697a05ac2aa68ef97e48e8
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=arm olddefconfig
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>
| Link: https://lore.kernel.org/oe-kbuild-all/202305131327.hT8CxYAe-lkp@intel.com/

All errors (new ones prefixed by >>):

   drivers/pinctrl/qcom/pinctrl-sm7150.c:969:34: error: array type has incomplete element type 'struct msm_function'
     969 | static const struct msm_function sm7150_functions[] = {
         |                                  ^~~~~~~~~~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1089:15: note: in expansion of macro 'PINGROUP'
    1089 |         [0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1089:15: note: in expansion of macro 'PINGROUP'
    1089 |         [0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1089:15: note: in expansion of macro 'PINGROUP'
    1089 |         [0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1089:15: note: in expansion of macro 'PINGROUP'
    1089 |         [0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1089:15: note: in expansion of macro 'PINGROUP'
    1089 |         [0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[0].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1089:15: note: in expansion of macro 'PINGROUP'
    1089 |         [0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1089:15: note: in expansion of macro 'PINGROUP'
    1089 |         [0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[0].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1089:15: note: in expansion of macro 'PINGROUP'
    1089 |         [0] = PINGROUP(0, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1090:15: note: in expansion of macro 'PINGROUP'
    1090 |         [1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1090:15: note: in expansion of macro 'PINGROUP'
    1090 |         [1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1090:15: note: in expansion of macro 'PINGROUP'
    1090 |         [1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1090:15: note: in expansion of macro 'PINGROUP'
    1090 |         [1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1090:15: note: in expansion of macro 'PINGROUP'
    1090 |         [1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[1].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1090:15: note: in expansion of macro 'PINGROUP'
    1090 |         [1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1090:15: note: in expansion of macro 'PINGROUP'
    1090 |         [1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[1].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1090:15: note: in expansion of macro 'PINGROUP'
    1090 |         [1] = PINGROUP(1, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1091:15: note: in expansion of macro 'PINGROUP'
    1091 |         [2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1091:15: note: in expansion of macro 'PINGROUP'
    1091 |         [2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1091:15: note: in expansion of macro 'PINGROUP'
    1091 |         [2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1091:15: note: in expansion of macro 'PINGROUP'
    1091 |         [2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1091:15: note: in expansion of macro 'PINGROUP'
    1091 |         [2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[2].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1091:15: note: in expansion of macro 'PINGROUP'
    1091 |         [2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1091:15: note: in expansion of macro 'PINGROUP'
    1091 |         [2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[2].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1091:15: note: in expansion of macro 'PINGROUP'
    1091 |         [2] = PINGROUP(2, SOUTH, qup01, _, phase_flag, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1092:15: note: in expansion of macro 'PINGROUP'
    1092 |         [3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1092:15: note: in expansion of macro 'PINGROUP'
    1092 |         [3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1092:15: note: in expansion of macro 'PINGROUP'
    1092 |         [3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1092:15: note: in expansion of macro 'PINGROUP'
    1092 |         [3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1092:15: note: in expansion of macro 'PINGROUP'
    1092 |         [3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[3].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1092:15: note: in expansion of macro 'PINGROUP'
    1092 |         [3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1092:15: note: in expansion of macro 'PINGROUP'
    1092 |         [3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[3].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1092:15: note: in expansion of macro 'PINGROUP'
    1092 |         [3] = PINGROUP(3, SOUTH, qup01, dbg_out, _, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1093:15: note: in expansion of macro 'PINGROUP'
    1093 |         [4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1093:15: note: in expansion of macro 'PINGROUP'
    1093 |         [4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1093:15: note: in expansion of macro 'PINGROUP'
    1093 |         [4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1093:15: note: in expansion of macro 'PINGROUP'
    1093 |         [4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1093:15: note: in expansion of macro 'PINGROUP'
    1093 |         [4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[4].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1093:15: note: in expansion of macro 'PINGROUP'
    1093 |         [4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1093:15: note: in expansion of macro 'PINGROUP'
    1093 |         [4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[4].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1093:15: note: in expansion of macro 'PINGROUP'
    1093 |         [4] = PINGROUP(4, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1094:15: note: in expansion of macro 'PINGROUP'
    1094 |         [5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1094:15: note: in expansion of macro 'PINGROUP'
    1094 |         [5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1094:15: note: in expansion of macro 'PINGROUP'
    1094 |         [5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1094:15: note: in expansion of macro 'PINGROUP'
    1094 |         [5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1094:15: note: in expansion of macro 'PINGROUP'
    1094 |         [5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[5].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1094:15: note: in expansion of macro 'PINGROUP'
    1094 |         [5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1094:15: note: in expansion of macro 'PINGROUP'
    1094 |         [5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[5].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1094:15: note: in expansion of macro 'PINGROUP'
    1094 |         [5] = PINGROUP(5, NORTH, _, qdss_cti, _, _, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1095:15: note: in expansion of macro 'PINGROUP'
    1095 |         [6] = PINGROUP(6, NORTH, qup11, _, phase_flag, ddr_pxi0, _, _, _, _, _),
         |               ^~~~~~~~
>> drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1095:15: note: in expansion of macro 'PINGROUP'
    1095 |         [6] = PINGROUP(6, NORTH, qup11, _, phase_flag, ddr_pxi0, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1095:15: note: in expansion of macro 'PINGROUP'
    1095 |         [6] = PINGROUP(6, NORTH, qup11, _, phase_flag, ddr_pxi0, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1095:15: note: in expansion of macro 'PINGROUP'
    1095 |         [6] = PINGROUP(6, NORTH, qup11, _, phase_flag, ddr_pxi0, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1095:15: note: in expansion of macro 'PINGROUP'
    1095 |         [6] = PINGROUP(6, NORTH, qup11, _, phase_flag, ddr_pxi0, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[6].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1095:15: note: in expansion of macro 'PINGROUP'
    1095 |         [6] = PINGROUP(6, NORTH, qup11, _, phase_flag, ddr_pxi0, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1095:15: note: in expansion of macro 'PINGROUP'
    1095 |         [6] = PINGROUP(6, NORTH, qup11, _, phase_flag, ddr_pxi0, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[6].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1095:15: note: in expansion of macro 'PINGROUP'
    1095 |         [6] = PINGROUP(6, NORTH, qup11, _, phase_flag, ddr_pxi0, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1096:15: note: in expansion of macro 'PINGROUP'
    1096 |         [7] = PINGROUP(7, NORTH, qup11, ddr_bist, _, phase_flag, atest_tsens2, vsense_trigger, atest_usb1, ddr_pxi0, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1096:15: note: in expansion of macro 'PINGROUP'
    1096 |         [7] = PINGROUP(7, NORTH, qup11, ddr_bist, _, phase_flag, atest_tsens2, vsense_trigger, atest_usb1, ddr_pxi0, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      38 |                 .pins = gpio##id##_pins,                \
         |                         ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1096:15: note: in expansion of macro 'PINGROUP'
    1096 |         [7] = PINGROUP(7, NORTH, qup11, ddr_bist, _, phase_flag, atest_tsens2, vsense_trigger, atest_usb1, ddr_pxi0, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:39:18: error: 'const struct msm_pingroup' has no member named 'npins'
      39 |                 .npins = ARRAY_SIZE(gpio##id##_pins),   \
         |                  ^~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1096:15: note: in expansion of macro 'PINGROUP'
    1096 |         [7] = PINGROUP(7, NORTH, qup11, ddr_bist, _, phase_flag, atest_tsens2, vsense_trigger, atest_usb1, ddr_pxi0, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: warning: initialized field overwritten [-Woverride-init]
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1096:15: note: in expansion of macro 'PINGROUP'
    1096 |         [7] = PINGROUP(7, NORTH, qup11, ddr_bist, _, phase_flag, atest_tsens2, vsense_trigger, atest_usb1, ddr_pxi0, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:40:26: note: (near initialization for 'sm7150_groups[7].funcs')
      40 |                 .funcs = (int[]){                       \
         |                          ^
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1096:15: note: in expansion of macro 'PINGROUP'
    1096 |         [7] = PINGROUP(7, NORTH, qup11, ddr_bist, _, phase_flag, atest_tsens2, vsense_trigger, atest_usb1, ddr_pxi0, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: warning: initialized field overwritten [-Woverride-init]
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1096:15: note: in expansion of macro 'PINGROUP'
    1096 |         [7] = PINGROUP(7, NORTH, qup11, ddr_bist, _, phase_flag, atest_tsens2, vsense_trigger, atest_usb1, ddr_pxi0, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:52:27: note: (near initialization for 'sm7150_groups[7].nfuncs')
      52 |                 .nfuncs = 10,                           \
         |                           ^~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1096:15: note: in expansion of macro 'PINGROUP'
    1096 |         [7] = PINGROUP(7, NORTH, qup11, ddr_bist, _, phase_flag, atest_tsens2, vsense_trigger, atest_usb1, ddr_pxi0, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:37:18: error: 'const struct msm_pingroup' has no member named 'name'
      37 |                 .name = "gpio" #id,                     \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1097:15: note: in expansion of macro 'PINGROUP'
    1097 |         [8] = PINGROUP(8, NORTH, qup11, gp_pdm1, ddr_bist, _, _, _, _, _, _),
         |               ^~~~~~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:38:18: error: 'const struct msm_pingroup' has no member named 'pins'
      38 |                 .pins = gpio##id##_pins,                \
         |                  ^~~~
   drivers/pinctrl/qcom/pinctrl-sm7150.c:1097:15: note: in expansion of macro 'PINGROUP'
    1097 |         [8] = PINGROUP(8, NORTH, qup11, gp_pdm1, ddr_bist, _, _, _, _, _, _),


vim +37 drivers/pinctrl/qcom/pinctrl-sm7150.c

b915395c9e0436 Danila Tikhonov 2023-03-12  34  
b915395c9e0436 Danila Tikhonov 2023-03-12  35  #define PINGROUP(id, _tile, f1, f2, f3, f4, f5, f6, f7, f8, f9) \
b915395c9e0436 Danila Tikhonov 2023-03-12  36  	{						\
b915395c9e0436 Danila Tikhonov 2023-03-12 @37  		.name = "gpio" #id,			\
b915395c9e0436 Danila Tikhonov 2023-03-12 @38  		.pins = gpio##id##_pins,		\
b915395c9e0436 Danila Tikhonov 2023-03-12 @39  		.npins = ARRAY_SIZE(gpio##id##_pins),	\
b915395c9e0436 Danila Tikhonov 2023-03-12  40  		.funcs = (int[]){			\
b915395c9e0436 Danila Tikhonov 2023-03-12  41  			msm_mux_gpio, /* gpio mode */	\
b915395c9e0436 Danila Tikhonov 2023-03-12  42  			msm_mux_##f1,			\
b915395c9e0436 Danila Tikhonov 2023-03-12  43  			msm_mux_##f2,			\
b915395c9e0436 Danila Tikhonov 2023-03-12  44  			msm_mux_##f3,			\
b915395c9e0436 Danila Tikhonov 2023-03-12  45  			msm_mux_##f4,			\
b915395c9e0436 Danila Tikhonov 2023-03-12  46  			msm_mux_##f5,			\
b915395c9e0436 Danila Tikhonov 2023-03-12  47  			msm_mux_##f6,			\
b915395c9e0436 Danila Tikhonov 2023-03-12  48  			msm_mux_##f7,			\
b915395c9e0436 Danila Tikhonov 2023-03-12  49  			msm_mux_##f8,			\
b915395c9e0436 Danila Tikhonov 2023-03-12  50  			msm_mux_##f9			\
b915395c9e0436 Danila Tikhonov 2023-03-12  51  		},					\
b915395c9e0436 Danila Tikhonov 2023-03-12  52  		.nfuncs = 10,				\
b915395c9e0436 Danila Tikhonov 2023-03-12  53  		.ctl_reg = REG_SIZE * id,		\
b915395c9e0436 Danila Tikhonov 2023-03-12  54  		.io_reg = 0x4 + REG_SIZE * id,		\
b915395c9e0436 Danila Tikhonov 2023-03-12  55  		.intr_cfg_reg = 0x8 + REG_SIZE * id,	\
b915395c9e0436 Danila Tikhonov 2023-03-12  56  		.intr_status_reg = 0xc + REG_SIZE * id,	\
b915395c9e0436 Danila Tikhonov 2023-03-12  57  		.intr_target_reg = 0x8 + REG_SIZE * id,	\
b915395c9e0436 Danila Tikhonov 2023-03-12  58  		.tile = _tile,				\
b915395c9e0436 Danila Tikhonov 2023-03-12  59  		.mux_bit = 2,				\
b915395c9e0436 Danila Tikhonov 2023-03-12  60  		.pull_bit = 0,				\
b915395c9e0436 Danila Tikhonov 2023-03-12  61  		.drv_bit = 6,				\
b915395c9e0436 Danila Tikhonov 2023-03-12  62  		.oe_bit = 9,				\
b915395c9e0436 Danila Tikhonov 2023-03-12  63  		.in_bit = 0,				\
b915395c9e0436 Danila Tikhonov 2023-03-12  64  		.out_bit = 1,				\
b915395c9e0436 Danila Tikhonov 2023-03-12  65  		.intr_enable_bit = 0,			\
b915395c9e0436 Danila Tikhonov 2023-03-12  66  		.intr_status_bit = 0,			\
b915395c9e0436 Danila Tikhonov 2023-03-12  67  		.intr_target_bit = 5,			\
b915395c9e0436 Danila Tikhonov 2023-03-12  68  		.intr_target_kpss_val = 3,		\
b915395c9e0436 Danila Tikhonov 2023-03-12  69  		.intr_raw_status_bit = 4,		\
b915395c9e0436 Danila Tikhonov 2023-03-12  70  		.intr_polarity_bit = 1,			\
b915395c9e0436 Danila Tikhonov 2023-03-12  71  		.intr_detection_bit = 2,		\
b915395c9e0436 Danila Tikhonov 2023-03-12  72  		.intr_detection_width = 2,		\
b915395c9e0436 Danila Tikhonov 2023-03-12  73  	}
b915395c9e0436 Danila Tikhonov 2023-03-12  74
diff mbox series

Patch

diff --git a/drivers/pinctrl/qcom/pinctrl-apq8064.c b/drivers/pinctrl/qcom/pinctrl-apq8064.c
index 57b9a4a..20c3b90 100644
--- a/drivers/pinctrl/qcom/pinctrl-apq8064.c
+++ b/drivers/pinctrl/qcom/pinctrl-apq8064.c
@@ -210,9 +210,9 @@  static const unsigned int sdc3_data_pins[] = { 95 };
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9, f10) \
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			APQ_MUX_gpio,			\
 			APQ_MUX_##f1,			\
@@ -251,9 +251,9 @@  static const unsigned int sdc3_data_pins[] = { 95 };
 
 #define SDC_PINGROUP(pg_name, ctl, pull, drv)		\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-apq8084.c b/drivers/pinctrl/qcom/pinctrl-apq8084.c
index 7a9b6e9..3fc0a407 100644
--- a/drivers/pinctrl/qcom/pinctrl-apq8084.c
+++ b/drivers/pinctrl/qcom/pinctrl-apq8084.c
@@ -325,9 +325,9 @@  static const unsigned int sdc2_data_pins[] = { 152 };
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7)        \
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			APQ_MUX_gpio,			\
 			APQ_MUX_##f1,			\
@@ -363,9 +363,9 @@  static const unsigned int sdc2_data_pins[] = { 152 };
 
 #define SDC_PINGROUP(pg_name, ctl, pull, drv)		\
 	{						\
-		.name = #pg_name,	                \
-		.pins = pg_name##_pins,                 \
-		.npins = ARRAY_SIZE(pg_name##_pins),    \
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,                         \
 		.io_reg = 0,                            \
 		.intr_cfg_reg = 0,                      \
diff --git a/drivers/pinctrl/qcom/pinctrl-ipq4019.c b/drivers/pinctrl/qcom/pinctrl-ipq4019.c
index 3ab859b..1f7944d 100644
--- a/drivers/pinctrl/qcom/pinctrl-ipq4019.c
+++ b/drivers/pinctrl/qcom/pinctrl-ipq4019.c
@@ -217,9 +217,9 @@  DECLARE_QCA_GPIO_PINS(99);
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9, f10, f11, f12, f13, f14) \
 	{					        \
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			qca_mux_gpio, /* gpio mode */	\
 			qca_mux_##f1,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-ipq5332.c b/drivers/pinctrl/qcom/pinctrl-ipq5332.c
index bc90c68..625f801 100644
--- a/drivers/pinctrl/qcom/pinctrl-ipq5332.c
+++ b/drivers/pinctrl/qcom/pinctrl-ipq5332.c
@@ -12,9 +12,9 @@ 
 #define REG_SIZE 0x1000
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{					        \
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-ipq6018.c b/drivers/pinctrl/qcom/pinctrl-ipq6018.c
index 1e1255c..0ad0864 100644
--- a/drivers/pinctrl/qcom/pinctrl-ipq6018.c
+++ b/drivers/pinctrl/qcom/pinctrl-ipq6018.c
@@ -12,9 +12,9 @@ 
 #define REG_SIZE 0x1000
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{					        \
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-ipq8064.c b/drivers/pinctrl/qcom/pinctrl-ipq8064.c
index 54cca32..e2bb94e 100644
--- a/drivers/pinctrl/qcom/pinctrl-ipq8064.c
+++ b/drivers/pinctrl/qcom/pinctrl-ipq8064.c
@@ -162,9 +162,9 @@  static const unsigned int sdc3_data_pins[] = { 71 };
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9, f10) \
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			IPQ_MUX_gpio,			\
 			IPQ_MUX_##f1,			\
@@ -203,9 +203,9 @@  static const unsigned int sdc3_data_pins[] = { 71 };
 
 #define SDC_PINGROUP(pg_name, ctl, pull, drv)		\
 	{						\
-		.name = #pg_name,	                \
-		.pins = pg_name##_pins,                 \
-		.npins = ARRAY_SIZE(pg_name##_pins),    \
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,                         \
 		.io_reg = 0,                            \
 		.intr_cfg_reg = 0,                      \
diff --git a/drivers/pinctrl/qcom/pinctrl-ipq8074.c b/drivers/pinctrl/qcom/pinctrl-ipq8074.c
index 0d325aa..337f3a1 100644
--- a/drivers/pinctrl/qcom/pinctrl-ipq8074.c
+++ b/drivers/pinctrl/qcom/pinctrl-ipq8074.c
@@ -12,9 +12,9 @@ 
 #define REG_SIZE 0x1000
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{					        \
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-ipq9574.c b/drivers/pinctrl/qcom/pinctrl-ipq9574.c
index 59a8b52..e249161 100644
--- a/drivers/pinctrl/qcom/pinctrl-ipq9574.c
+++ b/drivers/pinctrl/qcom/pinctrl-ipq9574.c
@@ -12,9 +12,9 @@ 
 #define REG_SIZE 0x1000
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{					        \
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-mdm9607.c b/drivers/pinctrl/qcom/pinctrl-mdm9607.c
index 331d4c1..e7cd3ef 100644
--- a/drivers/pinctrl/qcom/pinctrl-mdm9607.c
+++ b/drivers/pinctrl/qcom/pinctrl-mdm9607.c
@@ -205,9 +205,9 @@  static const unsigned int qdsd_data3_pins[] = { 91 };
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{							\
-		.name = "gpio" #id,				\
-		.pins = gpio##id##_pins,			\
-		.npins = ARRAY_SIZE(gpio##id##_pins),		\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){				\
 			msm_mux_gpio,				\
 			msm_mux_##f1,				\
@@ -244,9 +244,9 @@  static const unsigned int qdsd_data3_pins[] = { 91 };
 
 #define SDC_PINGROUP(pg_name, ctl, pull, drv)	\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-mdm9615.c b/drivers/pinctrl/qcom/pinctrl-mdm9615.c
index 7278f45..0a2ae38 100644
--- a/drivers/pinctrl/qcom/pinctrl-mdm9615.c
+++ b/drivers/pinctrl/qcom/pinctrl-mdm9615.c
@@ -196,9 +196,9 @@  DECLARE_MSM_GPIO_PINS(87);
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9, f10, f11) \
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio,			\
 			msm_mux_##f1,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-msm.c b/drivers/pinctrl/qcom/pinctrl-msm.c
index 94b984a..2585ef2 100644
--- a/drivers/pinctrl/qcom/pinctrl-msm.c
+++ b/drivers/pinctrl/qcom/pinctrl-msm.c
@@ -120,7 +120,7 @@  static const char *msm_get_group_name(struct pinctrl_dev *pctldev,
 {
 	struct msm_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev);
 
-	return pctrl->soc->groups[group].name;
+	return pctrl->soc->groups[group].grp.name;
 }
 
 static int msm_get_group_pins(struct pinctrl_dev *pctldev,
@@ -130,8 +130,8 @@  static int msm_get_group_pins(struct pinctrl_dev *pctldev,
 {
 	struct msm_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev);
 
-	*pins = pctrl->soc->groups[group].pins;
-	*num_pins = pctrl->soc->groups[group].npins;
+	*pins = pctrl->soc->groups[group].grp.pins;
+	*num_pins = pctrl->soc->groups[group].grp.npins;
 	return 0;
 }
 
@@ -705,11 +705,11 @@  static void msm_gpio_dbg_show_one(struct seq_file *s,
 		val = !!(io_reg & BIT(g->in_bit));
 
 	if (egpio_enable) {
-		seq_printf(s, " %-8s: egpio\n", g->name);
+		seq_printf(s, " %-8s: egpio\n", g->grp.name);
 		return;
 	}
 
-	seq_printf(s, " %-8s: %-3s", g->name, is_out ? "out" : "in");
+	seq_printf(s, " %-8s: %-3s", g->grp.name, is_out ? "out" : "in");
 	seq_printf(s, " %-4s func%d", val ? "high" : "low", func);
 	seq_printf(s, " %dmA", msm_regval_to_drive(drive));
 	if (pctrl->soc->pull_no_keeper)
diff --git a/drivers/pinctrl/qcom/pinctrl-msm.h b/drivers/pinctrl/qcom/pinctrl-msm.h
index b9363e2..5e4410b 100644
--- a/drivers/pinctrl/qcom/pinctrl-msm.h
+++ b/drivers/pinctrl/qcom/pinctrl-msm.h
@@ -36,9 +36,7 @@  struct pinctrl_pin_desc;
 
 /**
  * struct msm_pingroup - Qualcomm pingroup definition
- * @name:                 Name of the pingroup.
- * @pins:	          A list of pins assigned to this pingroup.
- * @npins:	          Number of entries in @pins.
+ * @grp:                  Generic data of the pin group (name and pins)
  * @funcs:                A list of pinmux functions that can be selected for
  *                        this group. The index of the selected function is used
  *                        for programming the function selector.
@@ -71,9 +69,7 @@  struct pinctrl_pin_desc;
  *                        otherwise 1.
  */
 struct msm_pingroup {
-	const char *name;
-	const unsigned *pins;
-	unsigned npins;
+	struct pingroup grp;
 
 	unsigned *funcs;
 	unsigned nfuncs;
diff --git a/drivers/pinctrl/qcom/pinctrl-msm8226.c b/drivers/pinctrl/qcom/pinctrl-msm8226.c
index cb8044b..9946198 100644
--- a/drivers/pinctrl/qcom/pinctrl-msm8226.c
+++ b/drivers/pinctrl/qcom/pinctrl-msm8226.c
@@ -264,9 +264,9 @@  static const unsigned int sdc2_data_pins[] = { 122 };
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7)	\
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio,			\
 			msm_mux_##f1,			\
@@ -301,9 +301,9 @@  static const unsigned int sdc2_data_pins[] = { 122 };
 
 #define SDC_PINGROUP(pg_name, ctl, pull, drv)		\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-msm8660.c b/drivers/pinctrl/qcom/pinctrl-msm8660.c
index 114c5b4..999a5f8 100644
--- a/drivers/pinctrl/qcom/pinctrl-msm8660.c
+++ b/drivers/pinctrl/qcom/pinctrl-msm8660.c
@@ -376,9 +376,9 @@  static const unsigned int sdc3_data_pins[] = { 178 };
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7) \
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio,			\
 			msm_mux_##f1,			\
@@ -414,9 +414,9 @@  static const unsigned int sdc3_data_pins[] = { 178 };
 
 #define SDC_PINGROUP(pg_name, ctl, pull, drv)		\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-msm8909.c b/drivers/pinctrl/qcom/pinctrl-msm8909.c
index fdf262f..756856d 100644
--- a/drivers/pinctrl/qcom/pinctrl-msm8909.c
+++ b/drivers/pinctrl/qcom/pinctrl-msm8909.c
@@ -13,9 +13,9 @@ 
 #define REG_SIZE 0x1000
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio,			\
 			msm_mux_##f1,			\
@@ -52,9 +52,9 @@ 
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-msm8916.c b/drivers/pinctrl/qcom/pinctrl-msm8916.c
index d3776a5..cea5c54 100644
--- a/drivers/pinctrl/qcom/pinctrl-msm8916.c
+++ b/drivers/pinctrl/qcom/pinctrl-msm8916.c
@@ -287,9 +287,9 @@  static const unsigned int qdsd_data3_pins[] = { 133 };
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{							\
-		.name = "gpio" #id,				\
-		.pins = gpio##id##_pins,			\
-		.npins = ARRAY_SIZE(gpio##id##_pins),		\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){				\
 			msm_mux_gpio,				\
 			msm_mux_##f1,				\
@@ -326,9 +326,9 @@  static const unsigned int qdsd_data3_pins[] = { 133 };
 
 #define SDC_PINGROUP(pg_name, ctl, pull, drv)	\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-msm8953.c b/drivers/pinctrl/qcom/pinctrl-msm8953.c
index 8969bb52..998351b 100644
--- a/drivers/pinctrl/qcom/pinctrl-msm8953.c
+++ b/drivers/pinctrl/qcom/pinctrl-msm8953.c
@@ -9,9 +9,9 @@ 
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{							\
-		.name = "gpio" #id,				\
-		.pins = gpio##id##_pins,			\
-		.npins = ARRAY_SIZE(gpio##id##_pins),		\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){				\
 			msm_mux_gpio, /* gpio mode */		\
 			msm_mux_##f1,				\
@@ -48,9 +48,9 @@ 
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-msm8960.c b/drivers/pinctrl/qcom/pinctrl-msm8960.c
index 615614e..ebe230b 100644
--- a/drivers/pinctrl/qcom/pinctrl-msm8960.c
+++ b/drivers/pinctrl/qcom/pinctrl-msm8960.c
@@ -335,9 +335,9 @@  static const unsigned int sdc3_data_pins[] = { 157 };
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9, f10, f11) \
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio,			\
 			msm_mux_##f1,			\
@@ -377,9 +377,9 @@  static const unsigned int sdc3_data_pins[] = { 157 };
 
 #define SDC_PINGROUP(pg_name, ctl, pull, drv)		\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-msm8976.c b/drivers/pinctrl/qcom/pinctrl-msm8976.c
index b2cad1d..c30d80e 100644
--- a/drivers/pinctrl/qcom/pinctrl-msm8976.c
+++ b/drivers/pinctrl/qcom/pinctrl-msm8976.c
@@ -15,9 +15,9 @@ 
 #define REG_SIZE 0x1000
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{					        \
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -54,9 +54,9 @@ 
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-msm8994.c b/drivers/pinctrl/qcom/pinctrl-msm8994.c
index 73b2901..b1a6759 100644
--- a/drivers/pinctrl/qcom/pinctrl-msm8994.c
+++ b/drivers/pinctrl/qcom/pinctrl-msm8994.c
@@ -11,9 +11,9 @@ 
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9, f10, f11)	\
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio,			\
 			msm_mux_##f1,			\
@@ -52,9 +52,9 @@ 
 
 #define SDC_PINGROUP(pg_name, ctl, pull, drv)		\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-msm8996.c b/drivers/pinctrl/qcom/pinctrl-msm8996.c
index 9437305..46cc0b49 100644
--- a/drivers/pinctrl/qcom/pinctrl-msm8996.c
+++ b/drivers/pinctrl/qcom/pinctrl-msm8996.c
@@ -13,9 +13,9 @@ 
 #define REG_SIZE 0x1000
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{					        \
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -52,9 +52,9 @@ 
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-msm8998.c b/drivers/pinctrl/qcom/pinctrl-msm8998.c
index 4c1a551..b7cbf32 100644
--- a/drivers/pinctrl/qcom/pinctrl-msm8998.c
+++ b/drivers/pinctrl/qcom/pinctrl-msm8998.c
@@ -15,9 +15,9 @@ 
 
 #define PINGROUP(id, base, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{					        \
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -54,9 +54,9 @@ 
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -79,9 +79,9 @@ 
 
 #define UFS_RESET(pg_name, offset)				\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = offset,			\
 		.io_reg = offset + 0x4,			\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-msm8x74.c b/drivers/pinctrl/qcom/pinctrl-msm8x74.c
index 5da17f2..d5fe629 100644
--- a/drivers/pinctrl/qcom/pinctrl-msm8x74.c
+++ b/drivers/pinctrl/qcom/pinctrl-msm8x74.c
@@ -326,9 +326,9 @@  static const unsigned int hsic_data_pins[] = { 153 };
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7)	\
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio,			\
 			msm_mux_##f1,			\
@@ -363,9 +363,9 @@  static const unsigned int hsic_data_pins[] = { 153 };
 
 #define SDC_PINGROUP(pg_name, ctl, pull, drv)		\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -389,9 +389,9 @@  static const unsigned int hsic_data_pins[] = { 153 };
 
 #define HSIC_PINGROUP(pg_name, ctl)			\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio,			\
 			msm_mux_hsic_ctl,		\
diff --git a/drivers/pinctrl/qcom/pinctrl-qcm2290.c b/drivers/pinctrl/qcom/pinctrl-qcm2290.c
index e252e6c..ba699ea 100644
--- a/drivers/pinctrl/qcom/pinctrl-qcm2290.c
+++ b/drivers/pinctrl/qcom/pinctrl-qcm2290.c
@@ -13,9 +13,9 @@ 
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -52,9 +52,9 @@ 
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -77,9 +77,9 @@ 
 
 #define UFS_RESET(pg_name, offset)				\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = offset,			\
 		.io_reg = offset + 0x4,			\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-qcs404.c b/drivers/pinctrl/qcom/pinctrl-qcs404.c
index 3820808..ae72240 100644
--- a/drivers/pinctrl/qcom/pinctrl-qcs404.c
+++ b/drivers/pinctrl/qcom/pinctrl-qcs404.c
@@ -23,9 +23,9 @@  enum {
 
 #define PINGROUP(id, _tile, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -63,9 +63,9 @@  enum {
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-qdf2xxx.c b/drivers/pinctrl/qcom/pinctrl-qdf2xxx.c
index 43bd15f..b0f1b3d 100644
--- a/drivers/pinctrl/qcom/pinctrl-qdf2xxx.c
+++ b/drivers/pinctrl/qcom/pinctrl-qdf2xxx.c
@@ -90,17 +90,17 @@  static int qdf2xxx_pinctrl_probe(struct platform_device *pdev)
 	 */
 	for (i = 0; i < num_gpios; i++) {
 		pins[i].number = i;
-		groups[i].pins = &pins[i].number;
+		groups[i].grp.pins = &pins[i].number;
 	}
 
 	/* Populate the entries that are meant to be exposed as GPIOs. */
 	for (i = 0; i < avail_gpios; i++) {
 		unsigned int gpio = gpios[i];
 
-		groups[gpio].npins = 1;
+		groups[gpio].grp.npins = 1;
 		snprintf(names[i], NAME_SIZE, "gpio%u", gpio);
 		pins[gpio].name = names[i];
-		groups[gpio].name = names[i];
+		groups[gpio].grp.name = names[i];
 
 		groups[gpio].ctl_reg = 0x10000 * gpio;
 		groups[gpio].io_reg = 0x04 + 0x10000 * gpio;
diff --git a/drivers/pinctrl/qcom/pinctrl-qdu1000.c b/drivers/pinctrl/qcom/pinctrl-qdu1000.c
index d4670fe..47bc529 100644
--- a/drivers/pinctrl/qcom/pinctrl-qdu1000.c
+++ b/drivers/pinctrl/qcom/pinctrl-qdu1000.c
@@ -15,9 +15,9 @@ 
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{					        \
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -54,9 +54,9 @@ 
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = REG_BASE + ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -79,9 +79,9 @@ 
 
 #define UFS_RESET(pg_name, offset)				\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = offset,			\
 		.io_reg = offset + 0x4,			\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-sa8775p.c b/drivers/pinctrl/qcom/pinctrl-sa8775p.c
index b0bf65c..81dd213 100644
--- a/drivers/pinctrl/qcom/pinctrl-sa8775p.c
+++ b/drivers/pinctrl/qcom/pinctrl-sa8775p.c
@@ -14,9 +14,9 @@ 
 #define REG_SIZE 0x1000
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)\
 	{					        \
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -55,9 +55,9 @@ 
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -80,9 +80,9 @@ 
 
 #define UFS_RESET(pg_name, offset)				\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = offset,			\
 		.io_reg = offset + 0x4,			\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-sc7180.c b/drivers/pinctrl/qcom/pinctrl-sc7180.c
index 1bdd5ea..6eb0c73 100644
--- a/drivers/pinctrl/qcom/pinctrl-sc7180.c
+++ b/drivers/pinctrl/qcom/pinctrl-sc7180.c
@@ -21,9 +21,9 @@  enum {
 
 #define PINGROUP(id, _tile, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -61,9 +61,9 @@  enum {
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -87,9 +87,9 @@  enum {
 
 #define UFS_RESET(pg_name, offset)				\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = offset,			\
 		.io_reg = offset + 0x4,			\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-sc7280.c b/drivers/pinctrl/qcom/pinctrl-sc7280.c
index bb98afa..0c10eeb 100644
--- a/drivers/pinctrl/qcom/pinctrl-sc7280.c
+++ b/drivers/pinctrl/qcom/pinctrl-sc7280.c
@@ -11,9 +11,9 @@ 
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{					        \
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -52,9 +52,9 @@ 
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -77,9 +77,9 @@ 
 
 #define UFS_RESET(pg_name, offset)				\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = offset,			\
 		.io_reg = offset + 0x4,			\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-sc8180x.c b/drivers/pinctrl/qcom/pinctrl-sc8180x.c
index 9b2876b0..f86b176 100644
--- a/drivers/pinctrl/qcom/pinctrl-sc8180x.c
+++ b/drivers/pinctrl/qcom/pinctrl-sc8180x.c
@@ -40,9 +40,9 @@  static const struct tile_info sc8180x_tile_info[] = {
 #define REG_SIZE 0x1000
 #define PINGROUP_OFFSET(id, _tile, offset, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -83,9 +83,9 @@  static const struct tile_info sc8180x_tile_info[] = {
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -109,9 +109,9 @@  static const struct tile_info sc8180x_tile_info[] = {
 
 #define UFS_RESET(pg_name)				\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = 0xb6000,			\
 		.io_reg = 0xb6004,			\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-sc8280xp.c b/drivers/pinctrl/qcom/pinctrl-sc8280xp.c
index 1ad1b2c..96f4fb5 100644
--- a/drivers/pinctrl/qcom/pinctrl-sc8280xp.c
+++ b/drivers/pinctrl/qcom/pinctrl-sc8280xp.c
@@ -13,9 +13,9 @@ 
 #define REG_SIZE 0x1000
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7)	\
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -52,9 +52,9 @@ 
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -77,9 +77,9 @@ 
 
 #define UFS_RESET(pg_name, offset)				\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = offset,			\
 		.io_reg = offset + 0x4,			\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-sdm660.c b/drivers/pinctrl/qcom/pinctrl-sdm660.c
index 863c8b1..c2e0d5c 100644
--- a/drivers/pinctrl/qcom/pinctrl-sdm660.c
+++ b/drivers/pinctrl/qcom/pinctrl-sdm660.c
@@ -26,9 +26,9 @@  enum {
 
 #define PINGROUP(id, _tile, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{					        \
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -66,9 +66,9 @@  enum {
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-sdm670.c b/drivers/pinctrl/qcom/pinctrl-sdm670.c
index e630460..cc3cce0 100644
--- a/drivers/pinctrl/qcom/pinctrl-sdm670.c
+++ b/drivers/pinctrl/qcom/pinctrl-sdm670.c
@@ -17,9 +17,9 @@ 
 #define REG_SIZE 0x1000
 #define PINGROUP(id, base, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -60,9 +60,9 @@ 
  */
 #define PINGROUP_DUMMY(id)				\
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.ctl_reg = 0,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -85,9 +85,9 @@ 
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -110,9 +110,9 @@ 
 
 #define UFS_RESET(pg_name, offset)				\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = offset,			\
 		.io_reg = offset + 0x4,			\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-sdm845.c b/drivers/pinctrl/qcom/pinctrl-sdm845.c
index f8cd74d..cc05c41 100644
--- a/drivers/pinctrl/qcom/pinctrl-sdm845.c
+++ b/drivers/pinctrl/qcom/pinctrl-sdm845.c
@@ -16,9 +16,9 @@ 
 #define REG_SIZE 0x1000
 #define PINGROUP(id, base, f1, f2, f3, f4, f5, f6, f7, f8, f9, f10)	\
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -56,9 +56,9 @@ 
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -81,9 +81,9 @@ 
 
 #define UFS_RESET(pg_name, offset)				\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = offset,			\
 		.io_reg = offset + 0x4,			\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-sdx55.c b/drivers/pinctrl/qcom/pinctrl-sdx55.c
index 64957e1..8826db9 100644
--- a/drivers/pinctrl/qcom/pinctrl-sdx55.c
+++ b/drivers/pinctrl/qcom/pinctrl-sdx55.c
@@ -13,9 +13,9 @@ 
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{					        \
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -52,9 +52,9 @@ 
 
 #define SDC_PINGROUP(pg_name, ctl, pull, drv)	\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-sdx65.c b/drivers/pinctrl/qcom/pinctrl-sdx65.c
index d94de5b..f6f319c 100644
--- a/drivers/pinctrl/qcom/pinctrl-sdx65.c
+++ b/drivers/pinctrl/qcom/pinctrl-sdx65.c
@@ -13,9 +13,9 @@ 
 #define REG_SIZE 0x1000
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{					        \
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -52,9 +52,9 @@ 
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -77,9 +77,9 @@ 
 
 #define UFS_RESET(pg_name, offset)				\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = offset,			\
 		.io_reg = offset + 0x4,			\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-sm6115.c b/drivers/pinctrl/qcom/pinctrl-sm6115.c
index 73408eb..2a06025 100644
--- a/drivers/pinctrl/qcom/pinctrl-sm6115.c
+++ b/drivers/pinctrl/qcom/pinctrl-sm6115.c
@@ -23,9 +23,9 @@  enum {
 
 #define PINGROUP(id, _tile, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -63,9 +63,9 @@  enum {
 
 #define SDC_QDSD_PINGROUP(pg_name, _tile, ctl, pull, drv)	\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -89,9 +89,9 @@  enum {
 
 #define UFS_RESET(pg_name, offset)			\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = offset,			\
 		.io_reg = offset + 0x4,			\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-sm6125.c b/drivers/pinctrl/qcom/pinctrl-sm6125.c
index f94d6da..d5e2b89 100644
--- a/drivers/pinctrl/qcom/pinctrl-sm6125.c
+++ b/drivers/pinctrl/qcom/pinctrl-sm6125.c
@@ -20,9 +20,9 @@  enum {
 
 #define PINGROUP(id, _tile, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -60,9 +60,9 @@  enum {
 
 #define SDC_QDSD_PINGROUP(pg_name, _tile, ctl, pull, drv)	\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -86,9 +86,9 @@  enum {
 
 #define UFS_RESET(pg_name, offset)				\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = offset,			\
 		.io_reg = offset + 0x4,			\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-sm6350.c b/drivers/pinctrl/qcom/pinctrl-sm6350.c
index 0193917..f3828c0 100644
--- a/drivers/pinctrl/qcom/pinctrl-sm6350.c
+++ b/drivers/pinctrl/qcom/pinctrl-sm6350.c
@@ -13,9 +13,9 @@ 
 #define REG_SIZE 0x1000
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{					        \
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -52,9 +52,9 @@ 
 
 #define SDC_PINGROUP(pg_name, ctl, pull, drv)	\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -77,9 +77,9 @@ 
 
 #define UFS_RESET(pg_name, offset)				\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = offset,			\
 		.io_reg = offset + 0x4,			\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-sm6375.c b/drivers/pinctrl/qcom/pinctrl-sm6375.c
index 778f56e..c82c851 100644
--- a/drivers/pinctrl/qcom/pinctrl-sm6375.c
+++ b/drivers/pinctrl/qcom/pinctrl-sm6375.c
@@ -14,9 +14,9 @@ 
 #define REG_SIZE 0x1000
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{					        \
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -55,9 +55,9 @@ 
 
 #define SDC_PINGROUP(pg_name, ctl, pull, drv)	\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -80,9 +80,9 @@ 
 
 #define UFS_RESET(pg_name, offset)				\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = offset,			\
 		.io_reg = offset + 0x4,			\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-sm8150.c b/drivers/pinctrl/qcom/pinctrl-sm8150.c
index c7df131..01aea9c 100644
--- a/drivers/pinctrl/qcom/pinctrl-sm8150.c
+++ b/drivers/pinctrl/qcom/pinctrl-sm8150.c
@@ -23,9 +23,9 @@  enum {
 
 #define PINGROUP(id, _tile, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -63,9 +63,9 @@  enum {
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -89,9 +89,9 @@  enum {
 
 #define UFS_RESET(pg_name, offset)				\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = offset,			\
 		.io_reg = offset + 0x4,			\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-sm8250.c b/drivers/pinctrl/qcom/pinctrl-sm8250.c
index 2d18588..e9961a4 100644
--- a/drivers/pinctrl/qcom/pinctrl-sm8250.c
+++ b/drivers/pinctrl/qcom/pinctrl-sm8250.c
@@ -24,9 +24,9 @@  enum {
 #define REG_SIZE 0x1000
 #define PINGROUP(id, _tile, f1, f2, f3, f4, f5, f6, f7, f8, f9) \
 	{						\
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -64,9 +64,9 @@  enum {
 
 #define SDC_PINGROUP(pg_name, ctl, pull, drv)	\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -90,9 +90,9 @@  enum {
 
 #define UFS_RESET(pg_name, offset)				\
 	{						\
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = offset,			\
 		.io_reg = offset + 0x4,			\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-sm8350.c b/drivers/pinctrl/qcom/pinctrl-sm8350.c
index 6c402a1..9c69458 100644
--- a/drivers/pinctrl/qcom/pinctrl-sm8350.c
+++ b/drivers/pinctrl/qcom/pinctrl-sm8350.c
@@ -14,9 +14,9 @@ 
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9) \
 	{					        \
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -53,9 +53,9 @@ 
 
 #define SDC_PINGROUP(pg_name, ctl, pull, drv)	\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -78,9 +78,9 @@ 
 
 #define UFS_RESET(pg_name, offset)				\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = offset,			\
 		.io_reg = offset + 0x4,			\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-sm8450.c b/drivers/pinctrl/qcom/pinctrl-sm8450.c
index 5dcebea..d11bb1e 100644
--- a/drivers/pinctrl/qcom/pinctrl-sm8450.c
+++ b/drivers/pinctrl/qcom/pinctrl-sm8450.c
@@ -14,9 +14,9 @@ 
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{					        \
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -55,9 +55,9 @@ 
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -80,9 +80,9 @@ 
 
 #define UFS_RESET(pg_name, offset)				\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = offset,			\
 		.io_reg = offset + 0x4,			\
 		.intr_cfg_reg = 0,			\
diff --git a/drivers/pinctrl/qcom/pinctrl-sm8550.c b/drivers/pinctrl/qcom/pinctrl-sm8550.c
index d69e702..3c847d9 100644
--- a/drivers/pinctrl/qcom/pinctrl-sm8550.c
+++ b/drivers/pinctrl/qcom/pinctrl-sm8550.c
@@ -15,9 +15,9 @@ 
 
 #define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
 	{					        \
-		.name = "gpio" #id,			\
-		.pins = gpio##id##_pins,		\
-		.npins = (unsigned int)ARRAY_SIZE(gpio##id##_pins),	\
+		.grp = PINCTRL_PINGROUP("gpio" #id, 	\
+			gpio##id##_pins, 		\
+			ARRAY_SIZE(gpio##id##_pins)),	\
 		.funcs = (int[]){			\
 			msm_mux_gpio, /* gpio mode */	\
 			msm_mux_##f1,			\
@@ -57,9 +57,9 @@ 
 
 #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv)	\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = ctl,				\
 		.io_reg = 0,				\
 		.intr_cfg_reg = 0,			\
@@ -82,9 +82,9 @@ 
 
 #define UFS_RESET(pg_name, offset)				\
 	{					        \
-		.name = #pg_name,			\
-		.pins = pg_name##_pins,			\
-		.npins = (unsigned int)ARRAY_SIZE(pg_name##_pins),	\
+		.grp = PINCTRL_PINGROUP(#pg_name, 	\
+			pg_name##_pins, 		\
+			ARRAY_SIZE(pg_name##_pins)),	\
 		.ctl_reg = offset,			\
 		.io_reg = offset + 0x4,			\
 		.intr_cfg_reg = 0,			\