1a3a093aeSKhan, Imran // SPDX-License-Identifier: GPL-2.0 2a3a093aeSKhan, Imran /* 3a3a093aeSKhan, Imran * Copyright (c) 2015-2016, The Linux Foundation. All rights reserved. 4a3a093aeSKhan, Imran */ 5a3a093aeSKhan, Imran 6a3a093aeSKhan, Imran #include <linux/module.h> 7a3a093aeSKhan, Imran #include <linux/of.h> 8a3a093aeSKhan, Imran #include <linux/platform_device.h> 9a3a093aeSKhan, Imran #include <linux/pinctrl/pinctrl.h> 10a3a093aeSKhan, Imran 11a3a093aeSKhan, Imran #include "pinctrl-msm.h" 12a3a093aeSKhan, Imran 13a3a093aeSKhan, Imran #define NORTH 0x500000 14a3a093aeSKhan, Imran #define WEST 0x100000 15a3a093aeSKhan, Imran #define EAST 0x900000 16a3a093aeSKhan, Imran 17a3a093aeSKhan, Imran #define FUNCTION(fname) \ 18a3a093aeSKhan, Imran [msm_mux_##fname] = { \ 19a3a093aeSKhan, Imran .name = #fname, \ 20a3a093aeSKhan, Imran .groups = fname##_groups, \ 21a3a093aeSKhan, Imran .ngroups = ARRAY_SIZE(fname##_groups), \ 22a3a093aeSKhan, Imran } 23a3a093aeSKhan, Imran 24a3a093aeSKhan, Imran #define PINGROUP(id, base, f1, f2, f3, f4, f5, f6, f7, f8, f9) \ 25a3a093aeSKhan, Imran { \ 26a3a093aeSKhan, Imran .name = "gpio" #id, \ 27a3a093aeSKhan, Imran .pins = gpio##id##_pins, \ 28a3a093aeSKhan, Imran .npins = ARRAY_SIZE(gpio##id##_pins), \ 29a3a093aeSKhan, Imran .funcs = (int[]){ \ 30a3a093aeSKhan, Imran msm_mux_gpio, /* gpio mode */ \ 31a3a093aeSKhan, Imran msm_mux_##f1, \ 32a3a093aeSKhan, Imran msm_mux_##f2, \ 33a3a093aeSKhan, Imran msm_mux_##f3, \ 34a3a093aeSKhan, Imran msm_mux_##f4, \ 35a3a093aeSKhan, Imran msm_mux_##f5, \ 36a3a093aeSKhan, Imran msm_mux_##f6, \ 37a3a093aeSKhan, Imran msm_mux_##f7, \ 38a3a093aeSKhan, Imran msm_mux_##f8, \ 39a3a093aeSKhan, Imran msm_mux_##f9 \ 40a3a093aeSKhan, Imran }, \ 41a3a093aeSKhan, Imran .nfuncs = 10, \ 42a3a093aeSKhan, Imran .ctl_reg = base + 0x1000 * id, \ 43a3a093aeSKhan, Imran .io_reg = base + 0x4 + 0x1000 * id, \ 44a3a093aeSKhan, Imran .intr_cfg_reg = base + 0x8 + 0x1000 * id, \ 45a3a093aeSKhan, Imran .intr_status_reg = base + 0xc + 0x1000 * id, \ 46a3a093aeSKhan, Imran .intr_target_reg = base + 0x8 + 0x1000 * id, \ 47a3a093aeSKhan, Imran .mux_bit = 2, \ 48a3a093aeSKhan, Imran .pull_bit = 0, \ 49a3a093aeSKhan, Imran .drv_bit = 6, \ 50a3a093aeSKhan, Imran .oe_bit = 9, \ 51a3a093aeSKhan, Imran .in_bit = 0, \ 52a3a093aeSKhan, Imran .out_bit = 1, \ 53a3a093aeSKhan, Imran .intr_enable_bit = 0, \ 54a3a093aeSKhan, Imran .intr_status_bit = 0, \ 55a3a093aeSKhan, Imran .intr_target_bit = 5, \ 56a3a093aeSKhan, Imran .intr_target_kpss_val = 3, \ 57a3a093aeSKhan, Imran .intr_raw_status_bit = 4, \ 58a3a093aeSKhan, Imran .intr_polarity_bit = 1, \ 59a3a093aeSKhan, Imran .intr_detection_bit = 2, \ 60a3a093aeSKhan, Imran .intr_detection_width = 2, \ 61a3a093aeSKhan, Imran } 62a3a093aeSKhan, Imran 63a3a093aeSKhan, Imran #define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv) \ 64a3a093aeSKhan, Imran { \ 65a3a093aeSKhan, Imran .name = #pg_name, \ 66a3a093aeSKhan, Imran .pins = pg_name##_pins, \ 67a3a093aeSKhan, Imran .npins = ARRAY_SIZE(pg_name##_pins), \ 68a3a093aeSKhan, Imran .ctl_reg = ctl, \ 69a3a093aeSKhan, Imran .io_reg = 0, \ 70a3a093aeSKhan, Imran .intr_cfg_reg = 0, \ 71a3a093aeSKhan, Imran .intr_status_reg = 0, \ 72a3a093aeSKhan, Imran .intr_target_reg = 0, \ 73a3a093aeSKhan, Imran .mux_bit = -1, \ 74a3a093aeSKhan, Imran .pull_bit = pull, \ 75a3a093aeSKhan, Imran .drv_bit = drv, \ 76a3a093aeSKhan, Imran .oe_bit = -1, \ 77a3a093aeSKhan, Imran .in_bit = -1, \ 78a3a093aeSKhan, Imran .out_bit = -1, \ 79a3a093aeSKhan, Imran .intr_enable_bit = -1, \ 80a3a093aeSKhan, Imran .intr_status_bit = -1, \ 81a3a093aeSKhan, Imran .intr_target_bit = -1, \ 82a3a093aeSKhan, Imran .intr_raw_status_bit = -1, \ 83a3a093aeSKhan, Imran .intr_polarity_bit = -1, \ 84a3a093aeSKhan, Imran .intr_detection_bit = -1, \ 85a3a093aeSKhan, Imran .intr_detection_width = -1, \ 86a3a093aeSKhan, Imran } 87a3a093aeSKhan, Imran 88a3a093aeSKhan, Imran #define UFS_RESET(pg_name, offset) \ 89a3a093aeSKhan, Imran { \ 90a3a093aeSKhan, Imran .name = #pg_name, \ 91a3a093aeSKhan, Imran .pins = pg_name##_pins, \ 92a3a093aeSKhan, Imran .npins = ARRAY_SIZE(pg_name##_pins), \ 93a3a093aeSKhan, Imran .ctl_reg = offset, \ 94a3a093aeSKhan, Imran .io_reg = offset + 0x4, \ 95a3a093aeSKhan, Imran .intr_cfg_reg = 0, \ 96a3a093aeSKhan, Imran .intr_status_reg = 0, \ 97a3a093aeSKhan, Imran .intr_target_reg = 0, \ 98a3a093aeSKhan, Imran .mux_bit = -1, \ 99a3a093aeSKhan, Imran .pull_bit = 3, \ 100a3a093aeSKhan, Imran .drv_bit = 0, \ 101a3a093aeSKhan, Imran .oe_bit = -1, \ 102a3a093aeSKhan, Imran .in_bit = -1, \ 103a3a093aeSKhan, Imran .out_bit = 0, \ 104a3a093aeSKhan, Imran .intr_enable_bit = -1, \ 105a3a093aeSKhan, Imran .intr_status_bit = -1, \ 106a3a093aeSKhan, Imran .intr_target_bit = -1, \ 107a3a093aeSKhan, Imran .intr_raw_status_bit = -1, \ 108a3a093aeSKhan, Imran .intr_polarity_bit = -1, \ 109a3a093aeSKhan, Imran .intr_detection_bit = -1, \ 110a3a093aeSKhan, Imran .intr_detection_width = -1, \ 111a3a093aeSKhan, Imran } 112a3a093aeSKhan, Imran 113a3a093aeSKhan, Imran static const struct pinctrl_pin_desc msm8998_pins[] = { 114a3a093aeSKhan, Imran PINCTRL_PIN(0, "GPIO_0"), 115a3a093aeSKhan, Imran PINCTRL_PIN(1, "GPIO_1"), 116a3a093aeSKhan, Imran PINCTRL_PIN(2, "GPIO_2"), 117a3a093aeSKhan, Imran PINCTRL_PIN(3, "GPIO_3"), 118a3a093aeSKhan, Imran PINCTRL_PIN(4, "GPIO_4"), 119a3a093aeSKhan, Imran PINCTRL_PIN(5, "GPIO_5"), 120a3a093aeSKhan, Imran PINCTRL_PIN(6, "GPIO_6"), 121a3a093aeSKhan, Imran PINCTRL_PIN(7, "GPIO_7"), 122a3a093aeSKhan, Imran PINCTRL_PIN(8, "GPIO_8"), 123a3a093aeSKhan, Imran PINCTRL_PIN(9, "GPIO_9"), 124a3a093aeSKhan, Imran PINCTRL_PIN(10, "GPIO_10"), 125a3a093aeSKhan, Imran PINCTRL_PIN(11, "GPIO_11"), 126a3a093aeSKhan, Imran PINCTRL_PIN(12, "GPIO_12"), 127a3a093aeSKhan, Imran PINCTRL_PIN(13, "GPIO_13"), 128a3a093aeSKhan, Imran PINCTRL_PIN(14, "GPIO_14"), 129a3a093aeSKhan, Imran PINCTRL_PIN(15, "GPIO_15"), 130a3a093aeSKhan, Imran PINCTRL_PIN(16, "GPIO_16"), 131a3a093aeSKhan, Imran PINCTRL_PIN(17, "GPIO_17"), 132a3a093aeSKhan, Imran PINCTRL_PIN(18, "GPIO_18"), 133a3a093aeSKhan, Imran PINCTRL_PIN(19, "GPIO_19"), 134a3a093aeSKhan, Imran PINCTRL_PIN(20, "GPIO_20"), 135a3a093aeSKhan, Imran PINCTRL_PIN(21, "GPIO_21"), 136a3a093aeSKhan, Imran PINCTRL_PIN(22, "GPIO_22"), 137a3a093aeSKhan, Imran PINCTRL_PIN(23, "GPIO_23"), 138a3a093aeSKhan, Imran PINCTRL_PIN(24, "GPIO_24"), 139a3a093aeSKhan, Imran PINCTRL_PIN(25, "GPIO_25"), 140a3a093aeSKhan, Imran PINCTRL_PIN(26, "GPIO_26"), 141a3a093aeSKhan, Imran PINCTRL_PIN(27, "GPIO_27"), 142a3a093aeSKhan, Imran PINCTRL_PIN(28, "GPIO_28"), 143a3a093aeSKhan, Imran PINCTRL_PIN(29, "GPIO_29"), 144a3a093aeSKhan, Imran PINCTRL_PIN(30, "GPIO_30"), 145a3a093aeSKhan, Imran PINCTRL_PIN(31, "GPIO_31"), 146a3a093aeSKhan, Imran PINCTRL_PIN(32, "GPIO_32"), 147a3a093aeSKhan, Imran PINCTRL_PIN(33, "GPIO_33"), 148a3a093aeSKhan, Imran PINCTRL_PIN(34, "GPIO_34"), 149a3a093aeSKhan, Imran PINCTRL_PIN(35, "GPIO_35"), 150a3a093aeSKhan, Imran PINCTRL_PIN(36, "GPIO_36"), 151a3a093aeSKhan, Imran PINCTRL_PIN(37, "GPIO_37"), 152a3a093aeSKhan, Imran PINCTRL_PIN(38, "GPIO_38"), 153a3a093aeSKhan, Imran PINCTRL_PIN(39, "GPIO_39"), 154a3a093aeSKhan, Imran PINCTRL_PIN(40, "GPIO_40"), 155a3a093aeSKhan, Imran PINCTRL_PIN(41, "GPIO_41"), 156a3a093aeSKhan, Imran PINCTRL_PIN(42, "GPIO_42"), 157a3a093aeSKhan, Imran PINCTRL_PIN(43, "GPIO_43"), 158a3a093aeSKhan, Imran PINCTRL_PIN(44, "GPIO_44"), 159a3a093aeSKhan, Imran PINCTRL_PIN(45, "GPIO_45"), 160a3a093aeSKhan, Imran PINCTRL_PIN(46, "GPIO_46"), 161a3a093aeSKhan, Imran PINCTRL_PIN(47, "GPIO_47"), 162a3a093aeSKhan, Imran PINCTRL_PIN(48, "GPIO_48"), 163a3a093aeSKhan, Imran PINCTRL_PIN(49, "GPIO_49"), 164a3a093aeSKhan, Imran PINCTRL_PIN(50, "GPIO_50"), 165a3a093aeSKhan, Imran PINCTRL_PIN(51, "GPIO_51"), 166a3a093aeSKhan, Imran PINCTRL_PIN(52, "GPIO_52"), 167a3a093aeSKhan, Imran PINCTRL_PIN(53, "GPIO_53"), 168a3a093aeSKhan, Imran PINCTRL_PIN(54, "GPIO_54"), 169a3a093aeSKhan, Imran PINCTRL_PIN(55, "GPIO_55"), 170a3a093aeSKhan, Imran PINCTRL_PIN(56, "GPIO_56"), 171a3a093aeSKhan, Imran PINCTRL_PIN(57, "GPIO_57"), 172a3a093aeSKhan, Imran PINCTRL_PIN(58, "GPIO_58"), 173a3a093aeSKhan, Imran PINCTRL_PIN(59, "GPIO_59"), 174a3a093aeSKhan, Imran PINCTRL_PIN(60, "GPIO_60"), 175a3a093aeSKhan, Imran PINCTRL_PIN(61, "GPIO_61"), 176a3a093aeSKhan, Imran PINCTRL_PIN(62, "GPIO_62"), 177a3a093aeSKhan, Imran PINCTRL_PIN(63, "GPIO_63"), 178a3a093aeSKhan, Imran PINCTRL_PIN(64, "GPIO_64"), 179a3a093aeSKhan, Imran PINCTRL_PIN(65, "GPIO_65"), 180a3a093aeSKhan, Imran PINCTRL_PIN(66, "GPIO_66"), 181a3a093aeSKhan, Imran PINCTRL_PIN(67, "GPIO_67"), 182a3a093aeSKhan, Imran PINCTRL_PIN(68, "GPIO_68"), 183a3a093aeSKhan, Imran PINCTRL_PIN(69, "GPIO_69"), 184a3a093aeSKhan, Imran PINCTRL_PIN(70, "GPIO_70"), 185a3a093aeSKhan, Imran PINCTRL_PIN(71, "GPIO_71"), 186a3a093aeSKhan, Imran PINCTRL_PIN(72, "GPIO_72"), 187a3a093aeSKhan, Imran PINCTRL_PIN(73, "GPIO_73"), 188a3a093aeSKhan, Imran PINCTRL_PIN(74, "GPIO_74"), 189a3a093aeSKhan, Imran PINCTRL_PIN(75, "GPIO_75"), 190a3a093aeSKhan, Imran PINCTRL_PIN(76, "GPIO_76"), 191a3a093aeSKhan, Imran PINCTRL_PIN(77, "GPIO_77"), 192a3a093aeSKhan, Imran PINCTRL_PIN(78, "GPIO_78"), 193a3a093aeSKhan, Imran PINCTRL_PIN(79, "GPIO_79"), 194a3a093aeSKhan, Imran PINCTRL_PIN(80, "GPIO_80"), 195a3a093aeSKhan, Imran PINCTRL_PIN(81, "GPIO_81"), 196a3a093aeSKhan, Imran PINCTRL_PIN(82, "GPIO_82"), 197a3a093aeSKhan, Imran PINCTRL_PIN(83, "GPIO_83"), 198a3a093aeSKhan, Imran PINCTRL_PIN(84, "GPIO_84"), 199a3a093aeSKhan, Imran PINCTRL_PIN(85, "GPIO_85"), 200a3a093aeSKhan, Imran PINCTRL_PIN(86, "GPIO_86"), 201a3a093aeSKhan, Imran PINCTRL_PIN(87, "GPIO_87"), 202a3a093aeSKhan, Imran PINCTRL_PIN(88, "GPIO_88"), 203a3a093aeSKhan, Imran PINCTRL_PIN(89, "GPIO_89"), 204a3a093aeSKhan, Imran PINCTRL_PIN(90, "GPIO_90"), 205a3a093aeSKhan, Imran PINCTRL_PIN(91, "GPIO_91"), 206a3a093aeSKhan, Imran PINCTRL_PIN(92, "GPIO_92"), 207a3a093aeSKhan, Imran PINCTRL_PIN(93, "GPIO_93"), 208a3a093aeSKhan, Imran PINCTRL_PIN(94, "GPIO_94"), 209a3a093aeSKhan, Imran PINCTRL_PIN(95, "GPIO_95"), 210a3a093aeSKhan, Imran PINCTRL_PIN(96, "GPIO_96"), 211a3a093aeSKhan, Imran PINCTRL_PIN(97, "GPIO_97"), 212a3a093aeSKhan, Imran PINCTRL_PIN(98, "GPIO_98"), 213a3a093aeSKhan, Imran PINCTRL_PIN(99, "GPIO_99"), 214a3a093aeSKhan, Imran PINCTRL_PIN(100, "GPIO_100"), 215a3a093aeSKhan, Imran PINCTRL_PIN(101, "GPIO_101"), 216a3a093aeSKhan, Imran PINCTRL_PIN(102, "GPIO_102"), 217a3a093aeSKhan, Imran PINCTRL_PIN(103, "GPIO_103"), 218a3a093aeSKhan, Imran PINCTRL_PIN(104, "GPIO_104"), 219a3a093aeSKhan, Imran PINCTRL_PIN(105, "GPIO_105"), 220a3a093aeSKhan, Imran PINCTRL_PIN(106, "GPIO_106"), 221a3a093aeSKhan, Imran PINCTRL_PIN(107, "GPIO_107"), 222a3a093aeSKhan, Imran PINCTRL_PIN(108, "GPIO_108"), 223a3a093aeSKhan, Imran PINCTRL_PIN(109, "GPIO_109"), 224a3a093aeSKhan, Imran PINCTRL_PIN(110, "GPIO_110"), 225a3a093aeSKhan, Imran PINCTRL_PIN(111, "GPIO_111"), 226a3a093aeSKhan, Imran PINCTRL_PIN(112, "GPIO_112"), 227a3a093aeSKhan, Imran PINCTRL_PIN(113, "GPIO_113"), 228a3a093aeSKhan, Imran PINCTRL_PIN(114, "GPIO_114"), 229a3a093aeSKhan, Imran PINCTRL_PIN(115, "GPIO_115"), 230a3a093aeSKhan, Imran PINCTRL_PIN(116, "GPIO_116"), 231a3a093aeSKhan, Imran PINCTRL_PIN(117, "GPIO_117"), 232a3a093aeSKhan, Imran PINCTRL_PIN(118, "GPIO_118"), 233a3a093aeSKhan, Imran PINCTRL_PIN(119, "GPIO_119"), 234a3a093aeSKhan, Imran PINCTRL_PIN(120, "GPIO_120"), 235a3a093aeSKhan, Imran PINCTRL_PIN(121, "GPIO_121"), 236a3a093aeSKhan, Imran PINCTRL_PIN(122, "GPIO_122"), 237a3a093aeSKhan, Imran PINCTRL_PIN(123, "GPIO_123"), 238a3a093aeSKhan, Imran PINCTRL_PIN(124, "GPIO_124"), 239a3a093aeSKhan, Imran PINCTRL_PIN(125, "GPIO_125"), 240a3a093aeSKhan, Imran PINCTRL_PIN(126, "GPIO_126"), 241a3a093aeSKhan, Imran PINCTRL_PIN(127, "GPIO_127"), 242a3a093aeSKhan, Imran PINCTRL_PIN(128, "GPIO_128"), 243a3a093aeSKhan, Imran PINCTRL_PIN(129, "GPIO_129"), 244a3a093aeSKhan, Imran PINCTRL_PIN(130, "GPIO_130"), 245a3a093aeSKhan, Imran PINCTRL_PIN(131, "GPIO_131"), 246a3a093aeSKhan, Imran PINCTRL_PIN(132, "GPIO_132"), 247a3a093aeSKhan, Imran PINCTRL_PIN(133, "GPIO_133"), 248a3a093aeSKhan, Imran PINCTRL_PIN(134, "GPIO_134"), 249a3a093aeSKhan, Imran PINCTRL_PIN(135, "GPIO_135"), 250a3a093aeSKhan, Imran PINCTRL_PIN(136, "GPIO_136"), 251a3a093aeSKhan, Imran PINCTRL_PIN(137, "GPIO_137"), 252a3a093aeSKhan, Imran PINCTRL_PIN(138, "GPIO_138"), 253a3a093aeSKhan, Imran PINCTRL_PIN(139, "GPIO_139"), 254a3a093aeSKhan, Imran PINCTRL_PIN(140, "GPIO_140"), 255a3a093aeSKhan, Imran PINCTRL_PIN(141, "GPIO_141"), 256a3a093aeSKhan, Imran PINCTRL_PIN(142, "GPIO_142"), 257a3a093aeSKhan, Imran PINCTRL_PIN(143, "GPIO_143"), 258a3a093aeSKhan, Imran PINCTRL_PIN(144, "GPIO_144"), 259a3a093aeSKhan, Imran PINCTRL_PIN(145, "GPIO_145"), 260a3a093aeSKhan, Imran PINCTRL_PIN(146, "GPIO_146"), 261a3a093aeSKhan, Imran PINCTRL_PIN(147, "GPIO_147"), 262a3a093aeSKhan, Imran PINCTRL_PIN(148, "GPIO_148"), 263a3a093aeSKhan, Imran PINCTRL_PIN(149, "GPIO_149"), 264a3a093aeSKhan, Imran PINCTRL_PIN(150, "SDC2_CLK"), 265a3a093aeSKhan, Imran PINCTRL_PIN(151, "SDC2_CMD"), 266a3a093aeSKhan, Imran PINCTRL_PIN(152, "SDC2_DATA"), 267a3a093aeSKhan, Imran PINCTRL_PIN(153, "UFS_RESET"), 268a3a093aeSKhan, Imran }; 269a3a093aeSKhan, Imran 270a3a093aeSKhan, Imran #define DECLARE_MSM_GPIO_PINS(pin) \ 271a3a093aeSKhan, Imran static const unsigned int gpio##pin##_pins[] = { pin } 272a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(0); 273a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(1); 274a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(2); 275a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(3); 276a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(4); 277a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(5); 278a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(6); 279a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(7); 280a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(8); 281a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(9); 282a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(10); 283a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(11); 284a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(12); 285a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(13); 286a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(14); 287a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(15); 288a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(16); 289a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(17); 290a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(18); 291a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(19); 292a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(20); 293a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(21); 294a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(22); 295a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(23); 296a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(24); 297a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(25); 298a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(26); 299a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(27); 300a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(28); 301a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(29); 302a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(30); 303a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(31); 304a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(32); 305a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(33); 306a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(34); 307a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(35); 308a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(36); 309a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(37); 310a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(38); 311a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(39); 312a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(40); 313a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(41); 314a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(42); 315a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(43); 316a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(44); 317a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(45); 318a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(46); 319a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(47); 320a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(48); 321a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(49); 322a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(50); 323a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(51); 324a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(52); 325a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(53); 326a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(54); 327a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(55); 328a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(56); 329a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(57); 330a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(58); 331a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(59); 332a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(60); 333a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(61); 334a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(62); 335a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(63); 336a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(64); 337a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(65); 338a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(66); 339a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(67); 340a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(68); 341a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(69); 342a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(70); 343a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(71); 344a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(72); 345a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(73); 346a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(74); 347a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(75); 348a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(76); 349a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(77); 350a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(78); 351a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(79); 352a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(80); 353a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(81); 354a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(82); 355a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(83); 356a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(84); 357a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(85); 358a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(86); 359a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(87); 360a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(88); 361a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(89); 362a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(90); 363a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(91); 364a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(92); 365a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(93); 366a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(94); 367a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(95); 368a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(96); 369a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(97); 370a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(98); 371a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(99); 372a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(100); 373a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(101); 374a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(102); 375a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(103); 376a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(104); 377a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(105); 378a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(106); 379a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(107); 380a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(108); 381a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(109); 382a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(110); 383a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(111); 384a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(112); 385a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(113); 386a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(114); 387a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(115); 388a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(116); 389a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(117); 390a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(118); 391a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(119); 392a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(120); 393a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(121); 394a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(122); 395a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(123); 396a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(124); 397a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(125); 398a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(126); 399a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(127); 400a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(128); 401a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(129); 402a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(130); 403a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(131); 404a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(132); 405a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(133); 406a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(134); 407a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(135); 408a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(136); 409a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(137); 410a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(138); 411a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(139); 412a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(140); 413a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(141); 414a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(142); 415a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(143); 416a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(144); 417a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(145); 418a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(146); 419a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(147); 420a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(148); 421a3a093aeSKhan, Imran DECLARE_MSM_GPIO_PINS(149); 422a3a093aeSKhan, Imran 423a3a093aeSKhan, Imran static const unsigned int sdc2_clk_pins[] = { 150 }; 424a3a093aeSKhan, Imran static const unsigned int sdc2_cmd_pins[] = { 151 }; 425a3a093aeSKhan, Imran static const unsigned int sdc2_data_pins[] = { 152 }; 426a3a093aeSKhan, Imran static const unsigned int ufs_reset_pins[] = { 153 }; 427a3a093aeSKhan, Imran 428a3a093aeSKhan, Imran enum msm8998_functions { 429a3a093aeSKhan, Imran msm_mux_adsp_ext, 430a3a093aeSKhan, Imran msm_mux_agera_pll, 431a3a093aeSKhan, Imran msm_mux_atest_char, 432a3a093aeSKhan, Imran msm_mux_atest_gpsadc0, 433a3a093aeSKhan, Imran msm_mux_atest_gpsadc1, 434a3a093aeSKhan, Imran msm_mux_atest_tsens, 435a3a093aeSKhan, Imran msm_mux_atest_tsens2, 436a3a093aeSKhan, Imran msm_mux_atest_usb1, 437a3a093aeSKhan, Imran msm_mux_atest_usb10, 438a3a093aeSKhan, Imran msm_mux_atest_usb11, 439a3a093aeSKhan, Imran msm_mux_atest_usb12, 440a3a093aeSKhan, Imran msm_mux_atest_usb13, 441a3a093aeSKhan, Imran msm_mux_audio_ref, 442a3a093aeSKhan, Imran msm_mux_bimc_dte0, 443a3a093aeSKhan, Imran msm_mux_bimc_dte1, 444a3a093aeSKhan, Imran msm_mux_blsp10_spi, 445a3a093aeSKhan, Imran msm_mux_blsp10_spi_a, 446a3a093aeSKhan, Imran msm_mux_blsp10_spi_b, 447a3a093aeSKhan, Imran msm_mux_blsp11_i2c, 448a3a093aeSKhan, Imran msm_mux_blsp1_spi, 449a3a093aeSKhan, Imran msm_mux_blsp1_spi_a, 450a3a093aeSKhan, Imran msm_mux_blsp1_spi_b, 451a3a093aeSKhan, Imran msm_mux_blsp2_spi, 452a3a093aeSKhan, Imran msm_mux_blsp9_spi, 453a3a093aeSKhan, Imran msm_mux_blsp_i2c1, 454a3a093aeSKhan, Imran msm_mux_blsp_i2c10, 455a3a093aeSKhan, Imran msm_mux_blsp_i2c11, 456a3a093aeSKhan, Imran msm_mux_blsp_i2c12, 457a3a093aeSKhan, Imran msm_mux_blsp_i2c2, 458a3a093aeSKhan, Imran msm_mux_blsp_i2c3, 459a3a093aeSKhan, Imran msm_mux_blsp_i2c4, 460a3a093aeSKhan, Imran msm_mux_blsp_i2c5, 461a3a093aeSKhan, Imran msm_mux_blsp_i2c6, 462a3a093aeSKhan, Imran msm_mux_blsp_i2c7, 463a3a093aeSKhan, Imran msm_mux_blsp_i2c8, 464a3a093aeSKhan, Imran msm_mux_blsp_i2c9, 465a3a093aeSKhan, Imran msm_mux_blsp_spi1, 466a3a093aeSKhan, Imran msm_mux_blsp_spi10, 467a3a093aeSKhan, Imran msm_mux_blsp_spi11, 468a3a093aeSKhan, Imran msm_mux_blsp_spi12, 469a3a093aeSKhan, Imran msm_mux_blsp_spi2, 470a3a093aeSKhan, Imran msm_mux_blsp_spi3, 471a3a093aeSKhan, Imran msm_mux_blsp_spi4, 472a3a093aeSKhan, Imran msm_mux_blsp_spi5, 473a3a093aeSKhan, Imran msm_mux_blsp_spi6, 474a3a093aeSKhan, Imran msm_mux_blsp_spi7, 475a3a093aeSKhan, Imran msm_mux_blsp_spi8, 476a3a093aeSKhan, Imran msm_mux_blsp_spi9, 477a3a093aeSKhan, Imran msm_mux_blsp_uart1_a, 478a3a093aeSKhan, Imran msm_mux_blsp_uart1_b, 479a3a093aeSKhan, Imran msm_mux_blsp_uart2_a, 480a3a093aeSKhan, Imran msm_mux_blsp_uart2_b, 481a3a093aeSKhan, Imran msm_mux_blsp_uart3_a, 482a3a093aeSKhan, Imran msm_mux_blsp_uart3_b, 483a3a093aeSKhan, Imran msm_mux_blsp_uart7_a, 484a3a093aeSKhan, Imran msm_mux_blsp_uart7_b, 485a3a093aeSKhan, Imran msm_mux_blsp_uart8, 486a3a093aeSKhan, Imran msm_mux_blsp_uart8_a, 487a3a093aeSKhan, Imran msm_mux_blsp_uart8_b, 488a3a093aeSKhan, Imran msm_mux_blsp_uart9_a, 489a3a093aeSKhan, Imran msm_mux_blsp_uart9_b, 490a3a093aeSKhan, Imran msm_mux_blsp_uim1_a, 491a3a093aeSKhan, Imran msm_mux_blsp_uim1_b, 492a3a093aeSKhan, Imran msm_mux_blsp_uim2_a, 493a3a093aeSKhan, Imran msm_mux_blsp_uim2_b, 494a3a093aeSKhan, Imran msm_mux_blsp_uim3_a, 495a3a093aeSKhan, Imran msm_mux_blsp_uim3_b, 496a3a093aeSKhan, Imran msm_mux_blsp_uim7_a, 497a3a093aeSKhan, Imran msm_mux_blsp_uim7_b, 498a3a093aeSKhan, Imran msm_mux_blsp_uim8_a, 499a3a093aeSKhan, Imran msm_mux_blsp_uim8_b, 500a3a093aeSKhan, Imran msm_mux_blsp_uim9_a, 501a3a093aeSKhan, Imran msm_mux_blsp_uim9_b, 502a3a093aeSKhan, Imran msm_mux_bt_reset, 503a3a093aeSKhan, Imran msm_mux_btfm_slimbus, 504a3a093aeSKhan, Imran msm_mux_cam_mclk, 505a3a093aeSKhan, Imran msm_mux_cci_async, 506a3a093aeSKhan, Imran msm_mux_cci_i2c, 507a3a093aeSKhan, Imran msm_mux_cci_timer0, 508a3a093aeSKhan, Imran msm_mux_cci_timer1, 509a3a093aeSKhan, Imran msm_mux_cci_timer2, 510a3a093aeSKhan, Imran msm_mux_cci_timer3, 511a3a093aeSKhan, Imran msm_mux_cci_timer4, 512a3a093aeSKhan, Imran msm_mux_cri_trng, 513a3a093aeSKhan, Imran msm_mux_cri_trng0, 514a3a093aeSKhan, Imran msm_mux_cri_trng1, 515a3a093aeSKhan, Imran msm_mux_dbg_out, 516a3a093aeSKhan, Imran msm_mux_ddr_bist, 517a3a093aeSKhan, Imran msm_mux_edp_hot, 518a3a093aeSKhan, Imran msm_mux_edp_lcd, 519a3a093aeSKhan, Imran msm_mux_gcc_gp1_a, 520a3a093aeSKhan, Imran msm_mux_gcc_gp1_b, 521a3a093aeSKhan, Imran msm_mux_gcc_gp2_a, 522a3a093aeSKhan, Imran msm_mux_gcc_gp2_b, 523a3a093aeSKhan, Imran msm_mux_gcc_gp3_a, 524a3a093aeSKhan, Imran msm_mux_gcc_gp3_b, 525a3a093aeSKhan, Imran msm_mux_gpio, 526a3a093aeSKhan, Imran msm_mux_hdmi_cec, 527a3a093aeSKhan, Imran msm_mux_hdmi_ddc, 528a3a093aeSKhan, Imran msm_mux_hdmi_hot, 529a3a093aeSKhan, Imran msm_mux_hdmi_rcv, 530a3a093aeSKhan, Imran msm_mux_isense_dbg, 531a3a093aeSKhan, Imran msm_mux_jitter_bist, 532a3a093aeSKhan, Imran msm_mux_ldo_en, 533a3a093aeSKhan, Imran msm_mux_ldo_update, 534a3a093aeSKhan, Imran msm_mux_lpass_slimbus, 535a3a093aeSKhan, Imran msm_mux_m_voc, 536a3a093aeSKhan, Imran msm_mux_mdp_vsync, 537a3a093aeSKhan, Imran msm_mux_mdp_vsync0, 538a3a093aeSKhan, Imran msm_mux_mdp_vsync1, 539a3a093aeSKhan, Imran msm_mux_mdp_vsync2, 540a3a093aeSKhan, Imran msm_mux_mdp_vsync3, 541a3a093aeSKhan, Imran msm_mux_mdp_vsync_a, 542a3a093aeSKhan, Imran msm_mux_mdp_vsync_b, 543a3a093aeSKhan, Imran msm_mux_modem_tsync, 544a3a093aeSKhan, Imran msm_mux_mss_lte, 545a3a093aeSKhan, Imran msm_mux_nav_dr, 546a3a093aeSKhan, Imran msm_mux_nav_pps, 547a3a093aeSKhan, Imran msm_mux_pa_indicator, 548a3a093aeSKhan, Imran msm_mux_pci_e0, 549a3a093aeSKhan, Imran msm_mux_phase_flag, 550a3a093aeSKhan, Imran msm_mux_pll_bypassnl, 551a3a093aeSKhan, Imran msm_mux_pll_reset, 552a3a093aeSKhan, Imran msm_mux_pri_mi2s, 553a3a093aeSKhan, Imran msm_mux_pri_mi2s_ws, 554a3a093aeSKhan, Imran msm_mux_prng_rosc, 555a3a093aeSKhan, Imran msm_mux_pwr_crypto, 556a3a093aeSKhan, Imran msm_mux_pwr_modem, 557a3a093aeSKhan, Imran msm_mux_pwr_nav, 558a3a093aeSKhan, Imran msm_mux_qdss_cti0_a, 559a3a093aeSKhan, Imran msm_mux_qdss_cti0_b, 560a3a093aeSKhan, Imran msm_mux_qdss_cti1_a, 561a3a093aeSKhan, Imran msm_mux_qdss_cti1_b, 562a3a093aeSKhan, Imran msm_mux_qdss, 563a3a093aeSKhan, Imran msm_mux_qlink_enable, 564a3a093aeSKhan, Imran msm_mux_qlink_request, 565a3a093aeSKhan, Imran msm_mux_qua_mi2s, 566a3a093aeSKhan, Imran msm_mux_sd_card, 567a3a093aeSKhan, Imran msm_mux_sd_write, 568a3a093aeSKhan, Imran msm_mux_sdc40, 569a3a093aeSKhan, Imran msm_mux_sdc41, 570a3a093aeSKhan, Imran msm_mux_sdc42, 571a3a093aeSKhan, Imran msm_mux_sdc43, 572a3a093aeSKhan, Imran msm_mux_sdc4_clk, 573a3a093aeSKhan, Imran msm_mux_sdc4_cmd, 574a3a093aeSKhan, Imran msm_mux_sec_mi2s, 575a3a093aeSKhan, Imran msm_mux_sp_cmu, 576a3a093aeSKhan, Imran msm_mux_spkr_i2s, 577a3a093aeSKhan, Imran msm_mux_ssbi1, 578a3a093aeSKhan, Imran msm_mux_ssc_irq, 579a3a093aeSKhan, Imran msm_mux_ter_mi2s, 580a3a093aeSKhan, Imran msm_mux_tgu_ch0, 581a3a093aeSKhan, Imran msm_mux_tgu_ch1, 582a3a093aeSKhan, Imran msm_mux_tsense_pwm1, 583a3a093aeSKhan, Imran msm_mux_tsense_pwm2, 584fa21cbeaSMarc Gonzalez msm_mux_tsif0, 585fa21cbeaSMarc Gonzalez msm_mux_tsif1, 586a3a093aeSKhan, Imran msm_mux_uim1_clk, 587a3a093aeSKhan, Imran msm_mux_uim1_data, 588a3a093aeSKhan, Imran msm_mux_uim1_present, 589a3a093aeSKhan, Imran msm_mux_uim1_reset, 590a3a093aeSKhan, Imran msm_mux_uim2_clk, 591a3a093aeSKhan, Imran msm_mux_uim2_data, 592a3a093aeSKhan, Imran msm_mux_uim2_present, 593a3a093aeSKhan, Imran msm_mux_uim2_reset, 594a3a093aeSKhan, Imran msm_mux_uim_batt, 595a3a093aeSKhan, Imran msm_mux_usb_phy, 596a3a093aeSKhan, Imran msm_mux_vfr_1, 597a3a093aeSKhan, Imran msm_mux_vsense_clkout, 598a3a093aeSKhan, Imran msm_mux_vsense_data0, 599a3a093aeSKhan, Imran msm_mux_vsense_data1, 600a3a093aeSKhan, Imran msm_mux_vsense_mode, 601a3a093aeSKhan, Imran msm_mux_wlan1_adc0, 602a3a093aeSKhan, Imran msm_mux_wlan1_adc1, 603a3a093aeSKhan, Imran msm_mux_wlan2_adc0, 604a3a093aeSKhan, Imran msm_mux_wlan2_adc1, 605a3a093aeSKhan, Imran msm_mux__, 606a3a093aeSKhan, Imran }; 607a3a093aeSKhan, Imran 608a3a093aeSKhan, Imran static const char * const gpio_groups[] = { 609a3a093aeSKhan, Imran "gpio0", "gpio1", "gpio2", "gpio3", "gpio4", "gpio5", "gpio6", "gpio7", 610a3a093aeSKhan, Imran "gpio8", "gpio9", "gpio10", "gpio11", "gpio12", "gpio13", "gpio14", 611a3a093aeSKhan, Imran "gpio15", "gpio16", "gpio17", "gpio18", "gpio19", "gpio20", "gpio21", 612a3a093aeSKhan, Imran "gpio22", "gpio23", "gpio24", "gpio25", "gpio26", "gpio27", "gpio28", 613a3a093aeSKhan, Imran "gpio29", "gpio30", "gpio31", "gpio32", "gpio33", "gpio34", "gpio35", 614a3a093aeSKhan, Imran "gpio36", "gpio37", "gpio38", "gpio39", "gpio40", "gpio41", "gpio42", 615a3a093aeSKhan, Imran "gpio43", "gpio44", "gpio45", "gpio46", "gpio47", "gpio48", "gpio49", 616a3a093aeSKhan, Imran "gpio50", "gpio51", "gpio52", "gpio53", "gpio54", "gpio55", "gpio56", 617a3a093aeSKhan, Imran "gpio57", "gpio58", "gpio59", "gpio60", "gpio61", "gpio62", "gpio63", 618a3a093aeSKhan, Imran "gpio64", "gpio65", "gpio66", "gpio67", "gpio68", "gpio69", "gpio70", 619a3a093aeSKhan, Imran "gpio71", "gpio72", "gpio73", "gpio74", "gpio75", "gpio76", "gpio77", 620a3a093aeSKhan, Imran "gpio78", "gpio79", "gpio80", "gpio81", "gpio82", "gpio83", "gpio84", 621a3a093aeSKhan, Imran "gpio85", "gpio86", "gpio87", "gpio88", "gpio89", "gpio90", "gpio91", 622a3a093aeSKhan, Imran "gpio92", "gpio93", "gpio94", "gpio95", "gpio96", "gpio97", "gpio98", 623a3a093aeSKhan, Imran "gpio99", "gpio100", "gpio101", "gpio102", "gpio103", "gpio104", 624a3a093aeSKhan, Imran "gpio105", "gpio106", "gpio107", "gpio108", "gpio109", "gpio110", 625a3a093aeSKhan, Imran "gpio111", "gpio112", "gpio113", "gpio114", "gpio115", "gpio116", 626a3a093aeSKhan, Imran "gpio117", "gpio118", "gpio119", "gpio120", "gpio121", "gpio122", 627a3a093aeSKhan, Imran "gpio123", "gpio124", "gpio125", "gpio126", "gpio127", "gpio128", 628a3a093aeSKhan, Imran "gpio129", "gpio130", "gpio131", "gpio132", "gpio133", "gpio134", 629a3a093aeSKhan, Imran "gpio135", "gpio136", "gpio137", "gpio138", "gpio139", "gpio140", 630a3a093aeSKhan, Imran "gpio141", "gpio142", "gpio143", "gpio144", "gpio145", "gpio146", 631a3a093aeSKhan, Imran "gpio147", "gpio148", "gpio149", 632a3a093aeSKhan, Imran }; 633a3a093aeSKhan, Imran static const char * const blsp_spi1_groups[] = { 634a3a093aeSKhan, Imran "gpio0", "gpio1", "gpio2", "gpio3", 635a3a093aeSKhan, Imran }; 636a3a093aeSKhan, Imran static const char * const blsp_uim1_a_groups[] = { 637a3a093aeSKhan, Imran "gpio0", "gpio1", 638a3a093aeSKhan, Imran }; 639a3a093aeSKhan, Imran static const char * const blsp_uart1_a_groups[] = { 640a3a093aeSKhan, Imran "gpio0", "gpio1", "gpio2", "gpio3", 641a3a093aeSKhan, Imran }; 642a3a093aeSKhan, Imran static const char * const blsp_i2c1_groups[] = { 643a3a093aeSKhan, Imran "gpio2", "gpio3", 644a3a093aeSKhan, Imran }; 645a3a093aeSKhan, Imran static const char * const blsp_spi8_groups[] = { 646a3a093aeSKhan, Imran "gpio4", "gpio5", "gpio6", "gpio7", 647a3a093aeSKhan, Imran }; 648a3a093aeSKhan, Imran static const char * const blsp_uart8_a_groups[] = { 649a3a093aeSKhan, Imran "gpio4", "gpio5", "gpio6", "gpio7", 650a3a093aeSKhan, Imran }; 651a3a093aeSKhan, Imran static const char * const blsp_uim8_a_groups[] = { 652a3a093aeSKhan, Imran "gpio4", "gpio5", 653a3a093aeSKhan, Imran }; 654a3a093aeSKhan, Imran static const char * const qdss_cti0_b_groups[] = { 655a3a093aeSKhan, Imran "gpio4", "gpio5", 656a3a093aeSKhan, Imran }; 657a3a093aeSKhan, Imran static const char * const blsp_i2c8_groups[] = { 658a3a093aeSKhan, Imran "gpio6", "gpio7", 659a3a093aeSKhan, Imran }; 660a3a093aeSKhan, Imran static const char * const ddr_bist_groups[] = { 661a3a093aeSKhan, Imran "gpio7", "gpio8", "gpio9", "gpio10", 662a3a093aeSKhan, Imran }; 663a3a093aeSKhan, Imran static const char * const atest_tsens2_groups[] = { 664a3a093aeSKhan, Imran "gpio7", 665a3a093aeSKhan, Imran }; 666a3a093aeSKhan, Imran static const char * const atest_usb1_groups[] = { 667a3a093aeSKhan, Imran "gpio7", 668a3a093aeSKhan, Imran }; 669a3a093aeSKhan, Imran static const char * const blsp_spi4_groups[] = { 670a3a093aeSKhan, Imran "gpio8", "gpio9", "gpio10", "gpio11", 671a3a093aeSKhan, Imran }; 672a3a093aeSKhan, Imran static const char * const blsp_uart1_b_groups[] = { 673a3a093aeSKhan, Imran "gpio8", "gpio9", "gpio10", "gpio11", 674a3a093aeSKhan, Imran }; 675a3a093aeSKhan, Imran static const char * const blsp_uim1_b_groups[] = { 676a3a093aeSKhan, Imran "gpio8", "gpio9", 677a3a093aeSKhan, Imran }; 678a3a093aeSKhan, Imran static const char * const wlan1_adc1_groups[] = { 679a3a093aeSKhan, Imran "gpio8", 680a3a093aeSKhan, Imran }; 681a3a093aeSKhan, Imran static const char * const atest_usb13_groups[] = { 682a3a093aeSKhan, Imran "gpio8", 683a3a093aeSKhan, Imran }; 684a3a093aeSKhan, Imran static const char * const bimc_dte1_groups[] = { 685a3a093aeSKhan, Imran "gpio8", "gpio10", 686a3a093aeSKhan, Imran }; 687a3a093aeSKhan, Imran static const char * const wlan1_adc0_groups[] = { 688a3a093aeSKhan, Imran "gpio9", 689a3a093aeSKhan, Imran }; 690a3a093aeSKhan, Imran static const char * const atest_usb12_groups[] = { 691a3a093aeSKhan, Imran "gpio9", 692a3a093aeSKhan, Imran }; 693a3a093aeSKhan, Imran static const char * const bimc_dte0_groups[] = { 694a3a093aeSKhan, Imran "gpio9", "gpio11", 695a3a093aeSKhan, Imran }; 696a3a093aeSKhan, Imran static const char * const mdp_vsync_a_groups[] = { 697a3a093aeSKhan, Imran "gpio10", "gpio11", 698a3a093aeSKhan, Imran }; 699a3a093aeSKhan, Imran static const char * const blsp_i2c4_groups[] = { 700a3a093aeSKhan, Imran "gpio10", "gpio11", 701a3a093aeSKhan, Imran }; 702a3a093aeSKhan, Imran static const char * const atest_gpsadc1_groups[] = { 703a3a093aeSKhan, Imran "gpio10", 704a3a093aeSKhan, Imran }; 705a3a093aeSKhan, Imran static const char * const wlan2_adc1_groups[] = { 706a3a093aeSKhan, Imran "gpio10", 707a3a093aeSKhan, Imran }; 708a3a093aeSKhan, Imran static const char * const atest_usb11_groups[] = { 709a3a093aeSKhan, Imran "gpio10", 710a3a093aeSKhan, Imran }; 711a3a093aeSKhan, Imran static const char * const edp_lcd_groups[] = { 712a3a093aeSKhan, Imran "gpio11", 713a3a093aeSKhan, Imran }; 714a3a093aeSKhan, Imran static const char * const dbg_out_groups[] = { 715a3a093aeSKhan, Imran "gpio11", 716a3a093aeSKhan, Imran }; 717a3a093aeSKhan, Imran static const char * const atest_gpsadc0_groups[] = { 718a3a093aeSKhan, Imran "gpio11", 719a3a093aeSKhan, Imran }; 720a3a093aeSKhan, Imran static const char * const wlan2_adc0_groups[] = { 721a3a093aeSKhan, Imran "gpio11", 722a3a093aeSKhan, Imran }; 723a3a093aeSKhan, Imran static const char * const atest_usb10_groups[] = { 724a3a093aeSKhan, Imran "gpio11", 725a3a093aeSKhan, Imran }; 726a3a093aeSKhan, Imran static const char * const mdp_vsync_groups[] = { 727a3a093aeSKhan, Imran "gpio12", 728a3a093aeSKhan, Imran }; 729a3a093aeSKhan, Imran static const char * const m_voc_groups[] = { 730a3a093aeSKhan, Imran "gpio12", 731a3a093aeSKhan, Imran }; 732a3a093aeSKhan, Imran static const char * const cam_mclk_groups[] = { 733a3a093aeSKhan, Imran "gpio13", "gpio14", "gpio15", "gpio16", 734a3a093aeSKhan, Imran }; 735a3a093aeSKhan, Imran static const char * const pll_bypassnl_groups[] = { 736a3a093aeSKhan, Imran "gpio13", 737a3a093aeSKhan, Imran }; 738a3a093aeSKhan, Imran static const char * const qdss_groups[] = { 739a3a093aeSKhan, Imran "gpio13", "gpio14", "gpio15", "gpio16", "gpio17", "gpio18", "gpio19", 740a3a093aeSKhan, Imran "gpio20", "gpio21", "gpio22", "gpio23", "gpio24", "gpio25", "gpio26", 741a3a093aeSKhan, Imran "gpio27", "gpio28", "gpio29", "gpio30", "gpio41", "gpio42", "gpio43", 742a3a093aeSKhan, Imran "gpio44", "gpio75", "gpio76", "gpio77", "gpio79", "gpio80", "gpio93", 743a3a093aeSKhan, Imran "gpio117", "gpio118", "gpio119", "gpio120", "gpio121", "gpio122", 744a3a093aeSKhan, Imran "gpio123", "gpio124", 745a3a093aeSKhan, Imran }; 746a3a093aeSKhan, Imran static const char * const pll_reset_groups[] = { 747a3a093aeSKhan, Imran "gpio14", 748a3a093aeSKhan, Imran }; 749a3a093aeSKhan, Imran static const char * const cci_i2c_groups[] = { 750a3a093aeSKhan, Imran "gpio17", "gpio18", "gpio19", "gpio20", 751a3a093aeSKhan, Imran }; 752a3a093aeSKhan, Imran static const char * const phase_flag_groups[] = { 753a3a093aeSKhan, Imran "gpio18", "gpio19", "gpio73", "gpio74", "gpio75", "gpio76", "gpio77", 754a3a093aeSKhan, Imran "gpio89", "gpio91", "gpio92", "gpio96", "gpio114", "gpio115", 755a3a093aeSKhan, Imran "gpio116", "gpio117", "gpio118", "gpio119", "gpio120", "gpio121", 756a3a093aeSKhan, Imran "gpio122", "gpio123", "gpio124", "gpio125", "gpio126", "gpio128", 757a3a093aeSKhan, Imran "gpio129", "gpio130", "gpio131", "gpio132", "gpio133", "gpio134", 758a3a093aeSKhan, Imran }; 759a3a093aeSKhan, Imran static const char * const cci_timer4_groups[] = { 760a3a093aeSKhan, Imran "gpio25", 761a3a093aeSKhan, Imran }; 762a3a093aeSKhan, Imran static const char * const blsp2_spi_groups[] = { 763a3a093aeSKhan, Imran "gpio25", "gpio29", "gpio30", 764a3a093aeSKhan, Imran }; 765a3a093aeSKhan, Imran static const char * const cci_timer0_groups[] = { 766a3a093aeSKhan, Imran "gpio21", 767a3a093aeSKhan, Imran }; 768a3a093aeSKhan, Imran static const char * const vsense_data0_groups[] = { 769a3a093aeSKhan, Imran "gpio21", 770a3a093aeSKhan, Imran }; 771a3a093aeSKhan, Imran static const char * const cci_timer1_groups[] = { 772a3a093aeSKhan, Imran "gpio22", 773a3a093aeSKhan, Imran }; 774a3a093aeSKhan, Imran static const char * const vsense_data1_groups[] = { 775a3a093aeSKhan, Imran "gpio22", 776a3a093aeSKhan, Imran }; 777a3a093aeSKhan, Imran static const char * const cci_timer2_groups[] = { 778a3a093aeSKhan, Imran "gpio23", 779a3a093aeSKhan, Imran }; 780a3a093aeSKhan, Imran static const char * const blsp1_spi_b_groups[] = { 781a3a093aeSKhan, Imran "gpio23", "gpio28", 782a3a093aeSKhan, Imran }; 783a3a093aeSKhan, Imran static const char * const vsense_mode_groups[] = { 784a3a093aeSKhan, Imran "gpio23", 785a3a093aeSKhan, Imran }; 786a3a093aeSKhan, Imran static const char * const cci_timer3_groups[] = { 787a3a093aeSKhan, Imran "gpio24", 788a3a093aeSKhan, Imran }; 789a3a093aeSKhan, Imran static const char * const cci_async_groups[] = { 790a3a093aeSKhan, Imran "gpio24", "gpio25", "gpio26", 791a3a093aeSKhan, Imran }; 792a3a093aeSKhan, Imran static const char * const blsp1_spi_a_groups[] = { 793a3a093aeSKhan, Imran "gpio24", "gpio27", 794a3a093aeSKhan, Imran }; 795a3a093aeSKhan, Imran static const char * const vsense_clkout_groups[] = { 796a3a093aeSKhan, Imran "gpio24", 797a3a093aeSKhan, Imran }; 798a3a093aeSKhan, Imran static const char * const hdmi_rcv_groups[] = { 799a3a093aeSKhan, Imran "gpio30", 800a3a093aeSKhan, Imran }; 801a3a093aeSKhan, Imran static const char * const hdmi_cec_groups[] = { 802a3a093aeSKhan, Imran "gpio31", 803a3a093aeSKhan, Imran }; 804a3a093aeSKhan, Imran static const char * const blsp_spi2_groups[] = { 805a3a093aeSKhan, Imran "gpio31", "gpio32", "gpio33", "gpio34", 806a3a093aeSKhan, Imran }; 807a3a093aeSKhan, Imran static const char * const blsp_uart2_a_groups[] = { 808a3a093aeSKhan, Imran "gpio31", "gpio32", "gpio33", "gpio34", 809a3a093aeSKhan, Imran }; 810a3a093aeSKhan, Imran static const char * const blsp_uim2_a_groups[] = { 811a3a093aeSKhan, Imran "gpio31", "gpio34", 812a3a093aeSKhan, Imran }; 813a3a093aeSKhan, Imran static const char * const pwr_modem_groups[] = { 814a3a093aeSKhan, Imran "gpio31", 815a3a093aeSKhan, Imran }; 816a3a093aeSKhan, Imran static const char * const hdmi_ddc_groups[] = { 817a3a093aeSKhan, Imran "gpio32", "gpio33", 818a3a093aeSKhan, Imran }; 819a3a093aeSKhan, Imran static const char * const blsp_i2c2_groups[] = { 820a3a093aeSKhan, Imran "gpio32", "gpio33", 821a3a093aeSKhan, Imran }; 822a3a093aeSKhan, Imran static const char * const pwr_nav_groups[] = { 823a3a093aeSKhan, Imran "gpio32", 824a3a093aeSKhan, Imran }; 825a3a093aeSKhan, Imran static const char * const pwr_crypto_groups[] = { 826a3a093aeSKhan, Imran "gpio33", 827a3a093aeSKhan, Imran }; 828a3a093aeSKhan, Imran static const char * const hdmi_hot_groups[] = { 829a3a093aeSKhan, Imran "gpio34", 830a3a093aeSKhan, Imran }; 831a3a093aeSKhan, Imran static const char * const edp_hot_groups[] = { 832a3a093aeSKhan, Imran "gpio34", 833a3a093aeSKhan, Imran }; 834a3a093aeSKhan, Imran static const char * const pci_e0_groups[] = { 835a3a093aeSKhan, Imran "gpio35", "gpio36", "gpio37", 836a3a093aeSKhan, Imran }; 837a3a093aeSKhan, Imran static const char * const jitter_bist_groups[] = { 838a3a093aeSKhan, Imran "gpio35", 839a3a093aeSKhan, Imran }; 840a3a093aeSKhan, Imran static const char * const agera_pll_groups[] = { 841a3a093aeSKhan, Imran "gpio36", "gpio37", 842a3a093aeSKhan, Imran }; 843a3a093aeSKhan, Imran static const char * const atest_tsens_groups[] = { 844a3a093aeSKhan, Imran "gpio36", 845a3a093aeSKhan, Imran }; 846a3a093aeSKhan, Imran static const char * const usb_phy_groups[] = { 847a3a093aeSKhan, Imran "gpio38", 848a3a093aeSKhan, Imran }; 849a3a093aeSKhan, Imran static const char * const lpass_slimbus_groups[] = { 850a3a093aeSKhan, Imran "gpio39", "gpio70", "gpio71", "gpio72", 851a3a093aeSKhan, Imran }; 852a3a093aeSKhan, Imran static const char * const sd_write_groups[] = { 853a3a093aeSKhan, Imran "gpio40", 854a3a093aeSKhan, Imran }; 855a3a093aeSKhan, Imran static const char * const blsp_spi6_groups[] = { 856a3a093aeSKhan, Imran "gpio41", "gpio42", "gpio43", "gpio44", 857a3a093aeSKhan, Imran }; 858a3a093aeSKhan, Imran static const char * const blsp_uart3_b_groups[] = { 859a3a093aeSKhan, Imran "gpio41", "gpio42", "gpio43", "gpio44", 860a3a093aeSKhan, Imran }; 861a3a093aeSKhan, Imran static const char * const blsp_uim3_b_groups[] = { 862a3a093aeSKhan, Imran "gpio41", "gpio42", 863a3a093aeSKhan, Imran }; 864a3a093aeSKhan, Imran static const char * const blsp_i2c6_groups[] = { 865a3a093aeSKhan, Imran "gpio43", "gpio44", 866a3a093aeSKhan, Imran }; 867a3a093aeSKhan, Imran static const char * const bt_reset_groups[] = { 868a3a093aeSKhan, Imran "gpio45", 869a3a093aeSKhan, Imran }; 870a3a093aeSKhan, Imran static const char * const blsp_spi3_groups[] = { 871a3a093aeSKhan, Imran "gpio45", "gpio46", "gpio47", "gpio48", 872a3a093aeSKhan, Imran }; 873a3a093aeSKhan, Imran static const char * const blsp_uart3_a_groups[] = { 874a3a093aeSKhan, Imran "gpio45", "gpio46", "gpio47", "gpio48", 875a3a093aeSKhan, Imran }; 876a3a093aeSKhan, Imran static const char * const blsp_uim3_a_groups[] = { 877a3a093aeSKhan, Imran "gpio45", "gpio46", 878a3a093aeSKhan, Imran }; 879a3a093aeSKhan, Imran static const char * const blsp_i2c3_groups[] = { 880a3a093aeSKhan, Imran "gpio47", "gpio48", 881a3a093aeSKhan, Imran }; 882a3a093aeSKhan, Imran static const char * const blsp_spi9_groups[] = { 883a3a093aeSKhan, Imran "gpio49", "gpio50", "gpio51", "gpio52", 884a3a093aeSKhan, Imran }; 885a3a093aeSKhan, Imran static const char * const blsp_uart9_a_groups[] = { 886a3a093aeSKhan, Imran "gpio49", "gpio50", "gpio51", "gpio52", 887a3a093aeSKhan, Imran }; 888a3a093aeSKhan, Imran static const char * const blsp_uim9_a_groups[] = { 889a3a093aeSKhan, Imran "gpio49", "gpio50", 890a3a093aeSKhan, Imran }; 891a3a093aeSKhan, Imran static const char * const blsp10_spi_b_groups[] = { 892a3a093aeSKhan, Imran "gpio49", "gpio50", 893a3a093aeSKhan, Imran }; 894a3a093aeSKhan, Imran static const char * const qdss_cti0_a_groups[] = { 895a3a093aeSKhan, Imran "gpio49", "gpio50", 896a3a093aeSKhan, Imran }; 897a3a093aeSKhan, Imran static const char * const blsp_i2c9_groups[] = { 898a3a093aeSKhan, Imran "gpio51", "gpio52", 899a3a093aeSKhan, Imran }; 900a3a093aeSKhan, Imran static const char * const blsp10_spi_a_groups[] = { 901a3a093aeSKhan, Imran "gpio51", "gpio52", 902a3a093aeSKhan, Imran }; 903a3a093aeSKhan, Imran static const char * const blsp_spi7_groups[] = { 904a3a093aeSKhan, Imran "gpio53", "gpio54", "gpio55", "gpio56", 905a3a093aeSKhan, Imran }; 906a3a093aeSKhan, Imran static const char * const blsp_uart7_a_groups[] = { 907a3a093aeSKhan, Imran "gpio53", "gpio54", "gpio55", "gpio56", 908a3a093aeSKhan, Imran }; 909a3a093aeSKhan, Imran static const char * const blsp_uim7_a_groups[] = { 910a3a093aeSKhan, Imran "gpio53", "gpio54", 911a3a093aeSKhan, Imran }; 912a3a093aeSKhan, Imran static const char * const blsp_i2c7_groups[] = { 913a3a093aeSKhan, Imran "gpio55", "gpio56", 914a3a093aeSKhan, Imran }; 915a3a093aeSKhan, Imran static const char * const qua_mi2s_groups[] = { 916a3a093aeSKhan, Imran "gpio57", "gpio58", "gpio59", "gpio60", "gpio61", "gpio62", "gpio63", 917a3a093aeSKhan, Imran }; 918a3a093aeSKhan, Imran static const char * const blsp10_spi_groups[] = { 919a3a093aeSKhan, Imran "gpio57", 920a3a093aeSKhan, Imran }; 921a3a093aeSKhan, Imran static const char * const gcc_gp1_a_groups[] = { 922a3a093aeSKhan, Imran "gpio57", 923a3a093aeSKhan, Imran }; 924a3a093aeSKhan, Imran static const char * const ssc_irq_groups[] = { 925a3a093aeSKhan, Imran "gpio58", "gpio59", "gpio60", "gpio61", "gpio62", "gpio63", "gpio78", 926a3a093aeSKhan, Imran "gpio79", "gpio80", "gpio117", "gpio118", "gpio119", "gpio120", 927a3a093aeSKhan, Imran "gpio121", "gpio122", "gpio123", "gpio124", "gpio125", 928a3a093aeSKhan, Imran }; 929a3a093aeSKhan, Imran static const char * const blsp_spi11_groups[] = { 930a3a093aeSKhan, Imran "gpio58", "gpio59", "gpio60", "gpio61", 931a3a093aeSKhan, Imran }; 932a3a093aeSKhan, Imran static const char * const blsp_uart8_b_groups[] = { 933a3a093aeSKhan, Imran "gpio58", "gpio59", "gpio60", "gpio61", 934a3a093aeSKhan, Imran }; 935a3a093aeSKhan, Imran static const char * const blsp_uim8_b_groups[] = { 936a3a093aeSKhan, Imran "gpio58", "gpio59", 937a3a093aeSKhan, Imran }; 938a3a093aeSKhan, Imran static const char * const gcc_gp2_a_groups[] = { 939a3a093aeSKhan, Imran "gpio58", 940a3a093aeSKhan, Imran }; 941a3a093aeSKhan, Imran static const char * const qdss_cti1_a_groups[] = { 942a3a093aeSKhan, Imran "gpio58", "gpio59", 943a3a093aeSKhan, Imran }; 944a3a093aeSKhan, Imran static const char * const gcc_gp3_a_groups[] = { 945a3a093aeSKhan, Imran "gpio59", 946a3a093aeSKhan, Imran }; 947a3a093aeSKhan, Imran static const char * const blsp_i2c11_groups[] = { 948a3a093aeSKhan, Imran "gpio60", "gpio61", 949a3a093aeSKhan, Imran }; 950a3a093aeSKhan, Imran static const char * const cri_trng0_groups[] = { 951a3a093aeSKhan, Imran "gpio60", 952a3a093aeSKhan, Imran }; 953a3a093aeSKhan, Imran static const char * const cri_trng1_groups[] = { 954a3a093aeSKhan, Imran "gpio61", 955a3a093aeSKhan, Imran }; 956a3a093aeSKhan, Imran static const char * const cri_trng_groups[] = { 957a3a093aeSKhan, Imran "gpio62", 958a3a093aeSKhan, Imran }; 959a3a093aeSKhan, Imran static const char * const pri_mi2s_groups[] = { 960a3a093aeSKhan, Imran "gpio64", "gpio65", "gpio67", "gpio68", 961a3a093aeSKhan, Imran }; 962a3a093aeSKhan, Imran static const char * const sp_cmu_groups[] = { 963a3a093aeSKhan, Imran "gpio64", 964a3a093aeSKhan, Imran }; 965a3a093aeSKhan, Imran static const char * const blsp_spi10_groups[] = { 966a3a093aeSKhan, Imran "gpio65", "gpio66", "gpio67", "gpio68", 967a3a093aeSKhan, Imran }; 968a3a093aeSKhan, Imran static const char * const blsp_uart7_b_groups[] = { 969a3a093aeSKhan, Imran "gpio65", "gpio66", "gpio67", "gpio68", 970a3a093aeSKhan, Imran }; 971a3a093aeSKhan, Imran static const char * const blsp_uim7_b_groups[] = { 972a3a093aeSKhan, Imran "gpio65", "gpio66", 973a3a093aeSKhan, Imran }; 974a3a093aeSKhan, Imran static const char * const pri_mi2s_ws_groups[] = { 975a3a093aeSKhan, Imran "gpio66", 976a3a093aeSKhan, Imran }; 977a3a093aeSKhan, Imran static const char * const blsp_i2c10_groups[] = { 978a3a093aeSKhan, Imran "gpio67", "gpio68", 979a3a093aeSKhan, Imran }; 980a3a093aeSKhan, Imran static const char * const spkr_i2s_groups[] = { 981a3a093aeSKhan, Imran "gpio69", "gpio70", "gpio71", "gpio72", 982a3a093aeSKhan, Imran }; 983a3a093aeSKhan, Imran static const char * const audio_ref_groups[] = { 984a3a093aeSKhan, Imran "gpio69", 985a3a093aeSKhan, Imran }; 986a3a093aeSKhan, Imran static const char * const blsp9_spi_groups[] = { 987a3a093aeSKhan, Imran "gpio70", "gpio71", "gpio72", 988a3a093aeSKhan, Imran }; 989a3a093aeSKhan, Imran static const char * const tsense_pwm1_groups[] = { 990a3a093aeSKhan, Imran "gpio71", 991a3a093aeSKhan, Imran }; 992a3a093aeSKhan, Imran static const char * const tsense_pwm2_groups[] = { 993a3a093aeSKhan, Imran "gpio71", 994a3a093aeSKhan, Imran }; 995a3a093aeSKhan, Imran static const char * const btfm_slimbus_groups[] = { 996a3a093aeSKhan, Imran "gpio73", "gpio74", 997a3a093aeSKhan, Imran }; 998a3a093aeSKhan, Imran static const char * const ter_mi2s_groups[] = { 999a3a093aeSKhan, Imran "gpio74", "gpio75", "gpio76", "gpio77", "gpio78", 1000a3a093aeSKhan, Imran }; 1001a3a093aeSKhan, Imran static const char * const gcc_gp1_b_groups[] = { 1002a3a093aeSKhan, Imran "gpio78", 1003a3a093aeSKhan, Imran }; 1004a3a093aeSKhan, Imran static const char * const sec_mi2s_groups[] = { 1005a3a093aeSKhan, Imran "gpio79", "gpio80", "gpio81", "gpio82", "gpio83", 1006a3a093aeSKhan, Imran }; 1007a3a093aeSKhan, Imran static const char * const blsp_spi12_groups[] = { 1008a3a093aeSKhan, Imran "gpio81", "gpio82", "gpio83", "gpio84", 1009a3a093aeSKhan, Imran }; 1010a3a093aeSKhan, Imran static const char * const blsp_uart9_b_groups[] = { 1011a3a093aeSKhan, Imran "gpio81", "gpio82", "gpio83", "gpio84", 1012a3a093aeSKhan, Imran }; 1013a3a093aeSKhan, Imran static const char * const blsp_uim9_b_groups[] = { 1014a3a093aeSKhan, Imran "gpio81", "gpio82", 1015a3a093aeSKhan, Imran }; 1016a3a093aeSKhan, Imran static const char * const gcc_gp2_b_groups[] = { 1017a3a093aeSKhan, Imran "gpio81", 1018a3a093aeSKhan, Imran }; 1019a3a093aeSKhan, Imran static const char * const gcc_gp3_b_groups[] = { 1020a3a093aeSKhan, Imran "gpio82", 1021a3a093aeSKhan, Imran }; 1022a3a093aeSKhan, Imran static const char * const blsp_i2c12_groups[] = { 1023a3a093aeSKhan, Imran "gpio83", "gpio84", 1024a3a093aeSKhan, Imran }; 1025a3a093aeSKhan, Imran static const char * const blsp_spi5_groups[] = { 1026a3a093aeSKhan, Imran "gpio85", "gpio86", "gpio87", "gpio88", 1027a3a093aeSKhan, Imran }; 1028a3a093aeSKhan, Imran static const char * const blsp_uart2_b_groups[] = { 1029a3a093aeSKhan, Imran "gpio85", "gpio86", "gpio87", "gpio88", 1030a3a093aeSKhan, Imran }; 1031a3a093aeSKhan, Imran static const char * const blsp_uim2_b_groups[] = { 1032a3a093aeSKhan, Imran "gpio85", "gpio86", 1033a3a093aeSKhan, Imran }; 1034a3a093aeSKhan, Imran static const char * const blsp_i2c5_groups[] = { 1035a3a093aeSKhan, Imran "gpio87", "gpio88", 1036a3a093aeSKhan, Imran }; 1037fa21cbeaSMarc Gonzalez static const char * const tsif0_groups[] = { 1038fa21cbeaSMarc Gonzalez "gpio9", "gpio40", "gpio89", "gpio90", "gpio91", 1039a3a093aeSKhan, Imran }; 1040a3a093aeSKhan, Imran static const char * const mdp_vsync0_groups[] = { 1041a3a093aeSKhan, Imran "gpio90", 1042a3a093aeSKhan, Imran }; 1043a3a093aeSKhan, Imran static const char * const mdp_vsync1_groups[] = { 1044a3a093aeSKhan, Imran "gpio90", 1045a3a093aeSKhan, Imran }; 1046a3a093aeSKhan, Imran static const char * const mdp_vsync2_groups[] = { 1047a3a093aeSKhan, Imran "gpio90", 1048a3a093aeSKhan, Imran }; 1049a3a093aeSKhan, Imran static const char * const mdp_vsync3_groups[] = { 1050a3a093aeSKhan, Imran "gpio90", 1051a3a093aeSKhan, Imran }; 1052a3a093aeSKhan, Imran static const char * const blsp1_spi_groups[] = { 1053a3a093aeSKhan, Imran "gpio90", 1054a3a093aeSKhan, Imran }; 1055a3a093aeSKhan, Imran static const char * const tgu_ch0_groups[] = { 1056a3a093aeSKhan, Imran "gpio90", 1057a3a093aeSKhan, Imran }; 1058a3a093aeSKhan, Imran static const char * const qdss_cti1_b_groups[] = { 1059a3a093aeSKhan, Imran "gpio90", "gpio91", 1060a3a093aeSKhan, Imran }; 1061a3a093aeSKhan, Imran static const char * const sdc4_cmd_groups[] = { 1062a3a093aeSKhan, Imran "gpio91", 1063a3a093aeSKhan, Imran }; 1064a3a093aeSKhan, Imran static const char * const tgu_ch1_groups[] = { 1065a3a093aeSKhan, Imran "gpio91", 1066a3a093aeSKhan, Imran }; 1067fa21cbeaSMarc Gonzalez static const char * const tsif1_groups[] = { 1068fa21cbeaSMarc Gonzalez "gpio92", "gpio93", "gpio94", "gpio95", "gpio96", 1069a3a093aeSKhan, Imran }; 1070a3a093aeSKhan, Imran static const char * const sdc43_groups[] = { 1071a3a093aeSKhan, Imran "gpio92", 1072a3a093aeSKhan, Imran }; 1073a3a093aeSKhan, Imran static const char * const vfr_1_groups[] = { 1074a3a093aeSKhan, Imran "gpio92", 1075a3a093aeSKhan, Imran }; 1076a3a093aeSKhan, Imran static const char * const sdc4_clk_groups[] = { 1077a3a093aeSKhan, Imran "gpio93", 1078a3a093aeSKhan, Imran }; 1079a3a093aeSKhan, Imran static const char * const sdc42_groups[] = { 1080a3a093aeSKhan, Imran "gpio94", 1081a3a093aeSKhan, Imran }; 1082a3a093aeSKhan, Imran static const char * const sd_card_groups[] = { 1083a3a093aeSKhan, Imran "gpio95", 1084a3a093aeSKhan, Imran }; 1085a3a093aeSKhan, Imran static const char * const sdc41_groups[] = { 1086a3a093aeSKhan, Imran "gpio95", 1087a3a093aeSKhan, Imran }; 1088a3a093aeSKhan, Imran static const char * const sdc40_groups[] = { 1089a3a093aeSKhan, Imran "gpio96", 1090a3a093aeSKhan, Imran }; 1091a3a093aeSKhan, Imran static const char * const mdp_vsync_b_groups[] = { 1092a3a093aeSKhan, Imran "gpio97", "gpio98", 1093a3a093aeSKhan, Imran }; 1094a3a093aeSKhan, Imran static const char * const ldo_en_groups[] = { 1095a3a093aeSKhan, Imran "gpio97", 1096a3a093aeSKhan, Imran }; 1097a3a093aeSKhan, Imran static const char * const ldo_update_groups[] = { 1098a3a093aeSKhan, Imran "gpio98", 1099a3a093aeSKhan, Imran }; 1100a3a093aeSKhan, Imran static const char * const blsp_uart8_groups[] = { 1101a3a093aeSKhan, Imran "gpio100", "gpio101", 1102a3a093aeSKhan, Imran }; 1103a3a093aeSKhan, Imran static const char * const blsp11_i2c_groups[] = { 1104a3a093aeSKhan, Imran "gpio102", "gpio103", 1105a3a093aeSKhan, Imran }; 1106a3a093aeSKhan, Imran static const char * const prng_rosc_groups[] = { 1107a3a093aeSKhan, Imran "gpio102", 1108a3a093aeSKhan, Imran }; 1109a3a093aeSKhan, Imran static const char * const uim2_data_groups[] = { 1110a3a093aeSKhan, Imran "gpio105", 1111a3a093aeSKhan, Imran }; 1112a3a093aeSKhan, Imran static const char * const uim2_clk_groups[] = { 1113a3a093aeSKhan, Imran "gpio106", 1114a3a093aeSKhan, Imran }; 1115a3a093aeSKhan, Imran static const char * const uim2_reset_groups[] = { 1116a3a093aeSKhan, Imran "gpio107", 1117a3a093aeSKhan, Imran }; 1118a3a093aeSKhan, Imran static const char * const uim2_present_groups[] = { 1119a3a093aeSKhan, Imran "gpio108", 1120a3a093aeSKhan, Imran }; 1121a3a093aeSKhan, Imran static const char * const uim1_data_groups[] = { 1122a3a093aeSKhan, Imran "gpio109", 1123a3a093aeSKhan, Imran }; 1124a3a093aeSKhan, Imran static const char * const uim1_clk_groups[] = { 1125a3a093aeSKhan, Imran "gpio110", 1126a3a093aeSKhan, Imran }; 1127a3a093aeSKhan, Imran static const char * const uim1_reset_groups[] = { 1128a3a093aeSKhan, Imran "gpio111", 1129a3a093aeSKhan, Imran }; 1130a3a093aeSKhan, Imran static const char * const uim1_present_groups[] = { 1131a3a093aeSKhan, Imran "gpio112", 1132a3a093aeSKhan, Imran }; 1133a3a093aeSKhan, Imran static const char * const uim_batt_groups[] = { 1134a3a093aeSKhan, Imran "gpio113", 1135a3a093aeSKhan, Imran }; 1136a3a093aeSKhan, Imran static const char * const nav_dr_groups[] = { 1137a3a093aeSKhan, Imran "gpio115", 1138a3a093aeSKhan, Imran }; 1139a3a093aeSKhan, Imran static const char * const atest_char_groups[] = { 1140a3a093aeSKhan, Imran "gpio117", "gpio118", "gpio119", "gpio120", "gpio121", 1141a3a093aeSKhan, Imran }; 1142a3a093aeSKhan, Imran static const char * const adsp_ext_groups[] = { 1143a3a093aeSKhan, Imran "gpio118", 1144a3a093aeSKhan, Imran }; 1145a3a093aeSKhan, Imran static const char * const modem_tsync_groups[] = { 1146a3a093aeSKhan, Imran "gpio128", 1147a3a093aeSKhan, Imran }; 1148a3a093aeSKhan, Imran static const char * const nav_pps_groups[] = { 1149a3a093aeSKhan, Imran "gpio128", 1150a3a093aeSKhan, Imran }; 1151a3a093aeSKhan, Imran static const char * const qlink_request_groups[] = { 1152a3a093aeSKhan, Imran "gpio130", 1153a3a093aeSKhan, Imran }; 1154a3a093aeSKhan, Imran static const char * const qlink_enable_groups[] = { 1155a3a093aeSKhan, Imran "gpio131", 1156a3a093aeSKhan, Imran }; 1157a3a093aeSKhan, Imran static const char * const pa_indicator_groups[] = { 1158a3a093aeSKhan, Imran "gpio135", 1159a3a093aeSKhan, Imran }; 1160a3a093aeSKhan, Imran static const char * const ssbi1_groups[] = { 1161a3a093aeSKhan, Imran "gpio142", 1162a3a093aeSKhan, Imran }; 1163a3a093aeSKhan, Imran static const char * const isense_dbg_groups[] = { 1164a3a093aeSKhan, Imran "gpio143", 1165a3a093aeSKhan, Imran }; 1166a3a093aeSKhan, Imran static const char * const mss_lte_groups[] = { 1167a3a093aeSKhan, Imran "gpio144", "gpio145", 1168a3a093aeSKhan, Imran }; 1169a3a093aeSKhan, Imran 1170a3a093aeSKhan, Imran static const struct msm_function msm8998_functions[] = { 1171a3a093aeSKhan, Imran FUNCTION(gpio), 1172a3a093aeSKhan, Imran FUNCTION(adsp_ext), 1173a3a093aeSKhan, Imran FUNCTION(agera_pll), 1174a3a093aeSKhan, Imran FUNCTION(atest_char), 1175a3a093aeSKhan, Imran FUNCTION(atest_gpsadc0), 1176a3a093aeSKhan, Imran FUNCTION(atest_gpsadc1), 1177a3a093aeSKhan, Imran FUNCTION(atest_tsens), 1178a3a093aeSKhan, Imran FUNCTION(atest_tsens2), 1179a3a093aeSKhan, Imran FUNCTION(atest_usb1), 1180a3a093aeSKhan, Imran FUNCTION(atest_usb10), 1181a3a093aeSKhan, Imran FUNCTION(atest_usb11), 1182a3a093aeSKhan, Imran FUNCTION(atest_usb12), 1183a3a093aeSKhan, Imran FUNCTION(atest_usb13), 1184a3a093aeSKhan, Imran FUNCTION(audio_ref), 1185a3a093aeSKhan, Imran FUNCTION(bimc_dte0), 1186a3a093aeSKhan, Imran FUNCTION(bimc_dte1), 1187a3a093aeSKhan, Imran FUNCTION(blsp10_spi), 1188a3a093aeSKhan, Imran FUNCTION(blsp10_spi_a), 1189a3a093aeSKhan, Imran FUNCTION(blsp10_spi_b), 1190a3a093aeSKhan, Imran FUNCTION(blsp11_i2c), 1191a3a093aeSKhan, Imran FUNCTION(blsp1_spi), 1192a3a093aeSKhan, Imran FUNCTION(blsp1_spi_a), 1193a3a093aeSKhan, Imran FUNCTION(blsp1_spi_b), 1194a3a093aeSKhan, Imran FUNCTION(blsp2_spi), 1195a3a093aeSKhan, Imran FUNCTION(blsp9_spi), 1196a3a093aeSKhan, Imran FUNCTION(blsp_i2c1), 1197a3a093aeSKhan, Imran FUNCTION(blsp_i2c2), 1198a3a093aeSKhan, Imran FUNCTION(blsp_i2c3), 1199a3a093aeSKhan, Imran FUNCTION(blsp_i2c4), 1200a3a093aeSKhan, Imran FUNCTION(blsp_i2c5), 1201a3a093aeSKhan, Imran FUNCTION(blsp_i2c6), 1202a3a093aeSKhan, Imran FUNCTION(blsp_i2c7), 1203a3a093aeSKhan, Imran FUNCTION(blsp_i2c8), 1204a3a093aeSKhan, Imran FUNCTION(blsp_i2c9), 1205a3a093aeSKhan, Imran FUNCTION(blsp_i2c10), 1206a3a093aeSKhan, Imran FUNCTION(blsp_i2c11), 1207a3a093aeSKhan, Imran FUNCTION(blsp_i2c12), 1208a3a093aeSKhan, Imran FUNCTION(blsp_spi1), 1209a3a093aeSKhan, Imran FUNCTION(blsp_spi2), 1210a3a093aeSKhan, Imran FUNCTION(blsp_spi3), 1211a3a093aeSKhan, Imran FUNCTION(blsp_spi4), 1212a3a093aeSKhan, Imran FUNCTION(blsp_spi5), 1213a3a093aeSKhan, Imran FUNCTION(blsp_spi6), 1214a3a093aeSKhan, Imran FUNCTION(blsp_spi7), 1215a3a093aeSKhan, Imran FUNCTION(blsp_spi8), 1216a3a093aeSKhan, Imran FUNCTION(blsp_spi9), 1217a3a093aeSKhan, Imran FUNCTION(blsp_spi10), 1218a3a093aeSKhan, Imran FUNCTION(blsp_spi11), 1219a3a093aeSKhan, Imran FUNCTION(blsp_spi12), 1220a3a093aeSKhan, Imran FUNCTION(blsp_uart1_a), 1221a3a093aeSKhan, Imran FUNCTION(blsp_uart1_b), 1222a3a093aeSKhan, Imran FUNCTION(blsp_uart2_a), 1223a3a093aeSKhan, Imran FUNCTION(blsp_uart2_b), 1224a3a093aeSKhan, Imran FUNCTION(blsp_uart3_a), 1225a3a093aeSKhan, Imran FUNCTION(blsp_uart3_b), 1226a3a093aeSKhan, Imran FUNCTION(blsp_uart7_a), 1227a3a093aeSKhan, Imran FUNCTION(blsp_uart7_b), 1228a3a093aeSKhan, Imran FUNCTION(blsp_uart8), 1229a3a093aeSKhan, Imran FUNCTION(blsp_uart8_a), 1230a3a093aeSKhan, Imran FUNCTION(blsp_uart8_b), 1231a3a093aeSKhan, Imran FUNCTION(blsp_uart9_a), 1232a3a093aeSKhan, Imran FUNCTION(blsp_uart9_b), 1233a3a093aeSKhan, Imran FUNCTION(blsp_uim1_a), 1234a3a093aeSKhan, Imran FUNCTION(blsp_uim1_b), 1235a3a093aeSKhan, Imran FUNCTION(blsp_uim2_a), 1236a3a093aeSKhan, Imran FUNCTION(blsp_uim2_b), 1237a3a093aeSKhan, Imran FUNCTION(blsp_uim3_a), 1238a3a093aeSKhan, Imran FUNCTION(blsp_uim3_b), 1239a3a093aeSKhan, Imran FUNCTION(blsp_uim7_a), 1240a3a093aeSKhan, Imran FUNCTION(blsp_uim7_b), 1241a3a093aeSKhan, Imran FUNCTION(blsp_uim8_a), 1242a3a093aeSKhan, Imran FUNCTION(blsp_uim8_b), 1243a3a093aeSKhan, Imran FUNCTION(blsp_uim9_a), 1244a3a093aeSKhan, Imran FUNCTION(blsp_uim9_b), 1245a3a093aeSKhan, Imran FUNCTION(bt_reset), 1246a3a093aeSKhan, Imran FUNCTION(btfm_slimbus), 1247a3a093aeSKhan, Imran FUNCTION(cam_mclk), 1248a3a093aeSKhan, Imran FUNCTION(cci_async), 1249a3a093aeSKhan, Imran FUNCTION(cci_i2c), 1250a3a093aeSKhan, Imran FUNCTION(cci_timer0), 1251a3a093aeSKhan, Imran FUNCTION(cci_timer1), 1252a3a093aeSKhan, Imran FUNCTION(cci_timer2), 1253a3a093aeSKhan, Imran FUNCTION(cci_timer3), 1254a3a093aeSKhan, Imran FUNCTION(cci_timer4), 1255a3a093aeSKhan, Imran FUNCTION(cri_trng), 1256a3a093aeSKhan, Imran FUNCTION(cri_trng0), 1257a3a093aeSKhan, Imran FUNCTION(cri_trng1), 1258a3a093aeSKhan, Imran FUNCTION(dbg_out), 1259a3a093aeSKhan, Imran FUNCTION(ddr_bist), 1260a3a093aeSKhan, Imran FUNCTION(edp_hot), 1261a3a093aeSKhan, Imran FUNCTION(edp_lcd), 1262a3a093aeSKhan, Imran FUNCTION(gcc_gp1_a), 1263a3a093aeSKhan, Imran FUNCTION(gcc_gp1_b), 1264a3a093aeSKhan, Imran FUNCTION(gcc_gp2_a), 1265a3a093aeSKhan, Imran FUNCTION(gcc_gp2_b), 1266a3a093aeSKhan, Imran FUNCTION(gcc_gp3_a), 1267a3a093aeSKhan, Imran FUNCTION(gcc_gp3_b), 1268a3a093aeSKhan, Imran FUNCTION(hdmi_cec), 1269a3a093aeSKhan, Imran FUNCTION(hdmi_ddc), 1270a3a093aeSKhan, Imran FUNCTION(hdmi_hot), 1271a3a093aeSKhan, Imran FUNCTION(hdmi_rcv), 1272a3a093aeSKhan, Imran FUNCTION(isense_dbg), 1273a3a093aeSKhan, Imran FUNCTION(jitter_bist), 1274a3a093aeSKhan, Imran FUNCTION(ldo_en), 1275a3a093aeSKhan, Imran FUNCTION(ldo_update), 1276a3a093aeSKhan, Imran FUNCTION(lpass_slimbus), 1277a3a093aeSKhan, Imran FUNCTION(m_voc), 1278a3a093aeSKhan, Imran FUNCTION(mdp_vsync), 1279a3a093aeSKhan, Imran FUNCTION(mdp_vsync0), 1280a3a093aeSKhan, Imran FUNCTION(mdp_vsync1), 1281a3a093aeSKhan, Imran FUNCTION(mdp_vsync2), 1282a3a093aeSKhan, Imran FUNCTION(mdp_vsync3), 1283a3a093aeSKhan, Imran FUNCTION(mdp_vsync_a), 1284a3a093aeSKhan, Imran FUNCTION(mdp_vsync_b), 1285a3a093aeSKhan, Imran FUNCTION(modem_tsync), 1286a3a093aeSKhan, Imran FUNCTION(mss_lte), 1287a3a093aeSKhan, Imran FUNCTION(nav_dr), 1288a3a093aeSKhan, Imran FUNCTION(nav_pps), 1289a3a093aeSKhan, Imran FUNCTION(pa_indicator), 1290a3a093aeSKhan, Imran FUNCTION(pci_e0), 1291a3a093aeSKhan, Imran FUNCTION(phase_flag), 1292a3a093aeSKhan, Imran FUNCTION(pll_bypassnl), 1293a3a093aeSKhan, Imran FUNCTION(pll_reset), 1294a3a093aeSKhan, Imran FUNCTION(pri_mi2s), 1295a3a093aeSKhan, Imran FUNCTION(pri_mi2s_ws), 1296a3a093aeSKhan, Imran FUNCTION(prng_rosc), 1297a3a093aeSKhan, Imran FUNCTION(pwr_crypto), 1298a3a093aeSKhan, Imran FUNCTION(pwr_modem), 1299a3a093aeSKhan, Imran FUNCTION(pwr_nav), 1300a3a093aeSKhan, Imran FUNCTION(qdss_cti0_a), 1301a3a093aeSKhan, Imran FUNCTION(qdss_cti0_b), 1302a3a093aeSKhan, Imran FUNCTION(qdss_cti1_a), 1303a3a093aeSKhan, Imran FUNCTION(qdss_cti1_b), 1304a3a093aeSKhan, Imran FUNCTION(qdss), 1305a3a093aeSKhan, Imran FUNCTION(qlink_enable), 1306a3a093aeSKhan, Imran FUNCTION(qlink_request), 1307a3a093aeSKhan, Imran FUNCTION(qua_mi2s), 1308a3a093aeSKhan, Imran FUNCTION(sd_card), 1309a3a093aeSKhan, Imran FUNCTION(sd_write), 1310a3a093aeSKhan, Imran FUNCTION(sdc40), 1311a3a093aeSKhan, Imran FUNCTION(sdc41), 1312a3a093aeSKhan, Imran FUNCTION(sdc42), 1313a3a093aeSKhan, Imran FUNCTION(sdc43), 1314a3a093aeSKhan, Imran FUNCTION(sdc4_clk), 1315a3a093aeSKhan, Imran FUNCTION(sdc4_cmd), 1316a3a093aeSKhan, Imran FUNCTION(sec_mi2s), 1317a3a093aeSKhan, Imran FUNCTION(sp_cmu), 1318a3a093aeSKhan, Imran FUNCTION(spkr_i2s), 1319a3a093aeSKhan, Imran FUNCTION(ssbi1), 1320a3a093aeSKhan, Imran FUNCTION(ssc_irq), 1321a3a093aeSKhan, Imran FUNCTION(ter_mi2s), 1322a3a093aeSKhan, Imran FUNCTION(tgu_ch0), 1323a3a093aeSKhan, Imran FUNCTION(tgu_ch1), 1324a3a093aeSKhan, Imran FUNCTION(tsense_pwm1), 1325a3a093aeSKhan, Imran FUNCTION(tsense_pwm2), 1326fa21cbeaSMarc Gonzalez FUNCTION(tsif0), 1327fa21cbeaSMarc Gonzalez FUNCTION(tsif1), 1328a3a093aeSKhan, Imran FUNCTION(uim1_clk), 1329a3a093aeSKhan, Imran FUNCTION(uim1_data), 1330a3a093aeSKhan, Imran FUNCTION(uim1_present), 1331a3a093aeSKhan, Imran FUNCTION(uim1_reset), 1332a3a093aeSKhan, Imran FUNCTION(uim2_clk), 1333a3a093aeSKhan, Imran FUNCTION(uim2_data), 1334a3a093aeSKhan, Imran FUNCTION(uim2_present), 1335a3a093aeSKhan, Imran FUNCTION(uim2_reset), 1336a3a093aeSKhan, Imran FUNCTION(uim_batt), 1337a3a093aeSKhan, Imran FUNCTION(usb_phy), 1338a3a093aeSKhan, Imran FUNCTION(vfr_1), 1339a3a093aeSKhan, Imran FUNCTION(vsense_clkout), 1340a3a093aeSKhan, Imran FUNCTION(vsense_data0), 1341a3a093aeSKhan, Imran FUNCTION(vsense_data1), 1342a3a093aeSKhan, Imran FUNCTION(vsense_mode), 1343a3a093aeSKhan, Imran FUNCTION(wlan1_adc0), 1344a3a093aeSKhan, Imran FUNCTION(wlan1_adc1), 1345a3a093aeSKhan, Imran FUNCTION(wlan2_adc0), 1346a3a093aeSKhan, Imran FUNCTION(wlan2_adc1), 1347a3a093aeSKhan, Imran }; 1348a3a093aeSKhan, Imran 1349a3a093aeSKhan, Imran static const struct msm_pingroup msm8998_groups[] = { 1350a3a093aeSKhan, Imran PINGROUP(0, EAST, blsp_spi1, blsp_uart1_a, blsp_uim1_a, _, _, _, _, _, _), 1351a3a093aeSKhan, Imran PINGROUP(1, EAST, blsp_spi1, blsp_uart1_a, blsp_uim1_a, _, _, _, _, _, _), 1352a3a093aeSKhan, Imran PINGROUP(2, EAST, blsp_spi1, blsp_uart1_a, blsp_i2c1, _, _, _, _, _, _), 1353a3a093aeSKhan, Imran PINGROUP(3, EAST, blsp_spi1, blsp_uart1_a, blsp_i2c1, _, _, _, _, _, _), 1354a3a093aeSKhan, Imran PINGROUP(4, WEST, blsp_spi8, blsp_uart8_a, blsp_uim8_a, _, qdss_cti0_b, _, _, _, _), 1355a3a093aeSKhan, Imran PINGROUP(5, WEST, blsp_spi8, blsp_uart8_a, blsp_uim8_a, _, qdss_cti0_b, _, _, _, _), 1356a3a093aeSKhan, Imran PINGROUP(6, WEST, blsp_spi8, blsp_uart8_a, blsp_i2c8, _, _, _, _, _, _), 1357a3a093aeSKhan, Imran PINGROUP(7, WEST, blsp_spi8, blsp_uart8_a, blsp_i2c8, ddr_bist, _, atest_tsens2, atest_usb1, _, _), 1358a3a093aeSKhan, Imran PINGROUP(8, EAST, blsp_spi4, blsp_uart1_b, blsp_uim1_b, _, ddr_bist, _, wlan1_adc1, atest_usb13, bimc_dte1), 1359fa21cbeaSMarc Gonzalez PINGROUP(9, EAST, blsp_spi4, blsp_uart1_b, blsp_uim1_b, tsif0, ddr_bist, _, wlan1_adc0, atest_usb12, bimc_dte0), 1360a3a093aeSKhan, Imran PINGROUP(10, EAST, mdp_vsync_a, blsp_spi4, blsp_uart1_b, blsp_i2c4, ddr_bist, atest_gpsadc1, wlan2_adc1, atest_usb11, bimc_dte1), 1361a3a093aeSKhan, Imran PINGROUP(11, EAST, mdp_vsync_a, edp_lcd, blsp_spi4, blsp_uart1_b, blsp_i2c4, dbg_out, atest_gpsadc0, wlan2_adc0, atest_usb10), 1362a3a093aeSKhan, Imran PINGROUP(12, EAST, mdp_vsync, m_voc, _, _, _, _, _, _, _), 1363a3a093aeSKhan, Imran PINGROUP(13, EAST, cam_mclk, pll_bypassnl, qdss, _, _, _, _, _, _), 1364a3a093aeSKhan, Imran PINGROUP(14, EAST, cam_mclk, pll_reset, qdss, _, _, _, _, _, _), 1365a3a093aeSKhan, Imran PINGROUP(15, EAST, cam_mclk, qdss, _, _, _, _, _, _, _), 1366a3a093aeSKhan, Imran PINGROUP(16, EAST, cam_mclk, qdss, _, _, _, _, _, _, _), 1367a3a093aeSKhan, Imran PINGROUP(17, EAST, cci_i2c, qdss, _, _, _, _, _, _, _), 1368a3a093aeSKhan, Imran PINGROUP(18, EAST, cci_i2c, phase_flag, qdss, _, _, _, _, _, _), 1369a3a093aeSKhan, Imran PINGROUP(19, EAST, cci_i2c, phase_flag, qdss, _, _, _, _, _, _), 1370a3a093aeSKhan, Imran PINGROUP(20, EAST, cci_i2c, qdss, _, _, _, _, _, _, _), 1371a3a093aeSKhan, Imran PINGROUP(21, EAST, cci_timer0, _, qdss, vsense_data0, _, _, _, _, _), 1372a3a093aeSKhan, Imran PINGROUP(22, EAST, cci_timer1, _, qdss, vsense_data1, _, _, _, _, _), 1373a3a093aeSKhan, Imran PINGROUP(23, EAST, cci_timer2, blsp1_spi_b, qdss, vsense_mode, _, _, _, _, _), 1374a3a093aeSKhan, Imran PINGROUP(24, EAST, cci_timer3, cci_async, blsp1_spi_a, _, qdss, vsense_clkout, _, _, _), 1375a3a093aeSKhan, Imran PINGROUP(25, EAST, cci_timer4, cci_async, blsp2_spi, _, qdss, _, _, _, _), 1376a3a093aeSKhan, Imran PINGROUP(26, EAST, cci_async, qdss, _, _, _, _, _, _, _), 1377a3a093aeSKhan, Imran PINGROUP(27, EAST, blsp1_spi_a, qdss, _, _, _, _, _, _, _), 1378a3a093aeSKhan, Imran PINGROUP(28, EAST, blsp1_spi_b, qdss, _, _, _, _, _, _, _), 1379a3a093aeSKhan, Imran PINGROUP(29, EAST, blsp2_spi, _, qdss, _, _, _, _, _, _), 1380a3a093aeSKhan, Imran PINGROUP(30, EAST, hdmi_rcv, blsp2_spi, qdss, _, _, _, _, _, _), 1381a3a093aeSKhan, Imran PINGROUP(31, EAST, hdmi_cec, blsp_spi2, blsp_uart2_a, blsp_uim2_a, pwr_modem, _, _, _, _), 1382a3a093aeSKhan, Imran PINGROUP(32, EAST, hdmi_ddc, blsp_spi2, blsp_uart2_a, blsp_i2c2, pwr_nav, _, _, _, _), 1383a3a093aeSKhan, Imran PINGROUP(33, EAST, hdmi_ddc, blsp_spi2, blsp_uart2_a, blsp_i2c2, pwr_crypto, _, _, _, _), 1384a3a093aeSKhan, Imran PINGROUP(34, EAST, hdmi_hot, edp_hot, blsp_spi2, blsp_uart2_a, blsp_uim2_a, _, _, _, _), 1385a3a093aeSKhan, Imran PINGROUP(35, NORTH, pci_e0, jitter_bist, _, _, _, _, _, _, _), 1386a3a093aeSKhan, Imran PINGROUP(36, NORTH, pci_e0, agera_pll, _, atest_tsens, _, _, _, _, _), 1387a3a093aeSKhan, Imran PINGROUP(37, NORTH, agera_pll, _, _, _, _, _, _, _, _), 1388a3a093aeSKhan, Imran PINGROUP(38, WEST, usb_phy, _, _, _, _, _, _, _, _), 1389a3a093aeSKhan, Imran PINGROUP(39, WEST, lpass_slimbus, _, _, _, _, _, _, _, _), 1390fa21cbeaSMarc Gonzalez PINGROUP(40, EAST, sd_write, tsif0, _, _, _, _, _, _, _), 1391a3a093aeSKhan, Imran PINGROUP(41, EAST, blsp_spi6, blsp_uart3_b, blsp_uim3_b, _, qdss, _, _, _, _), 1392a3a093aeSKhan, Imran PINGROUP(42, EAST, blsp_spi6, blsp_uart3_b, blsp_uim3_b, _, qdss, _, _, _, _), 1393a3a093aeSKhan, Imran PINGROUP(43, EAST, blsp_spi6, blsp_uart3_b, blsp_i2c6, _, qdss, _, _, _, _), 1394a3a093aeSKhan, Imran PINGROUP(44, EAST, blsp_spi6, blsp_uart3_b, blsp_i2c6, _, qdss, _, _, _, _), 1395a3a093aeSKhan, Imran PINGROUP(45, EAST, blsp_spi3, blsp_uart3_a, blsp_uim3_a, _, _, _, _, _, _), 1396a3a093aeSKhan, Imran PINGROUP(46, EAST, blsp_spi3, blsp_uart3_a, blsp_uim3_a, _, _, _, _, _, _), 1397a3a093aeSKhan, Imran PINGROUP(47, EAST, blsp_spi3, blsp_uart3_a, blsp_i2c3, _, _, _, _, _, _), 1398a3a093aeSKhan, Imran PINGROUP(48, EAST, blsp_spi3, blsp_uart3_a, blsp_i2c3, _, _, _, _, _, _), 1399a3a093aeSKhan, Imran PINGROUP(49, NORTH, blsp_spi9, blsp_uart9_a, blsp_uim9_a, blsp10_spi_b, qdss_cti0_a, _, _, _, _), 1400a3a093aeSKhan, Imran PINGROUP(50, NORTH, blsp_spi9, blsp_uart9_a, blsp_uim9_a, blsp10_spi_b, qdss_cti0_a, _, _, _, _), 1401a3a093aeSKhan, Imran PINGROUP(51, NORTH, blsp_spi9, blsp_uart9_a, blsp_i2c9, blsp10_spi_a, _, _, _, _, _), 1402a3a093aeSKhan, Imran PINGROUP(52, NORTH, blsp_spi9, blsp_uart9_a, blsp_i2c9, blsp10_spi_a, _, _, _, _, _), 1403a3a093aeSKhan, Imran PINGROUP(53, WEST, blsp_spi7, blsp_uart7_a, blsp_uim7_a, _, _, _, _, _, _), 1404a3a093aeSKhan, Imran PINGROUP(54, WEST, blsp_spi7, blsp_uart7_a, blsp_uim7_a, _, _, _, _, _, _), 1405a3a093aeSKhan, Imran PINGROUP(55, WEST, blsp_spi7, blsp_uart7_a, blsp_i2c7, _, _, _, _, _, _), 1406a3a093aeSKhan, Imran PINGROUP(56, WEST, blsp_spi7, blsp_uart7_a, blsp_i2c7, _, _, _, _, _, _), 1407a3a093aeSKhan, Imran PINGROUP(57, WEST, qua_mi2s, blsp10_spi, gcc_gp1_a, _, _, _, _, _, _), 1408a3a093aeSKhan, Imran PINGROUP(58, WEST, qua_mi2s, blsp_spi11, blsp_uart8_b, blsp_uim8_b, gcc_gp2_a, _, qdss_cti1_a, _, _), 1409a3a093aeSKhan, Imran PINGROUP(59, WEST, qua_mi2s, blsp_spi11, blsp_uart8_b, blsp_uim8_b, gcc_gp3_a, _, qdss_cti1_a, _, _), 1410a3a093aeSKhan, Imran PINGROUP(60, WEST, qua_mi2s, blsp_spi11, blsp_uart8_b, blsp_i2c11, cri_trng0, _, _, _, _), 1411a3a093aeSKhan, Imran PINGROUP(61, WEST, qua_mi2s, blsp_spi11, blsp_uart8_b, blsp_i2c11, cri_trng1, _, _, _, _), 1412a3a093aeSKhan, Imran PINGROUP(62, WEST, qua_mi2s, cri_trng, _, _, _, _, _, _, _), 1413a3a093aeSKhan, Imran PINGROUP(63, WEST, qua_mi2s, _, _, _, _, _, _, _, _), 1414a3a093aeSKhan, Imran PINGROUP(64, WEST, pri_mi2s, sp_cmu, _, _, _, _, _, _, _), 1415a3a093aeSKhan, Imran PINGROUP(65, WEST, pri_mi2s, blsp_spi10, blsp_uart7_b, blsp_uim7_b, _, _, _, _, _), 1416a3a093aeSKhan, Imran PINGROUP(66, WEST, pri_mi2s_ws, blsp_spi10, blsp_uart7_b, blsp_uim7_b, _, _, _, _, _), 1417a3a093aeSKhan, Imran PINGROUP(67, WEST, pri_mi2s, blsp_spi10, blsp_uart7_b, blsp_i2c10, _, _, _, _, _), 1418a3a093aeSKhan, Imran PINGROUP(68, WEST, pri_mi2s, blsp_spi10, blsp_uart7_b, blsp_i2c10, _, _, _, _, _), 1419a3a093aeSKhan, Imran PINGROUP(69, WEST, spkr_i2s, audio_ref, _, _, _, _, _, _, _), 1420a3a093aeSKhan, Imran PINGROUP(70, WEST, lpass_slimbus, spkr_i2s, blsp9_spi, _, _, _, _, _, _), 1421a3a093aeSKhan, Imran PINGROUP(71, WEST, lpass_slimbus, spkr_i2s, blsp9_spi, tsense_pwm1, tsense_pwm2, _, _, _, _), 1422a3a093aeSKhan, Imran PINGROUP(72, WEST, lpass_slimbus, spkr_i2s, blsp9_spi, _, _, _, _, _, _), 1423a3a093aeSKhan, Imran PINGROUP(73, WEST, btfm_slimbus, phase_flag, _, _, _, _, _, _, _), 1424a3a093aeSKhan, Imran PINGROUP(74, WEST, btfm_slimbus, ter_mi2s, phase_flag, _, _, _, _, _, _), 1425a3a093aeSKhan, Imran PINGROUP(75, WEST, ter_mi2s, phase_flag, qdss, _, _, _, _, _, _), 1426a3a093aeSKhan, Imran PINGROUP(76, WEST, ter_mi2s, phase_flag, qdss, _, _, _, _, _, _), 1427a3a093aeSKhan, Imran PINGROUP(77, WEST, ter_mi2s, phase_flag, qdss, _, _, _, _, _, _), 1428a3a093aeSKhan, Imran PINGROUP(78, WEST, ter_mi2s, gcc_gp1_b, _, _, _, _, _, _, _), 1429a3a093aeSKhan, Imran PINGROUP(79, WEST, sec_mi2s, _, qdss, _, _, _, _, _, _), 1430a3a093aeSKhan, Imran PINGROUP(80, WEST, sec_mi2s, _, qdss, _, _, _, _, _, _), 1431a3a093aeSKhan, Imran PINGROUP(81, WEST, sec_mi2s, blsp_spi12, blsp_uart9_b, blsp_uim9_b, gcc_gp2_b, _, _, _, _), 1432a3a093aeSKhan, Imran PINGROUP(82, WEST, sec_mi2s, blsp_spi12, blsp_uart9_b, blsp_uim9_b, gcc_gp3_b, _, _, _, _), 1433a3a093aeSKhan, Imran PINGROUP(83, WEST, sec_mi2s, blsp_spi12, blsp_uart9_b, blsp_i2c12, _, _, _, _, _), 1434a3a093aeSKhan, Imran PINGROUP(84, WEST, blsp_spi12, blsp_uart9_b, blsp_i2c12, _, _, _, _, _, _), 1435a3a093aeSKhan, Imran PINGROUP(85, EAST, blsp_spi5, blsp_uart2_b, blsp_uim2_b, _, _, _, _, _, _), 1436a3a093aeSKhan, Imran PINGROUP(86, EAST, blsp_spi5, blsp_uart2_b, blsp_uim2_b, _, _, _, _, _, _), 1437a3a093aeSKhan, Imran PINGROUP(87, EAST, blsp_spi5, blsp_uart2_b, blsp_i2c5, _, _, _, _, _, _), 1438a3a093aeSKhan, Imran PINGROUP(88, EAST, blsp_spi5, blsp_uart2_b, blsp_i2c5, _, _, _, _, _, _), 1439fa21cbeaSMarc Gonzalez PINGROUP(89, EAST, tsif0, phase_flag, _, _, _, _, _, _, _), 1440fa21cbeaSMarc Gonzalez PINGROUP(90, EAST, tsif0, mdp_vsync0, mdp_vsync1, mdp_vsync2, mdp_vsync3, blsp1_spi, tgu_ch0, qdss_cti1_b, _), 1441fa21cbeaSMarc Gonzalez PINGROUP(91, EAST, tsif0, sdc4_cmd, tgu_ch1, phase_flag, qdss_cti1_b, _, _, _, _), 1442fa21cbeaSMarc Gonzalez PINGROUP(92, EAST, tsif1, sdc43, vfr_1, phase_flag, _, _, _, _, _), 1443fa21cbeaSMarc Gonzalez PINGROUP(93, EAST, tsif1, sdc4_clk, _, qdss, _, _, _, _, _), 1444fa21cbeaSMarc Gonzalez PINGROUP(94, EAST, tsif1, sdc42, _, _, _, _, _, _, _), 1445fa21cbeaSMarc Gonzalez PINGROUP(95, EAST, tsif1, sdc41, _, _, _, _, _, _, _), 1446fa21cbeaSMarc Gonzalez PINGROUP(96, EAST, tsif1, sdc40, phase_flag, _, _, _, _, _, _), 1447a3a093aeSKhan, Imran PINGROUP(97, WEST, _, mdp_vsync_b, ldo_en, _, _, _, _, _, _), 1448a3a093aeSKhan, Imran PINGROUP(98, WEST, _, mdp_vsync_b, ldo_update, _, _, _, _, _, _), 1449a3a093aeSKhan, Imran PINGROUP(99, WEST, _, _, _, _, _, _, _, _, _), 1450a3a093aeSKhan, Imran PINGROUP(100, WEST, _, _, blsp_uart8, _, _, _, _, _, _), 1451a3a093aeSKhan, Imran PINGROUP(101, WEST, _, blsp_uart8, _, _, _, _, _, _, _), 1452a3a093aeSKhan, Imran PINGROUP(102, WEST, _, blsp11_i2c, prng_rosc, _, _, _, _, _, _), 1453a3a093aeSKhan, Imran PINGROUP(103, WEST, _, blsp11_i2c, phase_flag, _, _, _, _, _, _), 1454a3a093aeSKhan, Imran PINGROUP(104, WEST, _, _, _, _, _, _, _, _, _), 1455a3a093aeSKhan, Imran PINGROUP(105, NORTH, uim2_data, _, _, _, _, _, _, _, _), 1456a3a093aeSKhan, Imran PINGROUP(106, NORTH, uim2_clk, _, _, _, _, _, _, _, _), 1457a3a093aeSKhan, Imran PINGROUP(107, NORTH, uim2_reset, _, _, _, _, _, _, _, _), 1458a3a093aeSKhan, Imran PINGROUP(108, NORTH, uim2_present, _, _, _, _, _, _, _, _), 1459a3a093aeSKhan, Imran PINGROUP(109, NORTH, uim1_data, _, _, _, _, _, _, _, _), 1460a3a093aeSKhan, Imran PINGROUP(110, NORTH, uim1_clk, _, _, _, _, _, _, _, _), 1461a3a093aeSKhan, Imran PINGROUP(111, NORTH, uim1_reset, _, _, _, _, _, _, _, _), 1462a3a093aeSKhan, Imran PINGROUP(112, NORTH, uim1_present, _, _, _, _, _, _, _, _), 1463a3a093aeSKhan, Imran PINGROUP(113, NORTH, uim_batt, _, _, _, _, _, _, _, _), 1464a3a093aeSKhan, Imran PINGROUP(114, WEST, _, _, phase_flag, _, _, _, _, _, _), 1465a3a093aeSKhan, Imran PINGROUP(115, WEST, _, nav_dr, phase_flag, _, _, _, _, _, _), 1466a3a093aeSKhan, Imran PINGROUP(116, WEST, phase_flag, _, _, _, _, _, _, _, _), 1467a3a093aeSKhan, Imran PINGROUP(117, EAST, phase_flag, qdss, atest_char, _, _, _, _, _, _), 1468a3a093aeSKhan, Imran PINGROUP(118, EAST, adsp_ext, phase_flag, qdss, atest_char, _, _, _, _, _), 1469a3a093aeSKhan, Imran PINGROUP(119, EAST, phase_flag, qdss, atest_char, _, _, _, _, _, _), 1470a3a093aeSKhan, Imran PINGROUP(120, EAST, phase_flag, qdss, atest_char, _, _, _, _, _, _), 1471a3a093aeSKhan, Imran PINGROUP(121, EAST, phase_flag, qdss, atest_char, _, _, _, _, _, _), 1472a3a093aeSKhan, Imran PINGROUP(122, EAST, phase_flag, qdss, _, _, _, _, _, _, _), 1473a3a093aeSKhan, Imran PINGROUP(123, EAST, phase_flag, qdss, _, _, _, _, _, _, _), 1474a3a093aeSKhan, Imran PINGROUP(124, EAST, phase_flag, qdss, _, _, _, _, _, _, _), 1475a3a093aeSKhan, Imran PINGROUP(125, EAST, phase_flag, _, _, _, _, _, _, _, _), 1476a3a093aeSKhan, Imran PINGROUP(126, EAST, phase_flag, _, _, _, _, _, _, _, _), 1477a3a093aeSKhan, Imran PINGROUP(127, WEST, _, _, _, _, _, _, _, _, _), 1478a3a093aeSKhan, Imran PINGROUP(128, WEST, modem_tsync, nav_pps, phase_flag, _, _, _, _, _, _), 1479a3a093aeSKhan, Imran PINGROUP(129, WEST, phase_flag, _, _, _, _, _, _, _, _), 1480a3a093aeSKhan, Imran PINGROUP(130, NORTH, qlink_request, phase_flag, _, _, _, _, _, _, _), 1481a3a093aeSKhan, Imran PINGROUP(131, NORTH, qlink_enable, phase_flag, _, _, _, _, _, _, _), 1482a3a093aeSKhan, Imran PINGROUP(132, WEST, _, phase_flag, _, _, _, _, _, _, _), 1483a3a093aeSKhan, Imran PINGROUP(133, WEST, phase_flag, _, _, _, _, _, _, _, _), 1484a3a093aeSKhan, Imran PINGROUP(134, WEST, phase_flag, _, _, _, _, _, _, _, _), 1485a3a093aeSKhan, Imran PINGROUP(135, WEST, _, pa_indicator, _, _, _, _, _, _, _), 1486a3a093aeSKhan, Imran PINGROUP(136, WEST, _, _, _, _, _, _, _, _, _), 1487a3a093aeSKhan, Imran PINGROUP(137, WEST, _, _, _, _, _, _, _, _, _), 1488a3a093aeSKhan, Imran PINGROUP(138, WEST, _, _, _, _, _, _, _, _, _), 1489a3a093aeSKhan, Imran PINGROUP(139, WEST, _, _, _, _, _, _, _, _, _), 1490a3a093aeSKhan, Imran PINGROUP(140, WEST, _, _, _, _, _, _, _, _, _), 1491a3a093aeSKhan, Imran PINGROUP(141, WEST, _, _, _, _, _, _, _, _, _), 1492a3a093aeSKhan, Imran PINGROUP(142, WEST, _, ssbi1, _, _, _, _, _, _, _), 1493a3a093aeSKhan, Imran PINGROUP(143, WEST, isense_dbg, _, _, _, _, _, _, _, _), 1494a3a093aeSKhan, Imran PINGROUP(144, WEST, mss_lte, _, _, _, _, _, _, _, _), 1495a3a093aeSKhan, Imran PINGROUP(145, WEST, mss_lte, _, _, _, _, _, _, _, _), 1496a3a093aeSKhan, Imran PINGROUP(146, WEST, _, _, _, _, _, _, _, _, _), 1497a3a093aeSKhan, Imran PINGROUP(147, WEST, _, _, _, _, _, _, _, _, _), 1498a3a093aeSKhan, Imran PINGROUP(148, WEST, _, _, _, _, _, _, _, _, _), 1499a3a093aeSKhan, Imran PINGROUP(149, WEST, _, _, _, _, _, _, _, _, _), 1500a3a093aeSKhan, Imran SDC_QDSD_PINGROUP(sdc2_clk, 0x999000, 14, 6), 1501a3a093aeSKhan, Imran SDC_QDSD_PINGROUP(sdc2_cmd, 0x999000, 11, 3), 1502a3a093aeSKhan, Imran SDC_QDSD_PINGROUP(sdc2_data, 0x999000, 9, 0), 1503a3a093aeSKhan, Imran UFS_RESET(ufs_reset, 0x19d000), 1504a3a093aeSKhan, Imran }; 1505a3a093aeSKhan, Imran 1506*29f6e7e3SKonrad Dybcio static const struct msm_gpio_wakeirq_map msm8998_mpm_map[] = { 1507*29f6e7e3SKonrad Dybcio { 1, 3 }, { 5, 4 }, { 9, 5 }, { 11, 6 }, { 22, 8 }, { 24, 9 }, { 26, 10 }, 1508*29f6e7e3SKonrad Dybcio { 34, 11 }, { 36, 12 }, { 37, 13 }, { 38, 14 }, { 40, 15 }, { 42, 16 }, { 46, 17 }, 1509*29f6e7e3SKonrad Dybcio { 50, 18 }, { 53, 19 }, { 54, 20 }, { 56, 21 }, { 57, 22 }, { 58, 23 }, { 59, 24 }, 1510*29f6e7e3SKonrad Dybcio { 60, 25 }, { 61, 26 }, { 62, 27 }, { 63, 28 }, { 64, 29 }, { 66, 7 }, { 71, 30 }, 1511*29f6e7e3SKonrad Dybcio { 73, 31 }, { 77, 32 }, { 78, 33 }, { 79, 34 }, { 80, 35 }, { 82, 36 }, { 86, 37 }, 1512*29f6e7e3SKonrad Dybcio { 91, 38 }, { 92, 39 }, { 95, 40 }, { 97, 41 }, { 101, 42 }, { 104, 43 }, { 106, 44 }, 1513*29f6e7e3SKonrad Dybcio { 108, 45 }, { 110, 48 }, { 112, 46 }, { 113, 47 }, { 115, 51 }, { 116, 54 }, { 117, 55 }, 1514*29f6e7e3SKonrad Dybcio { 118, 56 }, { 119, 57 }, { 120, 58 }, { 121, 59 }, { 122, 60 }, { 123, 61 }, { 124, 62 }, 1515*29f6e7e3SKonrad Dybcio { 125, 63 }, { 126, 64 }, { 127, 50 }, { 129, 65 }, { 131, 66 }, { 132, 67 }, { 133, 68 }, 1516*29f6e7e3SKonrad Dybcio }; 1517*29f6e7e3SKonrad Dybcio 1518a3a093aeSKhan, Imran static const struct msm_pinctrl_soc_data msm8998_pinctrl = { 1519a3a093aeSKhan, Imran .pins = msm8998_pins, 1520a3a093aeSKhan, Imran .npins = ARRAY_SIZE(msm8998_pins), 1521a3a093aeSKhan, Imran .functions = msm8998_functions, 1522a3a093aeSKhan, Imran .nfunctions = ARRAY_SIZE(msm8998_functions), 1523a3a093aeSKhan, Imran .groups = msm8998_groups, 1524a3a093aeSKhan, Imran .ngroups = ARRAY_SIZE(msm8998_groups), 1525a3a093aeSKhan, Imran .ngpios = 150, 1526*29f6e7e3SKonrad Dybcio .wakeirq_map = msm8998_mpm_map, 1527*29f6e7e3SKonrad Dybcio .nwakeirq_map = ARRAY_SIZE(msm8998_mpm_map), 1528a3a093aeSKhan, Imran }; 1529a3a093aeSKhan, Imran 1530a3a093aeSKhan, Imran static int msm8998_pinctrl_probe(struct platform_device *pdev) 1531a3a093aeSKhan, Imran { 1532a3a093aeSKhan, Imran return msm_pinctrl_probe(pdev, &msm8998_pinctrl); 1533a3a093aeSKhan, Imran } 1534a3a093aeSKhan, Imran 1535a3a093aeSKhan, Imran static const struct of_device_id msm8998_pinctrl_of_match[] = { 1536a3a093aeSKhan, Imran { .compatible = "qcom,msm8998-pinctrl", }, 1537a3a093aeSKhan, Imran { }, 1538a3a093aeSKhan, Imran }; 1539a3a093aeSKhan, Imran 1540a3a093aeSKhan, Imran static struct platform_driver msm8998_pinctrl_driver = { 1541a3a093aeSKhan, Imran .driver = { 1542a3a093aeSKhan, Imran .name = "msm8998-pinctrl", 1543a3a093aeSKhan, Imran .of_match_table = msm8998_pinctrl_of_match, 1544a3a093aeSKhan, Imran }, 1545a3a093aeSKhan, Imran .probe = msm8998_pinctrl_probe, 1546a3a093aeSKhan, Imran .remove = msm_pinctrl_remove, 1547a3a093aeSKhan, Imran }; 1548a3a093aeSKhan, Imran 1549a3a093aeSKhan, Imran static int __init msm8998_pinctrl_init(void) 1550a3a093aeSKhan, Imran { 1551a3a093aeSKhan, Imran return platform_driver_register(&msm8998_pinctrl_driver); 1552a3a093aeSKhan, Imran } 1553a3a093aeSKhan, Imran arch_initcall(msm8998_pinctrl_init); 1554a3a093aeSKhan, Imran 1555a3a093aeSKhan, Imran static void __exit msm8998_pinctrl_exit(void) 1556a3a093aeSKhan, Imran { 1557a3a093aeSKhan, Imran platform_driver_unregister(&msm8998_pinctrl_driver); 1558a3a093aeSKhan, Imran } 1559a3a093aeSKhan, Imran module_exit(msm8998_pinctrl_exit); 1560a3a093aeSKhan, Imran 1561a3a093aeSKhan, Imran MODULE_DESCRIPTION("QTI msm8998 pinctrl driver"); 1562a3a093aeSKhan, Imran MODULE_LICENSE("GPL v2"); 1563a3a093aeSKhan, Imran MODULE_DEVICE_TABLE(of, msm8998_pinctrl_of_match); 1564