blob: 1bda223ad5429e12c4ae4de8049f7533e8a6cc89 [file] [log] [blame]
Masahiro Yamada95372f92015-07-14 11:40:04 +09001/*
2 * Copyright (C) 2015 Masahiro Yamada <yamada.masahiro@socionext.com>
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 */
14
15#include <linux/kernel.h>
16#include <linux/module.h>
17#include <linux/pinctrl/pinctrl.h>
18#include <linux/platform_device.h>
19
20#include "pinctrl-uniphier.h"
21
Masahiro Yamadaa4c6052b2016-05-31 17:05:08 +090022static const struct pinctrl_pin_desc uniphier_sld8_pins[] = {
Masahiro Yamadade7f8e32015-09-24 21:26:46 +090023 UNIPHIER_PINCTRL_PIN(0, "PCA00", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090024 15, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090025 15, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +090026 UNIPHIER_PINCTRL_PIN(1, "PCA01", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090027 16, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090028 16, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +090029 UNIPHIER_PINCTRL_PIN(2, "PCA02", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090030 17, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090031 17, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +090032 UNIPHIER_PINCTRL_PIN(3, "PCA03", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090033 18, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090034 18, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +090035 UNIPHIER_PINCTRL_PIN(4, "PCA04", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090036 19, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090037 19, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +090038 UNIPHIER_PINCTRL_PIN(5, "PCA05", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090039 20, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090040 20, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +090041 UNIPHIER_PINCTRL_PIN(6, "PCA06", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090042 21, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090043 21, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +090044 UNIPHIER_PINCTRL_PIN(7, "PCA07", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090045 22, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090046 22, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +090047 UNIPHIER_PINCTRL_PIN(8, "PCA08", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090048 23, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090049 23, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +090050 UNIPHIER_PINCTRL_PIN(9, "PCA09", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090051 24, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090052 24, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +090053 UNIPHIER_PINCTRL_PIN(10, "PCA10", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090054 25, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090055 25, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +090056 UNIPHIER_PINCTRL_PIN(11, "PCA11", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090057 26, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090058 26, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +090059 UNIPHIER_PINCTRL_PIN(12, "PCA12", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090060 27, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090061 27, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +090062 UNIPHIER_PINCTRL_PIN(13, "PCA13", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090063 28, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090064 28, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +090065 UNIPHIER_PINCTRL_PIN(14, "PCA14", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090066 29, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090067 29, UNIPHIER_PIN_PULL_DOWN),
68 UNIPHIER_PINCTRL_PIN(15, "XNFRE_GB", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090069 30, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090070 30, UNIPHIER_PIN_PULL_UP),
71 UNIPHIER_PINCTRL_PIN(16, "XNFWE_GB", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090072 31, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090073 31, UNIPHIER_PIN_PULL_UP),
74 UNIPHIER_PINCTRL_PIN(17, "NFALE_GB", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090075 32, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090076 32, UNIPHIER_PIN_PULL_DOWN),
77 UNIPHIER_PINCTRL_PIN(18, "NFCLE_GB", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090078 33, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090079 33, UNIPHIER_PIN_PULL_DOWN),
80 UNIPHIER_PINCTRL_PIN(19, "XNFWP_GB", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090081 34, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090082 34, UNIPHIER_PIN_PULL_DOWN),
83 UNIPHIER_PINCTRL_PIN(20, "XNFCE0_GB", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090084 35, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090085 35, UNIPHIER_PIN_PULL_UP),
86 UNIPHIER_PINCTRL_PIN(21, "NANDRYBY0_GB", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090087 36, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090088 36, UNIPHIER_PIN_PULL_UP),
89 UNIPHIER_PINCTRL_PIN(22, "XNFCE1_GB", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090090 0, UNIPHIER_PIN_DRV_2BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090091 119, UNIPHIER_PIN_PULL_UP),
92 UNIPHIER_PINCTRL_PIN(23, "NANDRYBY1_GB", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090093 1, UNIPHIER_PIN_DRV_2BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090094 120, UNIPHIER_PIN_PULL_UP),
95 UNIPHIER_PINCTRL_PIN(24, "NFD0_GB", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090096 2, UNIPHIER_PIN_DRV_2BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +090097 121, UNIPHIER_PIN_PULL_UP),
98 UNIPHIER_PINCTRL_PIN(25, "NFD1_GB", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +090099 3, UNIPHIER_PIN_DRV_2BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900100 122, UNIPHIER_PIN_PULL_UP),
101 UNIPHIER_PINCTRL_PIN(26, "NFD2_GB", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900102 4, UNIPHIER_PIN_DRV_2BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900103 123, UNIPHIER_PIN_PULL_UP),
104 UNIPHIER_PINCTRL_PIN(27, "NFD3_GB", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900105 5, UNIPHIER_PIN_DRV_2BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900106 124, UNIPHIER_PIN_PULL_UP),
107 UNIPHIER_PINCTRL_PIN(28, "NFD4_GB", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900108 6, UNIPHIER_PIN_DRV_2BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900109 125, UNIPHIER_PIN_PULL_UP),
110 UNIPHIER_PINCTRL_PIN(29, "NFD5_GB", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900111 7, UNIPHIER_PIN_DRV_2BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900112 126, UNIPHIER_PIN_PULL_UP),
113 UNIPHIER_PINCTRL_PIN(30, "NFD6_GB", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900114 8, UNIPHIER_PIN_DRV_2BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900115 127, UNIPHIER_PIN_PULL_UP),
116 UNIPHIER_PINCTRL_PIN(31, "NFD7_GB", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900117 9, UNIPHIER_PIN_DRV_2BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900118 128, UNIPHIER_PIN_PULL_UP),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900119 UNIPHIER_PINCTRL_PIN(32, "SDCLK", 8,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900120 10, UNIPHIER_PIN_DRV_2BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900121 -1, UNIPHIER_PIN_PULL_NONE),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900122 UNIPHIER_PINCTRL_PIN(33, "SDCMD", 8,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900123 11, UNIPHIER_PIN_DRV_2BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900124 -1, UNIPHIER_PIN_PULL_NONE),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900125 UNIPHIER_PINCTRL_PIN(34, "SDDAT0", 8,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900126 12, UNIPHIER_PIN_DRV_2BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900127 -1, UNIPHIER_PIN_PULL_NONE),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900128 UNIPHIER_PINCTRL_PIN(35, "SDDAT1", 8,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900129 13, UNIPHIER_PIN_DRV_2BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900130 -1, UNIPHIER_PIN_PULL_NONE),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900131 UNIPHIER_PINCTRL_PIN(36, "SDDAT2", 8,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900132 14, UNIPHIER_PIN_DRV_2BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900133 -1, UNIPHIER_PIN_PULL_NONE),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900134 UNIPHIER_PINCTRL_PIN(37, "SDDAT3", 8,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900135 15, UNIPHIER_PIN_DRV_2BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900136 -1, UNIPHIER_PIN_PULL_NONE),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900137 UNIPHIER_PINCTRL_PIN(38, "SDCD", 8,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900138 -1, UNIPHIER_PIN_DRV_FIXED4,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900139 129, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900140 UNIPHIER_PINCTRL_PIN(39, "SDWP", 8,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900141 -1, UNIPHIER_PIN_DRV_FIXED4,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900142 130, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900143 UNIPHIER_PINCTRL_PIN(40, "SDVOLC", 9,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900144 -1, UNIPHIER_PIN_DRV_FIXED4,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900145 131, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900146 UNIPHIER_PINCTRL_PIN(41, "USB0VBUS", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900147 37, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900148 37, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900149 UNIPHIER_PINCTRL_PIN(42, "USB0OD", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900150 38, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900151 38, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900152 UNIPHIER_PINCTRL_PIN(43, "USB1VBUS", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900153 39, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900154 39, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900155 UNIPHIER_PINCTRL_PIN(44, "USB1OD", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900156 40, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900157 40, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900158 UNIPHIER_PINCTRL_PIN(45, "PCRESET", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900159 41, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900160 41, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900161 UNIPHIER_PINCTRL_PIN(46, "PCREG", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900162 42, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900163 42, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900164 UNIPHIER_PINCTRL_PIN(47, "PCCE2", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900165 43, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900166 43, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900167 UNIPHIER_PINCTRL_PIN(48, "PCVS1", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900168 44, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900169 44, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900170 UNIPHIER_PINCTRL_PIN(49, "PCCD2", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900171 45, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900172 45, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900173 UNIPHIER_PINCTRL_PIN(50, "PCCD1", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900174 46, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900175 46, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900176 UNIPHIER_PINCTRL_PIN(51, "PCREADY", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900177 47, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900178 47, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900179 UNIPHIER_PINCTRL_PIN(52, "PCDOE", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900180 48, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900181 48, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900182 UNIPHIER_PINCTRL_PIN(53, "PCCE1", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900183 49, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900184 49, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900185 UNIPHIER_PINCTRL_PIN(54, "PCWE", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900186 50, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900187 50, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900188 UNIPHIER_PINCTRL_PIN(55, "PCOE", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900189 51, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900190 51, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900191 UNIPHIER_PINCTRL_PIN(56, "PCWAIT", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900192 52, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900193 52, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900194 UNIPHIER_PINCTRL_PIN(57, "PCIOWR", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900195 53, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900196 53, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900197 UNIPHIER_PINCTRL_PIN(58, "PCIORD", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900198 54, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900199 54, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900200 UNIPHIER_PINCTRL_PIN(59, "HS0DIN0", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900201 55, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900202 55, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900203 UNIPHIER_PINCTRL_PIN(60, "HS0DIN1", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900204 56, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900205 56, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900206 UNIPHIER_PINCTRL_PIN(61, "HS0DIN2", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900207 57, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900208 57, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900209 UNIPHIER_PINCTRL_PIN(62, "HS0DIN3", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900210 58, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900211 58, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900212 UNIPHIER_PINCTRL_PIN(63, "HS0DIN4", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900213 59, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900214 59, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900215 UNIPHIER_PINCTRL_PIN(64, "HS0DIN5", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900216 60, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900217 60, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900218 UNIPHIER_PINCTRL_PIN(65, "HS0DIN6", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900219 61, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900220 61, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900221 UNIPHIER_PINCTRL_PIN(66, "HS0DIN7", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900222 62, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900223 62, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900224 UNIPHIER_PINCTRL_PIN(67, "HS0BCLKIN", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900225 63, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900226 63, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900227 UNIPHIER_PINCTRL_PIN(68, "HS0VALIN", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900228 64, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900229 64, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900230 UNIPHIER_PINCTRL_PIN(69, "HS0SYNCIN", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900231 65, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900232 65, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900233 UNIPHIER_PINCTRL_PIN(70, "HSDOUT0", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900234 66, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900235 66, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900236 UNIPHIER_PINCTRL_PIN(71, "HSDOUT1", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900237 67, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900238 67, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900239 UNIPHIER_PINCTRL_PIN(72, "HSDOUT2", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900240 68, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900241 68, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900242 UNIPHIER_PINCTRL_PIN(73, "HSDOUT3", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900243 69, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900244 69, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900245 UNIPHIER_PINCTRL_PIN(74, "HSDOUT4", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900246 70, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900247 70, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900248 UNIPHIER_PINCTRL_PIN(75, "HSDOUT5", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900249 71, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900250 71, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900251 UNIPHIER_PINCTRL_PIN(76, "HSDOUT6", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900252 72, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900253 72, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900254 UNIPHIER_PINCTRL_PIN(77, "HSDOUT7", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900255 73, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900256 73, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900257 UNIPHIER_PINCTRL_PIN(78, "HSBCLKOUT", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900258 74, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900259 74, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900260 UNIPHIER_PINCTRL_PIN(79, "HSVALOUT", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900261 75, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900262 75, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900263 UNIPHIER_PINCTRL_PIN(80, "HSSYNCOUT", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900264 76, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900265 76, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900266 UNIPHIER_PINCTRL_PIN(81, "HS1DIN0", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900267 77, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900268 77, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900269 UNIPHIER_PINCTRL_PIN(82, "HS1DIN1", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900270 78, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900271 78, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900272 UNIPHIER_PINCTRL_PIN(83, "HS1DIN2", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900273 79, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900274 79, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900275 UNIPHIER_PINCTRL_PIN(84, "HS1DIN3", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900276 80, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900277 80, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900278 UNIPHIER_PINCTRL_PIN(85, "HS1DIN4", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900279 81, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900280 81, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900281 UNIPHIER_PINCTRL_PIN(86, "HS1DIN5", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900282 82, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900283 82, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900284 UNIPHIER_PINCTRL_PIN(87, "HS1DIN6", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900285 83, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900286 83, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900287 UNIPHIER_PINCTRL_PIN(88, "HS1DIN7", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900288 84, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900289 84, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900290 UNIPHIER_PINCTRL_PIN(89, "HS1BCLKIN", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900291 85, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900292 85, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900293 UNIPHIER_PINCTRL_PIN(90, "HS1VALIN", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900294 86, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900295 86, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900296 UNIPHIER_PINCTRL_PIN(91, "HS1SYNCIN", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900297 87, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900298 87, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900299 UNIPHIER_PINCTRL_PIN(92, "AGCI", 3,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900300 -1, UNIPHIER_PIN_DRV_FIXED4,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900301 132, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900302 UNIPHIER_PINCTRL_PIN(93, "AGCR", 4,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900303 -1, UNIPHIER_PIN_DRV_FIXED4,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900304 133, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900305 UNIPHIER_PINCTRL_PIN(94, "AGCBS", 5,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900306 -1, UNIPHIER_PIN_DRV_FIXED4,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900307 134, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900308 UNIPHIER_PINCTRL_PIN(95, "IECOUT", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900309 88, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900310 88, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900311 UNIPHIER_PINCTRL_PIN(96, "ASMCK", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900312 89, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900313 89, UNIPHIER_PIN_PULL_DOWN),
314 UNIPHIER_PINCTRL_PIN(97, "ABCKO", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900315 90, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900316 90, UNIPHIER_PIN_PULL_DOWN),
317 UNIPHIER_PINCTRL_PIN(98, "ALRCKO", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900318 91, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900319 91, UNIPHIER_PIN_PULL_DOWN),
320 UNIPHIER_PINCTRL_PIN(99, "ASDOUT0", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900321 92, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900322 92, UNIPHIER_PIN_PULL_DOWN),
323 UNIPHIER_PINCTRL_PIN(100, "ASDOUT1", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900324 93, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900325 93, UNIPHIER_PIN_PULL_UP),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900326 UNIPHIER_PINCTRL_PIN(101, "ARCOUT", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900327 94, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900328 94, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900329 UNIPHIER_PINCTRL_PIN(102, "SDA0", 10,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900330 -1, UNIPHIER_PIN_DRV_FIXED4,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900331 -1, UNIPHIER_PIN_PULL_NONE),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900332 UNIPHIER_PINCTRL_PIN(103, "SCL0", 10,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900333 -1, UNIPHIER_PIN_DRV_FIXED4,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900334 -1, UNIPHIER_PIN_PULL_NONE),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900335 UNIPHIER_PINCTRL_PIN(104, "SDA1", 11,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900336 -1, UNIPHIER_PIN_DRV_FIXED4,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900337 -1, UNIPHIER_PIN_PULL_NONE),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900338 UNIPHIER_PINCTRL_PIN(105, "SCL1", 11,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900339 -1, UNIPHIER_PIN_DRV_FIXED4,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900340 -1, UNIPHIER_PIN_PULL_NONE),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900341 UNIPHIER_PINCTRL_PIN(106, "DMDSDA0", 12,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900342 -1, UNIPHIER_PIN_DRV_FIXED4,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900343 -1, UNIPHIER_PIN_PULL_NONE),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900344 UNIPHIER_PINCTRL_PIN(107, "DMDSCL0", 12,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900345 -1, UNIPHIER_PIN_DRV_FIXED4,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900346 -1, UNIPHIER_PIN_PULL_NONE),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900347 UNIPHIER_PINCTRL_PIN(108, "DMDSDA1", 13,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900348 -1, UNIPHIER_PIN_DRV_FIXED4,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900349 -1, UNIPHIER_PIN_PULL_NONE),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900350 UNIPHIER_PINCTRL_PIN(109, "DMDSCL1", 13,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900351 -1, UNIPHIER_PIN_DRV_FIXED4,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900352 -1, UNIPHIER_PIN_PULL_NONE),
353 UNIPHIER_PINCTRL_PIN(110, "SBO0", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900354 95, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900355 95, UNIPHIER_PIN_PULL_UP),
356 UNIPHIER_PINCTRL_PIN(111, "SBI0", UNIPHIER_PIN_IECTRL_NONE,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900357 96, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900358 96, UNIPHIER_PIN_PULL_UP),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900359 UNIPHIER_PINCTRL_PIN(112, "SBO1", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900360 97, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900361 97, UNIPHIER_PIN_PULL_UP),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900362 UNIPHIER_PINCTRL_PIN(113, "SBI1", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900363 98, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900364 98, UNIPHIER_PIN_PULL_UP),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900365 UNIPHIER_PINCTRL_PIN(114, "TXD1", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900366 99, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900367 99, UNIPHIER_PIN_PULL_UP),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900368 UNIPHIER_PINCTRL_PIN(115, "RXD1", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900369 100, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900370 100, UNIPHIER_PIN_PULL_UP),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900371 UNIPHIER_PINCTRL_PIN(116, "HIN", 1,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900372 -1, UNIPHIER_PIN_DRV_FIXED5,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900373 -1, UNIPHIER_PIN_PULL_NONE),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900374 UNIPHIER_PINCTRL_PIN(117, "VIN", 2,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900375 -1, UNIPHIER_PIN_DRV_FIXED5,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900376 -1, UNIPHIER_PIN_PULL_NONE),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900377 UNIPHIER_PINCTRL_PIN(118, "TCON0", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900378 101, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900379 101, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900380 UNIPHIER_PINCTRL_PIN(119, "TCON1", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900381 102, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900382 102, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900383 UNIPHIER_PINCTRL_PIN(120, "TCON2", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900384 103, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900385 103, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900386 UNIPHIER_PINCTRL_PIN(121, "TCON3", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900387 104, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900388 104, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900389 UNIPHIER_PINCTRL_PIN(122, "TCON4", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900390 105, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900391 105, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900392 UNIPHIER_PINCTRL_PIN(123, "TCON5", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900393 106, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900394 106, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900395 UNIPHIER_PINCTRL_PIN(124, "TCON6", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900396 107, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900397 107, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900398 UNIPHIER_PINCTRL_PIN(125, "TCON7", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900399 108, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900400 108, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900401 UNIPHIER_PINCTRL_PIN(126, "TCON8", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900402 109, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900403 109, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900404 UNIPHIER_PINCTRL_PIN(127, "PWMA", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900405 110, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900406 110, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900407 UNIPHIER_PINCTRL_PIN(128, "XIRQ0", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900408 111, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900409 111, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900410 UNIPHIER_PINCTRL_PIN(129, "XIRQ1", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900411 112, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900412 112, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900413 UNIPHIER_PINCTRL_PIN(130, "XIRQ2", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900414 113, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900415 113, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900416 UNIPHIER_PINCTRL_PIN(131, "XIRQ3", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900417 114, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900418 114, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900419 UNIPHIER_PINCTRL_PIN(132, "XIRQ4", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900420 115, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900421 115, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900422 UNIPHIER_PINCTRL_PIN(133, "XIRQ5", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900423 116, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900424 116, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900425 UNIPHIER_PINCTRL_PIN(134, "XIRQ6", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900426 117, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900427 117, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamadade7f8e32015-09-24 21:26:46 +0900428 UNIPHIER_PINCTRL_PIN(135, "XIRQ7", 0,
Masahiro Yamada9eaa98a2016-05-31 17:05:13 +0900429 118, UNIPHIER_PIN_DRV_1BIT,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900430 118, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamada1e359eb2016-05-31 17:05:19 +0900431 /* dedicated pins */
432 UNIPHIER_PINCTRL_PIN(136, "ED0", -1,
433 0, UNIPHIER_PIN_DRV_1BIT,
434 0, UNIPHIER_PIN_PULL_DOWN),
435 UNIPHIER_PINCTRL_PIN(137, "ED1", -1,
436 1, UNIPHIER_PIN_DRV_1BIT,
437 1, UNIPHIER_PIN_PULL_DOWN),
438 UNIPHIER_PINCTRL_PIN(138, "ED2", -1,
439 2, UNIPHIER_PIN_DRV_1BIT,
440 2, UNIPHIER_PIN_PULL_DOWN),
441 UNIPHIER_PINCTRL_PIN(139, "ED3", -1,
442 3, UNIPHIER_PIN_DRV_1BIT,
443 3, UNIPHIER_PIN_PULL_DOWN),
444 UNIPHIER_PINCTRL_PIN(140, "ED4", -1,
445 4, UNIPHIER_PIN_DRV_1BIT,
446 4, UNIPHIER_PIN_PULL_DOWN),
447 UNIPHIER_PINCTRL_PIN(141, "ED5", -1,
448 5, UNIPHIER_PIN_DRV_1BIT,
449 5, UNIPHIER_PIN_PULL_DOWN),
450 UNIPHIER_PINCTRL_PIN(142, "ED6", -1,
451 6, UNIPHIER_PIN_DRV_1BIT,
452 6, UNIPHIER_PIN_PULL_DOWN),
453 UNIPHIER_PINCTRL_PIN(143, "ED7", -1,
454 7, UNIPHIER_PIN_DRV_1BIT,
455 7, UNIPHIER_PIN_PULL_DOWN),
456 UNIPHIER_PINCTRL_PIN(144, "XERWE0", -1,
457 8, UNIPHIER_PIN_DRV_1BIT,
458 8, UNIPHIER_PIN_PULL_UP),
459 UNIPHIER_PINCTRL_PIN(145, "XERWE1", -1,
460 9, UNIPHIER_PIN_DRV_1BIT,
461 9, UNIPHIER_PIN_PULL_UP),
462 UNIPHIER_PINCTRL_PIN(146, "ERXW", -1,
463 10, UNIPHIER_PIN_DRV_1BIT,
464 10, UNIPHIER_PIN_PULL_UP),
465 UNIPHIER_PINCTRL_PIN(147, "ES0", -1,
466 11, UNIPHIER_PIN_DRV_1BIT,
467 11, UNIPHIER_PIN_PULL_UP),
468 UNIPHIER_PINCTRL_PIN(148, "ES1", -1,
469 12, UNIPHIER_PIN_DRV_1BIT,
470 12, UNIPHIER_PIN_PULL_UP),
471 UNIPHIER_PINCTRL_PIN(149, "ES2", -1,
472 13, UNIPHIER_PIN_DRV_1BIT,
473 13, UNIPHIER_PIN_PULL_UP),
474 UNIPHIER_PINCTRL_PIN(150, "XECS1", -1,
475 14, UNIPHIER_PIN_DRV_1BIT,
476 14, UNIPHIER_PIN_PULL_DOWN),
Masahiro Yamada95372f92015-07-14 11:40:04 +0900477};
478
479static const unsigned emmc_pins[] = {21, 22, 23, 24, 25, 26, 27};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900480static const int emmc_muxvals[] = {1, 1, 1, 1, 1, 1, 1};
Masahiro Yamada95372f92015-07-14 11:40:04 +0900481static const unsigned emmc_dat8_pins[] = {28, 29, 30, 31};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900482static const int emmc_dat8_muxvals[] = {1, 1, 1, 1};
Masahiro Yamada95372f92015-07-14 11:40:04 +0900483static const unsigned i2c0_pins[] = {102, 103};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900484static const int i2c0_muxvals[] = {0, 0};
Masahiro Yamada95372f92015-07-14 11:40:04 +0900485static const unsigned i2c1_pins[] = {104, 105};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900486static const int i2c1_muxvals[] = {0, 0};
Masahiro Yamada95372f92015-07-14 11:40:04 +0900487static const unsigned i2c2_pins[] = {108, 109};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900488static const int i2c2_muxvals[] = {2, 2};
Masahiro Yamada95372f92015-07-14 11:40:04 +0900489static const unsigned i2c3_pins[] = {108, 109};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900490static const int i2c3_muxvals[] = {3, 3};
Masahiro Yamada95372f92015-07-14 11:40:04 +0900491static const unsigned nand_pins[] = {15, 16, 17, 18, 19, 20, 21, 24, 25, 26,
492 27, 28, 29, 30, 31};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900493static const int nand_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
Masahiro Yamada95372f92015-07-14 11:40:04 +0900494static const unsigned nand_cs1_pins[] = {22, 23};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900495static const int nand_cs1_muxvals[] = {0, 0};
Masahiro Yamadae86c6202015-09-24 21:26:47 +0900496static const unsigned sd_pins[] = {32, 33, 34, 35, 36, 37, 38, 39, 40};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900497static const int sd_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0};
Masahiro Yamada95372f92015-07-14 11:40:04 +0900498static const unsigned uart0_pins[] = {70, 71};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900499static const int uart0_muxvals[] = {3, 3};
Masahiro Yamada95372f92015-07-14 11:40:04 +0900500static const unsigned uart1_pins[] = {114, 115};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900501static const int uart1_muxvals[] = {0, 0};
Masahiro Yamada95372f92015-07-14 11:40:04 +0900502static const unsigned uart2_pins[] = {112, 113};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900503static const int uart2_muxvals[] = {1, 1};
Masahiro Yamada95372f92015-07-14 11:40:04 +0900504static const unsigned uart3_pins[] = {110, 111};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900505static const int uart3_muxvals[] = {1, 1};
Masahiro Yamada95372f92015-07-14 11:40:04 +0900506static const unsigned usb0_pins[] = {41, 42};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900507static const int usb0_muxvals[] = {0, 0};
Masahiro Yamada95372f92015-07-14 11:40:04 +0900508static const unsigned usb1_pins[] = {43, 44};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900509static const int usb1_muxvals[] = {0, 0};
Masahiro Yamada95372f92015-07-14 11:40:04 +0900510static const unsigned usb2_pins[] = {114, 115};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900511static const int usb2_muxvals[] = {1, 1};
Masahiro Yamada95372f92015-07-14 11:40:04 +0900512static const unsigned port_range0_pins[] = {
513 0, 1, 2, 3, 4, 5, 6, 7, /* PORT0x */
514 8, 9, 10, 11, 12, 13, 14, 15, /* PORT1x */
515 32, 33, 34, 35, 36, 37, 38, 39, /* PORT2x */
516 59, 60, 61, 62, 63, 64, 65, 66, /* PORT3x */
517 95, 96, 97, 98, 99, 100, 101, 57, /* PORT4x */
518 70, 71, 72, 73, 74, 75, 76, 77, /* PORT5x */
519 81, 83, 84, 85, 86, 89, 90, 91, /* PORT6x */
520 118, 119, 120, 121, 122, 53, 54, 55, /* PORT7x */
521 41, 42, 43, 44, 79, 80, 18, 19, /* PORT8x */
522 110, 111, 112, 113, 114, 115, 16, 17, /* PORT9x */
523 40, 67, 68, 69, 78, 92, 93, 94, /* PORT10x */
524 48, 49, 46, 45, 123, 124, 125, 126, /* PORT11x */
525 47, 127, 20, 56, 22, /* PORT120-124 */
526};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900527static const int port_range0_muxvals[] = {
Masahiro Yamada95372f92015-07-14 11:40:04 +0900528 15, 15, 15, 15, 15, 15, 15, 15, /* PORT0x */
529 15, 15, 15, 15, 15, 15, 15, 15, /* PORT1x */
530 15, 15, 15, 15, 15, 15, 15, 15, /* PORT2x */
531 15, 15, 15, 15, 15, 15, 15, 15, /* PORT3x */
532 15, 15, 15, 15, 15, 15, 15, 15, /* PORT4x */
533 15, 15, 15, 15, 15, 15, 15, 15, /* PORT5x */
534 15, 15, 15, 15, 15, 15, 15, 15, /* PORT6x */
535 15, 15, 15, 15, 15, 15, 15, 15, /* PORT7x */
536 15, 15, 15, 15, 15, 15, 15, 15, /* PORT8x */
537 15, 15, 15, 15, 15, 15, 15, 15, /* PORT9x */
538 15, 15, 15, 15, 15, 15, 15, 15, /* PORT10x */
539 15, 15, 15, 15, 15, 15, 15, 15, /* PORT11x */
540 15, 15, 15, 15, 15, /* PORT120-124 */
541};
542static const unsigned port_range1_pins[] = {
543 116, 117, /* PORT130-131 */
544};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900545static const int port_range1_muxvals[] = {
Masahiro Yamada95372f92015-07-14 11:40:04 +0900546 15, 15, /* PORT130-131 */
547};
548static const unsigned port_range2_pins[] = {
549 102, 103, 104, 105, 106, 107, 108, 109, /* PORT14x */
550};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900551static const int port_range2_muxvals[] = {
Masahiro Yamada95372f92015-07-14 11:40:04 +0900552 15, 15, 15, 15, 15, 15, 15, 15, /* PORT14x */
553};
554static const unsigned port_range3_pins[] = {
555 23, /* PORT166 */
556};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900557static const int port_range3_muxvals[] = {
Masahiro Yamada95372f92015-07-14 11:40:04 +0900558 15, /* PORT166 */
559};
560static const unsigned xirq_range0_pins[] = {
561 128, 129, 130, 131, 132, 133, 134, 135, /* XIRQ0-7 */
562 82, 87, 88, 50, 51, /* XIRQ8-12 */
563};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900564static const int xirq_range0_muxvals[] = {
Masahiro Yamada95372f92015-07-14 11:40:04 +0900565 0, 0, 0, 0, 0, 0, 0, 0, /* XIRQ0-7 */
566 14, 14, 14, 14, 14, /* XIRQ8-12 */
567};
568static const unsigned xirq_range1_pins[] = {
569 52, 58, /* XIRQ14-15 */
570};
Masahiro Yamada39ec9ac2016-05-31 17:05:18 +0900571static const int xirq_range1_muxvals[] = {
Masahiro Yamada95372f92015-07-14 11:40:04 +0900572 14, 14, /* XIRQ14-15 */
573};
574
Masahiro Yamadaa4c6052b2016-05-31 17:05:08 +0900575static const struct uniphier_pinctrl_group uniphier_sld8_groups[] = {
Masahiro Yamada95372f92015-07-14 11:40:04 +0900576 UNIPHIER_PINCTRL_GROUP(emmc),
577 UNIPHIER_PINCTRL_GROUP(emmc_dat8),
578 UNIPHIER_PINCTRL_GROUP(i2c0),
579 UNIPHIER_PINCTRL_GROUP(i2c1),
580 UNIPHIER_PINCTRL_GROUP(i2c2),
581 UNIPHIER_PINCTRL_GROUP(i2c3),
582 UNIPHIER_PINCTRL_GROUP(nand),
583 UNIPHIER_PINCTRL_GROUP(nand_cs1),
Masahiro Yamadae86c6202015-09-24 21:26:47 +0900584 UNIPHIER_PINCTRL_GROUP(sd),
Masahiro Yamada95372f92015-07-14 11:40:04 +0900585 UNIPHIER_PINCTRL_GROUP(uart0),
586 UNIPHIER_PINCTRL_GROUP(uart1),
587 UNIPHIER_PINCTRL_GROUP(uart2),
588 UNIPHIER_PINCTRL_GROUP(uart3),
589 UNIPHIER_PINCTRL_GROUP(usb0),
590 UNIPHIER_PINCTRL_GROUP(usb1),
591 UNIPHIER_PINCTRL_GROUP(usb2),
592 UNIPHIER_PINCTRL_GROUP_GPIO_RANGE_PORT(port_range0),
593 UNIPHIER_PINCTRL_GROUP_GPIO_RANGE_PORT(port_range1),
594 UNIPHIER_PINCTRL_GROUP_GPIO_RANGE_PORT(port_range2),
595 UNIPHIER_PINCTRL_GROUP_GPIO_RANGE_PORT(port_range3),
596 UNIPHIER_PINCTRL_GROUP_GPIO_RANGE_IRQ(xirq_range0),
597 UNIPHIER_PINCTRL_GROUP_GPIO_RANGE_IRQ(xirq_range1),
598 UNIPHIER_PINCTRL_GROUP_SINGLE(port00, port_range0, 0),
599 UNIPHIER_PINCTRL_GROUP_SINGLE(port01, port_range0, 1),
600 UNIPHIER_PINCTRL_GROUP_SINGLE(port02, port_range0, 2),
601 UNIPHIER_PINCTRL_GROUP_SINGLE(port03, port_range0, 3),
602 UNIPHIER_PINCTRL_GROUP_SINGLE(port04, port_range0, 4),
603 UNIPHIER_PINCTRL_GROUP_SINGLE(port05, port_range0, 5),
604 UNIPHIER_PINCTRL_GROUP_SINGLE(port06, port_range0, 6),
605 UNIPHIER_PINCTRL_GROUP_SINGLE(port07, port_range0, 7),
606 UNIPHIER_PINCTRL_GROUP_SINGLE(port10, port_range0, 8),
607 UNIPHIER_PINCTRL_GROUP_SINGLE(port11, port_range0, 9),
608 UNIPHIER_PINCTRL_GROUP_SINGLE(port12, port_range0, 10),
609 UNIPHIER_PINCTRL_GROUP_SINGLE(port13, port_range0, 11),
610 UNIPHIER_PINCTRL_GROUP_SINGLE(port14, port_range0, 12),
611 UNIPHIER_PINCTRL_GROUP_SINGLE(port15, port_range0, 13),
612 UNIPHIER_PINCTRL_GROUP_SINGLE(port16, port_range0, 14),
613 UNIPHIER_PINCTRL_GROUP_SINGLE(port17, port_range0, 15),
614 UNIPHIER_PINCTRL_GROUP_SINGLE(port20, port_range0, 16),
615 UNIPHIER_PINCTRL_GROUP_SINGLE(port21, port_range0, 17),
616 UNIPHIER_PINCTRL_GROUP_SINGLE(port22, port_range0, 18),
617 UNIPHIER_PINCTRL_GROUP_SINGLE(port23, port_range0, 19),
618 UNIPHIER_PINCTRL_GROUP_SINGLE(port24, port_range0, 20),
619 UNIPHIER_PINCTRL_GROUP_SINGLE(port25, port_range0, 21),
620 UNIPHIER_PINCTRL_GROUP_SINGLE(port26, port_range0, 22),
621 UNIPHIER_PINCTRL_GROUP_SINGLE(port27, port_range0, 23),
622 UNIPHIER_PINCTRL_GROUP_SINGLE(port30, port_range0, 24),
623 UNIPHIER_PINCTRL_GROUP_SINGLE(port31, port_range0, 25),
624 UNIPHIER_PINCTRL_GROUP_SINGLE(port32, port_range0, 26),
625 UNIPHIER_PINCTRL_GROUP_SINGLE(port33, port_range0, 27),
626 UNIPHIER_PINCTRL_GROUP_SINGLE(port34, port_range0, 28),
627 UNIPHIER_PINCTRL_GROUP_SINGLE(port35, port_range0, 29),
628 UNIPHIER_PINCTRL_GROUP_SINGLE(port36, port_range0, 30),
629 UNIPHIER_PINCTRL_GROUP_SINGLE(port37, port_range0, 31),
630 UNIPHIER_PINCTRL_GROUP_SINGLE(port40, port_range0, 32),
631 UNIPHIER_PINCTRL_GROUP_SINGLE(port41, port_range0, 33),
632 UNIPHIER_PINCTRL_GROUP_SINGLE(port42, port_range0, 34),
633 UNIPHIER_PINCTRL_GROUP_SINGLE(port43, port_range0, 35),
634 UNIPHIER_PINCTRL_GROUP_SINGLE(port44, port_range0, 36),
635 UNIPHIER_PINCTRL_GROUP_SINGLE(port45, port_range0, 37),
636 UNIPHIER_PINCTRL_GROUP_SINGLE(port46, port_range0, 38),
637 UNIPHIER_PINCTRL_GROUP_SINGLE(port47, port_range0, 39),
638 UNIPHIER_PINCTRL_GROUP_SINGLE(port50, port_range0, 40),
639 UNIPHIER_PINCTRL_GROUP_SINGLE(port51, port_range0, 41),
640 UNIPHIER_PINCTRL_GROUP_SINGLE(port52, port_range0, 42),
641 UNIPHIER_PINCTRL_GROUP_SINGLE(port53, port_range0, 43),
642 UNIPHIER_PINCTRL_GROUP_SINGLE(port54, port_range0, 44),
643 UNIPHIER_PINCTRL_GROUP_SINGLE(port55, port_range0, 45),
644 UNIPHIER_PINCTRL_GROUP_SINGLE(port56, port_range0, 46),
645 UNIPHIER_PINCTRL_GROUP_SINGLE(port57, port_range0, 47),
646 UNIPHIER_PINCTRL_GROUP_SINGLE(port60, port_range0, 48),
647 UNIPHIER_PINCTRL_GROUP_SINGLE(port61, port_range0, 49),
648 UNIPHIER_PINCTRL_GROUP_SINGLE(port62, port_range0, 50),
649 UNIPHIER_PINCTRL_GROUP_SINGLE(port63, port_range0, 51),
650 UNIPHIER_PINCTRL_GROUP_SINGLE(port64, port_range0, 52),
651 UNIPHIER_PINCTRL_GROUP_SINGLE(port65, port_range0, 53),
652 UNIPHIER_PINCTRL_GROUP_SINGLE(port66, port_range0, 54),
653 UNIPHIER_PINCTRL_GROUP_SINGLE(port67, port_range0, 55),
654 UNIPHIER_PINCTRL_GROUP_SINGLE(port70, port_range0, 56),
655 UNIPHIER_PINCTRL_GROUP_SINGLE(port71, port_range0, 57),
656 UNIPHIER_PINCTRL_GROUP_SINGLE(port72, port_range0, 58),
657 UNIPHIER_PINCTRL_GROUP_SINGLE(port73, port_range0, 59),
658 UNIPHIER_PINCTRL_GROUP_SINGLE(port74, port_range0, 60),
659 UNIPHIER_PINCTRL_GROUP_SINGLE(port75, port_range0, 61),
660 UNIPHIER_PINCTRL_GROUP_SINGLE(port76, port_range0, 62),
661 UNIPHIER_PINCTRL_GROUP_SINGLE(port77, port_range0, 63),
662 UNIPHIER_PINCTRL_GROUP_SINGLE(port80, port_range0, 64),
663 UNIPHIER_PINCTRL_GROUP_SINGLE(port81, port_range0, 65),
664 UNIPHIER_PINCTRL_GROUP_SINGLE(port82, port_range0, 66),
665 UNIPHIER_PINCTRL_GROUP_SINGLE(port83, port_range0, 67),
666 UNIPHIER_PINCTRL_GROUP_SINGLE(port84, port_range0, 68),
667 UNIPHIER_PINCTRL_GROUP_SINGLE(port85, port_range0, 69),
668 UNIPHIER_PINCTRL_GROUP_SINGLE(port86, port_range0, 70),
669 UNIPHIER_PINCTRL_GROUP_SINGLE(port87, port_range0, 71),
670 UNIPHIER_PINCTRL_GROUP_SINGLE(port90, port_range0, 72),
671 UNIPHIER_PINCTRL_GROUP_SINGLE(port91, port_range0, 73),
672 UNIPHIER_PINCTRL_GROUP_SINGLE(port92, port_range0, 74),
673 UNIPHIER_PINCTRL_GROUP_SINGLE(port93, port_range0, 75),
674 UNIPHIER_PINCTRL_GROUP_SINGLE(port94, port_range0, 76),
675 UNIPHIER_PINCTRL_GROUP_SINGLE(port95, port_range0, 77),
676 UNIPHIER_PINCTRL_GROUP_SINGLE(port96, port_range0, 78),
677 UNIPHIER_PINCTRL_GROUP_SINGLE(port97, port_range0, 79),
678 UNIPHIER_PINCTRL_GROUP_SINGLE(port100, port_range0, 80),
679 UNIPHIER_PINCTRL_GROUP_SINGLE(port101, port_range0, 81),
680 UNIPHIER_PINCTRL_GROUP_SINGLE(port102, port_range0, 82),
681 UNIPHIER_PINCTRL_GROUP_SINGLE(port103, port_range0, 83),
682 UNIPHIER_PINCTRL_GROUP_SINGLE(port104, port_range0, 84),
683 UNIPHIER_PINCTRL_GROUP_SINGLE(port105, port_range0, 85),
684 UNIPHIER_PINCTRL_GROUP_SINGLE(port106, port_range0, 86),
685 UNIPHIER_PINCTRL_GROUP_SINGLE(port107, port_range0, 87),
686 UNIPHIER_PINCTRL_GROUP_SINGLE(port110, port_range0, 88),
687 UNIPHIER_PINCTRL_GROUP_SINGLE(port111, port_range0, 89),
688 UNIPHIER_PINCTRL_GROUP_SINGLE(port112, port_range0, 90),
689 UNIPHIER_PINCTRL_GROUP_SINGLE(port113, port_range0, 91),
690 UNIPHIER_PINCTRL_GROUP_SINGLE(port114, port_range0, 92),
691 UNIPHIER_PINCTRL_GROUP_SINGLE(port115, port_range0, 93),
692 UNIPHIER_PINCTRL_GROUP_SINGLE(port116, port_range0, 94),
693 UNIPHIER_PINCTRL_GROUP_SINGLE(port117, port_range0, 95),
694 UNIPHIER_PINCTRL_GROUP_SINGLE(port120, port_range0, 96),
695 UNIPHIER_PINCTRL_GROUP_SINGLE(port121, port_range0, 97),
696 UNIPHIER_PINCTRL_GROUP_SINGLE(port122, port_range0, 98),
697 UNIPHIER_PINCTRL_GROUP_SINGLE(port123, port_range0, 99),
698 UNIPHIER_PINCTRL_GROUP_SINGLE(port124, port_range0, 100),
699 UNIPHIER_PINCTRL_GROUP_SINGLE(port130, port_range1, 0),
700 UNIPHIER_PINCTRL_GROUP_SINGLE(port131, port_range1, 1),
701 UNIPHIER_PINCTRL_GROUP_SINGLE(port140, port_range2, 0),
702 UNIPHIER_PINCTRL_GROUP_SINGLE(port141, port_range2, 1),
703 UNIPHIER_PINCTRL_GROUP_SINGLE(port142, port_range2, 2),
704 UNIPHIER_PINCTRL_GROUP_SINGLE(port143, port_range2, 3),
705 UNIPHIER_PINCTRL_GROUP_SINGLE(port144, port_range2, 4),
706 UNIPHIER_PINCTRL_GROUP_SINGLE(port145, port_range2, 5),
707 UNIPHIER_PINCTRL_GROUP_SINGLE(port146, port_range2, 6),
708 UNIPHIER_PINCTRL_GROUP_SINGLE(port147, port_range2, 7),
709 UNIPHIER_PINCTRL_GROUP_SINGLE(port166, port_range3, 0),
710 UNIPHIER_PINCTRL_GROUP_SINGLE(xirq0, xirq_range0, 0),
711 UNIPHIER_PINCTRL_GROUP_SINGLE(xirq1, xirq_range0, 1),
712 UNIPHIER_PINCTRL_GROUP_SINGLE(xirq2, xirq_range0, 2),
713 UNIPHIER_PINCTRL_GROUP_SINGLE(xirq3, xirq_range0, 3),
714 UNIPHIER_PINCTRL_GROUP_SINGLE(xirq4, xirq_range0, 4),
715 UNIPHIER_PINCTRL_GROUP_SINGLE(xirq5, xirq_range0, 5),
716 UNIPHIER_PINCTRL_GROUP_SINGLE(xirq6, xirq_range0, 6),
717 UNIPHIER_PINCTRL_GROUP_SINGLE(xirq7, xirq_range0, 7),
718 UNIPHIER_PINCTRL_GROUP_SINGLE(xirq8, xirq_range0, 8),
719 UNIPHIER_PINCTRL_GROUP_SINGLE(xirq9, xirq_range0, 9),
720 UNIPHIER_PINCTRL_GROUP_SINGLE(xirq10, xirq_range0, 10),
721 UNIPHIER_PINCTRL_GROUP_SINGLE(xirq11, xirq_range0, 11),
722 UNIPHIER_PINCTRL_GROUP_SINGLE(xirq12, xirq_range0, 12),
723 UNIPHIER_PINCTRL_GROUP_SINGLE(xirq14, xirq_range1, 0),
724 UNIPHIER_PINCTRL_GROUP_SINGLE(xirq15, xirq_range1, 1),
725};
726
727static const char * const emmc_groups[] = {"emmc", "emmc_dat8"};
728static const char * const i2c0_groups[] = {"i2c0"};
729static const char * const i2c1_groups[] = {"i2c1"};
730static const char * const i2c2_groups[] = {"i2c2"};
731static const char * const i2c3_groups[] = {"i2c3"};
732static const char * const nand_groups[] = {"nand", "nand_cs1"};
Masahiro Yamadae86c6202015-09-24 21:26:47 +0900733static const char * const sd_groups[] = {"sd"};
Masahiro Yamada95372f92015-07-14 11:40:04 +0900734static const char * const uart0_groups[] = {"uart0"};
735static const char * const uart1_groups[] = {"uart1"};
736static const char * const uart2_groups[] = {"uart2"};
737static const char * const uart3_groups[] = {"uart3"};
738static const char * const usb0_groups[] = {"usb0"};
739static const char * const usb1_groups[] = {"usb1"};
740static const char * const usb2_groups[] = {"usb2"};
741static const char * const port_groups[] = {
742 "port00", "port01", "port02", "port03",
743 "port04", "port05", "port06", "port07",
744 "port10", "port11", "port12", "port13",
745 "port14", "port15", "port16", "port17",
746 "port20", "port21", "port22", "port23",
747 "port24", "port25", "port26", "port27",
748 "port30", "port31", "port32", "port33",
749 "port34", "port35", "port36", "port37",
750 "port40", "port41", "port42", "port43",
751 "port44", "port45", "port46", "port47",
752 "port50", "port51", "port52", "port53",
753 "port54", "port55", "port56", "port57",
754 "port60", "port61", "port62", "port63",
755 "port64", "port65", "port66", "port67",
756 "port70", "port71", "port72", "port73",
757 "port74", "port75", "port76", "port77",
758 "port80", "port81", "port82", "port83",
759 "port84", "port85", "port86", "port87",
760 "port90", "port91", "port92", "port93",
761 "port94", "port95", "port96", "port97",
762 "port100", "port101", "port102", "port103",
763 "port104", "port105", "port106", "port107",
764 "port110", "port111", "port112", "port113",
765 "port114", "port115", "port116", "port117",
766 "port120", "port121", "port122", "port123",
767 "port124", "port125", "port126", "port127",
768 "port130", "port131", "port132", "port133",
769 "port134", "port135", "port136", "port137",
770 "port140", "port141", "port142", "port143",
771 "port144", "port145", "port146", "port147",
772 /* port150-164 missing */
773 /* none */ "port165",
774};
775static const char * const xirq_groups[] = {
776 "xirq0", "xirq1", "xirq2", "xirq3",
777 "xirq4", "xirq5", "xirq6", "xirq7",
778 "xirq8", "xirq9", "xirq10", "xirq11",
779 "xirq12", /* none*/ "xirq14", "xirq15",
780};
781
Masahiro Yamadaa4c6052b2016-05-31 17:05:08 +0900782static const struct uniphier_pinmux_function uniphier_sld8_functions[] = {
Masahiro Yamada95372f92015-07-14 11:40:04 +0900783 UNIPHIER_PINMUX_FUNCTION(emmc),
784 UNIPHIER_PINMUX_FUNCTION(i2c0),
785 UNIPHIER_PINMUX_FUNCTION(i2c1),
786 UNIPHIER_PINMUX_FUNCTION(i2c2),
787 UNIPHIER_PINMUX_FUNCTION(i2c3),
788 UNIPHIER_PINMUX_FUNCTION(nand),
Masahiro Yamadae86c6202015-09-24 21:26:47 +0900789 UNIPHIER_PINMUX_FUNCTION(sd),
Masahiro Yamada95372f92015-07-14 11:40:04 +0900790 UNIPHIER_PINMUX_FUNCTION(uart0),
791 UNIPHIER_PINMUX_FUNCTION(uart1),
792 UNIPHIER_PINMUX_FUNCTION(uart2),
793 UNIPHIER_PINMUX_FUNCTION(uart3),
794 UNIPHIER_PINMUX_FUNCTION(usb0),
795 UNIPHIER_PINMUX_FUNCTION(usb1),
796 UNIPHIER_PINMUX_FUNCTION(usb2),
797 UNIPHIER_PINMUX_FUNCTION(port),
798 UNIPHIER_PINMUX_FUNCTION(xirq),
799};
800
Masahiro Yamadaa4c6052b2016-05-31 17:05:08 +0900801static struct uniphier_pinctrl_socdata uniphier_sld8_pindata = {
Masahiro Yamadafc78a562016-05-31 17:05:12 +0900802 .pins = uniphier_sld8_pins,
803 .npins = ARRAY_SIZE(uniphier_sld8_pins),
Masahiro Yamadaa4c6052b2016-05-31 17:05:08 +0900804 .groups = uniphier_sld8_groups,
805 .groups_count = ARRAY_SIZE(uniphier_sld8_groups),
806 .functions = uniphier_sld8_functions,
807 .functions_count = ARRAY_SIZE(uniphier_sld8_functions),
Masahiro Yamadac2ebf472016-05-31 17:05:16 +0900808 .caps = 0,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900809};
810
Masahiro Yamadaa4c6052b2016-05-31 17:05:08 +0900811static int uniphier_sld8_pinctrl_probe(struct platform_device *pdev)
Masahiro Yamada95372f92015-07-14 11:40:04 +0900812{
Masahiro Yamadafc78a562016-05-31 17:05:12 +0900813 return uniphier_pinctrl_probe(pdev, &uniphier_sld8_pindata);
Masahiro Yamada95372f92015-07-14 11:40:04 +0900814}
815
Masahiro Yamadaa4c6052b2016-05-31 17:05:08 +0900816static const struct of_device_id uniphier_sld8_pinctrl_match[] = {
Masahiro Yamada95372f92015-07-14 11:40:04 +0900817 { .compatible = "socionext,ph1-sld8-pinctrl" },
818 { /* sentinel */ }
819};
Masahiro Yamadaa4c6052b2016-05-31 17:05:08 +0900820MODULE_DEVICE_TABLE(of, uniphier_sld8_pinctrl_match);
Masahiro Yamada95372f92015-07-14 11:40:04 +0900821
Masahiro Yamadaa4c6052b2016-05-31 17:05:08 +0900822static struct platform_driver uniphier_sld8_pinctrl_driver = {
823 .probe = uniphier_sld8_pinctrl_probe,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900824 .driver = {
Masahiro Yamada41095082016-05-31 17:05:11 +0900825 .name = "uniphier-sld8-pinctrl",
Masahiro Yamadaa4c6052b2016-05-31 17:05:08 +0900826 .of_match_table = uniphier_sld8_pinctrl_match,
Masahiro Yamada95372f92015-07-14 11:40:04 +0900827 },
828};
Masahiro Yamadaa4c6052b2016-05-31 17:05:08 +0900829module_platform_driver(uniphier_sld8_pinctrl_driver);
Masahiro Yamada95372f92015-07-14 11:40:04 +0900830
831MODULE_AUTHOR("Masahiro Yamada <yamada.masahiro@socionext.com>");
832MODULE_DESCRIPTION("UniPhier PH1-sLD8 pinctrl driver");
833MODULE_LICENSE("GPL");