Message ID | 1643283344-24911-3-git-send-email-hayashi.kunihiko@socionext.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | pinctrl: uniphier: Add some more pinmux settings | expand |
Hi Kunihiko, I love your patch! Yet something to improve: [auto build test ERROR on linusw-pinctrl/devel] [also build test ERROR on v5.17-rc1 next-20220127] [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] url: https://github.com/0day-ci/linux/commits/Kunihiko-Hayashi/pinctrl-uniphier-Add-some-more-pinmux-settings/20220127-193715 base: https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl.git devel config: arm-randconfig-r005-20220124 (https://download.01.org/0day-ci/archive/20220128/202201280003.icgPhtLw-lkp@intel.com/config) compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project f32dccb9a43b02ce4e540d6ba5dbbdb188f2dc7d) 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 arm cross compiling tool for clang build # apt-get install binutils-arm-linux-gnueabi # https://github.com/0day-ci/linux/commit/e0e366a006b79517336423f8a2c72661178d5e41 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Kunihiko-Hayashi/pinctrl-uniphier-Add-some-more-pinmux-settings/20220127-193715 git checkout e0e366a006b79517336423f8a2c72661178d5e41 # save the config file to linux build tree mkdir build_dir COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash drivers/pinctrl/uniphier/ If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> All errors (new ones prefixed by >>): >> drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c:958:2: error: use of undeclared identifier 'aout4_groups' UNIPHIER_PINMUX_FUNCTION(aout4), ^ drivers/pinctrl/uniphier/pinctrl-uniphier.h:179:13: note: expanded from macro 'UNIPHIER_PINMUX_FUNCTION' .groups = func##_groups, \ ^ <scratch space>:175:1: note: expanded from here aout4_groups ^ >> drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c:958:2: error: use of undeclared identifier 'aout4_groups' drivers/pinctrl/uniphier/pinctrl-uniphier.h:180:28: note: expanded from macro 'UNIPHIER_PINMUX_FUNCTION' .num_groups = ARRAY_SIZE(func##_groups), \ ^ <scratch space>:176:1: note: expanded from here aout4_groups ^ >> drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c:958:2: error: use of undeclared identifier 'aout4_groups' drivers/pinctrl/uniphier/pinctrl-uniphier.h:180:28: note: expanded from macro 'UNIPHIER_PINMUX_FUNCTION' .num_groups = ARRAY_SIZE(func##_groups), \ ^ <scratch space>:176:1: note: expanded from here aout4_groups ^ >> drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c:958:2: error: use of undeclared identifier 'aout4_groups' drivers/pinctrl/uniphier/pinctrl-uniphier.h:180:28: note: expanded from macro 'UNIPHIER_PINMUX_FUNCTION' .num_groups = ARRAY_SIZE(func##_groups), \ ^ <scratch space>:176:1: note: expanded from here aout4_groups ^ >> drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c:1002:21: error: invalid application of 'sizeof' to an incomplete type 'const struct uniphier_pinmux_function[]' .functions_count = ARRAY_SIZE(uniphier_pxs2_functions), ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/kernel.h:55:32: note: expanded from macro 'ARRAY_SIZE' #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr)) ^~~~~ 5 errors generated. vim +/aout4_groups +958 drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c 949 950 static const struct uniphier_pinmux_function uniphier_pxs2_functions[] = { 951 UNIPHIER_PINMUX_FUNCTION(ain1), 952 UNIPHIER_PINMUX_FUNCTION(ain2), 953 UNIPHIER_PINMUX_FUNCTION(ain3), 954 UNIPHIER_PINMUX_FUNCTION(ainiec1), 955 UNIPHIER_PINMUX_FUNCTION(aout1), 956 UNIPHIER_PINMUX_FUNCTION(aout2), 957 UNIPHIER_PINMUX_FUNCTION(aout3), > 958 UNIPHIER_PINMUX_FUNCTION(aout4), 959 UNIPHIER_PINMUX_FUNCTION(aoutiec1), 960 UNIPHIER_PINMUX_FUNCTION(aoutiec2), 961 UNIPHIER_PINMUX_FUNCTION(emmc), 962 UNIPHIER_PINMUX_FUNCTION(ether_mii), 963 UNIPHIER_PINMUX_FUNCTION(ether_rgmii), 964 UNIPHIER_PINMUX_FUNCTION(ether_rmii), 965 UNIPHIER_PINMUX_FUNCTION(i2c0), 966 UNIPHIER_PINMUX_FUNCTION(i2c1), 967 UNIPHIER_PINMUX_FUNCTION(i2c2), 968 UNIPHIER_PINMUX_FUNCTION(i2c3), 969 UNIPHIER_PINMUX_FUNCTION(i2c5), 970 UNIPHIER_PINMUX_FUNCTION(i2c6), 971 UNIPHIER_PINMUX_FUNCTION(nand), 972 UNIPHIER_PINMUX_FUNCTION(sd), 973 UNIPHIER_PINMUX_FUNCTION(spi0), 974 UNIPHIER_PINMUX_FUNCTION(spi1), 975 UNIPHIER_PINMUX_FUNCTION(system_bus), 976 UNIPHIER_PINMUX_FUNCTION(uart0), 977 UNIPHIER_PINMUX_FUNCTION(uart1), 978 UNIPHIER_PINMUX_FUNCTION(uart2), 979 UNIPHIER_PINMUX_FUNCTION(uart3), 980 UNIPHIER_PINMUX_FUNCTION(usb0), 981 UNIPHIER_PINMUX_FUNCTION(usb1), 982 UNIPHIER_PINMUX_FUNCTION(usb2), 983 UNIPHIER_PINMUX_FUNCTION(usb3), 984 }; 985 986 static int uniphier_pxs2_get_gpio_muxval(unsigned int pin, 987 unsigned int gpio_offset) 988 { 989 if (gpio_offset >= 120 && gpio_offset <= 143) /* XIRQx */ 990 /* 15 will do because XIRQ0-23 are aliases of PORT150-177. */ 991 return 14; 992 993 return 15; 994 } 995 996 static const struct uniphier_pinctrl_socdata uniphier_pxs2_pindata = { 997 .pins = uniphier_pxs2_pins, 998 .npins = ARRAY_SIZE(uniphier_pxs2_pins), 999 .groups = uniphier_pxs2_groups, 1000 .groups_count = ARRAY_SIZE(uniphier_pxs2_groups), 1001 .functions = uniphier_pxs2_functions, > 1002 .functions_count = ARRAY_SIZE(uniphier_pxs2_functions), 1003 .get_gpio_muxval = uniphier_pxs2_get_gpio_muxval, 1004 .caps = 0, 1005 }; 1006 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
Hi Kunihiko, I love your patch! Yet something to improve: [auto build test ERROR on linusw-pinctrl/devel] [also build test ERROR on v5.17-rc1 next-20220127] [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] url: https://github.com/0day-ci/linux/commits/Kunihiko-Hayashi/pinctrl-uniphier-Add-some-more-pinmux-settings/20220127-193715 base: https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl.git devel config: openrisc-buildonly-randconfig-r003-20220124 (https://download.01.org/0day-ci/archive/20220128/202201280448.njc6LUNd-lkp@intel.com/config) compiler: or1k-linux-gcc (GCC) 11.2.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/0day-ci/linux/commit/e0e366a006b79517336423f8a2c72661178d5e41 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Kunihiko-Hayashi/pinctrl-uniphier-Add-some-more-pinmux-settings/20220127-193715 git checkout e0e366a006b79517336423f8a2c72661178d5e41 # save the config file to linux build tree mkdir build_dir COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=openrisc SHELL=/bin/bash If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> All errors (new ones prefixed by >>): In file included from drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c:12: >> drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c:958:34: error: 'aout4_groups' undeclared here (not in a function); did you mean 'aout3_groups'? 958 | UNIPHIER_PINMUX_FUNCTION(aout4), | ^~~~~ drivers/pinctrl/uniphier/pinctrl-uniphier.h:179:27: note: in definition of macro 'UNIPHIER_PINMUX_FUNCTION' 179 | .groups = func##_groups, \ | ^~~~ In file included from include/linux/container_of.h:5, from include/linux/kernel.h:21, from drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c:6: >> include/linux/build_bug.h:16:51: error: bit-field '<anonymous>' width not an integer constant 16 | #define BUILD_BUG_ON_ZERO(e) ((int)(sizeof(struct { int:(-!!(e)); }))) | ^ include/linux/compiler.h:258:33: note: in expansion of macro 'BUILD_BUG_ON_ZERO' 258 | #define __must_be_array(a) BUILD_BUG_ON_ZERO(__same_type((a), &(a)[0])) | ^~~~~~~~~~~~~~~~~ include/linux/kernel.h:55:59: note: in expansion of macro '__must_be_array' 55 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr)) | ^~~~~~~~~~~~~~~ drivers/pinctrl/uniphier/pinctrl-uniphier.h:180:31: note: in expansion of macro 'ARRAY_SIZE' 180 | .num_groups = ARRAY_SIZE(func##_groups), \ | ^~~~~~~~~~ drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c:958:9: note: in expansion of macro 'UNIPHIER_PINMUX_FUNCTION' 958 | UNIPHIER_PINMUX_FUNCTION(aout4), | ^~~~~~~~~~~~~~~~~~~~~~~~ vim +958 drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c 949 950 static const struct uniphier_pinmux_function uniphier_pxs2_functions[] = { 951 UNIPHIER_PINMUX_FUNCTION(ain1), 952 UNIPHIER_PINMUX_FUNCTION(ain2), 953 UNIPHIER_PINMUX_FUNCTION(ain3), 954 UNIPHIER_PINMUX_FUNCTION(ainiec1), 955 UNIPHIER_PINMUX_FUNCTION(aout1), 956 UNIPHIER_PINMUX_FUNCTION(aout2), 957 UNIPHIER_PINMUX_FUNCTION(aout3), > 958 UNIPHIER_PINMUX_FUNCTION(aout4), 959 UNIPHIER_PINMUX_FUNCTION(aoutiec1), 960 UNIPHIER_PINMUX_FUNCTION(aoutiec2), 961 UNIPHIER_PINMUX_FUNCTION(emmc), 962 UNIPHIER_PINMUX_FUNCTION(ether_mii), 963 UNIPHIER_PINMUX_FUNCTION(ether_rgmii), 964 UNIPHIER_PINMUX_FUNCTION(ether_rmii), 965 UNIPHIER_PINMUX_FUNCTION(i2c0), 966 UNIPHIER_PINMUX_FUNCTION(i2c1), 967 UNIPHIER_PINMUX_FUNCTION(i2c2), 968 UNIPHIER_PINMUX_FUNCTION(i2c3), 969 UNIPHIER_PINMUX_FUNCTION(i2c5), 970 UNIPHIER_PINMUX_FUNCTION(i2c6), 971 UNIPHIER_PINMUX_FUNCTION(nand), 972 UNIPHIER_PINMUX_FUNCTION(sd), 973 UNIPHIER_PINMUX_FUNCTION(spi0), 974 UNIPHIER_PINMUX_FUNCTION(spi1), 975 UNIPHIER_PINMUX_FUNCTION(system_bus), 976 UNIPHIER_PINMUX_FUNCTION(uart0), 977 UNIPHIER_PINMUX_FUNCTION(uart1), 978 UNIPHIER_PINMUX_FUNCTION(uart2), 979 UNIPHIER_PINMUX_FUNCTION(uart3), 980 UNIPHIER_PINMUX_FUNCTION(usb0), 981 UNIPHIER_PINMUX_FUNCTION(usb1), 982 UNIPHIER_PINMUX_FUNCTION(usb2), 983 UNIPHIER_PINMUX_FUNCTION(usb3), 984 }; 985 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
On 2022/01/28 6:00, kernel test robot wrote: > Hi Kunihiko, > > I love your patch! Yet something to improve: > > [auto build test ERROR on linusw-pinctrl/devel] > [also build test ERROR on v5.17-rc1 next-20220127] > [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] > > url: > https://github.com/0day-ci/linux/commits/Kunihiko-Hayashi/pinctrl-uniphier > -Add-some-more-pinmux-settings/20220127-193715 > base: > https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl.git > devel > config: openrisc-buildonly-randconfig-r003-20220124 > (https://download.01.org/0day-ci/archive/20220128/202201280448.njc6LUNd-lk > p@intel.com/config) > compiler: or1k-linux-gcc (GCC) 11.2.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/0day-ci/linux/commit/e0e366a006b79517336423f8a2c7266117 > 8d5e41 > git remote add linux-review https://github.com/0day-ci/linux > git fetch --no-tags linux-review > Kunihiko-Hayashi/pinctrl-uniphier-Add-some-more-pinmux-settings/20220127-1 > 93715 > git checkout e0e366a006b79517336423f8a2c72661178d5e41 > # save the config file to linux build tree > mkdir build_dir > COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross > O=build_dir ARCH=openrisc SHELL=/bin/bash > > If you fix the issue, kindly add following tag as appropriate > Reported-by: kernel test robot <lkp@intel.com> > > All errors (new ones prefixed by >>): > > In file included from drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c: > 12: >>> drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c:958:34: error: > 'aout4_groups' undeclared here (not in a function); did you mean > 'aout3_groups'? > 958 | UNIPHIER_PINMUX_FUNCTION(aout4), > | ^~~~~ > drivers/pinctrl/uniphier/pinctrl-uniphier.h:179:27: note: in definition > of macro 'UNIPHIER_PINMUX_FUNCTION' > 179 | .groups = func##_groups, > \ > | ^~~~ > In file included from include/linux/container_of.h:5, > from include/linux/kernel.h:21, > from drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c: > 6: >>> include/linux/build_bug.h:16:51: error: bit-field '<anonymous>' width > not an integer constant > 16 | #define BUILD_BUG_ON_ZERO(e) ((int)(sizeof(struct { > int:(-!!(e)); }))) > | ^ > include/linux/compiler.h:258:33: note: in expansion of macro > 'BUILD_BUG_ON_ZERO' > 258 | #define __must_be_array(a) > BUILD_BUG_ON_ZERO(__same_type((a), &(a)[0])) > | ^~~~~~~~~~~~~~~~~ > include/linux/kernel.h:55:59: note: in expansion of macro > '__must_be_array' > 55 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + > __must_be_array(arr)) > | > ^~~~~~~~~~~~~~~ > drivers/pinctrl/uniphier/pinctrl-uniphier.h:180:31: note: in expansion > of macro 'ARRAY_SIZE' > 180 | .num_groups = ARRAY_SIZE(func##_groups), > \ > | ^~~~~~~~~~ > drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c:958:9: note: in > expansion of macro 'UNIPHIER_PINMUX_FUNCTION' > 958 | UNIPHIER_PINMUX_FUNCTION(aout4), > | ^~~~~~~~~~~~~~~~~~~~~~~~ > > > vim +958 drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c > > 949 > 950 static const struct uniphier_pinmux_function > uniphier_pxs2_functions[] = { > 951 UNIPHIER_PINMUX_FUNCTION(ain1), > 952 UNIPHIER_PINMUX_FUNCTION(ain2), > 953 UNIPHIER_PINMUX_FUNCTION(ain3), > 954 UNIPHIER_PINMUX_FUNCTION(ainiec1), > 955 UNIPHIER_PINMUX_FUNCTION(aout1), > 956 UNIPHIER_PINMUX_FUNCTION(aout2), > 957 UNIPHIER_PINMUX_FUNCTION(aout3), > > 958 UNIPHIER_PINMUX_FUNCTION(aout4), The aout4 function doesn't exist now. I'll remove them in next. Thank you, > 959 UNIPHIER_PINMUX_FUNCTION(aoutiec1), > 960 UNIPHIER_PINMUX_FUNCTION(aoutiec2), > 961 UNIPHIER_PINMUX_FUNCTION(emmc), > 962 UNIPHIER_PINMUX_FUNCTION(ether_mii), > 963 UNIPHIER_PINMUX_FUNCTION(ether_rgmii), > 964 UNIPHIER_PINMUX_FUNCTION(ether_rmii), > 965 UNIPHIER_PINMUX_FUNCTION(i2c0), > 966 UNIPHIER_PINMUX_FUNCTION(i2c1), > 967 UNIPHIER_PINMUX_FUNCTION(i2c2), > 968 UNIPHIER_PINMUX_FUNCTION(i2c3), > 969 UNIPHIER_PINMUX_FUNCTION(i2c5), > 970 UNIPHIER_PINMUX_FUNCTION(i2c6), > 971 UNIPHIER_PINMUX_FUNCTION(nand), > 972 UNIPHIER_PINMUX_FUNCTION(sd), > 973 UNIPHIER_PINMUX_FUNCTION(spi0), > 974 UNIPHIER_PINMUX_FUNCTION(spi1), > 975 UNIPHIER_PINMUX_FUNCTION(system_bus), > 976 UNIPHIER_PINMUX_FUNCTION(uart0), > 977 UNIPHIER_PINMUX_FUNCTION(uart1), > 978 UNIPHIER_PINMUX_FUNCTION(uart2), > 979 UNIPHIER_PINMUX_FUNCTION(uart3), > 980 UNIPHIER_PINMUX_FUNCTION(usb0), > 981 UNIPHIER_PINMUX_FUNCTION(usb1), > 982 UNIPHIER_PINMUX_FUNCTION(usb2), > 983 UNIPHIER_PINMUX_FUNCTION(usb3), > 984 }; > 985 > > --- > 0-DAY CI Kernel Test Service, Intel Corporation > https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org >
diff --git a/drivers/pinctrl/uniphier/pinctrl-uniphier-ld11.c b/drivers/pinctrl/uniphier/pinctrl-uniphier-ld11.c index a4fa8e3af607..65ed20bc1fa2 100644 --- a/drivers/pinctrl/uniphier/pinctrl-uniphier-ld11.c +++ b/drivers/pinctrl/uniphier/pinctrl-uniphier-ld11.c @@ -461,10 +461,18 @@ static const struct pinctrl_pin_desc uniphier_ld11_pins[] = { 166, UNIPHIER_PIN_PULL_DOWN), }; -static const unsigned ain1_pins[] = {151, 152, 153, 154, 155, 156, 157}; -static const int ain1_muxvals[] = {4, 4, 4, 4, 4, 4, 4}; -static const unsigned aout1_pins[] = {137, 138, 139, 140, 141, 142}; -static const int aout1_muxvals[] = {0, 0, 0, 0, 0, 0}; +static const unsigned ain1_pins[] = {151, 152, 153, 154}; +static const int ain1_muxvals[] = {4, 4, 4, 4}; +static const unsigned ain1_dat2_pins[] = {155}; +static const int ain1_dat2_muxvals[] = {4}; +static const unsigned ain1_dat4_pins[] = {156, 157}; +static const int ain1_dat4_muxvals[] = {4, 4}; +static const unsigned aout1_pins[] = {137, 138, 139, 140}; +static const int aout1_muxvals[] = {0, 0, 0, 0}; +static const unsigned aout1_dat2_pins[] = {141}; +static const int aout1_dat2_muxvals[] = {0}; +static const unsigned aout1_dat4_pins[] = {142, 143}; +static const int aout1_dat4_muxvals[] = {0, 3}; static const unsigned ainiec1_pins[] = {150}; static const int ainiec1_muxvals[] = {4}; static const unsigned ainiec1b_pins[] = {141}; @@ -582,7 +590,11 @@ static const unsigned int gpio_range5_pins[] = { static const struct uniphier_pinctrl_group uniphier_ld11_groups[] = { UNIPHIER_PINCTRL_GROUP(ain1), + UNIPHIER_PINCTRL_GROUP(ain1_dat2), + UNIPHIER_PINCTRL_GROUP(ain1_dat4), UNIPHIER_PINCTRL_GROUP(aout1), + UNIPHIER_PINCTRL_GROUP(aout1_dat2), + UNIPHIER_PINCTRL_GROUP(aout1_dat4), UNIPHIER_PINCTRL_GROUP(ainiec1), UNIPHIER_PINCTRL_GROUP(ainiec1b), UNIPHIER_PINCTRL_GROUP(aoutiec1), @@ -626,8 +638,10 @@ static const struct uniphier_pinctrl_group uniphier_ld11_groups[] = { UNIPHIER_PINCTRL_GROUP_GPIO(gpio_range5), }; -static const char * const ain1_groups[] = {"ain1"}; -static const char * const aout1_groups[] = {"aout1"}; +static const char * const ain1_groups[] = {"ain1", "ain1_dat2", + "ain1_dat4"}; +static const char * const aout1_groups[] = {"aout1", "aout1_dat2", + "aout1_dat4"}; static const char * const ainiec1_groups[] = {"ainiec1", "ainiec1b"}; static const char * const aoutiec1_groups[] = {"aoutiec1"}; static const char * const aoutiec2_groups[] = {"aoutiec2"}; diff --git a/drivers/pinctrl/uniphier/pinctrl-uniphier-ld20.c b/drivers/pinctrl/uniphier/pinctrl-uniphier-ld20.c index 850736998206..a68b21fbd0c7 100644 --- a/drivers/pinctrl/uniphier/pinctrl-uniphier-ld20.c +++ b/drivers/pinctrl/uniphier/pinctrl-uniphier-ld20.c @@ -542,18 +542,38 @@ static const struct pinctrl_pin_desc uniphier_ld20_pins[] = { 175, UNIPHIER_PIN_PULL_DOWN), }; -static const unsigned ain1_pins[] = {150, 151, 152, 153, 154, 155, 156}; -static const int ain1_muxvals[] = {4, 4, 4, 4, 4, 4, 4}; -static const unsigned ain2_pins[] = {116, 117, 118, 119, 120, 121, 122}; -static const int ain2_muxvals[] = {26, 26, 26, 26, 26, 26, 26}; +static const unsigned ain1_pins[] = {150, 151, 152, 153}; +static const int ain1_muxvals[] = {4, 4, 4, 4}; +static const unsigned ain1_dat2_pins[] = {154}; +static const int ain1_dat2_muxvals[] = {4}; +static const unsigned ain1_dat4_pins[] = {155, 156}; +static const int ain1_dat4_muxvals[] = {4, 4}; +static const unsigned ain2_pins[] = {116, 117, 118, 119}; +static const int ain2_muxvals[] = {26, 26, 26, 26}; +static const unsigned ain2_dat2_pins[] = {120}; +static const int ain2_dat2_muxvals[] = {26}; +static const unsigned ain2_dat4_pins[] = {121, 122}; +static const int ain2_dat4_muxvals[] = {26, 26}; static const unsigned ain3_pins[] = {116, 117, 118, 119}; static const int ain3_muxvals[] = {27, 27, 27, 27}; -static const unsigned aout1_pins[] = {137, 138, 139, 140, 141, 142}; -static const int aout1_muxvals[] = {0, 0, 0, 0, 0, 0}; -static const unsigned aout1b_pins[] = {150, 151, 152, 153, 154, 155, 156}; -static const int aout1b_muxvals[] = {1, 1, 1, 1, 1, 1, 1}; -static const unsigned aout2_pins[] = {165, 157, 162, 158, 159, 160, 161}; -static const int aout2_muxvals[] = {2, 2, 2, 1, 1, 1, 1}; +static const unsigned aout1_pins[] = {137, 138, 139, 140}; +static const int aout1_muxvals[] = {0, 0, 0, 0}; +static const unsigned aout1_dat2_pins[] = {141}; +static const int aout1_dat2_muxvals[] = {0}; +static const unsigned aout1_dat4_pins[] = {142, 156}; +static const int aout1_dat4_muxvals[] = {0, 1}; +static const unsigned aout1b_pins[] = {150, 151, 152, 153}; +static const int aout1b_muxvals[] = {1, 1, 1, 1}; +static const unsigned aout1b_dat2_pins[] = {154}; +static const int aout1b_dat2_muxvals[] = {1}; +static const unsigned aout1b_dat4_pins[] = {155, 156}; +static const int aout1b_dat4_muxvals[] = {1, 1}; +static const unsigned aout2_pins[] = {165, 157, 162, 158}; +static const int aout2_muxvals[] = {2, 2, 2, 1}; +static const unsigned aout2_dat2_pins[] = {159}; +static const int aout2_dat2_muxvals[] = {1}; +static const unsigned aout2_dat4_pins[] = {160, 161}; +static const int aout2_dat4_muxvals[] = {1, 1}; static const unsigned aout3_pins[] = {166, 167, 168, 163}; static const int aout3_muxvals[] = {2, 2, 2, 1}; static const unsigned aout4_pins[] = {169, 170, 171, 164}; @@ -682,11 +702,21 @@ static const unsigned int gpio_range2_pins[] = { static const struct uniphier_pinctrl_group uniphier_ld20_groups[] = { UNIPHIER_PINCTRL_GROUP(ain1), + UNIPHIER_PINCTRL_GROUP(ain1_dat2), + UNIPHIER_PINCTRL_GROUP(ain1_dat4), UNIPHIER_PINCTRL_GROUP(ain2), + UNIPHIER_PINCTRL_GROUP(ain2_dat2), + UNIPHIER_PINCTRL_GROUP(ain2_dat4), UNIPHIER_PINCTRL_GROUP(ain3), UNIPHIER_PINCTRL_GROUP(aout1), + UNIPHIER_PINCTRL_GROUP(aout1_dat2), + UNIPHIER_PINCTRL_GROUP(aout1_dat4), UNIPHIER_PINCTRL_GROUP(aout1b), + UNIPHIER_PINCTRL_GROUP(aout1b_dat2), + UNIPHIER_PINCTRL_GROUP(aout1b_dat4), UNIPHIER_PINCTRL_GROUP(aout2), + UNIPHIER_PINCTRL_GROUP(aout2_dat2), + UNIPHIER_PINCTRL_GROUP(aout2_dat4), UNIPHIER_PINCTRL_GROUP(aout3), UNIPHIER_PINCTRL_GROUP(aout4), UNIPHIER_PINCTRL_GROUP(aoutiec1), @@ -734,11 +764,17 @@ static const struct uniphier_pinctrl_group uniphier_ld20_groups[] = { UNIPHIER_PINCTRL_GROUP_GPIO(gpio_range2), }; -static const char * const ain1_groups[] = {"ain1"}; -static const char * const ain2_groups[] = {"ain2"}; +static const char * const ain1_groups[] = {"ain1", "ain1_dat2", + "ain1_dat4"}; +static const char * const ain2_groups[] = {"ain2", "ain2_dat2", + "ain2_dat4"}; static const char * const ain3_groups[] = {"ain3"}; -static const char * const aout1_groups[] = {"aout1", "aout1b"}; -static const char * const aout2_groups[] = {"aout2"}; +static const char * const aout1_groups[] = {"aout1", "aout1_dat2", + "aout1_dat4", + "aout1b", "aout1b_dat2", + "aout1b_dat4"}; +static const char * const aout2_groups[] = {"aout2", "aout2_dat2", + "aout2_dat4"}; static const char * const aout3_groups[] = {"aout3"}; static const char * const aout4_groups[] = {"aout4"}; static const char * const aoutiec1_groups[] = {"aoutiec1"}; diff --git a/drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c b/drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c index 6ef892543cb9..efeca8fd7c9f 100644 --- a/drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c +++ b/drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c @@ -719,18 +719,34 @@ static const struct pinctrl_pin_desc uniphier_pxs2_pins[] = { 234, UNIPHIER_PIN_PULL_DOWN), }; -static const unsigned ain1_pins[] = {161, 162, 173, 174, 127, 128, 129}; -static const int ain1_muxvals[] = {8, 8, 8, 8, 3, 3, 3}; -static const unsigned ain2_pins[] = {98, 99, 100, 101, 102, 103, 104}; -static const int ain2_muxvals[] = {8, 8, 8, 8, 8, 8, 8}; +static const unsigned ain1_pins[] = {161, 162, 173, 174}; +static const int ain1_muxvals[] = {8, 8, 8, 8}; +static const unsigned ain1_dat2_pins[] = {127}; +static const int ain1_dat2_muxvals[] = {3}; +static const unsigned ain1_dat4_pins[] = {128, 129}; +static const int ain1_dat4_muxvals[] = {3, 3}; +static const unsigned ain2_pins[] = {98, 99, 100, 101}; +static const int ain2_muxvals[] = {8, 8, 8, 8}; +static const unsigned ain2_dat2_pins[] = {102}; +static const int ain2_dat2_muxvals[] = {8}; +static const unsigned ain2_dat4_pins[] = {103, 104}; +static const int ain2_dat4_muxvals[] = {8, 8}; static const unsigned ain3_pins[] = {132, 133, 134, 131}; static const int ain3_muxvals[] = {5, 5, 5, 5}; static const unsigned ainiec1_pins[] = {91}; static const int ainiec1_muxvals[] = {11}; -static const unsigned aout1_pins[] = {87, 88, 89, 90, 92, 93, 94}; -static const int aout1_muxvals[] = {11, 11, 11, 11, 11, 11, 11}; -static const unsigned aout2_pins[] = {175, 176, 177, 178, 183, 184, 185}; -static const int aout2_muxvals[] = {8, 8, 8, 8, 9, 9, 9}; +static const unsigned aout1_pins[] = {87, 88, 89, 90}; +static const int aout1_muxvals[] = {11, 11, 11, 11}; +static const unsigned aout1_dat2_pins[] = {92}; +static const int aout1_dat2_muxvals[] = {11}; +static const unsigned aout1_dat4_pins[] = {93, 94}; +static const int aout1_dat4_muxvals[] = {11, 11}; +static const unsigned aout2_pins[] = {177, 178, 175, 176}; +static const int aout2_muxvals[] = {8, 8, 8, 8}; +static const unsigned aout2_dat2_pins[] = {183}; +static const int aout2_dat2_muxvals[] = {9}; +static const unsigned aout2_dat4_pins[] = {184, 185}; +static const int aout2_dat4_muxvals[] = {9, 9}; static const unsigned aout3_pins[] = {105, 106, 107, 108}; static const int aout3_muxvals[] = {8, 8, 8, 8}; static const unsigned aoutiec1_pins[] = {95}; @@ -842,11 +858,19 @@ static const unsigned int gpio_range1_pins[] = { static const struct uniphier_pinctrl_group uniphier_pxs2_groups[] = { UNIPHIER_PINCTRL_GROUP(ain1), + UNIPHIER_PINCTRL_GROUP(ain1_dat2), + UNIPHIER_PINCTRL_GROUP(ain1_dat4), UNIPHIER_PINCTRL_GROUP(ain2), + UNIPHIER_PINCTRL_GROUP(ain2_dat2), + UNIPHIER_PINCTRL_GROUP(ain2_dat4), UNIPHIER_PINCTRL_GROUP(ain3), UNIPHIER_PINCTRL_GROUP(ainiec1), UNIPHIER_PINCTRL_GROUP(aout1), + UNIPHIER_PINCTRL_GROUP(aout1_dat2), + UNIPHIER_PINCTRL_GROUP(aout1_dat4), UNIPHIER_PINCTRL_GROUP(aout2), + UNIPHIER_PINCTRL_GROUP(aout2_dat2), + UNIPHIER_PINCTRL_GROUP(aout2_dat4), UNIPHIER_PINCTRL_GROUP(aout3), UNIPHIER_PINCTRL_GROUP(aoutiec1), UNIPHIER_PINCTRL_GROUP(aoutiec2), @@ -884,12 +908,16 @@ static const struct uniphier_pinctrl_group uniphier_pxs2_groups[] = { UNIPHIER_PINCTRL_GROUP_GPIO(gpio_range1), }; -static const char * const ain1_groups[] = {"ain1"}; -static const char * const ain2_groups[] = {"ain2"}; +static const char * const ain1_groups[] = {"ain1", "ain1_dat2", + "ain1_dat4"}; +static const char * const ain2_groups[] = {"ain2", "ain2_dat2", + "ain2_dat4"}; static const char * const ain3_groups[] = {"ain3"}; static const char * const ainiec1_groups[] = {"ainiec1"}; -static const char * const aout1_groups[] = {"aout1"}; -static const char * const aout2_groups[] = {"aout2"}; +static const char * const aout1_groups[] = {"aout1", "aout1_dat2", + "aout1_dat4"}; +static const char * const aout2_groups[] = {"aout2", "aout2_dat2", + "aout2_dat4"}; static const char * const aout3_groups[] = {"aout3"}; static const char * const aoutiec1_groups[] = {"aoutiec1"}; static const char * const aoutiec2_groups[] = {"aoutiec2"}; @@ -922,9 +950,12 @@ static const char * const usb3_groups[] = {"usb3"}; static const struct uniphier_pinmux_function uniphier_pxs2_functions[] = { UNIPHIER_PINMUX_FUNCTION(ain1), UNIPHIER_PINMUX_FUNCTION(ain2), + UNIPHIER_PINMUX_FUNCTION(ain3), UNIPHIER_PINMUX_FUNCTION(ainiec1), + UNIPHIER_PINMUX_FUNCTION(aout1), UNIPHIER_PINMUX_FUNCTION(aout2), UNIPHIER_PINMUX_FUNCTION(aout3), + UNIPHIER_PINMUX_FUNCTION(aout4), UNIPHIER_PINMUX_FUNCTION(aoutiec1), UNIPHIER_PINMUX_FUNCTION(aoutiec2), UNIPHIER_PINMUX_FUNCTION(emmc), diff --git a/drivers/pinctrl/uniphier/pinctrl-uniphier-pxs3.c b/drivers/pinctrl/uniphier/pinctrl-uniphier-pxs3.c index 4810db6c0ee8..eb3c9b55f6e3 100644 --- a/drivers/pinctrl/uniphier/pinctrl-uniphier-pxs3.c +++ b/drivers/pinctrl/uniphier/pinctrl-uniphier-pxs3.c @@ -767,14 +767,30 @@ static const struct pinctrl_pin_desc uniphier_pxs3_pins[] = { 250, UNIPHIER_PIN_PULL_DOWN), }; -static const unsigned ain1_pins[] = {186, 187, 188, 189, 237, 238, 239}; -static const int ain1_muxvals[] = {0, 0, 0, 0, 1, 1, 1}; -static const unsigned ain2_pins[] = {243, 244, 245, 246, 247, 248, 249}; -static const int ain2_muxvals[] = {1, 1, 1, 1, 1, 1, 1}; -static const unsigned aout1_pins[] = {226, 227, 228, 229, 230, 231, 232}; -static const int aout1_muxvals[] = {1, 1, 1, 1, 1, 1, 1}; -static const unsigned aout2_pins[] = {192, 193, 194, 195, 196, 197, 198}; -static const int aout2_muxvals[] = {0, 0, 0, 0, 0, 0, 0}; +static const unsigned ain1_pins[] = {186, 187, 188, 189}; +static const int ain1_muxvals[] = {0, 0, 0, 0}; +static const unsigned ain1_dat2_pins[] = {237}; +static const int ain1_dat2_muxvals[] = {1}; +static const unsigned ain1_dat4_pins[] = {238, 239}; +static const int ain1_dat4_muxvals[] = {1, 1}; +static const unsigned ain2_pins[] = {243, 244, 245, 246}; +static const int ain2_muxvals[] = {1, 1, 1, 1}; +static const unsigned ain2_dat2_pins[] = {247}; +static const int ain2_dat2_muxvals[] = {1}; +static const unsigned ain2_dat4_pins[] = {248, 249}; +static const int ain2_dat4_muxvals[] = {1, 1}; +static const unsigned aout1_pins[] = {226, 227, 228, 229}; +static const int aout1_muxvals[] = {1, 1, 1, 1}; +static const unsigned aout1_dat2_pins[] = {230}; +static const int aout1_dat2_muxvals[] = {1}; +static const unsigned aout1_dat4_pins[] = {231, 232}; +static const int aout1_dat4_muxvals[] = {1, 1}; +static const unsigned aout2_pins[] = {192, 193, 194, 195}; +static const int aout2_muxvals[] = {0, 0, 0, 0}; +static const unsigned aout2_dat2_pins[] = {196}; +static const int aout2_dat2_muxvals[] = {0}; +static const unsigned aout2_dat4_pins[] = {197, 198}; +static const int aout2_dat4_muxvals[] = {0, 0}; static const unsigned aout3_pins[] = {199, 200, 201, 202}; static const int aout3_muxvals[] = {0, 0, 0, 0}; static const unsigned ainiec1_pins[] = {240}; @@ -888,9 +904,17 @@ static const unsigned int gpio_range2_pins[] = { static const struct uniphier_pinctrl_group uniphier_pxs3_groups[] = { UNIPHIER_PINCTRL_GROUP(ain1), + UNIPHIER_PINCTRL_GROUP(ain1_dat2), + UNIPHIER_PINCTRL_GROUP(ain1_dat4), UNIPHIER_PINCTRL_GROUP(ain2), + UNIPHIER_PINCTRL_GROUP(ain2_dat2), + UNIPHIER_PINCTRL_GROUP(ain2_dat4), UNIPHIER_PINCTRL_GROUP(aout1), + UNIPHIER_PINCTRL_GROUP(aout1_dat2), + UNIPHIER_PINCTRL_GROUP(aout1_dat4), UNIPHIER_PINCTRL_GROUP(aout2), + UNIPHIER_PINCTRL_GROUP(aout2_dat2), + UNIPHIER_PINCTRL_GROUP(aout2_dat4), UNIPHIER_PINCTRL_GROUP(aout3), UNIPHIER_PINCTRL_GROUP(ainiec1), UNIPHIER_PINCTRL_GROUP(aoutiec1), @@ -926,10 +950,14 @@ static const struct uniphier_pinctrl_group uniphier_pxs3_groups[] = { UNIPHIER_PINCTRL_GROUP_GPIO(gpio_range2), }; -static const char * const ain1_groups[] = {"ain1"}; -static const char * const ain2_groups[] = {"ain2"}; -static const char * const aout1_groups[] = {"aout1"}; -static const char * const aout2_groups[] = {"aout2"}; +static const char * const ain1_groups[] = {"ain1", "ain1_dat2", + "ain1_dat4"}; +static const char * const ain2_groups[] = {"ain2", "ain2_dat2", + "ain1_dat4"}; +static const char * const aout1_groups[] = {"aout1", "aout1_dat2", + "aout1_dat4"}; +static const char * const aout2_groups[] = {"aout2", "aout2_dat2", + "aout2_dat4"}; static const char * const aout3_groups[] = {"aout3"}; static const char * const ainiec1_groups[] = {"ainiec1"}; static const char * const aoutiec1_groups[] = {"aoutiec1"};