brintos

brintos / linux-shallow public Read only

0
0
Text · 58.8 KiB · dd19e74 Raw
1268 lines · c
1// SPDX-License-Identifier: GPL-2.02/*3 * Copyright (C) 2021 MediaTek Inc.4 *5 * Author: Guodong Liu <guodong.liu@mediatek.com>6 *7 */8 9#include "pinctrl-mtk-mt8186.h"10#include "pinctrl-paris.h"11 12/* MT8186 have multiple bases to program pin configuration listed as the below:13 * iocfg[0]:0x10005000, iocfg[1]:0x10002000, iocfg[2]:0x10002200,14 * iocfg[3]:0x10002400, iocfg[4]:0x10002600, iocfg[5]:0x10002800,15 * iocfg[6]:0x10002C00.16 * _i_based could be used to indicate what base the pin should be mapped into.17 */18 19#define PIN_FIELD_BASE(s_pin, e_pin, i_base, s_addr, x_addrs, s_bit, x_bits) \20	PIN_FIELD_CALC(s_pin, e_pin, i_base, s_addr, x_addrs, s_bit, x_bits, 32, 0)21 22#define PINS_FIELD_BASE(s_pin, e_pin, i_base, s_addr, x_addrs, s_bit, x_bits) \23	PIN_FIELD_CALC(s_pin, e_pin, i_base, s_addr, x_addrs, s_bit, x_bits, 32, 1)24 25static const struct mtk_pin_field_calc mt8186_pin_mode_range[] = {26	PIN_FIELD(0, 184, 0x300, 0x10, 0, 4),27};28 29static const struct mtk_pin_field_calc mt8186_pin_dir_range[] = {30	PIN_FIELD(0, 184, 0x0, 0x10, 0, 1),31};32 33static const struct mtk_pin_field_calc mt8186_pin_di_range[] = {34	PIN_FIELD(0, 184, 0x200, 0x10, 0, 1),35};36 37static const struct mtk_pin_field_calc mt8186_pin_do_range[] = {38	PIN_FIELD(0, 184, 0x100, 0x10, 0, 1),39};40 41static const struct mtk_pin_field_calc mt8186_pin_ies_range[] = {42	PIN_FIELD_BASE(0, 0, 6, 0x0030, 0x10, 13, 1),43	PIN_FIELD_BASE(1, 1, 6, 0x0030, 0x10, 14, 1),44	PIN_FIELD_BASE(2, 2, 6, 0x0030, 0x10, 17, 1),45	PIN_FIELD_BASE(3, 3, 6, 0x0030, 0x10, 18, 1),46	PIN_FIELD_BASE(4, 4, 6, 0x0030, 0x10, 19, 1),47	PIN_FIELD_BASE(5, 5, 6, 0x0030, 0x10, 20, 1),48	PIN_FIELD_BASE(6, 6, 4, 0x0020, 0x10, 19, 1),49	PIN_FIELD_BASE(7, 7, 4, 0x0020, 0x10, 20, 1),50	PIN_FIELD_BASE(8, 8, 4, 0x0020, 0x10, 21, 1),51	PIN_FIELD_BASE(9, 9, 4, 0x0020, 0x10, 22, 1),52	PIN_FIELD_BASE(10, 10, 4, 0x0020, 0x10, 16, 1),53	PIN_FIELD_BASE(11, 11, 4, 0x0020, 0x10, 17, 1),54	PIN_FIELD_BASE(12, 12, 4, 0x0020, 0x10, 18, 1),55	PIN_FIELD_BASE(13, 13, 3, 0x0040, 0x10, 0, 1),56	PIN_FIELD_BASE(14, 14, 3, 0x0040, 0x10, 1, 1),57	PIN_FIELD_BASE(15, 15, 6, 0x0030, 0x10, 15, 1),58	PIN_FIELD_BASE(16, 16, 6, 0x0030, 0x10, 16, 1),59	PIN_FIELD_BASE(17, 17, 5, 0x0050, 0x10, 9, 1),60	PIN_FIELD_BASE(18, 18, 5, 0x0050, 0x10, 10, 1),61	PIN_FIELD_BASE(19, 19, 5, 0x0050, 0x10, 3, 1),62	PIN_FIELD_BASE(20, 20, 5, 0x0050, 0x10, 6, 1),63	PIN_FIELD_BASE(21, 21, 5, 0x0050, 0x10, 4, 1),64	PIN_FIELD_BASE(22, 22, 5, 0x0050, 0x10, 7, 1),65	PIN_FIELD_BASE(23, 23, 5, 0x0050, 0x10, 5, 1),66	PIN_FIELD_BASE(24, 24, 5, 0x0050, 0x10, 8, 1),67	PIN_FIELD_BASE(25, 25, 5, 0x0050, 0x10, 18, 1),68	PIN_FIELD_BASE(26, 26, 5, 0x0050, 0x10, 15, 1),69	PIN_FIELD_BASE(27, 27, 5, 0x0050, 0x10, 17, 1),70	PIN_FIELD_BASE(28, 28, 5, 0x0050, 0x10, 16, 1),71	PIN_FIELD_BASE(29, 29, 6, 0x0030, 0x10, 0, 1),72	PIN_FIELD_BASE(30, 30, 6, 0x0030, 0x10, 1, 1),73	PIN_FIELD_BASE(31, 31, 6, 0x0030, 0x10, 2, 1),74	PIN_FIELD_BASE(32, 32, 2, 0x0040, 0x10, 25, 1),75	PIN_FIELD_BASE(33, 33, 2, 0x0040, 0x10, 27, 1),76	PIN_FIELD_BASE(34, 34, 2, 0x0040, 0x10, 26, 1),77	PIN_FIELD_BASE(35, 35, 2, 0x0040, 0x10, 28, 1),78	PIN_FIELD_BASE(36, 36, 2, 0x0040, 0x10, 9, 1),79	PIN_FIELD_BASE(37, 37, 2, 0x0040, 0x10, 10, 1),80	PIN_FIELD_BASE(38, 38, 2, 0x0040, 0x10, 12, 1),81	PIN_FIELD_BASE(39, 39, 2, 0x0040, 0x10, 11, 1),82	PIN_FIELD_BASE(40, 40, 2, 0x0040, 0x10, 13, 1),83	PIN_FIELD_BASE(41, 41, 2, 0x0040, 0x10, 14, 1),84	PIN_FIELD_BASE(42, 42, 2, 0x0040, 0x10, 16, 1),85	PIN_FIELD_BASE(43, 43, 2, 0x0040, 0x10, 15, 1),86	PIN_FIELD_BASE(44, 44, 5, 0x0060, 0x10, 0, 1),87	PIN_FIELD_BASE(45, 45, 5, 0x0060, 0x10, 1, 1),88	PIN_FIELD_BASE(46, 46, 5, 0x0060, 0x10, 3, 1),89	PIN_FIELD_BASE(47, 47, 5, 0x0060, 0x10, 2, 1),90	PIN_FIELD_BASE(48, 48, 2, 0x0040, 0x10, 17, 1),91	PIN_FIELD_BASE(49, 49, 2, 0x0040, 0x10, 18, 1),92	PIN_FIELD_BASE(50, 50, 2, 0x0040, 0x10, 20, 1),93	PIN_FIELD_BASE(51, 51, 2, 0x0040, 0x10, 19, 1),94	PIN_FIELD_BASE(52, 52, 3, 0x0040, 0x10, 18, 1),95	PIN_FIELD_BASE(53, 53, 3, 0x0040, 0x10, 19, 1),96	PIN_FIELD_BASE(54, 54, 3, 0x0040, 0x10, 21, 1),97	PIN_FIELD_BASE(55, 55, 3, 0x0040, 0x10, 20, 1),98	PIN_FIELD_BASE(56, 56, 5, 0x0050, 0x10, 12, 1),99	PIN_FIELD_BASE(57, 57, 5, 0x0050, 0x10, 11, 1),100	PIN_FIELD_BASE(58, 58, 5, 0x0050, 0x10, 13, 1),101	PIN_FIELD_BASE(59, 59, 5, 0x0050, 0x10, 14, 1),102	PIN_FIELD_BASE(60, 60, 3, 0x0040, 0x10, 27, 1),103	PIN_FIELD_BASE(61, 61, 3, 0x0040, 0x10, 22, 1),104	PIN_FIELD_BASE(62, 62, 3, 0x0040, 0x10, 28, 1),105	PIN_FIELD_BASE(63, 63, 3, 0x0040, 0x10, 23, 1),106	PIN_FIELD_BASE(64, 64, 3, 0x0040, 0x10, 24, 1),107	PIN_FIELD_BASE(65, 65, 3, 0x0040, 0x10, 25, 1),108	PIN_FIELD_BASE(66, 66, 3, 0x0040, 0x10, 26, 1),109	PIN_FIELD_BASE(67, 67, 1, 0x0050, 0x10, 18, 1),110	PIN_FIELD_BASE(68, 68, 1, 0x0050, 0x10, 8, 1),111	PIN_FIELD_BASE(69, 69, 1, 0x0050, 0x10, 9, 1),112	PIN_FIELD_BASE(70, 70, 1, 0x0050, 0x10, 19, 1),113	PIN_FIELD_BASE(71, 71, 1, 0x0050, 0x10, 10, 1),114	PIN_FIELD_BASE(72, 72, 1, 0x0050, 0x10, 11, 1),115	PIN_FIELD_BASE(73, 73, 1, 0x0050, 0x10, 12, 1),116	PIN_FIELD_BASE(74, 74, 1, 0x0050, 0x10, 13, 1),117	PIN_FIELD_BASE(75, 75, 1, 0x0050, 0x10, 14, 1),118	PIN_FIELD_BASE(76, 76, 1, 0x0050, 0x10, 15, 1),119	PIN_FIELD_BASE(77, 77, 1, 0x0050, 0x10, 16, 1),120	PIN_FIELD_BASE(78, 78, 1, 0x0050, 0x10, 17, 1),121	PIN_FIELD_BASE(79, 79, 5, 0x0050, 0x10, 24, 1),122	PIN_FIELD_BASE(80, 80, 5, 0x0050, 0x10, 25, 1),123	PIN_FIELD_BASE(81, 81, 5, 0x0050, 0x10, 26, 1),124	PIN_FIELD_BASE(82, 82, 5, 0x0050, 0x10, 27, 1),125	PIN_FIELD_BASE(83, 83, 6, 0x0030, 0x10, 3, 1),126	PIN_FIELD_BASE(84, 84, 3, 0x0040, 0x10, 4, 1),127	PIN_FIELD_BASE(85, 85, 3, 0x0040, 0x10, 5, 1),128	PIN_FIELD_BASE(86, 86, 3, 0x0040, 0x10, 6, 1),129	PIN_FIELD_BASE(87, 87, 3, 0x0040, 0x10, 7, 1),130	PIN_FIELD_BASE(88, 88, 3, 0x0040, 0x10, 8, 1),131	PIN_FIELD_BASE(89, 89, 3, 0x0040, 0x10, 9, 1),132	PIN_FIELD_BASE(90, 90, 3, 0x0040, 0x10, 2, 1),133	PIN_FIELD_BASE(91, 91, 3, 0x0040, 0x10, 29, 1),134	PIN_FIELD_BASE(92, 92, 3, 0x0040, 0x10, 31, 1),135	PIN_FIELD_BASE(93, 93, 3, 0x0040, 0x10, 3, 1),136	PIN_FIELD_BASE(94, 94, 3, 0x0040, 0x10, 30, 1),137	PIN_FIELD_BASE(95, 95, 3, 0x0050, 0x10, 0, 1),138	PIN_FIELD_BASE(96, 96, 2, 0x0040, 0x10, 1, 1),139	PIN_FIELD_BASE(97, 97, 2, 0x0040, 0x10, 0, 1),140	PIN_FIELD_BASE(98, 98, 2, 0x0040, 0x10, 2, 1),141	PIN_FIELD_BASE(99, 99, 4, 0x0020, 0x10, 14, 1),142	PIN_FIELD_BASE(100, 100, 4, 0x0020, 0x10, 15, 1),143	PIN_FIELD_BASE(101, 101, 4, 0x0020, 0x10, 13, 1),144	PIN_FIELD_BASE(102, 102, 4, 0x0020, 0x10, 12, 1),145	PIN_FIELD_BASE(103, 103, 4, 0x0020, 0x10, 0, 1),146	PIN_FIELD_BASE(104, 104, 4, 0x0020, 0x10, 1, 1),147	PIN_FIELD_BASE(105, 105, 4, 0x0020, 0x10, 4, 1),148	PIN_FIELD_BASE(106, 106, 4, 0x0020, 0x10, 5, 1),149	PIN_FIELD_BASE(107, 107, 4, 0x0020, 0x10, 6, 1),150	PIN_FIELD_BASE(108, 108, 4, 0x0020, 0x10, 7, 1),151	PIN_FIELD_BASE(109, 109, 4, 0x0020, 0x10, 8, 1),152	PIN_FIELD_BASE(110, 110, 4, 0x0020, 0x10, 9, 1),153	PIN_FIELD_BASE(111, 111, 4, 0x0020, 0x10, 10, 1),154	PIN_FIELD_BASE(112, 112, 4, 0x0020, 0x10, 11, 1),155	PIN_FIELD_BASE(113, 113, 4, 0x0020, 0x10, 2, 1),156	PIN_FIELD_BASE(114, 114, 4, 0x0020, 0x10, 3, 1),157	PIN_FIELD_BASE(115, 115, 3, 0x0040, 0x10, 10, 1),158	PIN_FIELD_BASE(116, 116, 3, 0x0040, 0x10, 13, 1),159	PIN_FIELD_BASE(117, 117, 3, 0x0040, 0x10, 11, 1),160	PIN_FIELD_BASE(118, 118, 3, 0x0040, 0x10, 12, 1),161	PIN_FIELD_BASE(119, 119, 5, 0x0050, 0x10, 22, 1),162	PIN_FIELD_BASE(120, 120, 5, 0x0050, 0x10, 19, 1),163	PIN_FIELD_BASE(121, 121, 5, 0x0050, 0x10, 20, 1),164	PIN_FIELD_BASE(122, 122, 5, 0x0050, 0x10, 21, 1),165	PIN_FIELD_BASE(123, 123, 5, 0x0050, 0x10, 23, 1),166	PIN_FIELD_BASE(124, 124, 5, 0x0050, 0x10, 0, 1),167	PIN_FIELD_BASE(125, 125, 5, 0x0050, 0x10, 1, 1),168	PIN_FIELD_BASE(126, 126, 5, 0x0050, 0x10, 2, 1),169	PIN_FIELD_BASE(127, 127, 3, 0x0040, 0x10, 14, 1),170	PIN_FIELD_BASE(128, 128, 3, 0x0040, 0x10, 16, 1),171	PIN_FIELD_BASE(129, 129, 5, 0x0050, 0x10, 28, 1),172	PIN_FIELD_BASE(130, 130, 5, 0x0050, 0x10, 30, 1),173	PIN_FIELD_BASE(131, 131, 5, 0x0050, 0x10, 29, 1),174	PIN_FIELD_BASE(132, 132, 5, 0x0050, 0x10, 31, 1),175	PIN_FIELD_BASE(133, 133, 1, 0x0050, 0x10, 21, 1),176	PIN_FIELD_BASE(134, 134, 1, 0x0050, 0x10, 24, 1),177	PIN_FIELD_BASE(135, 135, 6, 0x0030, 0x10, 21, 1),178	PIN_FIELD_BASE(136, 136, 6, 0x0030, 0x10, 24, 1),179	PIN_FIELD_BASE(137, 137, 1, 0x0050, 0x10, 22, 1),180	PIN_FIELD_BASE(138, 138, 1, 0x0050, 0x10, 25, 1),181	PIN_FIELD_BASE(139, 139, 2, 0x0040, 0x10, 7, 1),182	PIN_FIELD_BASE(140, 140, 2, 0x0040, 0x10, 8, 1),183	PIN_FIELD_BASE(141, 141, 3, 0x0040, 0x10, 15, 1),184	PIN_FIELD_BASE(142, 142, 3, 0x0040, 0x10, 17, 1),185	PIN_FIELD_BASE(143, 143, 6, 0x0030, 0x10, 22, 1),186	PIN_FIELD_BASE(144, 144, 6, 0x0030, 0x10, 25, 1),187	PIN_FIELD_BASE(145, 145, 6, 0x0030, 0x10, 23, 1),188	PIN_FIELD_BASE(146, 146, 6, 0x0030, 0x10, 26, 1),189	PIN_FIELD_BASE(147, 147, 4, 0x0020, 0x10, 23, 1),190	PIN_FIELD_BASE(148, 148, 4, 0x0020, 0x10, 24, 1),191	PIN_FIELD_BASE(149, 149, 4, 0x0020, 0x10, 25, 1),192	PIN_FIELD_BASE(150, 150, 4, 0x0020, 0x10, 26, 1),193	PIN_FIELD_BASE(151, 151, 4, 0x0020, 0x10, 27, 1),194	PIN_FIELD_BASE(152, 152, 4, 0x0020, 0x10, 28, 1),195	PIN_FIELD_BASE(153, 153, 4, 0x0020, 0x10, 29, 1),196	PIN_FIELD_BASE(154, 154, 4, 0x0020, 0x10, 30, 1),197	PIN_FIELD_BASE(155, 155, 4, 0x0020, 0x10, 31, 1),198	PIN_FIELD_BASE(156, 156, 4, 0x0030, 0x10, 0, 1),199	PIN_FIELD_BASE(157, 157, 2, 0x0040, 0x10, 4, 1),200	PIN_FIELD_BASE(158, 158, 2, 0x0040, 0x10, 3, 1),201	PIN_FIELD_BASE(159, 159, 2, 0x0040, 0x10, 6, 1),202	PIN_FIELD_BASE(160, 160, 2, 0x0040, 0x10, 5, 1),203	PIN_FIELD_BASE(161, 161, 2, 0x0040, 0x10, 23, 1),204	PIN_FIELD_BASE(162, 162, 2, 0x0040, 0x10, 24, 1),205	PIN_FIELD_BASE(163, 163, 1, 0x0050, 0x10, 23, 1),206	PIN_FIELD_BASE(164, 164, 1, 0x0050, 0x10, 20, 1),207	PIN_FIELD_BASE(165, 165, 1, 0x0050, 0x10, 26, 1),208	PIN_FIELD_BASE(166, 166, 1, 0x0050, 0x10, 1, 1),209	PIN_FIELD_BASE(167, 167, 1, 0x0050, 0x10, 7, 1),210	PIN_FIELD_BASE(168, 168, 1, 0x0050, 0x10, 4, 1),211	PIN_FIELD_BASE(169, 169, 1, 0x0050, 0x10, 5, 1),212	PIN_FIELD_BASE(170, 170, 1, 0x0050, 0x10, 0, 1),213	PIN_FIELD_BASE(171, 171, 1, 0x0050, 0x10, 6, 1),214	PIN_FIELD_BASE(172, 172, 1, 0x0050, 0x10, 2, 1),215	PIN_FIELD_BASE(173, 173, 1, 0x0050, 0x10, 3, 1),216	PIN_FIELD_BASE(174, 174, 6, 0x0030, 0x10, 7, 1),217	PIN_FIELD_BASE(175, 175, 6, 0x0030, 0x10, 8, 1),218	PIN_FIELD_BASE(176, 176, 6, 0x0030, 0x10, 4, 1),219	PIN_FIELD_BASE(177, 177, 6, 0x0030, 0x10, 5, 1),220	PIN_FIELD_BASE(178, 178, 6, 0x0030, 0x10, 6, 1),221	PIN_FIELD_BASE(179, 179, 6, 0x0030, 0x10, 9, 1),222	PIN_FIELD_BASE(180, 180, 6, 0x0030, 0x10, 10, 1),223	PIN_FIELD_BASE(181, 181, 6, 0x0030, 0x10, 11, 1),224	PIN_FIELD_BASE(182, 182, 6, 0x0030, 0x10, 12, 1),225	PIN_FIELD_BASE(183, 183, 2, 0x0040, 0x10, 21, 1),226	PIN_FIELD_BASE(184, 184, 2, 0x0040, 0x10, 22, 1),227};228 229static const struct mtk_pin_field_calc mt8186_pin_smt_range[] = {230	PIN_FIELD_BASE(0, 0, 6, 0x0080, 0x10, 0, 1),231	PIN_FIELD_BASE(1, 1, 6, 0x0080, 0x10, 0, 1),232	PIN_FIELD_BASE(2, 2, 6, 0x0080, 0x10, 0, 1),233	PIN_FIELD_BASE(3, 3, 6, 0x0080, 0x10, 0, 1),234	PIN_FIELD_BASE(4, 4, 6, 0x0080, 0x10, 1, 1),235	PIN_FIELD_BASE(5, 5, 6, 0x0080, 0x10, 1, 1),236	PIN_FIELD_BASE(6, 6, 4, 0x0090, 0x10, 0, 1),237	PIN_FIELD_BASE(7, 7, 4, 0x0090, 0x10, 1, 1),238	PIN_FIELD_BASE(8, 8, 4, 0x0090, 0x10, 1, 1),239	PIN_FIELD_BASE(9, 9, 4, 0x0090, 0x10, 1, 1),240	PIN_FIELD_BASE(10, 10, 4, 0x0090, 0x10, 0, 1),241	PIN_FIELD_BASE(11, 11, 4, 0x0090, 0x10, 0, 1),242	PIN_FIELD_BASE(12, 12, 4, 0x0090, 0x10, 0, 1),243	PIN_FIELD_BASE(13, 13, 3, 0x00e0, 0x10, 11, 1),244	PIN_FIELD_BASE(14, 14, 3, 0x00e0, 0x10, 11, 1),245	PIN_FIELD_BASE(15, 15, 6, 0x0080, 0x10, 2, 1),246	PIN_FIELD_BASE(16, 16, 6, 0x0080, 0x10, 2, 1),247	PIN_FIELD_BASE(17, 17, 5, 0x00e0, 0x10, 3, 1),248	PIN_FIELD_BASE(18, 18, 5, 0x00e0, 0x10, 7, 1),249	PIN_FIELD_BASE(19, 19, 5, 0x00e0, 0x10, 6, 1),250	PIN_FIELD_BASE(20, 20, 5, 0x00e0, 0x10, 5, 1),251	PIN_FIELD_BASE(21, 21, 5, 0x00e0, 0x10, 6, 1),252	PIN_FIELD_BASE(22, 22, 5, 0x00e0, 0x10, 5, 1),253	PIN_FIELD_BASE(23, 23, 5, 0x00e0, 0x10, 7, 1),254	PIN_FIELD_BASE(24, 24, 5, 0x00e0, 0x10, 10, 1),255	PIN_FIELD_BASE(25, 25, 5, 0x00e0, 0x10, 7, 1),256	PIN_FIELD_BASE(26, 26, 5, 0x00e0, 0x10, 6, 1),257	PIN_FIELD_BASE(27, 27, 5, 0x00e0, 0x10, 6, 1),258	PIN_FIELD_BASE(28, 28, 5, 0x00e0, 0x10, 7, 1),259	PIN_FIELD_BASE(29, 29, 6, 0x0080, 0x10, 1, 1),260	PIN_FIELD_BASE(30, 30, 6, 0x0080, 0x10, 1, 1),261	PIN_FIELD_BASE(31, 31, 6, 0x0080, 0x10, 2, 1),262	PIN_FIELD_BASE(32, 32, 2, 0x0090, 0x10, 2, 1),263	PIN_FIELD_BASE(33, 33, 2, 0x0090, 0x10, 2, 1),264	PIN_FIELD_BASE(34, 34, 2, 0x0090, 0x10, 1, 1),265	PIN_FIELD_BASE(35, 35, 2, 0x0090, 0x10, 1, 1),266	PIN_FIELD_BASE(36, 36, 2, 0x0090, 0x10, 3, 1),267	PIN_FIELD_BASE(37, 37, 2, 0x0090, 0x10, 3, 1),268	PIN_FIELD_BASE(38, 38, 2, 0x0090, 0x10, 4, 1),269	PIN_FIELD_BASE(39, 39, 2, 0x0090, 0x10, 3, 1),270	PIN_FIELD_BASE(40, 40, 2, 0x0090, 0x10, 5, 1),271	PIN_FIELD_BASE(41, 41, 2, 0x0090, 0x10, 4, 1),272	PIN_FIELD_BASE(42, 42, 2, 0x0090, 0x10, 4, 1),273	PIN_FIELD_BASE(43, 43, 2, 0x0090, 0x10, 4, 1),274	PIN_FIELD_BASE(44, 44, 5, 0x00e0, 0x10, 9, 1),275	PIN_FIELD_BASE(45, 45, 5, 0x00e0, 0x10, 8, 1),276	PIN_FIELD_BASE(46, 46, 5, 0x00e0, 0x10, 8, 1),277	PIN_FIELD_BASE(47, 47, 5, 0x00e0, 0x10, 9, 1),278	PIN_FIELD_BASE(48, 48, 2, 0x0090, 0x10, 5, 1),279	PIN_FIELD_BASE(49, 49, 2, 0x0090, 0x10, 5, 1),280	PIN_FIELD_BASE(50, 50, 2, 0x0090, 0x10, 5, 1),281	PIN_FIELD_BASE(51, 51, 2, 0x0090, 0x10, 6, 1),282	PIN_FIELD_BASE(52, 52, 3, 0x00e0, 0x10, 9, 1),283	PIN_FIELD_BASE(53, 53, 3, 0x00e0, 0x10, 10, 1),284	PIN_FIELD_BASE(54, 54, 3, 0x00e0, 0x10, 9, 1),285	PIN_FIELD_BASE(55, 55, 3, 0x00e0, 0x10, 9, 1),286	PIN_FIELD_BASE(56, 56, 5, 0x00e0, 0x10, 8, 1),287	PIN_FIELD_BASE(57, 57, 5, 0x00e0, 0x10, 9, 1),288	PIN_FIELD_BASE(58, 58, 5, 0x00e0, 0x10, 9, 1),289	PIN_FIELD_BASE(59, 59, 5, 0x00e0, 0x10, 8, 1),290	PIN_FIELD_BASE(60, 60, 3, 0x00e0, 0x10, 6, 1),291	PIN_FIELD_BASE(61, 61, 3, 0x00e0, 0x10, 6, 1),292	PIN_FIELD_BASE(62, 62, 3, 0x00e0, 0x10, 6, 1),293	PIN_FIELD_BASE(63, 63, 3, 0x00e0, 0x10, 6, 1),294	PIN_FIELD_BASE(64, 64, 3, 0x00e0, 0x10, 7, 1),295	PIN_FIELD_BASE(65, 65, 3, 0x00e0, 0x10, 7, 1),296	PIN_FIELD_BASE(66, 66, 3, 0x00e0, 0x10, 7, 1),297	PIN_FIELD_BASE(67, 67, 1, 0x00f0, 0x10, 10, 1),298	PIN_FIELD_BASE(68, 68, 1, 0x00f0, 0x10, 0, 1),299	PIN_FIELD_BASE(69, 69, 1, 0x00f0, 0x10, 1, 1),300	PIN_FIELD_BASE(70, 70, 1, 0x00f0, 0x10, 11, 1),301	PIN_FIELD_BASE(71, 71, 1, 0x00f0, 0x10, 2, 1),302	PIN_FIELD_BASE(72, 72, 1, 0x00f0, 0x10, 3, 1),303	PIN_FIELD_BASE(73, 73, 1, 0x00f0, 0x10, 4, 1),304	PIN_FIELD_BASE(74, 74, 1, 0x00f0, 0x10, 5, 1),305	PIN_FIELD_BASE(75, 75, 1, 0x00f0, 0x10, 6, 1),306	PIN_FIELD_BASE(76, 76, 1, 0x00f0, 0x10, 7, 1),307	PIN_FIELD_BASE(77, 77, 1, 0x00f0, 0x10, 8, 1),308	PIN_FIELD_BASE(78, 78, 1, 0x00f0, 0x10, 9, 1),309	PIN_FIELD_BASE(79, 79, 5, 0x00e0, 0x10, 5, 1),310	PIN_FIELD_BASE(80, 80, 5, 0x00e0, 0x10, 5, 1),311	PIN_FIELD_BASE(81, 81, 5, 0x00e0, 0x10, 4, 1),312	PIN_FIELD_BASE(82, 82, 5, 0x00e0, 0x10, 4, 1),313	PIN_FIELD_BASE(83, 83, 6, 0x0080, 0x10, 2, 1),314	PIN_FIELD_BASE(84, 84, 3, 0x00e0, 0x10, 0, 1),315	PIN_FIELD_BASE(85, 85, 3, 0x00e0, 0x10, 1, 1),316	PIN_FIELD_BASE(86, 86, 3, 0x00e0, 0x10, 2, 1),317	PIN_FIELD_BASE(87, 87, 3, 0x00e0, 0x10, 3, 1),318	PIN_FIELD_BASE(88, 88, 3, 0x00e0, 0x10, 4, 1),319	PIN_FIELD_BASE(89, 89, 3, 0x00e0, 0x10, 5, 1),320	PIN_FIELD_BASE(90, 90, 3, 0x00e0, 0x10, 7, 1),321	PIN_FIELD_BASE(91, 91, 3, 0x00e0, 0x10, 8, 1),322	PIN_FIELD_BASE(92, 92, 3, 0x00e0, 0x10, 8, 1),323	PIN_FIELD_BASE(93, 93, 3, 0x00e0, 0x10, 8, 1),324	PIN_FIELD_BASE(94, 94, 3, 0x00e0, 0x10, 8, 1),325	PIN_FIELD_BASE(95, 95, 3, 0x00e0, 0x10, 9, 1),326	PIN_FIELD_BASE(96, 96, 2, 0x0090, 0x10, 3, 1),327	PIN_FIELD_BASE(97, 97, 2, 0x0090, 0x10, 2, 1),328	PIN_FIELD_BASE(98, 98, 2, 0x0090, 0x10, 1, 1),329	PIN_FIELD_BASE(99, 99, 4, 0x0090, 0x10, 4, 1),330	PIN_FIELD_BASE(100, 100, 4, 0x0090, 0x10, 4, 1),331	PIN_FIELD_BASE(101, 101, 4, 0x0090, 0x10, 4, 1),332	PIN_FIELD_BASE(102, 102, 4, 0x0090, 0x10, 5, 1),333	PIN_FIELD_BASE(103, 103, 4, 0x0090, 0x10, 5, 1),334	PIN_FIELD_BASE(104, 104, 4, 0x0090, 0x10, 5, 1),335	PIN_FIELD_BASE(105, 105, 4, 0x0090, 0x10, 5, 1),336	PIN_FIELD_BASE(106, 106, 4, 0x0090, 0x10, 6, 1),337	PIN_FIELD_BASE(107, 107, 4, 0x0090, 0x10, 6, 1),338	PIN_FIELD_BASE(108, 108, 4, 0x0090, 0x10, 6, 1),339	PIN_FIELD_BASE(109, 109, 4, 0x0090, 0x10, 6, 1),340	PIN_FIELD_BASE(110, 110, 4, 0x0090, 0x10, 7, 1),341	PIN_FIELD_BASE(111, 111, 4, 0x0090, 0x10, 7, 1),342	PIN_FIELD_BASE(112, 112, 4, 0x0090, 0x10, 7, 1),343	PIN_FIELD_BASE(113, 113, 4, 0x0090, 0x10, 7, 1),344	PIN_FIELD_BASE(114, 114, 4, 0x0090, 0x10, 8, 1),345	PIN_FIELD_BASE(115, 115, 3, 0x00e0, 0x10, 10, 1),346	PIN_FIELD_BASE(116, 116, 3, 0x00e0, 0x10, 11, 1),347	PIN_FIELD_BASE(117, 117, 3, 0x00e0, 0x10, 10, 1),348	PIN_FIELD_BASE(118, 118, 3, 0x00e0, 0x10, 10, 1),349	PIN_FIELD_BASE(119, 119, 5, 0x00e0, 0x10, 4, 1),350	PIN_FIELD_BASE(120, 120, 5, 0x00e0, 0x10, 4, 1),351	PIN_FIELD_BASE(121, 121, 5, 0x00e0, 0x10, 3, 1),352	PIN_FIELD_BASE(122, 122, 5, 0x00e0, 0x10, 3, 1),353	PIN_FIELD_BASE(123, 123, 5, 0x00e0, 0x10, 3, 1),354	PIN_FIELD_BASE(124, 124, 5, 0x00e0, 0x10, 0, 1),355	PIN_FIELD_BASE(125, 125, 5, 0x00e0, 0x10, 1, 1),356	PIN_FIELD_BASE(126, 126, 5, 0x00e0, 0x10, 2, 1),357	PIN_FIELD_BASE(127, 127, 3, 0x00e0, 0x10, 12, 1),358	PIN_FIELD_BASE(128, 128, 3, 0x00e0, 0x10, 14, 1),359	PIN_FIELD_BASE(129, 129, 5, 0x00e0, 0x10, 11, 1),360	PIN_FIELD_BASE(130, 130, 5, 0x00e0, 0x10, 13, 1),361	PIN_FIELD_BASE(131, 131, 5, 0x00e0, 0x10, 12, 1),362	PIN_FIELD_BASE(132, 132, 5, 0x00e0, 0x10, 14, 1),363	PIN_FIELD_BASE(133, 133, 1, 0x00f0, 0x10, 15, 1),364	PIN_FIELD_BASE(134, 134, 1, 0x00f0, 0x10, 17, 1),365	PIN_FIELD_BASE(135, 135, 6, 0x0080, 0x10, 6, 1),366	PIN_FIELD_BASE(136, 136, 6, 0x0080, 0x10, 9, 1),367	PIN_FIELD_BASE(137, 137, 1, 0x00f0, 0x10, 16, 1),368	PIN_FIELD_BASE(138, 138, 1, 0x00f0, 0x10, 18, 1),369	PIN_FIELD_BASE(139, 139, 2, 0x0090, 0x10, 7, 1),370	PIN_FIELD_BASE(140, 140, 2, 0x0090, 0x10, 8, 1),371	PIN_FIELD_BASE(141, 141, 3, 0x00e0, 0x10, 13, 1),372	PIN_FIELD_BASE(142, 142, 3, 0x00e0, 0x10, 15, 1),373	PIN_FIELD_BASE(143, 143, 6, 0x0080, 0x10, 7, 1),374	PIN_FIELD_BASE(144, 144, 6, 0x0080, 0x10, 10, 1),375	PIN_FIELD_BASE(145, 145, 6, 0x0080, 0x10, 8, 1),376	PIN_FIELD_BASE(146, 146, 6, 0x0080, 0x10, 11, 1),377	PIN_FIELD_BASE(147, 147, 4, 0x0090, 0x10, 2, 1),378	PIN_FIELD_BASE(148, 148, 4, 0x0090, 0x10, 2, 1),379	PIN_FIELD_BASE(149, 149, 4, 0x0090, 0x10, 2, 1),380	PIN_FIELD_BASE(150, 150, 4, 0x0090, 0x10, 2, 1),381	PIN_FIELD_BASE(151, 151, 4, 0x0090, 0x10, 3, 1),382	PIN_FIELD_BASE(152, 152, 4, 0x0090, 0x10, 1, 1),383	PIN_FIELD_BASE(153, 153, 4, 0x0090, 0x10, 3, 1),384	PIN_FIELD_BASE(154, 154, 4, 0x0090, 0x10, 3, 1),385	PIN_FIELD_BASE(155, 155, 4, 0x0090, 0x10, 3, 1),386	PIN_FIELD_BASE(156, 156, 4, 0x0090, 0x10, 4, 1),387	PIN_FIELD_BASE(157, 157, 2, 0x0090, 0x10, 0, 1),388	PIN_FIELD_BASE(158, 158, 2, 0x0090, 0x10, 0, 1),389	PIN_FIELD_BASE(159, 159, 2, 0x0090, 0x10, 0, 1),390	PIN_FIELD_BASE(160, 160, 2, 0x0090, 0x10, 0, 1),391	PIN_FIELD_BASE(161, 161, 2, 0x0090, 0x10, 2, 1),392	PIN_FIELD_BASE(162, 162, 2, 0x0090, 0x10, 1, 1),393	PIN_FIELD_BASE(163, 163, 1, 0x00f0, 0x10, 14, 1),394	PIN_FIELD_BASE(164, 164, 1, 0x00f0, 0x10, 12, 1),395	PIN_FIELD_BASE(165, 165, 1, 0x00f0, 0x10, 12, 1),396	PIN_FIELD_BASE(166, 166, 1, 0x00f0, 0x10, 13, 1),397	PIN_FIELD_BASE(167, 167, 1, 0x00f0, 0x10, 13, 1),398	PIN_FIELD_BASE(168, 168, 1, 0x00f0, 0x10, 12, 1),399	PIN_FIELD_BASE(169, 169, 1, 0x00f0, 0x10, 14, 1),400	PIN_FIELD_BASE(170, 170, 1, 0x00f0, 0x10, 13, 1),401	PIN_FIELD_BASE(171, 171, 1, 0x00f0, 0x10, 13, 1),402	PIN_FIELD_BASE(172, 172, 1, 0x00f0, 0x10, 14, 1),403	PIN_FIELD_BASE(173, 173, 1, 0x00f0, 0x10, 12, 1),404	PIN_FIELD_BASE(174, 174, 6, 0x0080, 0x10, 3, 1),405	PIN_FIELD_BASE(175, 175, 6, 0x0080, 0x10, 3, 1),406	PIN_FIELD_BASE(176, 176, 6, 0x0080, 0x10, 4, 1),407	PIN_FIELD_BASE(177, 177, 6, 0x0080, 0x10, 4, 1),408	PIN_FIELD_BASE(178, 178, 6, 0x0080, 0x10, 3, 1),409	PIN_FIELD_BASE(179, 179, 6, 0x0080, 0x10, 3, 1),410	PIN_FIELD_BASE(180, 180, 6, 0x0080, 0x10, 4, 1),411	PIN_FIELD_BASE(181, 181, 6, 0x0080, 0x10, 4, 1),412	PIN_FIELD_BASE(182, 182, 6, 0x0080, 0x10, 5, 1),413	PIN_FIELD_BASE(183, 183, 2, 0x0090, 0x10, 9, 1),414	PIN_FIELD_BASE(184, 184, 2, 0x0090, 0x10, 10, 1),415};416 417static const struct mtk_pin_field_calc mt8186_pin_pu_range[] = {418	PIN_FIELD_BASE(0, 0, 6, 0x0050, 0x10, 13, 1),419	PIN_FIELD_BASE(1, 1, 6, 0x0050, 0x10, 14, 1),420	PIN_FIELD_BASE(2, 2, 6, 0x0050, 0x10, 17, 1),421	PIN_FIELD_BASE(3, 3, 6, 0x0050, 0x10, 18, 1),422	PIN_FIELD_BASE(4, 4, 6, 0x0050, 0x10, 19, 1),423	PIN_FIELD_BASE(5, 5, 6, 0x0050, 0x10, 20, 1),424	PIN_FIELD_BASE(6, 6, 4, 0x0060, 0x10, 19, 1),425	PIN_FIELD_BASE(7, 7, 4, 0x0060, 0x10, 20, 1),426	PIN_FIELD_BASE(8, 8, 4, 0x0060, 0x10, 21, 1),427	PIN_FIELD_BASE(9, 9, 4, 0x0060, 0x10, 22, 1),428	PIN_FIELD_BASE(10, 10, 4, 0x0060, 0x10, 16, 1),429	PIN_FIELD_BASE(11, 11, 4, 0x0060, 0x10, 17, 1),430	PIN_FIELD_BASE(12, 12, 4, 0x0060, 0x10, 18, 1),431	PIN_FIELD_BASE(13, 13, 3, 0x0080, 0x10, 0, 1),432	PIN_FIELD_BASE(14, 14, 3, 0x0080, 0x10, 1, 1),433	PIN_FIELD_BASE(15, 15, 6, 0x0050, 0x10, 15, 1),434	PIN_FIELD_BASE(16, 16, 6, 0x0050, 0x10, 16, 1),435	PIN_FIELD_BASE(17, 17, 5, 0x0090, 0x10, 9, 1),436	PIN_FIELD_BASE(18, 18, 5, 0x0090, 0x10, 10, 1),437	PIN_FIELD_BASE(19, 19, 5, 0x0090, 0x10, 3, 1),438	PIN_FIELD_BASE(20, 20, 5, 0x0090, 0x10, 6, 1),439	PIN_FIELD_BASE(21, 21, 5, 0x0090, 0x10, 4, 1),440	PIN_FIELD_BASE(22, 22, 5, 0x0090, 0x10, 7, 1),441	PIN_FIELD_BASE(23, 23, 5, 0x0090, 0x10, 5, 1),442	PIN_FIELD_BASE(24, 24, 5, 0x0090, 0x10, 8, 1),443	PIN_FIELD_BASE(25, 25, 5, 0x0090, 0x10, 18, 1),444	PIN_FIELD_BASE(26, 26, 5, 0x0090, 0x10, 15, 1),445	PIN_FIELD_BASE(27, 27, 5, 0x0090, 0x10, 17, 1),446	PIN_FIELD_BASE(28, 28, 5, 0x0090, 0x10, 16, 1),447	PIN_FIELD_BASE(29, 29, 6, 0x0050, 0x10, 0, 1),448	PIN_FIELD_BASE(30, 30, 6, 0x0050, 0x10, 1, 1),449	PIN_FIELD_BASE(31, 31, 6, 0x0050, 0x10, 2, 1),450	PIN_FIELD_BASE(32, 32, 2, 0x0060, 0x10, 25, 1),451	PIN_FIELD_BASE(33, 33, 2, 0x0060, 0x10, 27, 1),452	PIN_FIELD_BASE(34, 34, 2, 0x0060, 0x10, 26, 1),453	PIN_FIELD_BASE(35, 35, 2, 0x0060, 0x10, 28, 1),454	PIN_FIELD_BASE(36, 36, 2, 0x0060, 0x10, 9, 1),455	PIN_FIELD_BASE(37, 37, 2, 0x0060, 0x10, 10, 1),456	PIN_FIELD_BASE(38, 38, 2, 0x0060, 0x10, 12, 1),457	PIN_FIELD_BASE(39, 39, 2, 0x0060, 0x10, 11, 1),458	PIN_FIELD_BASE(40, 40, 2, 0x0060, 0x10, 13, 1),459	PIN_FIELD_BASE(41, 41, 2, 0x0060, 0x10, 14, 1),460	PIN_FIELD_BASE(42, 42, 2, 0x0060, 0x10, 16, 1),461	PIN_FIELD_BASE(43, 43, 2, 0x0060, 0x10, 15, 1),462	PIN_FIELD_BASE(44, 44, 5, 0x0090, 0x10, 28, 1),463	PIN_FIELD_BASE(45, 45, 5, 0x0090, 0x10, 29, 1),464	PIN_FIELD_BASE(46, 46, 5, 0x0090, 0x10, 31, 1),465	PIN_FIELD_BASE(47, 47, 5, 0x0090, 0x10, 30, 1),466	PIN_FIELD_BASE(48, 48, 2, 0x0060, 0x10, 17, 1),467	PIN_FIELD_BASE(49, 49, 2, 0x0060, 0x10, 18, 1),468	PIN_FIELD_BASE(50, 50, 2, 0x0060, 0x10, 20, 1),469	PIN_FIELD_BASE(51, 51, 2, 0x0060, 0x10, 19, 1),470	PIN_FIELD_BASE(52, 52, 3, 0x0080, 0x10, 12, 1),471	PIN_FIELD_BASE(53, 53, 3, 0x0080, 0x10, 13, 1),472	PIN_FIELD_BASE(54, 54, 3, 0x0080, 0x10, 15, 1),473	PIN_FIELD_BASE(55, 55, 3, 0x0080, 0x10, 14, 1),474	PIN_FIELD_BASE(56, 56, 5, 0x0090, 0x10, 12, 1),475	PIN_FIELD_BASE(57, 57, 5, 0x0090, 0x10, 11, 1),476	PIN_FIELD_BASE(58, 58, 5, 0x0090, 0x10, 13, 1),477	PIN_FIELD_BASE(59, 59, 5, 0x0090, 0x10, 14, 1),478	PIN_FIELD_BASE(60, 60, 3, 0x0080, 0x10, 21, 1),479	PIN_FIELD_BASE(61, 61, 3, 0x0080, 0x10, 16, 1),480	PIN_FIELD_BASE(62, 62, 3, 0x0080, 0x10, 22, 1),481	PIN_FIELD_BASE(63, 63, 3, 0x0080, 0x10, 17, 1),482	PIN_FIELD_BASE(64, 64, 3, 0x0080, 0x10, 18, 1),483	PIN_FIELD_BASE(65, 65, 3, 0x0080, 0x10, 19, 1),484	PIN_FIELD_BASE(66, 66, 3, 0x0080, 0x10, 20, 1),485	PIN_FIELD_BASE(83, 83, 6, 0x0050, 0x10, 3, 1),486	PIN_FIELD_BASE(90, 90, 3, 0x0080, 0x10, 2, 1),487	PIN_FIELD_BASE(91, 91, 3, 0x0080, 0x10, 23, 1),488	PIN_FIELD_BASE(92, 92, 3, 0x0080, 0x10, 25, 1),489	PIN_FIELD_BASE(93, 93, 3, 0x0080, 0x10, 3, 1),490	PIN_FIELD_BASE(94, 94, 3, 0x0080, 0x10, 24, 1),491	PIN_FIELD_BASE(95, 95, 3, 0x0080, 0x10, 26, 1),492	PIN_FIELD_BASE(96, 96, 2, 0x0060, 0x10, 1, 1),493	PIN_FIELD_BASE(97, 97, 2, 0x0060, 0x10, 0, 1),494	PIN_FIELD_BASE(98, 98, 2, 0x0060, 0x10, 2, 1),495	PIN_FIELD_BASE(99, 99, 4, 0x0060, 0x10, 14, 1),496	PIN_FIELD_BASE(100, 100, 4, 0x0060, 0x10, 15, 1),497	PIN_FIELD_BASE(101, 101, 4, 0x0060, 0x10, 13, 1),498	PIN_FIELD_BASE(102, 102, 4, 0x0060, 0x10, 12, 1),499	PIN_FIELD_BASE(103, 103, 4, 0x0060, 0x10, 0, 1),500	PIN_FIELD_BASE(104, 104, 4, 0x0060, 0x10, 1, 1),501	PIN_FIELD_BASE(105, 105, 4, 0x0060, 0x10, 4, 1),502	PIN_FIELD_BASE(106, 106, 4, 0x0060, 0x10, 5, 1),503	PIN_FIELD_BASE(107, 107, 4, 0x0060, 0x10, 6, 1),504	PIN_FIELD_BASE(108, 108, 4, 0x0060, 0x10, 7, 1),505	PIN_FIELD_BASE(109, 109, 4, 0x0060, 0x10, 8, 1),506	PIN_FIELD_BASE(110, 110, 4, 0x0060, 0x10, 9, 1),507	PIN_FIELD_BASE(111, 111, 4, 0x0060, 0x10, 10, 1),508	PIN_FIELD_BASE(112, 112, 4, 0x0060, 0x10, 11, 1),509	PIN_FIELD_BASE(113, 113, 4, 0x0060, 0x10, 2, 1),510	PIN_FIELD_BASE(114, 114, 4, 0x0060, 0x10, 3, 1),511	PIN_FIELD_BASE(115, 115, 3, 0x0080, 0x10, 4, 1),512	PIN_FIELD_BASE(116, 116, 3, 0x0080, 0x10, 7, 1),513	PIN_FIELD_BASE(117, 117, 3, 0x0080, 0x10, 5, 1),514	PIN_FIELD_BASE(118, 118, 3, 0x0080, 0x10, 6, 1),515	PIN_FIELD_BASE(119, 119, 5, 0x0090, 0x10, 22, 1),516	PIN_FIELD_BASE(120, 120, 5, 0x0090, 0x10, 19, 1),517	PIN_FIELD_BASE(121, 121, 5, 0x0090, 0x10, 20, 1),518	PIN_FIELD_BASE(122, 122, 5, 0x0090, 0x10, 21, 1),519	PIN_FIELD_BASE(123, 123, 5, 0x0090, 0x10, 23, 1),520	PIN_FIELD_BASE(124, 124, 5, 0x0090, 0x10, 0, 1),521	PIN_FIELD_BASE(125, 125, 5, 0x0090, 0x10, 1, 1),522	PIN_FIELD_BASE(126, 126, 5, 0x0090, 0x10, 2, 1),523	PIN_FIELD_BASE(127, 127, 3, 0x0080, 0x10, 8, 1),524	PIN_FIELD_BASE(128, 128, 3, 0x0080, 0x10, 10, 1),525	PIN_FIELD_BASE(129, 129, 5, 0x0090, 0x10, 24, 1),526	PIN_FIELD_BASE(130, 130, 5, 0x0090, 0x10, 26, 1),527	PIN_FIELD_BASE(131, 131, 5, 0x0090, 0x10, 25, 1),528	PIN_FIELD_BASE(132, 132, 5, 0x0090, 0x10, 27, 1),529	PIN_FIELD_BASE(133, 133, 1, 0x0080, 0x10, 9, 1),530	PIN_FIELD_BASE(134, 134, 1, 0x0080, 0x10, 12, 1),531	PIN_FIELD_BASE(135, 135, 6, 0x0050, 0x10, 21, 1),532	PIN_FIELD_BASE(136, 136, 6, 0x0050, 0x10, 24, 1),533	PIN_FIELD_BASE(137, 137, 1, 0x0080, 0x10, 10, 1),534	PIN_FIELD_BASE(138, 138, 1, 0x0080, 0x10, 13, 1),535	PIN_FIELD_BASE(139, 139, 2, 0x0060, 0x10, 7, 1),536	PIN_FIELD_BASE(140, 140, 2, 0x0060, 0x10, 8, 1),537	PIN_FIELD_BASE(141, 141, 3, 0x0080, 0x10, 9, 1),538	PIN_FIELD_BASE(142, 142, 3, 0x0080, 0x10, 11, 1),539	PIN_FIELD_BASE(143, 143, 6, 0x0050, 0x10, 22, 1),540	PIN_FIELD_BASE(144, 144, 6, 0x0050, 0x10, 25, 1),541	PIN_FIELD_BASE(145, 145, 6, 0x0050, 0x10, 23, 1),542	PIN_FIELD_BASE(146, 146, 6, 0x0050, 0x10, 26, 1),543	PIN_FIELD_BASE(147, 147, 4, 0x0060, 0x10, 23, 1),544	PIN_FIELD_BASE(148, 148, 4, 0x0060, 0x10, 24, 1),545	PIN_FIELD_BASE(149, 149, 4, 0x0060, 0x10, 25, 1),546	PIN_FIELD_BASE(150, 150, 4, 0x0060, 0x10, 26, 1),547	PIN_FIELD_BASE(151, 151, 4, 0x0060, 0x10, 27, 1),548	PIN_FIELD_BASE(152, 152, 4, 0x0060, 0x10, 28, 1),549	PIN_FIELD_BASE(153, 153, 4, 0x0060, 0x10, 29, 1),550	PIN_FIELD_BASE(154, 154, 4, 0x0060, 0x10, 30, 1),551	PIN_FIELD_BASE(155, 155, 4, 0x0060, 0x10, 31, 1),552	PIN_FIELD_BASE(156, 156, 4, 0x0070, 0x10, 0, 1),553	PIN_FIELD_BASE(157, 157, 2, 0x0060, 0x10, 4, 1),554	PIN_FIELD_BASE(158, 158, 2, 0x0060, 0x10, 3, 1),555	PIN_FIELD_BASE(159, 159, 2, 0x0060, 0x10, 6, 1),556	PIN_FIELD_BASE(160, 160, 2, 0x0060, 0x10, 5, 1),557	PIN_FIELD_BASE(161, 161, 2, 0x0060, 0x10, 23, 1),558	PIN_FIELD_BASE(162, 162, 2, 0x0060, 0x10, 24, 1),559	PIN_FIELD_BASE(163, 163, 1, 0x0080, 0x10, 11, 1),560	PIN_FIELD_BASE(164, 164, 1, 0x0080, 0x10, 8, 1),561	PIN_FIELD_BASE(165, 165, 1, 0x0080, 0x10, 16, 1),562	PIN_FIELD_BASE(166, 166, 1, 0x0080, 0x10, 1, 1),563	PIN_FIELD_BASE(167, 167, 1, 0x0080, 0x10, 7, 1),564	PIN_FIELD_BASE(168, 168, 1, 0x0080, 0x10, 4, 1),565	PIN_FIELD_BASE(169, 169, 1, 0x0080, 0x10, 5, 1),566	PIN_FIELD_BASE(170, 170, 1, 0x0080, 0x10, 0, 1),567	PIN_FIELD_BASE(171, 171, 1, 0x0080, 0x10, 6, 1),568	PIN_FIELD_BASE(172, 172, 1, 0x0080, 0x10, 2, 1),569	PIN_FIELD_BASE(173, 173, 1, 0x0080, 0x10, 3, 1),570	PIN_FIELD_BASE(174, 174, 6, 0x0050, 0x10, 7, 1),571	PIN_FIELD_BASE(175, 175, 6, 0x0050, 0x10, 8, 1),572	PIN_FIELD_BASE(176, 176, 6, 0x0050, 0x10, 4, 1),573	PIN_FIELD_BASE(177, 177, 6, 0x0050, 0x10, 5, 1),574	PIN_FIELD_BASE(178, 178, 6, 0x0050, 0x10, 6, 1),575	PIN_FIELD_BASE(179, 179, 6, 0x0050, 0x10, 9, 1),576	PIN_FIELD_BASE(180, 180, 6, 0x0050, 0x10, 10, 1),577	PIN_FIELD_BASE(181, 181, 6, 0x0050, 0x10, 11, 1),578	PIN_FIELD_BASE(182, 182, 6, 0x0050, 0x10, 12, 1),579	PIN_FIELD_BASE(183, 183, 2, 0x0060, 0x10, 21, 1),580	PIN_FIELD_BASE(184, 184, 2, 0x0060, 0x10, 22, 1),581};582 583static const struct mtk_pin_field_calc mt8186_pin_pd_range[] = {584	PIN_FIELD_BASE(0, 0, 6, 0x0040, 0x10, 13, 1),585	PIN_FIELD_BASE(1, 1, 6, 0x0040, 0x10, 14, 1),586	PIN_FIELD_BASE(2, 2, 6, 0x0040, 0x10, 17, 1),587	PIN_FIELD_BASE(3, 3, 6, 0x0040, 0x10, 18, 1),588	PIN_FIELD_BASE(4, 4, 6, 0x0040, 0x10, 19, 1),589	PIN_FIELD_BASE(5, 5, 6, 0x0040, 0x10, 20, 1),590	PIN_FIELD_BASE(6, 6, 4, 0x0040, 0x10, 19, 1),591	PIN_FIELD_BASE(7, 7, 4, 0x0040, 0x10, 20, 1),592	PIN_FIELD_BASE(8, 8, 4, 0x0040, 0x10, 21, 1),593	PIN_FIELD_BASE(9, 9, 4, 0x0040, 0x10, 22, 1),594	PIN_FIELD_BASE(10, 10, 4, 0x0040, 0x10, 16, 1),595	PIN_FIELD_BASE(11, 11, 4, 0x0040, 0x10, 17, 1),596	PIN_FIELD_BASE(12, 12, 4, 0x0040, 0x10, 18, 1),597	PIN_FIELD_BASE(13, 13, 3, 0x0060, 0x10, 0, 1),598	PIN_FIELD_BASE(14, 14, 3, 0x0060, 0x10, 1, 1),599	PIN_FIELD_BASE(15, 15, 6, 0x0040, 0x10, 15, 1),600	PIN_FIELD_BASE(16, 16, 6, 0x0040, 0x10, 16, 1),601	PIN_FIELD_BASE(17, 17, 5, 0x0070, 0x10, 9, 1),602	PIN_FIELD_BASE(18, 18, 5, 0x0070, 0x10, 10, 1),603	PIN_FIELD_BASE(19, 19, 5, 0x0070, 0x10, 3, 1),604	PIN_FIELD_BASE(20, 20, 5, 0x0070, 0x10, 6, 1),605	PIN_FIELD_BASE(21, 21, 5, 0x0070, 0x10, 4, 1),606	PIN_FIELD_BASE(22, 22, 5, 0x0070, 0x10, 7, 1),607	PIN_FIELD_BASE(23, 23, 5, 0x0070, 0x10, 5, 1),608	PIN_FIELD_BASE(24, 24, 5, 0x0070, 0x10, 8, 1),609	PIN_FIELD_BASE(25, 25, 5, 0x0070, 0x10, 18, 1),610	PIN_FIELD_BASE(26, 26, 5, 0x0070, 0x10, 15, 1),611	PIN_FIELD_BASE(27, 27, 5, 0x0070, 0x10, 17, 1),612	PIN_FIELD_BASE(28, 28, 5, 0x0070, 0x10, 16, 1),613	PIN_FIELD_BASE(29, 29, 6, 0x0040, 0x10, 0, 1),614	PIN_FIELD_BASE(30, 30, 6, 0x0040, 0x10, 1, 1),615	PIN_FIELD_BASE(31, 31, 6, 0x0040, 0x10, 2, 1),616	PIN_FIELD_BASE(32, 32, 2, 0x0050, 0x10, 25, 1),617	PIN_FIELD_BASE(33, 33, 2, 0x0050, 0x10, 27, 1),618	PIN_FIELD_BASE(34, 34, 2, 0x0050, 0x10, 26, 1),619	PIN_FIELD_BASE(35, 35, 2, 0x0050, 0x10, 28, 1),620	PIN_FIELD_BASE(36, 36, 2, 0x0050, 0x10, 9, 1),621	PIN_FIELD_BASE(37, 37, 2, 0x0050, 0x10, 10, 1),622	PIN_FIELD_BASE(38, 38, 2, 0x0050, 0x10, 12, 1),623	PIN_FIELD_BASE(39, 39, 2, 0x0050, 0x10, 11, 1),624	PIN_FIELD_BASE(40, 40, 2, 0x0050, 0x10, 13, 1),625	PIN_FIELD_BASE(41, 41, 2, 0x0050, 0x10, 14, 1),626	PIN_FIELD_BASE(42, 42, 2, 0x0050, 0x10, 16, 1),627	PIN_FIELD_BASE(43, 43, 2, 0x0050, 0x10, 15, 1),628	PIN_FIELD_BASE(44, 44, 5, 0x0070, 0x10, 28, 1),629	PIN_FIELD_BASE(45, 45, 5, 0x0070, 0x10, 29, 1),630	PIN_FIELD_BASE(46, 46, 5, 0x0070, 0x10, 31, 1),631	PIN_FIELD_BASE(47, 47, 5, 0x0070, 0x10, 30, 1),632	PIN_FIELD_BASE(48, 48, 2, 0x0050, 0x10, 17, 1),633	PIN_FIELD_BASE(49, 49, 2, 0x0050, 0x10, 18, 1),634	PIN_FIELD_BASE(50, 50, 2, 0x0050, 0x10, 20, 1),635	PIN_FIELD_BASE(51, 51, 2, 0x0050, 0x10, 19, 1),636	PIN_FIELD_BASE(52, 52, 3, 0x0060, 0x10, 12, 1),637	PIN_FIELD_BASE(53, 53, 3, 0x0060, 0x10, 13, 1),638	PIN_FIELD_BASE(54, 54, 3, 0x0060, 0x10, 15, 1),639	PIN_FIELD_BASE(55, 55, 3, 0x0060, 0x10, 14, 1),640	PIN_FIELD_BASE(56, 56, 5, 0x0070, 0x10, 12, 1),641	PIN_FIELD_BASE(57, 57, 5, 0x0070, 0x10, 11, 1),642	PIN_FIELD_BASE(58, 58, 5, 0x0070, 0x10, 13, 1),643	PIN_FIELD_BASE(59, 59, 5, 0x0070, 0x10, 14, 1),644	PIN_FIELD_BASE(60, 60, 3, 0x0060, 0x10, 21, 1),645	PIN_FIELD_BASE(61, 61, 3, 0x0060, 0x10, 16, 1),646	PIN_FIELD_BASE(62, 62, 3, 0x0060, 0x10, 22, 1),647	PIN_FIELD_BASE(63, 63, 3, 0x0060, 0x10, 17, 1),648	PIN_FIELD_BASE(64, 64, 3, 0x0060, 0x10, 18, 1),649	PIN_FIELD_BASE(65, 65, 3, 0x0060, 0x10, 19, 1),650	PIN_FIELD_BASE(66, 66, 3, 0x0060, 0x10, 20, 1),651	PIN_FIELD_BASE(83, 83, 6, 0x0040, 0x10, 3, 1),652	PIN_FIELD_BASE(90, 90, 3, 0x0060, 0x10, 2, 1),653	PIN_FIELD_BASE(91, 91, 3, 0x0060, 0x10, 23, 1),654	PIN_FIELD_BASE(92, 92, 3, 0x0060, 0x10, 25, 1),655	PIN_FIELD_BASE(93, 93, 3, 0x0060, 0x10, 3, 1),656	PIN_FIELD_BASE(94, 94, 3, 0x0060, 0x10, 24, 1),657	PIN_FIELD_BASE(95, 95, 3, 0x0060, 0x10, 26, 1),658	PIN_FIELD_BASE(96, 96, 2, 0x0050, 0x10, 1, 1),659	PIN_FIELD_BASE(97, 97, 2, 0x0050, 0x10, 0, 1),660	PIN_FIELD_BASE(98, 98, 2, 0x0050, 0x10, 2, 1),661	PIN_FIELD_BASE(99, 99, 4, 0x0040, 0x10, 14, 1),662	PIN_FIELD_BASE(100, 100, 4, 0x0040, 0x10, 15, 1),663	PIN_FIELD_BASE(101, 101, 4, 0x0040, 0x10, 13, 1),664	PIN_FIELD_BASE(102, 102, 4, 0x0040, 0x10, 12, 1),665	PIN_FIELD_BASE(103, 103, 4, 0x0040, 0x10, 0, 1),666	PIN_FIELD_BASE(104, 104, 4, 0x0040, 0x10, 1, 1),667	PIN_FIELD_BASE(105, 105, 4, 0x0040, 0x10, 4, 1),668	PIN_FIELD_BASE(106, 106, 4, 0x0040, 0x10, 5, 1),669	PIN_FIELD_BASE(107, 107, 4, 0x0040, 0x10, 6, 1),670	PIN_FIELD_BASE(108, 108, 4, 0x0040, 0x10, 7, 1),671	PIN_FIELD_BASE(109, 109, 4, 0x0040, 0x10, 8, 1),672	PIN_FIELD_BASE(110, 110, 4, 0x0040, 0x10, 9, 1),673	PIN_FIELD_BASE(111, 111, 4, 0x0040, 0x10, 10, 1),674	PIN_FIELD_BASE(112, 112, 4, 0x0040, 0x10, 11, 1),675	PIN_FIELD_BASE(113, 113, 4, 0x0040, 0x10, 2, 1),676	PIN_FIELD_BASE(114, 114, 4, 0x0040, 0x10, 3, 1),677	PIN_FIELD_BASE(115, 115, 3, 0x0060, 0x10, 4, 1),678	PIN_FIELD_BASE(116, 116, 3, 0x0060, 0x10, 7, 1),679	PIN_FIELD_BASE(117, 117, 3, 0x0060, 0x10, 5, 1),680	PIN_FIELD_BASE(118, 118, 3, 0x0060, 0x10, 6, 1),681	PIN_FIELD_BASE(119, 119, 5, 0x0070, 0x10, 22, 1),682	PIN_FIELD_BASE(120, 120, 5, 0x0070, 0x10, 19, 1),683	PIN_FIELD_BASE(121, 121, 5, 0x0070, 0x10, 20, 1),684	PIN_FIELD_BASE(122, 122, 5, 0x0070, 0x10, 21, 1),685	PIN_FIELD_BASE(123, 123, 5, 0x0070, 0x10, 23, 1),686	PIN_FIELD_BASE(124, 124, 5, 0x0070, 0x10, 0, 1),687	PIN_FIELD_BASE(125, 125, 5, 0x0070, 0x10, 1, 1),688	PIN_FIELD_BASE(126, 126, 5, 0x0070, 0x10, 2, 1),689	PIN_FIELD_BASE(127, 127, 3, 0x0060, 0x10, 8, 1),690	PIN_FIELD_BASE(128, 128, 3, 0x0060, 0x10, 10, 1),691	PIN_FIELD_BASE(129, 129, 5, 0x0070, 0x10, 24, 1),692	PIN_FIELD_BASE(130, 130, 5, 0x0070, 0x10, 26, 1),693	PIN_FIELD_BASE(131, 131, 5, 0x0070, 0x10, 25, 1),694	PIN_FIELD_BASE(132, 132, 5, 0x0070, 0x10, 27, 1),695	PIN_FIELD_BASE(133, 133, 1, 0x0060, 0x10, 9, 1),696	PIN_FIELD_BASE(134, 134, 1, 0x0060, 0x10, 12, 1),697	PIN_FIELD_BASE(135, 135, 6, 0x0040, 0x10, 21, 1),698	PIN_FIELD_BASE(136, 136, 6, 0x0040, 0x10, 24, 1),699	PIN_FIELD_BASE(137, 137, 1, 0x0060, 0x10, 10, 1),700	PIN_FIELD_BASE(138, 138, 1, 0x0060, 0x10, 13, 1),701	PIN_FIELD_BASE(139, 139, 2, 0x0050, 0x10, 7, 1),702	PIN_FIELD_BASE(140, 140, 2, 0x0050, 0x10, 8, 1),703	PIN_FIELD_BASE(141, 141, 3, 0x0060, 0x10, 9, 1),704	PIN_FIELD_BASE(142, 142, 3, 0x0060, 0x10, 11, 1),705	PIN_FIELD_BASE(143, 143, 6, 0x0040, 0x10, 22, 1),706	PIN_FIELD_BASE(144, 144, 6, 0x0040, 0x10, 25, 1),707	PIN_FIELD_BASE(145, 145, 6, 0x0040, 0x10, 23, 1),708	PIN_FIELD_BASE(146, 146, 6, 0x0040, 0x10, 26, 1),709	PIN_FIELD_BASE(147, 147, 4, 0x0040, 0x10, 23, 1),710	PIN_FIELD_BASE(148, 148, 4, 0x0040, 0x10, 24, 1),711	PIN_FIELD_BASE(149, 149, 4, 0x0040, 0x10, 25, 1),712	PIN_FIELD_BASE(150, 150, 4, 0x0040, 0x10, 26, 1),713	PIN_FIELD_BASE(151, 151, 4, 0x0040, 0x10, 27, 1),714	PIN_FIELD_BASE(152, 152, 4, 0x0040, 0x10, 28, 1),715	PIN_FIELD_BASE(153, 153, 4, 0x0040, 0x10, 29, 1),716	PIN_FIELD_BASE(154, 154, 4, 0x0040, 0x10, 30, 1),717	PIN_FIELD_BASE(155, 155, 4, 0x0040, 0x10, 31, 1),718	PIN_FIELD_BASE(156, 156, 4, 0x0050, 0x10, 0, 1),719	PIN_FIELD_BASE(157, 157, 2, 0x0050, 0x10, 4, 1),720	PIN_FIELD_BASE(158, 158, 2, 0x0050, 0x10, 3, 1),721	PIN_FIELD_BASE(159, 159, 2, 0x0050, 0x10, 6, 1),722	PIN_FIELD_BASE(160, 160, 2, 0x0050, 0x10, 5, 1),723	PIN_FIELD_BASE(161, 161, 2, 0x0050, 0x10, 23, 1),724	PIN_FIELD_BASE(162, 162, 2, 0x0050, 0x10, 24, 1),725	PIN_FIELD_BASE(163, 163, 1, 0x0060, 0x10, 11, 1),726	PIN_FIELD_BASE(164, 164, 1, 0x0060, 0x10, 8, 1),727	PIN_FIELD_BASE(165, 165, 1, 0x0060, 0x10, 16, 1),728	PIN_FIELD_BASE(166, 166, 1, 0x0060, 0x10, 1, 1),729	PIN_FIELD_BASE(167, 167, 1, 0x0060, 0x10, 7, 1),730	PIN_FIELD_BASE(168, 168, 1, 0x0060, 0x10, 4, 1),731	PIN_FIELD_BASE(169, 169, 1, 0x0060, 0x10, 5, 1),732	PIN_FIELD_BASE(170, 170, 1, 0x0060, 0x10, 0, 1),733	PIN_FIELD_BASE(171, 171, 1, 0x0060, 0x10, 6, 1),734	PIN_FIELD_BASE(172, 172, 1, 0x0060, 0x10, 2, 1),735	PIN_FIELD_BASE(173, 173, 1, 0x0060, 0x10, 3, 1),736	PIN_FIELD_BASE(174, 174, 6, 0x0040, 0x10, 7, 1),737	PIN_FIELD_BASE(175, 175, 6, 0x0040, 0x10, 8, 1),738	PIN_FIELD_BASE(176, 176, 6, 0x0040, 0x10, 4, 1),739	PIN_FIELD_BASE(177, 177, 6, 0x0040, 0x10, 5, 1),740	PIN_FIELD_BASE(178, 178, 6, 0x0040, 0x10, 6, 1),741	PIN_FIELD_BASE(179, 179, 6, 0x0040, 0x10, 9, 1),742	PIN_FIELD_BASE(180, 180, 6, 0x0040, 0x10, 10, 1),743	PIN_FIELD_BASE(181, 181, 6, 0x0040, 0x10, 11, 1),744	PIN_FIELD_BASE(182, 182, 6, 0x0040, 0x10, 12, 1),745	PIN_FIELD_BASE(183, 183, 2, 0x0050, 0x10, 21, 1),746	PIN_FIELD_BASE(184, 184, 2, 0x0050, 0x10, 22, 1),747};748 749static const struct mtk_pin_field_calc mt8186_pin_pupd_range[] = {750	PIN_FIELD_BASE(67, 67, 1, 0x0070, 0x10, 10, 1),751	PIN_FIELD_BASE(68, 68, 1, 0x0070, 0x10, 0, 1),752	PIN_FIELD_BASE(69, 69, 1, 0x0070, 0x10, 1, 1),753	PIN_FIELD_BASE(70, 70, 1, 0x0070, 0x10, 11, 1),754	PIN_FIELD_BASE(71, 71, 1, 0x0070, 0x10, 2, 1),755	PIN_FIELD_BASE(72, 72, 1, 0x0070, 0x10, 3, 1),756	PIN_FIELD_BASE(73, 73, 1, 0x0070, 0x10, 4, 1),757	PIN_FIELD_BASE(74, 74, 1, 0x0070, 0x10, 5, 1),758	PIN_FIELD_BASE(75, 75, 1, 0x0070, 0x10, 6, 1),759	PIN_FIELD_BASE(76, 76, 1, 0x0070, 0x10, 7, 1),760	PIN_FIELD_BASE(77, 77, 1, 0x0070, 0x10, 8, 1),761	PIN_FIELD_BASE(78, 78, 1, 0x0070, 0x10, 9, 1),762	PIN_FIELD_BASE(79, 79, 5, 0x0080, 0x10, 0, 1),763	PIN_FIELD_BASE(80, 80, 5, 0x0080, 0x10, 1, 1),764	PIN_FIELD_BASE(81, 81, 5, 0x0080, 0x10, 2, 1),765	PIN_FIELD_BASE(82, 82, 5, 0x0080, 0x10, 3, 1),766	PIN_FIELD_BASE(84, 84, 3, 0x0070, 0x10, 0, 1),767	PIN_FIELD_BASE(85, 85, 3, 0x0070, 0x10, 1, 1),768	PIN_FIELD_BASE(86, 86, 3, 0x0070, 0x10, 2, 1),769	PIN_FIELD_BASE(87, 87, 3, 0x0070, 0x10, 3, 1),770	PIN_FIELD_BASE(88, 88, 3, 0x0070, 0x10, 4, 1),771	PIN_FIELD_BASE(89, 89, 3, 0x0070, 0x10, 5, 1),772};773 774static const struct mtk_pin_field_calc mt8186_pin_r0_range[] = {775	PIN_FIELD_BASE(67, 67, 1, 0x0090, 0x10, 10, 1),776	PIN_FIELD_BASE(68, 68, 1, 0x0090, 0x10, 0, 1),777	PIN_FIELD_BASE(69, 69, 1, 0x0090, 0x10, 1, 1),778	PIN_FIELD_BASE(70, 70, 1, 0x0090, 0x10, 11, 1),779	PIN_FIELD_BASE(71, 71, 1, 0x0090, 0x10, 2, 1),780	PIN_FIELD_BASE(72, 72, 1, 0x0090, 0x10, 3, 1),781	PIN_FIELD_BASE(73, 73, 1, 0x0090, 0x10, 4, 1),782	PIN_FIELD_BASE(74, 74, 1, 0x0090, 0x10, 5, 1),783	PIN_FIELD_BASE(75, 75, 1, 0x0090, 0x10, 6, 1),784	PIN_FIELD_BASE(76, 76, 1, 0x0090, 0x10, 7, 1),785	PIN_FIELD_BASE(77, 77, 1, 0x0090, 0x10, 8, 1),786	PIN_FIELD_BASE(78, 78, 1, 0x0090, 0x10, 9, 1),787	PIN_FIELD_BASE(79, 79, 5, 0x00a0, 0x10, 0, 1),788	PIN_FIELD_BASE(80, 80, 5, 0x00a0, 0x10, 1, 1),789	PIN_FIELD_BASE(81, 81, 5, 0x00a0, 0x10, 2, 1),790	PIN_FIELD_BASE(82, 82, 5, 0x00a0, 0x10, 3, 1),791	PIN_FIELD_BASE(84, 84, 3, 0x0090, 0x10, 0, 1),792	PIN_FIELD_BASE(85, 85, 3, 0x0090, 0x10, 1, 1),793	PIN_FIELD_BASE(86, 86, 3, 0x0090, 0x10, 2, 1),794	PIN_FIELD_BASE(87, 87, 3, 0x0090, 0x10, 3, 1),795	PIN_FIELD_BASE(88, 88, 3, 0x0090, 0x10, 4, 1),796	PIN_FIELD_BASE(89, 89, 3, 0x0090, 0x10, 5, 1),797};798 799static const struct mtk_pin_field_calc mt8186_pin_r1_range[] = {800	PIN_FIELD_BASE(67, 67, 1, 0x00a0, 0x10, 10, 1),801	PIN_FIELD_BASE(68, 68, 1, 0x00a0, 0x10, 0, 1),802	PIN_FIELD_BASE(69, 69, 1, 0x00a0, 0x10, 1, 1),803	PIN_FIELD_BASE(70, 70, 1, 0x00a0, 0x10, 11, 1),804	PIN_FIELD_BASE(71, 71, 1, 0x00a0, 0x10, 2, 1),805	PIN_FIELD_BASE(72, 72, 1, 0x00a0, 0x10, 3, 1),806	PIN_FIELD_BASE(73, 73, 1, 0x00a0, 0x10, 4, 1),807	PIN_FIELD_BASE(74, 74, 1, 0x00a0, 0x10, 5, 1),808	PIN_FIELD_BASE(75, 75, 1, 0x00a0, 0x10, 6, 1),809	PIN_FIELD_BASE(76, 76, 1, 0x00a0, 0x10, 7, 1),810	PIN_FIELD_BASE(77, 77, 1, 0x00a0, 0x10, 8, 1),811	PIN_FIELD_BASE(78, 78, 1, 0x00a0, 0x10, 9, 1),812	PIN_FIELD_BASE(79, 79, 5, 0x00b0, 0x10, 0, 1),813	PIN_FIELD_BASE(80, 80, 5, 0x00b0, 0x10, 1, 1),814	PIN_FIELD_BASE(81, 81, 5, 0x00b0, 0x10, 2, 1),815	PIN_FIELD_BASE(82, 82, 5, 0x00b0, 0x10, 3, 1),816	PIN_FIELD_BASE(84, 84, 3, 0x00a0, 0x10, 0, 1),817	PIN_FIELD_BASE(85, 85, 3, 0x00a0, 0x10, 1, 1),818	PIN_FIELD_BASE(86, 86, 3, 0x00a0, 0x10, 2, 1),819	PIN_FIELD_BASE(87, 87, 3, 0x00a0, 0x10, 3, 1),820	PIN_FIELD_BASE(88, 88, 3, 0x00a0, 0x10, 4, 1),821	PIN_FIELD_BASE(89, 89, 3, 0x00a0, 0x10, 5, 1),822};823 824static const struct mtk_pin_field_calc mt8186_pin_drv_range[] = {825	PIN_FIELD_BASE(0, 0, 6, 0x0000, 0x10, 27, 3),826	PIN_FIELD_BASE(1, 1, 6, 0x0000, 0x10, 27, 3),827	PIN_FIELD_BASE(2, 2, 6, 0x0000, 0x10, 27, 3),828	PIN_FIELD_BASE(3, 3, 6, 0x0000, 0x10, 27, 3),829	PIN_FIELD_BASE(4, 4, 6, 0x0010, 0x10, 0, 3),830	PIN_FIELD_BASE(5, 5, 6, 0x0010, 0x10, 0, 3),831	PIN_FIELD_BASE(6, 6, 4, 0x0000, 0x10, 9, 3),832	PIN_FIELD_BASE(7, 7, 4, 0x0000, 0x10, 9, 3),833	PIN_FIELD_BASE(8, 8, 4, 0x0000, 0x10, 9, 3),834	PIN_FIELD_BASE(9, 9, 4, 0x0000, 0x10, 12, 3),835	PIN_FIELD_BASE(10, 10, 4, 0x0000, 0x10, 0, 3),836	PIN_FIELD_BASE(11, 11, 4, 0x0000, 0x10, 3, 3),837	PIN_FIELD_BASE(12, 12, 4, 0x0000, 0x10, 6, 3),838	PIN_FIELD_BASE(13, 13, 3, 0x0000, 0x10, 0, 3),839	PIN_FIELD_BASE(14, 14, 3, 0x0000, 0x10, 3, 3),840	PIN_FIELD_BASE(15, 15, 6, 0x0010, 0x10, 3, 3),841	PIN_FIELD_BASE(16, 16, 6, 0x0010, 0x10, 3, 3),842	PIN_FIELD_BASE(17, 17, 5, 0x0000, 0x10, 21, 3),843	PIN_FIELD_BASE(18, 18, 5, 0x0010, 0x10, 0, 3),844	PIN_FIELD_BASE(19, 19, 5, 0x0000, 0x10, 27, 3),845	PIN_FIELD_BASE(20, 20, 5, 0x0000, 0x10, 24, 3),846	PIN_FIELD_BASE(21, 21, 5, 0x0000, 0x10, 27, 3),847	PIN_FIELD_BASE(22, 22, 5, 0x0000, 0x10, 24, 3),848	PIN_FIELD_BASE(23, 23, 5, 0x0010, 0x10, 0, 3),849	PIN_FIELD_BASE(24, 24, 5, 0x0010, 0x10, 9, 3),850	PIN_FIELD_BASE(25, 25, 5, 0x0010, 0x10, 0, 3),851	PIN_FIELD_BASE(26, 26, 5, 0x0000, 0x10, 27, 3),852	PIN_FIELD_BASE(27, 27, 5, 0x0000, 0x10, 27, 3),853	PIN_FIELD_BASE(28, 28, 5, 0x0010, 0x10, 0, 3),854	PIN_FIELD_BASE(29, 29, 6, 0x0010, 0x10, 0, 3),855	PIN_FIELD_BASE(30, 30, 6, 0x0010, 0x10, 0, 3),856	PIN_FIELD_BASE(31, 31, 6, 0x0010, 0x10, 3, 3),857	PIN_FIELD_BASE(32, 32, 2, 0x0000, 0x10, 6, 3),858	PIN_FIELD_BASE(33, 33, 2, 0x0000, 0x10, 6, 3),859	PIN_FIELD_BASE(34, 34, 2, 0x0000, 0x10, 3, 3),860	PIN_FIELD_BASE(35, 35, 2, 0x0000, 0x10, 3, 3),861	PIN_FIELD_BASE(36, 36, 2, 0x0000, 0x10, 9, 3),862	PIN_FIELD_BASE(37, 37, 2, 0x0000, 0x10, 9, 3),863	PIN_FIELD_BASE(38, 38, 2, 0x0000, 0x10, 12, 3),864	PIN_FIELD_BASE(39, 39, 2, 0x0000, 0x10, 9, 3),865	PIN_FIELD_BASE(40, 40, 2, 0x0000, 0x10, 15, 3),866	PIN_FIELD_BASE(41, 41, 2, 0x0000, 0x10, 12, 3),867	PIN_FIELD_BASE(42, 42, 2, 0x0000, 0x10, 12, 3),868	PIN_FIELD_BASE(43, 43, 2, 0x0000, 0x10, 12, 3),869	PIN_FIELD_BASE(44, 44, 5, 0x0010, 0x10, 6, 3),870	PIN_FIELD_BASE(45, 45, 5, 0x0010, 0x10, 3, 3),871	PIN_FIELD_BASE(46, 46, 5, 0x0010, 0x10, 3, 3),872	PIN_FIELD_BASE(47, 47, 5, 0x0010, 0x10, 6, 3),873	PIN_FIELD_BASE(48, 48, 2, 0x0000, 0x10, 15, 3),874	PIN_FIELD_BASE(49, 49, 2, 0x0000, 0x10, 15, 3),875	PIN_FIELD_BASE(50, 50, 2, 0x0000, 0x10, 15, 3),876	PIN_FIELD_BASE(51, 51, 2, 0x0000, 0x10, 18, 3),877	PIN_FIELD_BASE(52, 52, 3, 0x0010, 0x10, 3, 3),878	PIN_FIELD_BASE(53, 53, 3, 0x0010, 0x10, 6, 3),879	PIN_FIELD_BASE(54, 54, 3, 0x0010, 0x10, 3, 3),880	PIN_FIELD_BASE(55, 55, 3, 0x0010, 0x10, 3, 3),881	PIN_FIELD_BASE(56, 56, 5, 0x0010, 0x10, 3, 3),882	PIN_FIELD_BASE(57, 57, 5, 0x0010, 0x10, 6, 3),883	PIN_FIELD_BASE(58, 58, 5, 0x0010, 0x10, 6, 3),884	PIN_FIELD_BASE(59, 59, 5, 0x0010, 0x10, 3, 3),885	PIN_FIELD_BASE(60, 60, 3, 0x0000, 0x10, 24, 3),886	PIN_FIELD_BASE(61, 61, 3, 0x0000, 0x10, 24, 3),887	PIN_FIELD_BASE(62, 62, 3, 0x0000, 0x10, 24, 3),888	PIN_FIELD_BASE(63, 63, 3, 0x0000, 0x10, 24, 3),889	PIN_FIELD_BASE(64, 64, 3, 0x0000, 0x10, 27, 3),890	PIN_FIELD_BASE(65, 65, 3, 0x0000, 0x10, 27, 3),891	PIN_FIELD_BASE(66, 66, 3, 0x0000, 0x10, 27, 3),892	PIN_FIELD_BASE(67, 67, 1, 0x0010, 0x10, 0, 3),893	PIN_FIELD_BASE(68, 68, 1, 0x0000, 0x10, 0, 3),894	PIN_FIELD_BASE(69, 69, 1, 0x0000, 0x10, 3, 3),895	PIN_FIELD_BASE(70, 70, 1, 0x0010, 0x10, 3, 3),896	PIN_FIELD_BASE(71, 71, 1, 0x0000, 0x10, 6, 3),897	PIN_FIELD_BASE(72, 72, 1, 0x0000, 0x10, 9, 3),898	PIN_FIELD_BASE(73, 73, 1, 0x0000, 0x10, 12, 3),899	PIN_FIELD_BASE(74, 74, 1, 0x0000, 0x10, 15, 3),900	PIN_FIELD_BASE(75, 75, 1, 0x0000, 0x10, 18, 3),901	PIN_FIELD_BASE(76, 76, 1, 0x0000, 0x10, 21, 3),902	PIN_FIELD_BASE(77, 77, 1, 0x0000, 0x10, 24, 3),903	PIN_FIELD_BASE(78, 78, 1, 0x0000, 0x10, 27, 3),904	PIN_FIELD_BASE(79, 79, 5, 0x0000, 0x10, 24, 3),905	PIN_FIELD_BASE(80, 80, 5, 0x0000, 0x10, 24, 3),906	PIN_FIELD_BASE(81, 81, 5, 0x0000, 0x10, 21, 3),907	PIN_FIELD_BASE(82, 82, 5, 0x0000, 0x10, 21, 3),908	PIN_FIELD_BASE(83, 83, 6, 0x0010, 0x10, 3, 3),909	PIN_FIELD_BASE(84, 84, 3, 0x0000, 0x10, 6, 3),910	PIN_FIELD_BASE(85, 85, 3, 0x0000, 0x10, 9, 3),911	PIN_FIELD_BASE(86, 86, 3, 0x0000, 0x10, 12, 3),912	PIN_FIELD_BASE(87, 87, 3, 0x0000, 0x10, 15, 3),913	PIN_FIELD_BASE(88, 88, 3, 0x0000, 0x10, 18, 3),914	PIN_FIELD_BASE(89, 89, 3, 0x0000, 0x10, 21, 3),915	PIN_FIELD_BASE(90, 90, 3, 0x0000, 0x10, 27, 3),916	PIN_FIELD_BASE(91, 91, 3, 0x0010, 0x10, 0, 3),917	PIN_FIELD_BASE(92, 92, 3, 0x0010, 0x10, 0, 3),918	PIN_FIELD_BASE(93, 93, 3, 0x0010, 0x10, 0, 3),919	PIN_FIELD_BASE(94, 94, 3, 0x0010, 0x10, 0, 3),920	PIN_FIELD_BASE(95, 95, 3, 0x0010, 0x10, 3, 3),921	PIN_FIELD_BASE(96, 96, 2, 0x0000, 0x10, 9, 3),922	PIN_FIELD_BASE(97, 97, 2, 0x0000, 0x10, 6, 3),923	PIN_FIELD_BASE(98, 98, 2, 0x0000, 0x10, 3, 3),924	PIN_FIELD_BASE(99, 99, 4, 0x0000, 0x10, 18, 3),925	PIN_FIELD_BASE(100, 100, 4, 0x0000, 0x10, 18, 3),926	PIN_FIELD_BASE(101, 101, 4, 0x0000, 0x10, 21, 3),927	PIN_FIELD_BASE(102, 102, 4, 0x0000, 0x10, 21, 3),928	PIN_FIELD_BASE(103, 103, 4, 0x0000, 0x10, 21, 3),929	PIN_FIELD_BASE(104, 104, 4, 0x0000, 0x10, 21, 3),930	PIN_FIELD_BASE(105, 105, 4, 0x0000, 0x10, 24, 3),931	PIN_FIELD_BASE(106, 106, 4, 0x0000, 0x10, 24, 3),932	PIN_FIELD_BASE(107, 107, 4, 0x0000, 0x10, 24, 3),933	PIN_FIELD_BASE(108, 108, 4, 0x0000, 0x10, 24, 3),934	PIN_FIELD_BASE(109, 109, 4, 0x0000, 0x10, 27, 3),935	PIN_FIELD_BASE(110, 110, 4, 0x0000, 0x10, 27, 3),936	PIN_FIELD_BASE(111, 111, 4, 0x0000, 0x10, 27, 3),937	PIN_FIELD_BASE(112, 112, 4, 0x0000, 0x10, 27, 3),938	PIN_FIELD_BASE(113, 113, 4, 0x0010, 0x10, 0, 3),939	PIN_FIELD_BASE(114, 114, 4, 0x0010, 0x10, 0, 3),940	PIN_FIELD_BASE(115, 115, 3, 0x0010, 0x10, 6, 3),941	PIN_FIELD_BASE(116, 116, 3, 0x0010, 0x10, 9, 3),942	PIN_FIELD_BASE(117, 117, 3, 0x0010, 0x10, 6, 3),943	PIN_FIELD_BASE(118, 118, 3, 0x0010, 0x10, 6, 3),944	PIN_FIELD_BASE(119, 119, 5, 0x0000, 0x10, 18, 3),945	PIN_FIELD_BASE(120, 120, 5, 0x0000, 0x10, 9, 3),946	PIN_FIELD_BASE(121, 121, 5, 0x0000, 0x10, 12, 3),947	PIN_FIELD_BASE(122, 122, 5, 0x0000, 0x10, 15, 3),948	PIN_FIELD_BASE(123, 123, 5, 0x0000, 0x10, 21, 3),949	PIN_FIELD_BASE(124, 124, 5, 0x0000, 0x10, 0, 3),950	PIN_FIELD_BASE(125, 125, 5, 0x0000, 0x10, 3, 3),951	PIN_FIELD_BASE(126, 126, 5, 0x0000, 0x10, 6, 3),952	PIN_FIELD_BASE(127, 127, 3, 0x0010, 0x10, 12, 3),953	PIN_FIELD_BASE(128, 128, 3, 0x0010, 0x10, 18, 3),954	PIN_FIELD_BASE(129, 129, 5, 0x0010, 0x10, 12, 3),955	PIN_FIELD_BASE(130, 130, 5, 0x0010, 0x10, 18, 3),956	PIN_FIELD_BASE(131, 131, 5, 0x0010, 0x10, 15, 3),957	PIN_FIELD_BASE(132, 132, 5, 0x0010, 0x10, 21, 3),958	PIN_FIELD_BASE(133, 133, 1, 0x0010, 0x10, 15, 3),959	PIN_FIELD_BASE(134, 134, 1, 0x0010, 0x10, 21, 3),960	PIN_FIELD_BASE(135, 135, 6, 0x0010, 0x10, 6, 3),961	PIN_FIELD_BASE(136, 136, 6, 0x0010, 0x10, 15, 3),962	PIN_FIELD_BASE(137, 137, 1, 0x0010, 0x10, 18, 3),963	PIN_FIELD_BASE(138, 138, 1, 0x0010, 0x10, 24, 3),964	PIN_FIELD_BASE(139, 139, 2, 0x0000, 0x10, 21, 3),965	PIN_FIELD_BASE(140, 140, 2, 0x0000, 0x10, 24, 3),966	PIN_FIELD_BASE(141, 141, 3, 0x0010, 0x10, 15, 3),967	PIN_FIELD_BASE(142, 142, 3, 0x0010, 0x10, 21, 3),968	PIN_FIELD_BASE(143, 143, 6, 0x0010, 0x10, 9, 3),969	PIN_FIELD_BASE(144, 144, 6, 0x0010, 0x10, 18, 3),970	PIN_FIELD_BASE(145, 145, 6, 0x0010, 0x10, 12, 3),971	PIN_FIELD_BASE(146, 146, 6, 0x0010, 0x10, 21, 3),972	PIN_FIELD_BASE(147, 147, 4, 0x0000, 0x10, 12, 3),973	PIN_FIELD_BASE(148, 148, 4, 0x0000, 0x10, 12, 3),974	PIN_FIELD_BASE(149, 149, 4, 0x0000, 0x10, 12, 3),975	PIN_FIELD_BASE(150, 150, 4, 0x0000, 0x10, 15, 3),976	PIN_FIELD_BASE(151, 151, 4, 0x0000, 0x10, 15, 3),977	PIN_FIELD_BASE(152, 152, 4, 0x0000, 0x10, 9, 3),978	PIN_FIELD_BASE(153, 153, 4, 0x0000, 0x10, 15, 3),979	PIN_FIELD_BASE(154, 154, 4, 0x0000, 0x10, 15, 3),980	PIN_FIELD_BASE(155, 155, 4, 0x0000, 0x10, 18, 3),981	PIN_FIELD_BASE(156, 156, 4, 0x0000, 0x10, 18, 3),982	PIN_FIELD_BASE(157, 157, 2, 0x0000, 0x10, 0, 3),983	PIN_FIELD_BASE(158, 158, 2, 0x0000, 0x10, 0, 3),984	PIN_FIELD_BASE(159, 159, 2, 0x0000, 0x10, 0, 3),985	PIN_FIELD_BASE(160, 160, 2, 0x0000, 0x10, 0, 3),986	PIN_FIELD_BASE(161, 161, 2, 0x0000, 0x10, 6, 3),987	PIN_FIELD_BASE(162, 162, 2, 0x0000, 0x10, 3, 3),988	PIN_FIELD_BASE(163, 163, 1, 0x0010, 0x10, 12, 3),989	PIN_FIELD_BASE(165, 165, 1, 0x0010, 0x10, 6, 3),990	PIN_FIELD_BASE(166, 166, 1, 0x0010, 0x10, 6, 3),991	PIN_FIELD_BASE(167, 167, 1, 0x0010, 0x10, 9, 3),992	PIN_FIELD_BASE(168, 168, 1, 0x0010, 0x10, 6, 3),993	PIN_FIELD_BASE(169, 169, 1, 0x0010, 0x10, 12, 3),994	PIN_FIELD_BASE(170, 170, 1, 0x0010, 0x10, 9, 3),995	PIN_FIELD_BASE(171, 171, 1, 0x0010, 0x10, 9, 3),996	PIN_FIELD_BASE(172, 172, 1, 0x0010, 0x10, 9, 3),997	PIN_FIELD_BASE(173, 173, 1, 0x0010, 0x10, 6, 3),998	PIN_FIELD_BASE(174, 174, 6, 0x0000, 0x10, 9, 3),999	PIN_FIELD_BASE(175, 175, 6, 0x0000, 0x10, 12, 3),1000	PIN_FIELD_BASE(176, 176, 6, 0x0000, 0x10, 0, 3),1001	PIN_FIELD_BASE(177, 177, 6, 0x0000, 0x10, 3, 3),1002	PIN_FIELD_BASE(178, 178, 6, 0x0000, 0x10, 6, 3),1003	PIN_FIELD_BASE(179, 179, 6, 0x0000, 0x10, 15, 3),1004	PIN_FIELD_BASE(180, 180, 6, 0x0000, 0x10, 18, 3),1005	PIN_FIELD_BASE(181, 181, 6, 0x0000, 0x10, 21, 3),1006	PIN_FIELD_BASE(182, 182, 6, 0x0000, 0x10, 24, 3),1007	PIN_FIELD_BASE(183, 183, 2, 0x0000, 0x10, 27, 3),1008	PIN_FIELD_BASE(184, 184, 2, 0x0010, 0x10, 0, 3),1009};1010 1011static const struct mtk_pin_field_calc mt8186_pin_drv_adv_range[] = {1012	PIN_FIELD_BASE(127, 127, 3, 0x0030, 0x10, 0, 3),1013	PIN_FIELD_BASE(128, 128, 3, 0x0030, 0x10, 6, 3),1014	PIN_FIELD_BASE(129, 129, 5, 0x0030, 0x10, 0, 3),1015	PIN_FIELD_BASE(130, 130, 5, 0x0030, 0x10, 6, 3),1016	PIN_FIELD_BASE(131, 131, 5, 0x0030, 0x10, 3, 3),1017	PIN_FIELD_BASE(132, 132, 5, 0x0030, 0x10, 9, 3),1018	PIN_FIELD_BASE(133, 133, 1, 0x0030, 0x10, 0, 3),1019	PIN_FIELD_BASE(134, 134, 1, 0x0030, 0x10, 6, 3),1020	PIN_FIELD_BASE(135, 135, 6, 0x0020, 0x10, 0, 3),1021	PIN_FIELD_BASE(136, 136, 6, 0x0020, 0x10, 9, 3),1022	PIN_FIELD_BASE(137, 137, 1, 0x0030, 0x10, 3, 3),1023	PIN_FIELD_BASE(138, 138, 1, 0x0030, 0x10, 9, 3),1024	PIN_FIELD_BASE(139, 139, 2, 0x0020, 0x10, 0, 3),1025	PIN_FIELD_BASE(140, 140, 2, 0x0020, 0x10, 3, 3),1026	PIN_FIELD_BASE(141, 141, 3, 0x0030, 0x10, 3, 3),1027	PIN_FIELD_BASE(142, 142, 3, 0x0030, 0x10, 9, 3),1028	PIN_FIELD_BASE(143, 143, 6, 0x0020, 0x10, 3, 3),1029	PIN_FIELD_BASE(144, 144, 6, 0x0020, 0x10, 12, 3),1030	PIN_FIELD_BASE(145, 145, 6, 0x0020, 0x10, 6, 3),1031	PIN_FIELD_BASE(146, 146, 6, 0x0020, 0x10, 15, 3),1032};1033 1034static const struct mtk_pin_field_calc mt8186_pin_rsel_range[] = {1035	PIN_FIELD_BASE(127, 127, 3, 0x00d0, 0x10, 0, 2),1036	PIN_FIELD_BASE(128, 128, 3, 0x00d0, 0x10, 4, 2),1037	PIN_FIELD_BASE(129, 129, 5, 0x00d0, 0x10, 0, 2),1038	PIN_FIELD_BASE(130, 130, 5, 0x00d0, 0x10, 4, 2),1039	PIN_FIELD_BASE(131, 131, 5, 0x00d0, 0x10, 2, 2),1040	PIN_FIELD_BASE(132, 132, 5, 0x00d0, 0x10, 6, 2),1041	PIN_FIELD_BASE(133, 133, 1, 0x00e0, 0x10, 0, 2),1042	PIN_FIELD_BASE(134, 134, 1, 0x00e0, 0x10, 4, 2),1043	PIN_FIELD_BASE(135, 135, 6, 0x0070, 0x10, 0, 2),1044	PIN_FIELD_BASE(136, 136, 6, 0x0070, 0x10, 6, 2),1045	PIN_FIELD_BASE(137, 137, 1, 0x00e0, 0x10, 2, 2),1046	PIN_FIELD_BASE(138, 138, 1, 0x00e0, 0x10, 6, 2),1047	PIN_FIELD_BASE(139, 139, 2, 0x0080, 0x10, 0, 2),1048	PIN_FIELD_BASE(140, 140, 2, 0x0080, 0x10, 2, 2),1049	PIN_FIELD_BASE(141, 141, 3, 0x00d0, 0x10, 2, 2),1050	PIN_FIELD_BASE(142, 142, 3, 0x00d0, 0x10, 6, 2),1051	PIN_FIELD_BASE(143, 143, 6, 0x0070, 0x10, 2, 2),1052	PIN_FIELD_BASE(144, 144, 6, 0x0070, 0x10, 8, 2),1053	PIN_FIELD_BASE(145, 145, 6, 0x0070, 0x10, 4, 2),1054	PIN_FIELD_BASE(146, 146, 6, 0x0070, 0x10, 10, 2),1055};1056 1057static const struct mtk_pin_rsel mt8186_pin_rsel_val_range[] = {1058	PIN_RSEL(127, 128, 0x0, 75000, 75000),1059	PIN_RSEL(127, 128, 0x1, 10000, 75000),1060	PIN_RSEL(127, 128, 0x2, 5000, 5000),1061	PIN_RSEL(127, 128, 0x3, 1000, 5000),1062	PIN_RSEL(129, 130, 0x0, 75000, 75000),1063	PIN_RSEL(129, 130, 0x1, 10000, 75000),1064	PIN_RSEL(129, 130, 0x2, 5000, 5000),1065	PIN_RSEL(129, 130, 0x3, 1000, 5000),1066	PIN_RSEL(131, 132, 0x0, 75000, 75000),1067	PIN_RSEL(131, 132, 0x1, 10000, 75000),1068	PIN_RSEL(131, 132, 0x2, 5000, 5000),1069	PIN_RSEL(131, 132, 0x3, 1000, 5000),1070	PIN_RSEL(133, 134, 0x0, 75000, 75000),1071	PIN_RSEL(133, 134, 0x1, 10000, 75000),1072	PIN_RSEL(133, 134, 0x2, 5000, 5000),1073	PIN_RSEL(133, 134, 0x3, 1000, 5000),1074	PIN_RSEL(135, 136, 0x0, 75000, 75000),1075	PIN_RSEL(135, 136, 0x1, 10000, 75000),1076	PIN_RSEL(135, 136, 0x2, 5000, 5000),1077	PIN_RSEL(135, 136, 0x3, 1000, 5000),1078	PIN_RSEL(137, 138, 0x0, 75000, 75000),1079	PIN_RSEL(137, 138, 0x1, 10000, 75000),1080	PIN_RSEL(137, 138, 0x2, 5000, 5000),1081	PIN_RSEL(137, 138, 0x3, 1000, 5000),1082	PIN_RSEL(139, 140, 0x0, 75000, 75000),1083	PIN_RSEL(139, 140, 0x1, 10000, 75000),1084	PIN_RSEL(139, 140, 0x2, 5000, 5000),1085	PIN_RSEL(139, 140, 0x3, 1000, 5000),1086	PIN_RSEL(141, 142, 0x0, 75000, 75000),1087	PIN_RSEL(141, 142, 0x1, 10000, 75000),1088	PIN_RSEL(141, 142, 0x2, 5000, 5000),1089	PIN_RSEL(141, 142, 0x3, 1000, 5000),1090	PIN_RSEL(143, 144, 0x0, 75000, 75000),1091	PIN_RSEL(143, 144, 0x1, 10000, 75000),1092	PIN_RSEL(143, 144, 0x2, 5000, 5000),1093	PIN_RSEL(143, 144, 0x3, 1000, 5000),1094	PIN_RSEL(145, 146, 0x0, 75000, 75000),1095	PIN_RSEL(145, 146, 0x1, 10000, 75000),1096	PIN_RSEL(145, 146, 0x2, 5000, 5000),1097	PIN_RSEL(145, 146, 0x3, 1000, 5000),1098};1099 1100static const unsigned int mt8186_pull_type[] = {1101	MTK_PULL_PU_PD_TYPE,/*0*/		MTK_PULL_PU_PD_TYPE,/*1*/1102	MTK_PULL_PU_PD_TYPE,/*2*/		MTK_PULL_PU_PD_TYPE,/*3*/1103	MTK_PULL_PU_PD_TYPE,/*4*/		MTK_PULL_PU_PD_TYPE,/*5*/1104	MTK_PULL_PU_PD_TYPE,/*6*/		MTK_PULL_PU_PD_TYPE,/*7*/1105	MTK_PULL_PU_PD_TYPE,/*8*/		MTK_PULL_PU_PD_TYPE,/*9*/1106	MTK_PULL_PU_PD_TYPE,/*10*/		MTK_PULL_PU_PD_TYPE,/*11*/1107	MTK_PULL_PU_PD_TYPE,/*12*/		MTK_PULL_PU_PD_TYPE,/*13*/1108	MTK_PULL_PU_PD_TYPE,/*14*/		MTK_PULL_PU_PD_TYPE,/*15*/1109	MTK_PULL_PU_PD_TYPE,/*16*/		MTK_PULL_PU_PD_TYPE,/*17*/1110	MTK_PULL_PU_PD_TYPE,/*18*/		MTK_PULL_PU_PD_TYPE,/*19*/1111	MTK_PULL_PU_PD_TYPE,/*20*/		MTK_PULL_PU_PD_TYPE,/*21*/1112	MTK_PULL_PU_PD_TYPE,/*22*/		MTK_PULL_PU_PD_TYPE,/*23*/1113	MTK_PULL_PU_PD_TYPE,/*24*/		MTK_PULL_PU_PD_TYPE,/*25*/1114	MTK_PULL_PU_PD_TYPE,/*26*/		MTK_PULL_PU_PD_TYPE,/*27*/1115	MTK_PULL_PU_PD_TYPE,/*28*/		MTK_PULL_PU_PD_TYPE,/*29*/1116	MTK_PULL_PU_PD_TYPE,/*30*/		MTK_PULL_PU_PD_TYPE,/*31*/1117	MTK_PULL_PU_PD_TYPE,/*32*/		MTK_PULL_PU_PD_TYPE,/*33*/1118	MTK_PULL_PU_PD_TYPE,/*34*/		MTK_PULL_PU_PD_TYPE,/*35*/1119	MTK_PULL_PU_PD_TYPE,/*36*/		MTK_PULL_PU_PD_TYPE,/*37*/1120	MTK_PULL_PU_PD_TYPE,/*38*/		MTK_PULL_PU_PD_TYPE,/*39*/1121	MTK_PULL_PU_PD_TYPE,/*40*/		MTK_PULL_PU_PD_TYPE,/*41*/1122	MTK_PULL_PU_PD_TYPE,/*42*/		MTK_PULL_PU_PD_TYPE,/*43*/1123	MTK_PULL_PU_PD_TYPE,/*44*/		MTK_PULL_PU_PD_TYPE,/*45*/1124	MTK_PULL_PU_PD_TYPE,/*46*/		MTK_PULL_PU_PD_TYPE,/*47*/1125	MTK_PULL_PU_PD_TYPE,/*48*/		MTK_PULL_PU_PD_TYPE,/*49*/1126	MTK_PULL_PU_PD_TYPE,/*50*/		MTK_PULL_PU_PD_TYPE,/*51*/1127	MTK_PULL_PU_PD_TYPE,/*52*/		MTK_PULL_PU_PD_TYPE,/*53*/1128	MTK_PULL_PU_PD_TYPE,/*54*/		MTK_PULL_PU_PD_TYPE,/*55*/1129	MTK_PULL_PU_PD_TYPE,/*56*/		MTK_PULL_PU_PD_TYPE,/*57*/1130	MTK_PULL_PU_PD_TYPE,/*58*/		MTK_PULL_PU_PD_TYPE,/*59*/1131	MTK_PULL_PU_PD_TYPE,/*60*/		MTK_PULL_PU_PD_TYPE,/*61*/1132	MTK_PULL_PU_PD_TYPE,/*62*/		MTK_PULL_PU_PD_TYPE,/*63*/1133	MTK_PULL_PU_PD_TYPE,/*64*/		MTK_PULL_PU_PD_TYPE,/*65*/1134	MTK_PULL_PU_PD_TYPE,/*66*/		MTK_PULL_PUPD_R1R0_TYPE,/*67*/1135	MTK_PULL_PUPD_R1R0_TYPE,/*68*/		MTK_PULL_PUPD_R1R0_TYPE,/*69*/1136	MTK_PULL_PUPD_R1R0_TYPE,/*70*/		MTK_PULL_PUPD_R1R0_TYPE,/*71*/1137	MTK_PULL_PUPD_R1R0_TYPE,/*72*/		MTK_PULL_PUPD_R1R0_TYPE,/*73*/1138	MTK_PULL_PUPD_R1R0_TYPE,/*74*/		MTK_PULL_PUPD_R1R0_TYPE,/*75*/1139	MTK_PULL_PUPD_R1R0_TYPE,/*76*/		MTK_PULL_PUPD_R1R0_TYPE,/*77*/1140	MTK_PULL_PUPD_R1R0_TYPE,/*78*/		MTK_PULL_PUPD_R1R0_TYPE,/*79*/1141	MTK_PULL_PUPD_R1R0_TYPE,/*80*/		MTK_PULL_PUPD_R1R0_TYPE,/*81*/1142	MTK_PULL_PUPD_R1R0_TYPE,/*82*/		MTK_PULL_PU_PD_TYPE,/*83*/1143	MTK_PULL_PUPD_R1R0_TYPE,/*84*/		MTK_PULL_PUPD_R1R0_TYPE,/*85*/1144	MTK_PULL_PUPD_R1R0_TYPE,/*86*/		MTK_PULL_PUPD_R1R0_TYPE,/*87*/1145	MTK_PULL_PUPD_R1R0_TYPE,/*88*/		MTK_PULL_PUPD_R1R0_TYPE,/*89*/1146	MTK_PULL_PU_PD_TYPE,/*90*/		MTK_PULL_PU_PD_TYPE,/*91*/1147	MTK_PULL_PU_PD_TYPE,/*92*/		MTK_PULL_PU_PD_TYPE,/*93*/1148	MTK_PULL_PU_PD_TYPE,/*94*/		MTK_PULL_PU_PD_TYPE,/*95*/1149	MTK_PULL_PU_PD_TYPE,/*96*/		MTK_PULL_PU_PD_TYPE,/*97*/1150	MTK_PULL_PU_PD_TYPE,/*98*/		MTK_PULL_PU_PD_TYPE,/*99*/1151	MTK_PULL_PU_PD_TYPE,/*100*/		MTK_PULL_PU_PD_TYPE,/*101*/1152	MTK_PULL_PU_PD_TYPE,/*102*/		MTK_PULL_PU_PD_TYPE,/*103*/1153	MTK_PULL_PU_PD_TYPE,/*104*/		MTK_PULL_PU_PD_TYPE,/*105*/1154	MTK_PULL_PU_PD_TYPE,/*106*/		MTK_PULL_PU_PD_TYPE,/*107*/1155	MTK_PULL_PU_PD_TYPE,/*108*/		MTK_PULL_PU_PD_TYPE,/*109*/1156	MTK_PULL_PU_PD_TYPE,/*110*/		MTK_PULL_PU_PD_TYPE,/*111*/1157	MTK_PULL_PU_PD_TYPE,/*112*/		MTK_PULL_PU_PD_TYPE,/*113*/1158	MTK_PULL_PU_PD_TYPE,/*114*/		MTK_PULL_PU_PD_TYPE,/*115*/1159	MTK_PULL_PU_PD_TYPE,/*116*/		MTK_PULL_PU_PD_TYPE,/*117*/1160	MTK_PULL_PU_PD_TYPE,/*118*/		MTK_PULL_PU_PD_TYPE,/*119*/1161	MTK_PULL_PU_PD_TYPE,/*120*/		MTK_PULL_PU_PD_TYPE,/*121*/1162	MTK_PULL_PU_PD_TYPE,/*122*/		MTK_PULL_PU_PD_TYPE,/*123*/1163	MTK_PULL_PU_PD_TYPE,/*124*/		MTK_PULL_PU_PD_TYPE,/*125*/1164	MTK_PULL_PU_PD_TYPE,/*126*/		MTK_PULL_PU_PD_RSEL_TYPE,/*127*/1165	MTK_PULL_PU_PD_RSEL_TYPE,/*128*/	MTK_PULL_PU_PD_RSEL_TYPE,/*129*/1166	MTK_PULL_PU_PD_RSEL_TYPE,/*130*/	MTK_PULL_PU_PD_RSEL_TYPE,/*131*/1167	MTK_PULL_PU_PD_RSEL_TYPE,/*132*/	MTK_PULL_PU_PD_RSEL_TYPE,/*133*/1168	MTK_PULL_PU_PD_RSEL_TYPE,/*134*/	MTK_PULL_PU_PD_RSEL_TYPE,/*135*/1169	MTK_PULL_PU_PD_RSEL_TYPE,/*136*/	MTK_PULL_PU_PD_RSEL_TYPE,/*137*/1170	MTK_PULL_PU_PD_RSEL_TYPE,/*138*/	MTK_PULL_PU_PD_RSEL_TYPE,/*139*/1171	MTK_PULL_PU_PD_RSEL_TYPE,/*140*/	MTK_PULL_PU_PD_RSEL_TYPE,/*141*/1172	MTK_PULL_PU_PD_RSEL_TYPE,/*142*/	MTK_PULL_PU_PD_RSEL_TYPE,/*143*/1173	MTK_PULL_PU_PD_RSEL_TYPE,/*144*/	MTK_PULL_PU_PD_RSEL_TYPE,/*145*/1174	MTK_PULL_PU_PD_RSEL_TYPE,/*146*/	MTK_PULL_PU_PD_TYPE,/*147*/1175	MTK_PULL_PU_PD_TYPE,/*148*/		MTK_PULL_PU_PD_TYPE,/*149*/1176	MTK_PULL_PU_PD_TYPE,/*150*/		MTK_PULL_PU_PD_TYPE,/*151*/1177	MTK_PULL_PU_PD_TYPE,/*152*/		MTK_PULL_PU_PD_TYPE,/*153*/1178	MTK_PULL_PU_PD_TYPE,/*154*/		MTK_PULL_PU_PD_TYPE,/*155*/1179	MTK_PULL_PU_PD_TYPE,/*156*/		MTK_PULL_PU_PD_TYPE,/*157*/1180	MTK_PULL_PU_PD_TYPE,/*158*/		MTK_PULL_PU_PD_TYPE,/*159*/1181	MTK_PULL_PU_PD_TYPE,/*160*/		MTK_PULL_PU_PD_TYPE,/*161*/1182	MTK_PULL_PU_PD_TYPE,/*162*/		MTK_PULL_PU_PD_TYPE,/*163*/1183	MTK_PULL_PU_PD_TYPE,/*164*/		MTK_PULL_PU_PD_TYPE,/*165*/1184	MTK_PULL_PU_PD_TYPE,/*166*/		MTK_PULL_PU_PD_TYPE,/*167*/1185	MTK_PULL_PU_PD_TYPE,/*168*/		MTK_PULL_PU_PD_TYPE,/*169*/1186	MTK_PULL_PU_PD_TYPE,/*170*/		MTK_PULL_PU_PD_TYPE,/*171*/1187	MTK_PULL_PU_PD_TYPE,/*172*/		MTK_PULL_PU_PD_TYPE,/*173*/1188	MTK_PULL_PU_PD_TYPE,/*174*/		MTK_PULL_PU_PD_TYPE,/*175*/1189	MTK_PULL_PU_PD_TYPE,/*176*/		MTK_PULL_PU_PD_TYPE,/*177*/1190	MTK_PULL_PU_PD_TYPE,/*178*/		MTK_PULL_PU_PD_TYPE,/*179*/1191	MTK_PULL_PU_PD_TYPE,/*180*/		MTK_PULL_PU_PD_TYPE,/*181*/1192	MTK_PULL_PU_PD_TYPE,/*182*/		MTK_PULL_PU_PD_TYPE,/*183*/1193	MTK_PULL_PU_PD_TYPE,/*184*/1194};1195 1196static const struct mtk_pin_reg_calc mt8186_reg_cals[PINCTRL_PIN_REG_MAX] = {1197	[PINCTRL_PIN_REG_MODE] = MTK_RANGE(mt8186_pin_mode_range),1198	[PINCTRL_PIN_REG_DIR] = MTK_RANGE(mt8186_pin_dir_range),1199	[PINCTRL_PIN_REG_DI] = MTK_RANGE(mt8186_pin_di_range),1200	[PINCTRL_PIN_REG_DO] = MTK_RANGE(mt8186_pin_do_range),1201	[PINCTRL_PIN_REG_SMT] = MTK_RANGE(mt8186_pin_smt_range),1202	[PINCTRL_PIN_REG_IES] = MTK_RANGE(mt8186_pin_ies_range),1203	[PINCTRL_PIN_REG_PU] = MTK_RANGE(mt8186_pin_pu_range),1204	[PINCTRL_PIN_REG_PD] = MTK_RANGE(mt8186_pin_pd_range),1205	[PINCTRL_PIN_REG_DRV] = MTK_RANGE(mt8186_pin_drv_range),1206	[PINCTRL_PIN_REG_PUPD] = MTK_RANGE(mt8186_pin_pupd_range),1207	[PINCTRL_PIN_REG_R0] = MTK_RANGE(mt8186_pin_r0_range),1208	[PINCTRL_PIN_REG_R1] = MTK_RANGE(mt8186_pin_r1_range),1209	[PINCTRL_PIN_REG_DRV_ADV] = MTK_RANGE(mt8186_pin_drv_adv_range),1210	[PINCTRL_PIN_REG_RSEL]	= MTK_RANGE(mt8186_pin_rsel_range),1211 1212};1213 1214static const char * const mt8186_pinctrl_register_base_names[] = {1215	"iocfg0", "iocfg_lt", "iocfg_lm", "iocfg_lb", "iocfg_bl",1216	"iocfg_rb", "iocfg_rt",1217};1218 1219static const struct mtk_eint_hw mt8186_eint_hw = {1220	.port_mask = 0xf,1221	.ports     = 7,1222	.ap_num    = 217,1223	.db_cnt    = 32,1224	.db_time   = debounce_time_mt6765,1225};1226 1227static const struct mtk_pin_soc mt8186_data = {1228	.reg_cal = mt8186_reg_cals,1229	.pins = mtk_pins_mt8186,1230	.npins = ARRAY_SIZE(mtk_pins_mt8186),1231	.ngrps = ARRAY_SIZE(mtk_pins_mt8186),1232	.nfuncs = 8,1233	.gpio_m = 0,1234	.eint_hw = &mt8186_eint_hw,1235	.base_names = mt8186_pinctrl_register_base_names,1236	.nbase_names = ARRAY_SIZE(mt8186_pinctrl_register_base_names),1237	.pull_type = mt8186_pull_type,1238	.pin_rsel = mt8186_pin_rsel_val_range,1239	.npin_rsel = ARRAY_SIZE(mt8186_pin_rsel_val_range),1240	.bias_set_combo = mtk_pinconf_bias_set_combo,1241	.bias_get_combo = mtk_pinconf_bias_get_combo,1242	.drive_set = mtk_pinconf_drive_set_rev1,1243	.drive_get = mtk_pinconf_drive_get_rev1,1244	.adv_drive_get = mtk_pinconf_adv_drive_get_raw,1245	.adv_drive_set = mtk_pinconf_adv_drive_set_raw,1246};1247 1248static const struct of_device_id mt8186_pinctrl_of_match[] = {1249	{ .compatible = "mediatek,mt8186-pinctrl", .data = &mt8186_data },1250	{ }1251};1252 1253static struct platform_driver mt8186_pinctrl_driver = {1254	.driver = {1255		.name = "mt8186-pinctrl",1256		.of_match_table = mt8186_pinctrl_of_match,1257		.pm = pm_sleep_ptr(&mtk_paris_pinctrl_pm_ops),1258	},1259	.probe = mtk_paris_pinctrl_probe,1260};1261 1262static int __init mt8186_pinctrl_init(void)1263{1264	return platform_driver_register(&mt8186_pinctrl_driver);1265}1266 1267arch_initcall(mt8186_pinctrl_init);1268