^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) // SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) * Copyright (C) 2018 MediaTek Inc.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) * Author: ZH Chen <zh.chen@mediatek.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) #include <linux/module.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) #include "pinctrl-mtk-mt6765.h"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) #include "pinctrl-paris.h"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) /* MT6765 have multiple bases to program pin configuration listed as the below:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) * iocfg[0]:0x10005000, iocfg[1]:0x10002C00, iocfg[2]:0x10002800,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) * iocfg[3]:0x10002A00, iocfg[4]:0x10002000, iocfg[5]:0x10002200,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) * iocfg[6]:0x10002500, iocfg[7]:0x10002600.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) * _i_base could be used to indicate what base the pin should be mapped into.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) #define PIN_FIELD_BASE(_s_pin, _e_pin, _i_base, _s_addr, _x_addrs, _s_bit, _x_bits) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) PIN_FIELD_CALC(_s_pin, _e_pin, _i_base, _s_addr, _x_addrs, _s_bit, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) _x_bits, 32, 0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) #define PINS_FIELD_BASE(_s_pin, _e_pin, _i_base, _s_addr, _x_addrs, _s_bit, _x_bits) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) PIN_FIELD_CALC(_s_pin, _e_pin, _i_base, _s_addr, _x_addrs, _s_bit, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) _x_bits, 32, 1)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) static const struct mtk_pin_field_calc mt6765_pin_mode_range[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) PIN_FIELD(0, 202, 0x300, 0x10, 0, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) static const struct mtk_pin_field_calc mt6765_pin_dir_range[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) PIN_FIELD(0, 202, 0x0, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) static const struct mtk_pin_field_calc mt6765_pin_di_range[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) PIN_FIELD(0, 202, 0x200, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) static const struct mtk_pin_field_calc mt6765_pin_do_range[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) PIN_FIELD(0, 202, 0x100, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) static const struct mtk_pin_field_calc mt6765_pin_smt_range[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) PINS_FIELD_BASE(0, 3, 2, 0x00b0, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) PINS_FIELD_BASE(4, 7, 2, 0x00b0, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) PIN_FIELD_BASE(8, 8, 3, 0x0080, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) PINS_FIELD_BASE(9, 11, 2, 0x00b0, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) PIN_FIELD_BASE(12, 12, 5, 0x0060, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) PINS_FIELD_BASE(13, 16, 6, 0x00b0, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) PINS_FIELD_BASE(17, 20, 6, 0x00b0, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) PINS_FIELD_BASE(21, 24, 6, 0x00b0, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) PINS_FIELD_BASE(25, 28, 6, 0x00b0, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) PIN_FIELD_BASE(29, 29, 6, 0x00b0, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) PIN_FIELD_BASE(30, 30, 6, 0x00b0, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) PINS_FIELD_BASE(31, 34, 6, 0x00b0, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) PINS_FIELD_BASE(35, 36, 6, 0x00b0, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) PIN_FIELD_BASE(37, 37, 6, 0x00b0, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) PIN_FIELD_BASE(38, 38, 6, 0x00b0, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) PINS_FIELD_BASE(39, 40, 6, 0x00b0, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) PINS_FIELD_BASE(41, 42, 7, 0x00c0, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) PIN_FIELD_BASE(43, 43, 7, 0x00c0, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) PIN_FIELD_BASE(44, 44, 7, 0x00c0, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) PIN_FIELD_BASE(45, 45, 7, 0x00c0, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) PINS_FIELD_BASE(46, 47, 7, 0x00c0, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) PIN_FIELD_BASE(48, 48, 7, 0x00c0, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) PIN_FIELD_BASE(49, 49, 7, 0x00c0, 0x10, 17, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) PIN_FIELD_BASE(50, 50, 7, 0x00c0, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) PIN_FIELD_BASE(51, 51, 7, 0x00c0, 0x10, 16, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) PINS_FIELD_BASE(52, 57, 7, 0x00c0, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) PINS_FIELD_BASE(58, 60, 7, 0x00c0, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) PINS_FIELD_BASE(61, 62, 3, 0x0080, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) PINS_FIELD_BASE(63, 64, 3, 0x0080, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) PINS_FIELD_BASE(65, 66, 3, 0x0080, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) PINS_FIELD_BASE(67, 68, 3, 0x0080, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) PINS_FIELD_BASE(69, 73, 3, 0x0080, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) PINS_FIELD_BASE(74, 78, 3, 0x0080, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) PINS_FIELD_BASE(79, 80, 3, 0x0080, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) PIN_FIELD_BASE(81, 81, 3, 0x0080, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) PIN_FIELD_BASE(82, 82, 3, 0x0080, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) PIN_FIELD_BASE(83, 83, 3, 0x0080, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) PIN_FIELD_BASE(84, 84, 3, 0x0080, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) PIN_FIELD_BASE(85, 85, 7, 0x00c0, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) PIN_FIELD_BASE(86, 86, 7, 0x00c0, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) PIN_FIELD_BASE(87, 87, 7, 0x00c0, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) PIN_FIELD_BASE(88, 88, 7, 0x00c0, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) PIN_FIELD_BASE(89, 89, 2, 0x00b0, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) PIN_FIELD_BASE(90, 90, 3, 0x0080, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) PINS_FIELD_BASE(91, 92, 2, 0x00b0, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) PINS_FIELD_BASE(93, 94, 2, 0x00b0, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) PINS_FIELD_BASE(95, 96, 2, 0x00b0, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) PINS_FIELD_BASE(97, 98, 2, 0x00b0, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) PIN_FIELD_BASE(99, 99, 2, 0x00b0, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94) PIN_FIELD_BASE(100, 100, 2, 0x00b0, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) PINS_FIELD_BASE(101, 102, 2, 0x00b0, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) PIN_FIELD_BASE(103, 103, 2, 0x00b0, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) PIN_FIELD_BASE(104, 104, 2, 0x00b0, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) PIN_FIELD_BASE(105, 105, 2, 0x00b0, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) PIN_FIELD_BASE(106, 106, 2, 0x00b0, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) PIN_FIELD_BASE(107, 107, 1, 0x0080, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) PIN_FIELD_BASE(108, 108, 1, 0x0080, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) PIN_FIELD_BASE(109, 109, 1, 0x0080, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) PIN_FIELD_BASE(110, 110, 1, 0x0080, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) PIN_FIELD_BASE(111, 111, 1, 0x0080, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) PIN_FIELD_BASE(112, 112, 1, 0x0080, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) PIN_FIELD_BASE(113, 113, 1, 0x0080, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) PIN_FIELD_BASE(114, 114, 1, 0x0080, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) PIN_FIELD_BASE(115, 115, 1, 0x0080, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) PIN_FIELD_BASE(116, 116, 1, 0x0080, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) PIN_FIELD_BASE(117, 117, 1, 0x0080, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) PIN_FIELD_BASE(118, 118, 1, 0x0080, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) PIN_FIELD_BASE(119, 119, 1, 0x0080, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) PIN_FIELD_BASE(120, 120, 1, 0x0080, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) PIN_FIELD_BASE(121, 121, 1, 0x0080, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) PIN_FIELD_BASE(122, 122, 4, 0x0080, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) PIN_FIELD_BASE(123, 123, 4, 0x0080, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) PIN_FIELD_BASE(124, 124, 4, 0x0080, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) PIN_FIELD_BASE(125, 125, 4, 0x0080, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) PIN_FIELD_BASE(126, 126, 4, 0x0080, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) PIN_FIELD_BASE(127, 127, 4, 0x0080, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) PIN_FIELD_BASE(128, 128, 4, 0x0080, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) PIN_FIELD_BASE(129, 129, 4, 0x0080, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) PIN_FIELD_BASE(130, 130, 4, 0x0080, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) PIN_FIELD_BASE(131, 131, 4, 0x0080, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) PIN_FIELD_BASE(132, 132, 4, 0x0080, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) PIN_FIELD_BASE(133, 133, 4, 0x0080, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) PIN_FIELD_BASE(134, 134, 5, 0x0060, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) PIN_FIELD_BASE(135, 135, 5, 0x0060, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) PIN_FIELD_BASE(136, 136, 5, 0x0060, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) PIN_FIELD_BASE(137, 137, 5, 0x0060, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) PIN_FIELD_BASE(138, 138, 5, 0x0060, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) PIN_FIELD_BASE(139, 139, 5, 0x0060, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) PIN_FIELD_BASE(140, 140, 5, 0x0060, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) PIN_FIELD_BASE(141, 141, 5, 0x0060, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) PIN_FIELD_BASE(142, 142, 5, 0x0060, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) PIN_FIELD_BASE(143, 143, 5, 0x0060, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) PINS_FIELD_BASE(144, 147, 5, 0x0060, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) PINS_FIELD_BASE(148, 149, 5, 0x0060, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) PINS_FIELD_BASE(150, 151, 7, 0x00c0, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) PINS_FIELD_BASE(152, 153, 7, 0x00c0, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) PIN_FIELD_BASE(154, 154, 7, 0x00c0, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) PINS_FIELD_BASE(155, 158, 3, 0x0080, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) PIN_FIELD_BASE(159, 159, 7, 0x00c0, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) PIN_FIELD_BASE(160, 160, 5, 0x0060, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) PIN_FIELD_BASE(161, 161, 1, 0x0080, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) PIN_FIELD_BASE(162, 162, 1, 0x0080, 0x10, 16, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) PINS_FIELD_BASE(163, 170, 4, 0x0080, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) PINS_FIELD_BASE(171, 179, 7, 0x00c0, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) static const struct mtk_pin_field_calc mt6765_pin_pd_range[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) PIN_FIELD_BASE(0, 0, 2, 0x0040, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) PIN_FIELD_BASE(1, 1, 2, 0x0040, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) PIN_FIELD_BASE(2, 2, 2, 0x0040, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) PIN_FIELD_BASE(3, 3, 2, 0x0040, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) PIN_FIELD_BASE(4, 4, 2, 0x0040, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) PIN_FIELD_BASE(5, 5, 2, 0x0040, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) PIN_FIELD_BASE(6, 6, 2, 0x0040, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) PIN_FIELD_BASE(7, 7, 2, 0x0040, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) PIN_FIELD_BASE(8, 8, 3, 0x0040, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) PIN_FIELD_BASE(9, 9, 2, 0x0040, 0x10, 16, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) PIN_FIELD_BASE(10, 10, 2, 0x0040, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) PIN_FIELD_BASE(11, 11, 2, 0x0040, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) PIN_FIELD_BASE(12, 12, 5, 0x0030, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) PIN_FIELD_BASE(13, 13, 6, 0x0040, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) PIN_FIELD_BASE(14, 14, 6, 0x0040, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) PIN_FIELD_BASE(15, 15, 6, 0x0040, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) PIN_FIELD_BASE(16, 16, 6, 0x0040, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) PIN_FIELD_BASE(17, 17, 6, 0x0040, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) PIN_FIELD_BASE(18, 18, 6, 0x0040, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) PIN_FIELD_BASE(19, 19, 6, 0x0040, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) PIN_FIELD_BASE(20, 20, 6, 0x0040, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) PIN_FIELD_BASE(21, 21, 6, 0x0040, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) PIN_FIELD_BASE(22, 22, 6, 0x0040, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) PIN_FIELD_BASE(23, 23, 6, 0x0040, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) PIN_FIELD_BASE(24, 24, 6, 0x0040, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) PIN_FIELD_BASE(25, 25, 6, 0x0040, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) PIN_FIELD_BASE(26, 26, 6, 0x0040, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) PIN_FIELD_BASE(27, 27, 6, 0x0040, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) PINS_FIELD_BASE(28, 40, 6, 0x0040, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) PIN_FIELD_BASE(41, 41, 7, 0x0060, 0x10, 19, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) PIN_FIELD_BASE(42, 42, 7, 0x0060, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) PIN_FIELD_BASE(43, 43, 7, 0x0060, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) PIN_FIELD_BASE(44, 44, 7, 0x0060, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) PIN_FIELD_BASE(45, 45, 7, 0x0060, 0x10, 22, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) PIN_FIELD_BASE(46, 46, 7, 0x0060, 0x10, 21, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) PIN_FIELD_BASE(47, 47, 7, 0x0060, 0x10, 20, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) PIN_FIELD_BASE(48, 48, 7, 0x0070, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) PIN_FIELD_BASE(49, 49, 7, 0x0070, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) PIN_FIELD_BASE(50, 50, 7, 0x0070, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) PIN_FIELD_BASE(51, 51, 7, 0x0070, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) PIN_FIELD_BASE(52, 52, 7, 0x0060, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) PIN_FIELD_BASE(53, 53, 7, 0x0060, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) PIN_FIELD_BASE(54, 54, 7, 0x0060, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) PIN_FIELD_BASE(55, 55, 7, 0x0060, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) PIN_FIELD_BASE(56, 56, 7, 0x0060, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) PIN_FIELD_BASE(57, 57, 7, 0x0060, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198) PIN_FIELD_BASE(58, 58, 7, 0x0070, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) PIN_FIELD_BASE(59, 59, 7, 0x0060, 0x10, 31, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) PIN_FIELD_BASE(60, 60, 7, 0x0060, 0x10, 30, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) PIN_FIELD_BASE(61, 61, 3, 0x0040, 0x10, 18, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) PIN_FIELD_BASE(62, 62, 3, 0x0040, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) PIN_FIELD_BASE(63, 63, 3, 0x0040, 0x10, 17, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204) PIN_FIELD_BASE(64, 64, 3, 0x0040, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) PIN_FIELD_BASE(65, 65, 3, 0x0040, 0x10, 20, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) PIN_FIELD_BASE(66, 66, 3, 0x0040, 0x10, 16, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) PIN_FIELD_BASE(67, 67, 3, 0x0040, 0x10, 19, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) PIN_FIELD_BASE(68, 68, 3, 0x0040, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209) PIN_FIELD_BASE(69, 69, 3, 0x0040, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) PIN_FIELD_BASE(70, 70, 3, 0x0040, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) PIN_FIELD_BASE(71, 71, 3, 0x0040, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) PIN_FIELD_BASE(72, 72, 3, 0x0040, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) PIN_FIELD_BASE(73, 73, 3, 0x0040, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) PIN_FIELD_BASE(74, 74, 3, 0x0040, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215) PIN_FIELD_BASE(75, 75, 3, 0x0040, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) PIN_FIELD_BASE(76, 76, 3, 0x0040, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) PIN_FIELD_BASE(77, 77, 3, 0x0040, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218) PIN_FIELD_BASE(78, 78, 3, 0x0040, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) PIN_FIELD_BASE(79, 79, 3, 0x0040, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) PIN_FIELD_BASE(80, 80, 3, 0x0040, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) PIN_FIELD_BASE(81, 81, 3, 0x0040, 0x10, 25, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) PIN_FIELD_BASE(82, 82, 3, 0x0040, 0x10, 24, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) PIN_FIELD_BASE(83, 83, 3, 0x0040, 0x10, 22, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224) PIN_FIELD_BASE(84, 84, 3, 0x0040, 0x10, 23, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225) PIN_FIELD_BASE(85, 85, 7, 0x0070, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226) PIN_FIELD_BASE(86, 86, 7, 0x0060, 0x10, 29, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) PIN_FIELD_BASE(87, 87, 7, 0x0060, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228) PIN_FIELD_BASE(88, 88, 7, 0x0060, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229) PIN_FIELD_BASE(89, 89, 2, 0x0040, 0x10, 21, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) PINS_FIELD_BASE(90, 94, 3, 0x0040, 0x10, 21, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) PIN_FIELD_BASE(95, 95, 2, 0x0040, 0x10, 22, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) PIN_FIELD_BASE(96, 96, 2, 0x0040, 0x10, 23, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233) PIN_FIELD_BASE(97, 97, 2, 0x0040, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234) PIN_FIELD_BASE(98, 98, 2, 0x0040, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235) PIN_FIELD_BASE(99, 99, 2, 0x0040, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 236) PIN_FIELD_BASE(100, 100, 2, 0x0040, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 237) PIN_FIELD_BASE(101, 101, 2, 0x0040, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 238) PIN_FIELD_BASE(102, 102, 2, 0x0040, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 239) PIN_FIELD_BASE(103, 103, 2, 0x0040, 0x10, 17, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 240) PIN_FIELD_BASE(104, 104, 2, 0x0040, 0x10, 19, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 241) PIN_FIELD_BASE(105, 105, 2, 0x0040, 0x10, 18, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 242) PIN_FIELD_BASE(106, 106, 2, 0x0040, 0x10, 20, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 243) PIN_FIELD_BASE(107, 107, 1, 0x0040, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 244) PIN_FIELD_BASE(108, 108, 1, 0x0040, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 245) PIN_FIELD_BASE(109, 109, 1, 0x0040, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 246) PIN_FIELD_BASE(110, 110, 1, 0x0040, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 247) PIN_FIELD_BASE(111, 111, 1, 0x0040, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 248) PIN_FIELD_BASE(112, 112, 1, 0x0040, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 249) PIN_FIELD_BASE(113, 113, 1, 0x0040, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 250) PIN_FIELD_BASE(114, 114, 1, 0x0040, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 251) PIN_FIELD_BASE(115, 115, 1, 0x0040, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 252) PIN_FIELD_BASE(116, 116, 1, 0x0040, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 253) PIN_FIELD_BASE(117, 117, 1, 0x0040, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 254) PIN_FIELD_BASE(118, 118, 1, 0x0040, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 255) PIN_FIELD_BASE(119, 119, 1, 0x0040, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 256) PIN_FIELD_BASE(120, 120, 1, 0x0040, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 257) PINS_FIELD_BASE(121, 133, 1, 0x0040, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 258) PIN_FIELD_BASE(134, 134, 5, 0x0030, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 259) PIN_FIELD_BASE(135, 135, 5, 0x0030, 0x10, 19, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 260) PIN_FIELD_BASE(136, 136, 5, 0x0030, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 261) PIN_FIELD_BASE(137, 137, 5, 0x0030, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 262) PIN_FIELD_BASE(138, 138, 5, 0x0030, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 263) PIN_FIELD_BASE(139, 139, 5, 0x0030, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 264) PIN_FIELD_BASE(140, 140, 5, 0x0030, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 265) PIN_FIELD_BASE(141, 141, 5, 0x0030, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 266) PIN_FIELD_BASE(142, 142, 5, 0x0030, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 267) PIN_FIELD_BASE(143, 143, 5, 0x0030, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 268) PIN_FIELD_BASE(144, 144, 5, 0x0030, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 269) PIN_FIELD_BASE(145, 145, 5, 0x0030, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 270) PIN_FIELD_BASE(146, 146, 5, 0x0030, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 271) PIN_FIELD_BASE(147, 147, 5, 0x0030, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 272) PIN_FIELD_BASE(148, 148, 5, 0x0030, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 273) PIN_FIELD_BASE(149, 149, 5, 0x0030, 0x10, 16, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 274) PIN_FIELD_BASE(150, 150, 7, 0x0060, 0x10, 23, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 275) PIN_FIELD_BASE(151, 151, 7, 0x0060, 0x10, 24, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 276) PIN_FIELD_BASE(152, 152, 7, 0x0060, 0x10, 25, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 277) PIN_FIELD_BASE(153, 153, 7, 0x0060, 0x10, 26, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 278) PIN_FIELD_BASE(154, 154, 7, 0x0060, 0x10, 28, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 279) PIN_FIELD_BASE(155, 155, 3, 0x0040, 0x10, 28, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 280) PIN_FIELD_BASE(156, 156, 3, 0x0040, 0x10, 27, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 281) PIN_FIELD_BASE(157, 157, 3, 0x0040, 0x10, 29, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 282) PIN_FIELD_BASE(158, 158, 3, 0x0040, 0x10, 26, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 283) PIN_FIELD_BASE(159, 159, 7, 0x0060, 0x10, 27, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 284) PIN_FIELD_BASE(160, 160, 5, 0x0030, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 285) PIN_FIELD_BASE(161, 161, 1, 0x0040, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 286) PIN_FIELD_BASE(162, 162, 1, 0x0040, 0x10, 16, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 287) PIN_FIELD_BASE(163, 163, 4, 0x0020, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 288) PIN_FIELD_BASE(164, 164, 4, 0x0020, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 289) PIN_FIELD_BASE(165, 165, 4, 0x0020, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 290) PIN_FIELD_BASE(166, 166, 4, 0x0020, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 291) PIN_FIELD_BASE(167, 167, 4, 0x0020, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 292) PIN_FIELD_BASE(168, 168, 4, 0x0020, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 293) PIN_FIELD_BASE(169, 169, 4, 0x0020, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 294) PIN_FIELD_BASE(170, 170, 4, 0x0020, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 295) PIN_FIELD_BASE(171, 171, 7, 0x0060, 0x10, 17, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 296) PIN_FIELD_BASE(172, 172, 7, 0x0060, 0x10, 18, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 297) PIN_FIELD_BASE(173, 173, 7, 0x0060, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 298) PIN_FIELD_BASE(174, 174, 7, 0x0060, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 299) PIN_FIELD_BASE(175, 175, 7, 0x0060, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 300) PIN_FIELD_BASE(176, 176, 7, 0x0060, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 301) PIN_FIELD_BASE(177, 177, 7, 0x0060, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 302) PINS_FIELD_BASE(178, 179, 7, 0x0060, 0x10, 16, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 303) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 304)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 305) static const struct mtk_pin_field_calc mt6765_pin_pu_range[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 306) PIN_FIELD_BASE(0, 0, 2, 0x0060, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 307) PIN_FIELD_BASE(1, 1, 2, 0x0060, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 308) PIN_FIELD_BASE(2, 2, 2, 0x0060, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 309) PIN_FIELD_BASE(3, 3, 2, 0x0060, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 310) PIN_FIELD_BASE(4, 4, 2, 0x0060, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 311) PIN_FIELD_BASE(5, 5, 2, 0x0060, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 312) PIN_FIELD_BASE(6, 6, 2, 0x0060, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 313) PIN_FIELD_BASE(7, 7, 2, 0x0060, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 314) PIN_FIELD_BASE(8, 8, 3, 0x0050, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 315) PIN_FIELD_BASE(9, 9, 2, 0x0060, 0x10, 16, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 316) PIN_FIELD_BASE(10, 10, 2, 0x0060, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 317) PIN_FIELD_BASE(11, 11, 2, 0x0060, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 318) PIN_FIELD_BASE(12, 12, 5, 0x0040, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 319) PIN_FIELD_BASE(13, 13, 6, 0x0060, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 320) PIN_FIELD_BASE(14, 14, 6, 0x0060, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 321) PIN_FIELD_BASE(15, 15, 6, 0x0060, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 322) PIN_FIELD_BASE(16, 16, 6, 0x0060, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 323) PIN_FIELD_BASE(17, 17, 6, 0x0060, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 324) PIN_FIELD_BASE(18, 18, 6, 0x0060, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 325) PIN_FIELD_BASE(19, 19, 6, 0x0060, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 326) PIN_FIELD_BASE(20, 20, 6, 0x0060, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 327) PIN_FIELD_BASE(21, 21, 6, 0x0060, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 328) PIN_FIELD_BASE(22, 22, 6, 0x0060, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 329) PIN_FIELD_BASE(23, 23, 6, 0x0060, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 330) PIN_FIELD_BASE(24, 24, 6, 0x0060, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 331) PIN_FIELD_BASE(25, 25, 6, 0x0060, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 332) PIN_FIELD_BASE(26, 26, 6, 0x0060, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 333) PIN_FIELD_BASE(27, 27, 6, 0x0060, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 334) PINS_FIELD_BASE(28, 40, 6, 0x0060, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 335) PIN_FIELD_BASE(41, 41, 7, 0x0080, 0x10, 19, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 336) PIN_FIELD_BASE(42, 42, 7, 0x0080, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 337) PIN_FIELD_BASE(43, 43, 7, 0x0080, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 338) PIN_FIELD_BASE(44, 44, 7, 0x0080, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 339) PIN_FIELD_BASE(45, 45, 7, 0x0080, 0x10, 22, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 340) PIN_FIELD_BASE(46, 46, 7, 0x0080, 0x10, 21, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 341) PIN_FIELD_BASE(47, 47, 7, 0x0080, 0x10, 20, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 342) PIN_FIELD_BASE(48, 48, 7, 0x0090, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 343) PIN_FIELD_BASE(49, 49, 7, 0x0090, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 344) PIN_FIELD_BASE(50, 50, 7, 0x0090, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 345) PIN_FIELD_BASE(51, 51, 7, 0x0090, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 346) PIN_FIELD_BASE(52, 52, 7, 0x0080, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 347) PIN_FIELD_BASE(53, 53, 7, 0x0080, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 348) PIN_FIELD_BASE(54, 54, 7, 0x0080, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 349) PIN_FIELD_BASE(55, 55, 7, 0x0080, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 350) PIN_FIELD_BASE(56, 56, 7, 0x0080, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 351) PIN_FIELD_BASE(57, 57, 7, 0x0080, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 352) PIN_FIELD_BASE(58, 58, 7, 0x0090, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 353) PIN_FIELD_BASE(59, 59, 7, 0x0080, 0x10, 31, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 354) PIN_FIELD_BASE(60, 60, 7, 0x0080, 0x10, 30, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 355) PIN_FIELD_BASE(61, 61, 3, 0x0050, 0x10, 18, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 356) PIN_FIELD_BASE(62, 62, 3, 0x0050, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 357) PIN_FIELD_BASE(63, 63, 3, 0x0050, 0x10, 17, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 358) PIN_FIELD_BASE(64, 64, 3, 0x0050, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 359) PIN_FIELD_BASE(65, 65, 3, 0x0050, 0x10, 20, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 360) PIN_FIELD_BASE(66, 66, 3, 0x0050, 0x10, 16, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 361) PIN_FIELD_BASE(67, 67, 3, 0x0050, 0x10, 19, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 362) PIN_FIELD_BASE(68, 68, 3, 0x0050, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 363) PIN_FIELD_BASE(69, 69, 3, 0x0050, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 364) PIN_FIELD_BASE(70, 70, 3, 0x0050, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 365) PIN_FIELD_BASE(71, 71, 3, 0x0050, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 366) PIN_FIELD_BASE(72, 72, 3, 0x0050, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 367) PIN_FIELD_BASE(73, 73, 3, 0x0050, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 368) PIN_FIELD_BASE(74, 74, 3, 0x0050, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 369) PIN_FIELD_BASE(75, 75, 3, 0x0050, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 370) PIN_FIELD_BASE(76, 76, 3, 0x0050, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 371) PIN_FIELD_BASE(77, 77, 3, 0x0050, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 372) PIN_FIELD_BASE(78, 78, 3, 0x0050, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 373) PIN_FIELD_BASE(79, 79, 3, 0x0050, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 374) PIN_FIELD_BASE(80, 80, 3, 0x0050, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 375) PIN_FIELD_BASE(81, 81, 3, 0x0050, 0x10, 25, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 376) PIN_FIELD_BASE(82, 82, 3, 0x0050, 0x10, 24, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 377) PIN_FIELD_BASE(83, 83, 3, 0x0050, 0x10, 22, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 378) PIN_FIELD_BASE(84, 84, 3, 0x0050, 0x10, 23, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 379) PIN_FIELD_BASE(85, 85, 7, 0x0090, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 380) PIN_FIELD_BASE(86, 86, 7, 0x0080, 0x10, 29, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 381) PIN_FIELD_BASE(87, 87, 7, 0x0080, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 382) PIN_FIELD_BASE(88, 88, 7, 0x0080, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 383) PIN_FIELD_BASE(89, 89, 2, 0x0060, 0x10, 21, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 384) PINS_FIELD_BASE(90, 94, 3, 0x0050, 0x10, 21, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 385) PIN_FIELD_BASE(95, 95, 2, 0x0060, 0x10, 22, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 386) PIN_FIELD_BASE(96, 96, 2, 0x0060, 0x10, 23, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 387) PIN_FIELD_BASE(97, 97, 2, 0x0060, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 388) PIN_FIELD_BASE(98, 98, 2, 0x0060, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 389) PIN_FIELD_BASE(99, 99, 2, 0x0060, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 390) PIN_FIELD_BASE(100, 100, 2, 0x0060, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 391) PIN_FIELD_BASE(101, 101, 2, 0x0060, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 392) PIN_FIELD_BASE(102, 102, 2, 0x0060, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 393) PIN_FIELD_BASE(103, 103, 2, 0x0060, 0x10, 17, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 394) PIN_FIELD_BASE(104, 104, 2, 0x0060, 0x10, 19, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 395) PIN_FIELD_BASE(105, 105, 2, 0x0060, 0x10, 18, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 396) PIN_FIELD_BASE(106, 106, 2, 0x0060, 0x10, 20, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 397) PIN_FIELD_BASE(107, 107, 1, 0x0050, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 398) PIN_FIELD_BASE(108, 108, 1, 0x0050, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 399) PIN_FIELD_BASE(109, 109, 1, 0x0050, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 400) PIN_FIELD_BASE(110, 110, 1, 0x0050, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 401) PIN_FIELD_BASE(111, 111, 1, 0x0050, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 402) PIN_FIELD_BASE(112, 112, 1, 0x0050, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 403) PIN_FIELD_BASE(113, 113, 1, 0x0050, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 404) PIN_FIELD_BASE(114, 114, 1, 0x0050, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 405) PIN_FIELD_BASE(115, 115, 1, 0x0050, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 406) PIN_FIELD_BASE(116, 116, 1, 0x0050, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 407) PIN_FIELD_BASE(117, 117, 1, 0x0050, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 408) PIN_FIELD_BASE(118, 118, 1, 0x0050, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 409) PIN_FIELD_BASE(119, 119, 1, 0x0050, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 410) PIN_FIELD_BASE(120, 120, 1, 0x0050, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 411) PINS_FIELD_BASE(121, 133, 1, 0x0050, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 412) PIN_FIELD_BASE(134, 134, 5, 0x0040, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 413) PIN_FIELD_BASE(135, 135, 5, 0x0040, 0x10, 19, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 414) PIN_FIELD_BASE(136, 136, 5, 0x0040, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 415) PIN_FIELD_BASE(137, 137, 5, 0x0040, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 416) PIN_FIELD_BASE(138, 138, 5, 0x0040, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 417) PIN_FIELD_BASE(139, 139, 5, 0x0040, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 418) PIN_FIELD_BASE(140, 140, 5, 0x0040, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 419) PIN_FIELD_BASE(141, 141, 5, 0x0040, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 420) PIN_FIELD_BASE(142, 142, 5, 0x0040, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 421) PIN_FIELD_BASE(143, 143, 5, 0x0040, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 422) PIN_FIELD_BASE(144, 144, 5, 0x0040, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 423) PIN_FIELD_BASE(145, 145, 5, 0x0040, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 424) PIN_FIELD_BASE(146, 146, 5, 0x0040, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 425) PIN_FIELD_BASE(147, 147, 5, 0x0040, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 426) PIN_FIELD_BASE(148, 148, 5, 0x0040, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 427) PIN_FIELD_BASE(149, 149, 5, 0x0040, 0x10, 16, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 428) PIN_FIELD_BASE(150, 150, 7, 0x0080, 0x10, 23, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 429) PIN_FIELD_BASE(151, 151, 7, 0x0080, 0x10, 24, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 430) PIN_FIELD_BASE(152, 152, 7, 0x0080, 0x10, 25, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 431) PIN_FIELD_BASE(153, 153, 7, 0x0080, 0x10, 26, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 432) PIN_FIELD_BASE(154, 154, 7, 0x0080, 0x10, 28, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 433) PIN_FIELD_BASE(155, 155, 3, 0x0050, 0x10, 28, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 434) PIN_FIELD_BASE(156, 156, 3, 0x0050, 0x10, 27, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 435) PIN_FIELD_BASE(157, 157, 3, 0x0050, 0x10, 29, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 436) PIN_FIELD_BASE(158, 158, 3, 0x0050, 0x10, 26, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 437) PIN_FIELD_BASE(159, 159, 7, 0x0080, 0x10, 27, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 438) PIN_FIELD_BASE(160, 160, 5, 0x0040, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 439) PIN_FIELD_BASE(161, 161, 1, 0x0050, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 440) PIN_FIELD_BASE(162, 162, 1, 0x0050, 0x10, 16, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 441) PIN_FIELD_BASE(163, 163, 4, 0x0040, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 442) PIN_FIELD_BASE(164, 164, 4, 0x0040, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 443) PIN_FIELD_BASE(165, 165, 4, 0x0040, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 444) PIN_FIELD_BASE(166, 166, 4, 0x0040, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 445) PIN_FIELD_BASE(167, 167, 4, 0x0040, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 446) PIN_FIELD_BASE(168, 168, 4, 0x0040, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 447) PIN_FIELD_BASE(169, 169, 4, 0x0040, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 448) PIN_FIELD_BASE(170, 170, 4, 0x0040, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 449) PIN_FIELD_BASE(171, 171, 7, 0x0080, 0x10, 17, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 450) PIN_FIELD_BASE(172, 172, 7, 0x0080, 0x10, 18, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 451) PIN_FIELD_BASE(173, 173, 7, 0x0080, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 452) PIN_FIELD_BASE(174, 174, 7, 0x0080, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 453) PIN_FIELD_BASE(175, 175, 7, 0x0080, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 454) PIN_FIELD_BASE(176, 176, 7, 0x0080, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 455) PIN_FIELD_BASE(177, 177, 7, 0x0080, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 456) PINS_FIELD_BASE(178, 179, 7, 0x0080, 0x10, 16, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 457) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 458)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 459) static const struct mtk_pin_field_calc mt6765_pin_tdsel_range[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 460) PINS_FIELD_BASE(0, 3, 2, 0x00c0, 0x10, 16, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 461) PINS_FIELD_BASE(4, 7, 2, 0x00c0, 0x10, 20, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 462) PIN_FIELD_BASE(8, 8, 3, 0x0090, 0x10, 12, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 463) PINS_FIELD_BASE(9, 11, 2, 0x00c0, 0x10, 24, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 464) PIN_FIELD_BASE(12, 12, 5, 0x0080, 0x10, 4, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 465) PINS_FIELD_BASE(13, 16, 6, 0x00e0, 0x10, 8, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 466) PINS_FIELD_BASE(17, 20, 6, 0x00e0, 0x10, 0, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 467) PINS_FIELD_BASE(21, 24, 6, 0x00e0, 0x10, 4, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 468) PINS_FIELD_BASE(25, 28, 6, 0x00d0, 0x10, 28, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 469) PIN_FIELD_BASE(29, 29, 6, 0x00d0, 0x10, 0, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 470) PIN_FIELD_BASE(30, 30, 6, 0x00d0, 0x10, 4, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 471) PINS_FIELD_BASE(31, 34, 6, 0x00d0, 0x10, 8, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 472) PINS_FIELD_BASE(35, 36, 6, 0x00d0, 0x10, 20, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 473) PIN_FIELD_BASE(37, 37, 6, 0x00d0, 0x10, 24, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 474) PIN_FIELD_BASE(38, 38, 6, 0x00d0, 0x10, 16, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 475) PINS_FIELD_BASE(39, 40, 6, 0x00d0, 0x10, 12, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 476) PINS_FIELD_BASE(41, 42, 7, 0x00d0, 0x10, 24, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 477) PIN_FIELD_BASE(43, 43, 7, 0x00d0, 0x10, 12, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 478) PIN_FIELD_BASE(44, 44, 7, 0x00d0, 0x10, 16, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 479) PIN_FIELD_BASE(45, 45, 7, 0x00e0, 0x10, 0, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 480) PINS_FIELD_BASE(46, 47, 7, 0x00d0, 0x10, 28, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 481) PINS_FIELD_BASE(48, 49, 7, 0x00e0, 0x10, 28, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 482) PINS_FIELD_BASE(50, 51, 7, 0x00e0, 0x10, 24, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 483) PINS_FIELD_BASE(52, 57, 7, 0x00d0, 0x10, 0, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 484) PINS_FIELD_BASE(58, 60, 7, 0x00e0, 0x10, 16, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 485) PINS_FIELD_BASE(61, 62, 3, 0x0090, 0x10, 20, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 486) PINS_FIELD_BASE(63, 64, 3, 0x0090, 0x10, 16, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 487) PINS_FIELD_BASE(65, 66, 3, 0x0090, 0x10, 28, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 488) PINS_FIELD_BASE(67, 68, 3, 0x0090, 0x10, 24, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 489) PINS_FIELD_BASE(69, 73, 3, 0x0090, 0x10, 4, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 490) PINS_FIELD_BASE(74, 78, 3, 0x0090, 0x10, 8, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 491) PINS_FIELD_BASE(79, 80, 3, 0x0090, 0x10, 0, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 492) PIN_FIELD_BASE(81, 81, 3, 0x00a0, 0x10, 8, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 493) PINS_FIELD_BASE(82, 83, 3, 0x00a0, 0x10, 4, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 494) PIN_FIELD_BASE(84, 84, 3, 0x00a0, 0x10, 8, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 495) PIN_FIELD_BASE(85, 85, 7, 0x00e0, 0x10, 16, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 496) PIN_FIELD_BASE(86, 86, 7, 0x00e0, 0x10, 20, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 497) PIN_FIELD_BASE(87, 87, 7, 0x00d0, 0x10, 8, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 498) PIN_FIELD_BASE(88, 88, 7, 0x00d0, 0x10, 4, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 499) PIN_FIELD_BASE(89, 89, 2, 0x00d0, 0x10, 12, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 500) PIN_FIELD_BASE(90, 90, 3, 0x00a0, 0x10, 0, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 501) PINS_FIELD_BASE(91, 92, 2, 0x00d0, 0x10, 0, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 502) PINS_FIELD_BASE(93, 94, 2, 0x00c0, 0x10, 28, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 503) PINS_FIELD_BASE(95, 96, 2, 0x00d0, 0x10, 16, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 504) PINS_FIELD_BASE(97, 98, 2, 0x00c0, 0x10, 8, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 505) PIN_FIELD_BASE(99, 99, 2, 0x00c0, 0x10, 0, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 506) PIN_FIELD_BASE(100, 100, 2, 0x00c0, 0x10, 4, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 507) PINS_FIELD_BASE(101, 102, 2, 0x00c0, 0x10, 12, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 508) PINS_FIELD_BASE(103, 104, 2, 0x00d0, 0x10, 4, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 509) PINS_FIELD_BASE(105, 106, 2, 0x00d0, 0x10, 8, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 510) PIN_FIELD_BASE(107, 107, 1, 0x0090, 0x10, 16, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 511) PIN_FIELD_BASE(108, 108, 1, 0x0090, 0x10, 12, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 512) PIN_FIELD_BASE(109, 109, 1, 0x0090, 0x10, 20, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 513) PIN_FIELD_BASE(110, 110, 1, 0x0090, 0x10, 0, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 514) PIN_FIELD_BASE(111, 111, 1, 0x0090, 0x10, 4, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 515) PIN_FIELD_BASE(112, 112, 1, 0x0090, 0x10, 8, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 516) PIN_FIELD_BASE(113, 113, 1, 0x00a0, 0x10, 4, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 517) PIN_FIELD_BASE(114, 114, 1, 0x00a0, 0x10, 8, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 518) PIN_FIELD_BASE(115, 115, 1, 0x0090, 0x10, 24, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 519) PIN_FIELD_BASE(116, 116, 1, 0x0090, 0x10, 28, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 520) PIN_FIELD_BASE(117, 117, 1, 0x00a0, 0x10, 16, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 521) PIN_FIELD_BASE(118, 118, 1, 0x00a0, 0x10, 20, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 522) PIN_FIELD_BASE(119, 119, 1, 0x00a0, 0x10, 24, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 523) PIN_FIELD_BASE(120, 120, 1, 0x00a0, 0x10, 12, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 524) PIN_FIELD_BASE(121, 121, 1, 0x00a0, 0x10, 0, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 525) PIN_FIELD_BASE(122, 122, 4, 0x0090, 0x10, 8, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 526) PIN_FIELD_BASE(123, 123, 4, 0x0090, 0x10, 12, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 527) PIN_FIELD_BASE(124, 124, 4, 0x0090, 0x10, 4, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 528) PINS_FIELD_BASE(125, 130, 4, 0x0090, 0x10, 12, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 529) PIN_FIELD_BASE(131, 131, 4, 0x0090, 0x10, 16, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 530) PIN_FIELD_BASE(132, 132, 4, 0x0090, 0x10, 12, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 531) PIN_FIELD_BASE(133, 133, 4, 0x0090, 0x10, 20, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 532) PIN_FIELD_BASE(134, 134, 5, 0x0080, 0x10, 12, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 533) PIN_FIELD_BASE(135, 135, 5, 0x0080, 0x10, 20, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 534) PIN_FIELD_BASE(136, 136, 5, 0x0070, 0x10, 4, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 535) PIN_FIELD_BASE(137, 137, 5, 0x0070, 0x10, 28, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 536) PIN_FIELD_BASE(138, 138, 5, 0x0070, 0x10, 16, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 537) PIN_FIELD_BASE(139, 139, 5, 0x0070, 0x10, 20, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 538) PIN_FIELD_BASE(140, 140, 5, 0x0070, 0x10, 0, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 539) PIN_FIELD_BASE(141, 141, 5, 0x0070, 0x10, 24, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 540) PIN_FIELD_BASE(142, 142, 5, 0x0070, 0x10, 8, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 541) PIN_FIELD_BASE(143, 143, 5, 0x0070, 0x10, 12, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 542) PINS_FIELD_BASE(144, 147, 5, 0x0080, 0x10, 8, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 543) PINS_FIELD_BASE(148, 149, 5, 0x0080, 0x10, 16, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 544) PINS_FIELD_BASE(150, 151, 7, 0x00e0, 0x10, 4, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 545) PINS_FIELD_BASE(152, 153, 7, 0x00e0, 0x10, 8, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 546) PIN_FIELD_BASE(154, 154, 7, 0x00e0, 0x10, 12, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 547) PINS_FIELD_BASE(155, 158, 3, 0x00a0, 0x10, 12, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 548) PIN_FIELD_BASE(159, 159, 7, 0x00e0, 0x10, 12, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 549) PIN_FIELD_BASE(160, 160, 5, 0x0080, 0x10, 0, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 550) PINS_FIELD_BASE(161, 162, 1, 0x00a0, 0x10, 28, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 551) PINS_FIELD_BASE(163, 170, 4, 0x0090, 0x10, 0, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 552) PINS_FIELD_BASE(171, 179, 7, 0x00d0, 0x10, 20, 4),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 553) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 554)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 555) static const struct mtk_pin_field_calc mt6765_pin_rdsel_range[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 556) PINS_FIELD_BASE(0, 3, 2, 0x0090, 0x10, 8, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 557) PINS_FIELD_BASE(4, 7, 2, 0x0090, 0x10, 10, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 558) PIN_FIELD_BASE(8, 8, 3, 0x0060, 0x10, 6, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 559) PINS_FIELD_BASE(9, 11, 2, 0x0090, 0x10, 12, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 560) PIN_FIELD_BASE(12, 12, 5, 0x0050, 0x10, 18, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 561) PINS_FIELD_BASE(13, 16, 6, 0x00a0, 0x10, 18, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 562) PINS_FIELD_BASE(17, 20, 6, 0x00a0, 0x10, 14, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 563) PINS_FIELD_BASE(21, 24, 6, 0x00a0, 0x10, 16, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 564) PINS_FIELD_BASE(25, 28, 6, 0x00a0, 0x10, 12, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 565) PIN_FIELD_BASE(29, 29, 6, 0x0090, 0x10, 0, 6),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 566) PIN_FIELD_BASE(30, 30, 6, 0x0090, 0x10, 6, 6),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 567) PINS_FIELD_BASE(31, 34, 6, 0x0090, 0x10, 12, 6),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 568) PINS_FIELD_BASE(35, 36, 6, 0x00a0, 0x10, 0, 6),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 569) PIN_FIELD_BASE(37, 37, 6, 0x00a0, 0x10, 6, 6),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 570) PIN_FIELD_BASE(38, 38, 6, 0x0090, 0x10, 24, 6),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 571) PINS_FIELD_BASE(39, 40, 6, 0x0090, 0x10, 18, 6),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 572) PINS_FIELD_BASE(41, 42, 7, 0x00a0, 0x10, 12, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 573) PIN_FIELD_BASE(43, 43, 7, 0x00a0, 0x10, 6, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 574) PIN_FIELD_BASE(44, 44, 7, 0x00a0, 0x10, 8, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 575) PIN_FIELD_BASE(45, 45, 7, 0x00a0, 0x10, 16, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 576) PINS_FIELD_BASE(46, 47, 7, 0x00a0, 0x10, 14, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 577) PINS_FIELD_BASE(48, 49, 7, 0x00a0, 0x10, 30, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 578) PINS_FIELD_BASE(50, 51, 7, 0x00a0, 0x10, 28, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 579) PINS_FIELD_BASE(52, 57, 7, 0x00a0, 0x10, 0, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 580) PINS_FIELD_BASE(58, 60, 7, 0x00a0, 0x10, 24, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 581) PINS_FIELD_BASE(61, 62, 3, 0x0060, 0x10, 10, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 582) PINS_FIELD_BASE(63, 64, 3, 0x0060, 0x10, 8, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 583) PINS_FIELD_BASE(65, 66, 3, 0x0060, 0x10, 14, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 584) PINS_FIELD_BASE(67, 68, 3, 0x0060, 0x10, 12, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 585) PINS_FIELD_BASE(69, 73, 3, 0x0060, 0x10, 2, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 586) PINS_FIELD_BASE(74, 78, 3, 0x0060, 0x10, 4, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 587) PINS_FIELD_BASE(79, 80, 3, 0x0060, 0x10, 0, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 588) PIN_FIELD_BASE(81, 81, 3, 0x0060, 0x10, 20, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 589) PINS_FIELD_BASE(82, 83, 3, 0x0060, 0x10, 18, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 590) PIN_FIELD_BASE(84, 84, 3, 0x0060, 0x10, 20, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 591) PIN_FIELD_BASE(85, 85, 7, 0x00a0, 0x10, 24, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 592) PIN_FIELD_BASE(86, 86, 7, 0x00a0, 0x10, 26, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 593) PIN_FIELD_BASE(87, 87, 7, 0x00a0, 0x10, 4, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 594) PIN_FIELD_BASE(88, 88, 7, 0x00a0, 0x10, 2, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 595) PIN_FIELD_BASE(89, 89, 2, 0x0090, 0x10, 22, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 596) PIN_FIELD_BASE(90, 90, 3, 0x0060, 0x10, 16, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 597) PINS_FIELD_BASE(91, 92, 2, 0x0090, 0x10, 16, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 598) PINS_FIELD_BASE(93, 94, 2, 0x0090, 0x10, 14, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 599) PINS_FIELD_BASE(95, 96, 2, 0x0090, 0x10, 24, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 600) PINS_FIELD_BASE(97, 98, 2, 0x0090, 0x10, 4, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 601) PIN_FIELD_BASE(99, 99, 2, 0x0090, 0x10, 0, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 602) PIN_FIELD_BASE(100, 100, 2, 0x0090, 0x10, 2, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 603) PINS_FIELD_BASE(101, 102, 2, 0x0090, 0x10, 6, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 604) PINS_FIELD_BASE(103, 104, 2, 0x0090, 0x10, 18, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 605) PINS_FIELD_BASE(105, 106, 2, 0x0090, 0x10, 20, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 606) PIN_FIELD_BASE(107, 107, 1, 0x0060, 0x10, 8, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 607) PIN_FIELD_BASE(108, 108, 1, 0x0060, 0x10, 6, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 608) PIN_FIELD_BASE(109, 109, 1, 0x0060, 0x10, 10, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 609) PIN_FIELD_BASE(110, 110, 1, 0x0060, 0x10, 0, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 610) PIN_FIELD_BASE(111, 111, 1, 0x0060, 0x10, 2, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 611) PIN_FIELD_BASE(112, 112, 1, 0x0060, 0x10, 4, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 612) PIN_FIELD_BASE(113, 113, 1, 0x0060, 0x10, 18, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 613) PIN_FIELD_BASE(114, 114, 1, 0x0060, 0x10, 20, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 614) PIN_FIELD_BASE(115, 115, 1, 0x0060, 0x10, 12, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 615) PIN_FIELD_BASE(116, 116, 1, 0x0060, 0x10, 14, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 616) PIN_FIELD_BASE(117, 117, 1, 0x0060, 0x10, 24, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 617) PIN_FIELD_BASE(118, 118, 1, 0x0060, 0x10, 26, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 618) PIN_FIELD_BASE(119, 119, 1, 0x0060, 0x10, 28, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 619) PIN_FIELD_BASE(120, 120, 1, 0x0060, 0x10, 22, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 620) PIN_FIELD_BASE(121, 121, 1, 0x0060, 0x10, 16, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 621) PIN_FIELD_BASE(122, 122, 4, 0x0070, 0x10, 8, 6),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 622) PIN_FIELD_BASE(123, 123, 4, 0x0070, 0x10, 14, 6),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 623) PIN_FIELD_BASE(124, 124, 4, 0x0070, 0x10, 2, 6),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 624) PINS_FIELD_BASE(125, 130, 4, 0x0070, 0x10, 14, 6),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 625) PIN_FIELD_BASE(131, 131, 4, 0x0070, 0x10, 20, 6),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 626) PIN_FIELD_BASE(132, 132, 4, 0x0070, 0x10, 14, 6),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 627) PIN_FIELD_BASE(133, 133, 4, 0x0070, 0x10, 26, 6),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 628) PIN_FIELD_BASE(134, 134, 5, 0x0050, 0x10, 22, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 629) PIN_FIELD_BASE(135, 135, 5, 0x0050, 0x10, 30, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 630) PIN_FIELD_BASE(136, 136, 5, 0x0050, 0x10, 2, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 631) PIN_FIELD_BASE(137, 137, 5, 0x0050, 0x10, 14, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 632) PIN_FIELD_BASE(138, 138, 5, 0x0050, 0x10, 8, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 633) PIN_FIELD_BASE(139, 139, 5, 0x0050, 0x10, 10, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 634) PIN_FIELD_BASE(140, 140, 5, 0x0050, 0x10, 0, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 635) PIN_FIELD_BASE(141, 141, 5, 0x0050, 0x10, 12, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 636) PIN_FIELD_BASE(142, 142, 5, 0x0050, 0x10, 4, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 637) PIN_FIELD_BASE(143, 143, 5, 0x0050, 0x10, 6, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 638) PINS_FIELD_BASE(144, 147, 5, 0x0050, 0x10, 20, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 639) PINS_FIELD_BASE(148, 149, 5, 0x0050, 0x10, 24, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 640) PINS_FIELD_BASE(150, 151, 7, 0x00a0, 0x10, 18, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 641) PINS_FIELD_BASE(152, 153, 7, 0x00a0, 0x10, 20, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 642) PIN_FIELD_BASE(154, 154, 7, 0x00a0, 0x10, 22, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 643) PINS_FIELD_BASE(155, 158, 3, 0x0060, 0x10, 22, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 644) PIN_FIELD_BASE(159, 159, 7, 0x00a0, 0x10, 22, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 645) PIN_FIELD_BASE(160, 160, 5, 0x0050, 0x10, 16, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 646) PINS_FIELD_BASE(161, 162, 1, 0x0060, 0x10, 30, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 647) PINS_FIELD_BASE(163, 170, 4, 0x0070, 0x10, 0, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 648) PINS_FIELD_BASE(171, 179, 7, 0x00a0, 0x10, 10, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 649) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 650)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 651) static const struct mtk_pin_field_calc mt6765_pin_drv_range[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 652) PINS_FIELD_BASE(0, 2, 2, 0x0000, 0x10, 12, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 653) PIN_FIELD_BASE(3, 3, 2, 0x0000, 0x10, 15, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 654) PINS_FIELD_BASE(4, 6, 2, 0x0000, 0x10, 18, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 655) PIN_FIELD_BASE(7, 7, 2, 0x0000, 0x10, 21, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 656) PIN_FIELD_BASE(8, 8, 3, 0x0000, 0x10, 9, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 657) PINS_FIELD_BASE(9, 11, 2, 0x0000, 0x10, 24, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 658) PIN_FIELD_BASE(12, 12, 5, 0x0000, 0x10, 27, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 659) PINS_FIELD_BASE(13, 15, 6, 0x0010, 0x10, 3, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 660) PIN_FIELD_BASE(16, 16, 6, 0x0010, 0x10, 6, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 661) PIN_FIELD_BASE(17, 17, 6, 0x0000, 0x10, 23, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 662) PIN_FIELD_BASE(18, 18, 6, 0x0000, 0x10, 26, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 663) PINS_FIELD_BASE(19, 20, 6, 0x0000, 0x10, 23, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 664) PINS_FIELD_BASE(21, 23, 6, 0x0000, 0x10, 29, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 665) PIN_FIELD_BASE(24, 24, 6, 0x0010, 0x10, 0, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 666) PINS_FIELD_BASE(25, 27, 6, 0x0000, 0x10, 17, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 667) PIN_FIELD_BASE(28, 28, 6, 0x0000, 0x10, 20, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 668) PIN_FIELD_BASE(29, 29, 6, 0x0000, 0x10, 0, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 669) PIN_FIELD_BASE(30, 30, 6, 0x0000, 0x10, 3, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 670) PINS_FIELD_BASE(31, 34, 6, 0x0000, 0x10, 6, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 671) PINS_FIELD_BASE(35, 36, 6, 0x0000, 0x10, 13, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 672) PIN_FIELD_BASE(37, 37, 6, 0x0000, 0x10, 15, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 673) PIN_FIELD_BASE(38, 38, 6, 0x0000, 0x10, 11, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 674) PINS_FIELD_BASE(39, 40, 6, 0x0000, 0x10, 9, 2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 675) PINS_FIELD_BASE(41, 42, 7, 0x0000, 0x10, 21, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 676) PIN_FIELD_BASE(43, 43, 7, 0x0000, 0x10, 9, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 677) PIN_FIELD_BASE(44, 44, 7, 0x0000, 0x10, 12, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 678) PIN_FIELD_BASE(45, 45, 7, 0x0000, 0x10, 27, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 679) PINS_FIELD_BASE(46, 47, 7, 0x0000, 0x10, 24, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 680) PINS_FIELD_BASE(48, 49, 7, 0x0010, 0x10, 18, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 681) PINS_FIELD_BASE(50, 51, 7, 0x0010, 0x10, 15, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 682) PINS_FIELD_BASE(52, 57, 7, 0x0000, 0x10, 0, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 683) PINS_FIELD_BASE(58, 60, 7, 0x0010, 0x10, 9, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 684) PINS_FIELD_BASE(61, 62, 3, 0x0000, 0x10, 15, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 685) PINS_FIELD_BASE(63, 64, 3, 0x0000, 0x10, 12, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 686) PINS_FIELD_BASE(65, 66, 3, 0x0000, 0x10, 21, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 687) PINS_FIELD_BASE(67, 68, 3, 0x0000, 0x10, 18, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 688) PINS_FIELD_BASE(69, 73, 3, 0x0000, 0x10, 3, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 689) PINS_FIELD_BASE(74, 78, 3, 0x0000, 0x10, 6, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 690) PINS_FIELD_BASE(79, 80, 3, 0x0000, 0x10, 0, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 691) PIN_FIELD_BASE(81, 81, 3, 0x0010, 0x10, 0, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 692) PINS_FIELD_BASE(82, 83, 3, 0x0000, 0x10, 27, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 693) PIN_FIELD_BASE(84, 84, 3, 0x0010, 0x10, 0, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 694) PIN_FIELD_BASE(85, 85, 7, 0x0010, 0x10, 9, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 695) PIN_FIELD_BASE(86, 86, 7, 0x0010, 0x10, 12, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 696) PIN_FIELD_BASE(87, 87, 7, 0x0000, 0x10, 6, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 697) PIN_FIELD_BASE(88, 88, 7, 0x0000, 0x10, 3, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 698) PIN_FIELD_BASE(89, 89, 2, 0x0010, 0x10, 15, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 699) PIN_FIELD_BASE(90, 90, 3, 0x0000, 0x10, 24, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 700) PIN_FIELD_BASE(91, 91, 2, 0x0010, 0x10, 6, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 701) PIN_FIELD_BASE(92, 92, 2, 0x0010, 0x10, 3, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 702) PIN_FIELD_BASE(93, 93, 2, 0x0000, 0x10, 27, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 703) PIN_FIELD_BASE(94, 94, 2, 0x0010, 0x10, 0, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 704) PINS_FIELD_BASE(95, 96, 2, 0x0010, 0x10, 18, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 705) PINS_FIELD_BASE(97, 98, 2, 0x0000, 0x10, 6, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 706) PIN_FIELD_BASE(99, 99, 2, 0x0000, 0x10, 0, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 707) PIN_FIELD_BASE(100, 100, 2, 0x0000, 0x10, 3, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 708) PINS_FIELD_BASE(101, 102, 2, 0x0000, 0x10, 9, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 709) PINS_FIELD_BASE(103, 104, 2, 0x0010, 0x10, 9, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 710) PINS_FIELD_BASE(105, 106, 2, 0x0010, 0x10, 12, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 711) PIN_FIELD_BASE(107, 107, 1, 0x0000, 0x10, 12, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 712) PIN_FIELD_BASE(108, 108, 1, 0x0000, 0x10, 9, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 713) PIN_FIELD_BASE(109, 109, 1, 0x0000, 0x10, 15, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 714) PIN_FIELD_BASE(110, 110, 1, 0x0000, 0x10, 0, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 715) PIN_FIELD_BASE(111, 111, 1, 0x0000, 0x10, 3, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 716) PIN_FIELD_BASE(112, 112, 1, 0x0000, 0x10, 6, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 717) PIN_FIELD_BASE(113, 113, 1, 0x0000, 0x10, 27, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 718) PIN_FIELD_BASE(114, 114, 1, 0x0010, 0x10, 0, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 719) PIN_FIELD_BASE(115, 115, 1, 0x0000, 0x10, 18, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 720) PIN_FIELD_BASE(116, 116, 1, 0x0000, 0x10, 21, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 721) PIN_FIELD_BASE(117, 117, 1, 0x0010, 0x10, 6, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 722) PIN_FIELD_BASE(118, 118, 1, 0x0010, 0x10, 9, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 723) PIN_FIELD_BASE(119, 119, 1, 0x0010, 0x10, 12, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 724) PIN_FIELD_BASE(120, 120, 1, 0x0010, 0x10, 3, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 725) PIN_FIELD_BASE(121, 121, 1, 0x0000, 0x10, 24, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 726) PIN_FIELD_BASE(122, 122, 4, 0x0000, 0x10, 9, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 727) PIN_FIELD_BASE(123, 123, 4, 0x0000, 0x10, 12, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 728) PIN_FIELD_BASE(124, 124, 4, 0x0000, 0x10, 6, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 729) PINS_FIELD_BASE(125, 130, 4, 0x0000, 0x10, 12, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 730) PIN_FIELD_BASE(131, 131, 4, 0x0000, 0x10, 15, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 731) PIN_FIELD_BASE(132, 132, 4, 0x0000, 0x10, 12, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 732) PIN_FIELD_BASE(133, 133, 4, 0x0000, 0x10, 18, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 733) PIN_FIELD_BASE(134, 134, 5, 0x0010, 0x10, 6, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 734) PIN_FIELD_BASE(135, 135, 5, 0x0010, 0x10, 12, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 735) PIN_FIELD_BASE(136, 136, 5, 0x0000, 0x10, 3, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 736) PIN_FIELD_BASE(137, 137, 5, 0x0000, 0x10, 21, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 737) PIN_FIELD_BASE(138, 138, 5, 0x0000, 0x10, 12, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 738) PIN_FIELD_BASE(139, 139, 5, 0x0000, 0x10, 15, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 739) PIN_FIELD_BASE(140, 140, 5, 0x0000, 0x10, 0, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 740) PIN_FIELD_BASE(141, 141, 5, 0x0000, 0x10, 18, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 741) PIN_FIELD_BASE(142, 142, 5, 0x0000, 0x10, 6, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 742) PIN_FIELD_BASE(143, 143, 5, 0x0000, 0x10, 9, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 743) PINS_FIELD_BASE(144, 146, 5, 0x0010, 0x10, 0, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 744) PIN_FIELD_BASE(147, 147, 5, 0x0010, 0x10, 3, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 745) PINS_FIELD_BASE(148, 149, 5, 0x0010, 0x10, 9, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 746) PINS_FIELD_BASE(150, 151, 7, 0x0010, 0x10, 0, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 747) PINS_FIELD_BASE(152, 153, 7, 0x0010, 0x10, 3, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 748) PIN_FIELD_BASE(154, 154, 7, 0x0010, 0x10, 6, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 749) PINS_FIELD_BASE(155, 157, 3, 0x0010, 0x10, 3, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 750) PIN_FIELD_BASE(158, 158, 3, 0x0010, 0x10, 6, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 751) PIN_FIELD_BASE(159, 159, 7, 0x0010, 0x10, 6, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 752) PIN_FIELD_BASE(160, 160, 5, 0x0000, 0x10, 24, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 753) PINS_FIELD_BASE(161, 162, 1, 0x0010, 0x10, 15, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 754) PINS_FIELD_BASE(163, 166, 4, 0x0000, 0x10, 0, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 755) PINS_FIELD_BASE(167, 170, 4, 0x0000, 0x10, 3, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 756) PINS_FIELD_BASE(171, 174, 7, 0x0000, 0x10, 18, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 757) PINS_FIELD_BASE(175, 179, 7, 0x0000, 0x10, 15, 3),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 758) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 759)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 760) static const struct mtk_pin_field_calc mt6765_pin_pupd_range[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 761) PINS_FIELD_BASE(0, 28, 0, 0x0050, 0x10, 18, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 762) PIN_FIELD_BASE(29, 29, 6, 0x0050, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 763) PIN_FIELD_BASE(30, 30, 6, 0x0050, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 764) PIN_FIELD_BASE(31, 31, 6, 0x0050, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 765) PIN_FIELD_BASE(32, 32, 6, 0x0050, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 766) PIN_FIELD_BASE(33, 33, 6, 0x0050, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 767) PIN_FIELD_BASE(34, 34, 6, 0x0050, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 768) PIN_FIELD_BASE(35, 35, 6, 0x0050, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 769) PIN_FIELD_BASE(36, 36, 6, 0x0050, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 770) PIN_FIELD_BASE(37, 37, 6, 0x0050, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 771) PIN_FIELD_BASE(38, 38, 6, 0x0050, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 772) PIN_FIELD_BASE(39, 39, 6, 0x0050, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 773) PINS_FIELD_BASE(40, 90, 6, 0x0050, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 774) PIN_FIELD_BASE(91, 91, 2, 0x0050, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 775) PIN_FIELD_BASE(92, 92, 2, 0x0050, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 776) PIN_FIELD_BASE(93, 93, 2, 0x0050, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 777) PINS_FIELD_BASE(94, 121, 2, 0x0050, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 778) PIN_FIELD_BASE(122, 122, 4, 0x0030, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 779) PIN_FIELD_BASE(123, 123, 4, 0x0030, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 780) PIN_FIELD_BASE(124, 124, 4, 0x0030, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 781) PIN_FIELD_BASE(125, 125, 4, 0x0030, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 782) PIN_FIELD_BASE(126, 126, 4, 0x0030, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 783) PIN_FIELD_BASE(127, 127, 4, 0x0030, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 784) PIN_FIELD_BASE(128, 128, 4, 0x0030, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 785) PIN_FIELD_BASE(129, 129, 4, 0x0030, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 786) PIN_FIELD_BASE(130, 130, 4, 0x0030, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 787) PIN_FIELD_BASE(131, 131, 4, 0x0030, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 788) PIN_FIELD_BASE(132, 132, 4, 0x0030, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 789) PINS_FIELD_BASE(133, 179, 4, 0x0030, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 790) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 791)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 792) static const struct mtk_pin_field_calc mt6765_pin_r0_range[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 793) PINS_FIELD_BASE(0, 28, 4, 0x0030, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 794) PIN_FIELD_BASE(29, 29, 6, 0x0070, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 795) PIN_FIELD_BASE(30, 30, 6, 0x0070, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 796) PIN_FIELD_BASE(31, 31, 6, 0x0070, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 797) PIN_FIELD_BASE(32, 32, 6, 0x0070, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 798) PIN_FIELD_BASE(33, 33, 6, 0x0070, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 799) PIN_FIELD_BASE(34, 34, 6, 0x0070, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 800) PIN_FIELD_BASE(35, 35, 6, 0x0070, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 801) PIN_FIELD_BASE(36, 36, 6, 0x0070, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 802) PIN_FIELD_BASE(37, 37, 6, 0x0070, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 803) PIN_FIELD_BASE(38, 38, 6, 0x0070, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 804) PIN_FIELD_BASE(39, 39, 6, 0x0070, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 805) PINS_FIELD_BASE(40, 90, 6, 0x0070, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 806) PIN_FIELD_BASE(91, 91, 2, 0x0070, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 807) PIN_FIELD_BASE(92, 92, 2, 0x0070, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 808) PIN_FIELD_BASE(93, 93, 2, 0x0070, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 809) PINS_FIELD_BASE(94, 121, 2, 0x0070, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 810) PIN_FIELD_BASE(122, 122, 4, 0x0050, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 811) PIN_FIELD_BASE(123, 123, 4, 0x0050, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 812) PIN_FIELD_BASE(124, 124, 4, 0x0050, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 813) PIN_FIELD_BASE(125, 125, 4, 0x0050, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 814) PIN_FIELD_BASE(126, 126, 4, 0x0050, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 815) PIN_FIELD_BASE(127, 127, 4, 0x0050, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 816) PIN_FIELD_BASE(128, 128, 4, 0x0050, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 817) PIN_FIELD_BASE(129, 129, 4, 0x0050, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 818) PIN_FIELD_BASE(130, 130, 4, 0x0050, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 819) PIN_FIELD_BASE(131, 131, 4, 0x0050, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 820) PIN_FIELD_BASE(132, 132, 4, 0x0050, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 821) PINS_FIELD_BASE(133, 179, 4, 0x0050, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 822) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 823)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 824) static const struct mtk_pin_field_calc mt6765_pin_r1_range[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 825) PINS_FIELD_BASE(0, 28, 4, 0x0050, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 826) PIN_FIELD_BASE(29, 29, 6, 0x0080, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 827) PIN_FIELD_BASE(30, 30, 6, 0x0080, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 828) PIN_FIELD_BASE(31, 31, 6, 0x0080, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 829) PIN_FIELD_BASE(32, 32, 6, 0x0080, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 830) PIN_FIELD_BASE(33, 33, 6, 0x0080, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 831) PIN_FIELD_BASE(34, 34, 6, 0x0080, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 832) PIN_FIELD_BASE(35, 35, 6, 0x0080, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 833) PIN_FIELD_BASE(36, 36, 6, 0x0080, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 834) PIN_FIELD_BASE(37, 37, 6, 0x0080, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 835) PIN_FIELD_BASE(38, 38, 6, 0x0080, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 836) PIN_FIELD_BASE(39, 39, 6, 0x0080, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 837) PINS_FIELD_BASE(40, 90, 6, 0x0080, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 838) PIN_FIELD_BASE(91, 91, 2, 0x0080, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 839) PIN_FIELD_BASE(92, 92, 2, 0x0080, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 840) PIN_FIELD_BASE(93, 93, 2, 0x0080, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 841) PINS_FIELD_BASE(94, 121, 2, 0x0080, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 842) PIN_FIELD_BASE(122, 122, 4, 0x0060, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 843) PIN_FIELD_BASE(123, 123, 4, 0x0060, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 844) PIN_FIELD_BASE(124, 124, 4, 0x0060, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 845) PIN_FIELD_BASE(125, 125, 4, 0x0060, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 846) PIN_FIELD_BASE(126, 126, 4, 0x0060, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 847) PIN_FIELD_BASE(127, 127, 4, 0x0060, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 848) PIN_FIELD_BASE(128, 128, 4, 0x0060, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 849) PIN_FIELD_BASE(129, 129, 4, 0x0060, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 850) PIN_FIELD_BASE(130, 130, 4, 0x0060, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 851) PIN_FIELD_BASE(131, 131, 4, 0x0060, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 852) PIN_FIELD_BASE(132, 132, 4, 0x0060, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 853) PINS_FIELD_BASE(133, 179, 4, 0x0060, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 854) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 855)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 856) static const struct mtk_pin_field_calc mt6765_pin_ies_range[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 857) PIN_FIELD_BASE(0, 0, 2, 0x0030, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 858) PIN_FIELD_BASE(1, 1, 2, 0x0030, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 859) PIN_FIELD_BASE(2, 2, 2, 0x0030, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 860) PIN_FIELD_BASE(3, 3, 2, 0x0030, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 861) PIN_FIELD_BASE(4, 4, 2, 0x0030, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 862) PIN_FIELD_BASE(5, 5, 2, 0x0030, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 863) PIN_FIELD_BASE(6, 6, 2, 0x0030, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 864) PIN_FIELD_BASE(7, 7, 2, 0x0030, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 865) PIN_FIELD_BASE(8, 8, 3, 0x0030, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 866) PIN_FIELD_BASE(9, 9, 2, 0x0030, 0x10, 16, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 867) PIN_FIELD_BASE(10, 10, 2, 0x0030, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 868) PIN_FIELD_BASE(11, 11, 2, 0x0030, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 869) PIN_FIELD_BASE(12, 12, 5, 0x0020, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 870) PIN_FIELD_BASE(13, 13, 6, 0x0020, 0x10, 26, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 871) PIN_FIELD_BASE(14, 14, 6, 0x0020, 0x10, 25, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 872) PIN_FIELD_BASE(15, 15, 6, 0x0020, 0x10, 27, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 873) PIN_FIELD_BASE(16, 16, 6, 0x0020, 0x10, 24, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 874) PIN_FIELD_BASE(17, 17, 6, 0x0020, 0x10, 19, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 875) PIN_FIELD_BASE(18, 18, 6, 0x0020, 0x10, 16, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 876) PIN_FIELD_BASE(19, 19, 6, 0x0020, 0x10, 18, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 877) PIN_FIELD_BASE(20, 20, 6, 0x0020, 0x10, 17, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 878) PIN_FIELD_BASE(21, 21, 6, 0x0020, 0x10, 22, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 879) PIN_FIELD_BASE(22, 22, 6, 0x0020, 0x10, 21, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 880) PIN_FIELD_BASE(23, 23, 6, 0x0020, 0x10, 23, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 881) PIN_FIELD_BASE(24, 24, 6, 0x0020, 0x10, 20, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 882) PIN_FIELD_BASE(25, 25, 6, 0x0020, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 883) PIN_FIELD_BASE(26, 26, 6, 0x0020, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 884) PIN_FIELD_BASE(27, 27, 6, 0x0020, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 885) PIN_FIELD_BASE(28, 28, 6, 0x0020, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 886) PIN_FIELD_BASE(29, 29, 6, 0x0020, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 887) PIN_FIELD_BASE(30, 30, 6, 0x0020, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 888) PIN_FIELD_BASE(31, 31, 6, 0x0020, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 889) PIN_FIELD_BASE(32, 32, 6, 0x0020, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 890) PIN_FIELD_BASE(33, 33, 6, 0x0020, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 891) PIN_FIELD_BASE(34, 34, 6, 0x0020, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 892) PIN_FIELD_BASE(35, 35, 6, 0x0020, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 893) PIN_FIELD_BASE(36, 36, 6, 0x0020, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 894) PIN_FIELD_BASE(37, 37, 6, 0x0020, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 895) PIN_FIELD_BASE(38, 38, 6, 0x0020, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 896) PIN_FIELD_BASE(39, 39, 6, 0x0020, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 897) PIN_FIELD_BASE(40, 40, 6, 0x0020, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 898) PIN_FIELD_BASE(41, 41, 7, 0x0040, 0x10, 19, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 899) PIN_FIELD_BASE(42, 42, 7, 0x0040, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 900) PIN_FIELD_BASE(43, 43, 7, 0x0040, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 901) PIN_FIELD_BASE(44, 44, 7, 0x0040, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 902) PIN_FIELD_BASE(45, 45, 7, 0x0040, 0x10, 22, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 903) PIN_FIELD_BASE(46, 46, 7, 0x0040, 0x10, 21, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 904) PIN_FIELD_BASE(47, 47, 7, 0x0040, 0x10, 20, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 905) PIN_FIELD_BASE(48, 48, 7, 0x0050, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 906) PIN_FIELD_BASE(49, 49, 7, 0x0050, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 907) PIN_FIELD_BASE(50, 50, 7, 0x0050, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 908) PIN_FIELD_BASE(51, 51, 7, 0x0050, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 909) PIN_FIELD_BASE(52, 52, 7, 0x0040, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 910) PIN_FIELD_BASE(53, 53, 7, 0x0040, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 911) PIN_FIELD_BASE(54, 54, 7, 0x0040, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 912) PIN_FIELD_BASE(55, 55, 7, 0x0040, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 913) PIN_FIELD_BASE(56, 56, 7, 0x0040, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 914) PIN_FIELD_BASE(57, 57, 7, 0x0040, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 915) PIN_FIELD_BASE(58, 58, 7, 0x0050, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 916) PIN_FIELD_BASE(59, 59, 7, 0x0040, 0x10, 31, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 917) PIN_FIELD_BASE(60, 60, 7, 0x0040, 0x10, 30, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 918) PIN_FIELD_BASE(61, 61, 3, 0x0030, 0x10, 18, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 919) PIN_FIELD_BASE(62, 62, 3, 0x0030, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 920) PIN_FIELD_BASE(63, 63, 3, 0x0030, 0x10, 17, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 921) PIN_FIELD_BASE(64, 64, 3, 0x0030, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 922) PIN_FIELD_BASE(65, 65, 3, 0x0030, 0x10, 20, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 923) PIN_FIELD_BASE(66, 66, 3, 0x0030, 0x10, 16, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 924) PIN_FIELD_BASE(67, 67, 3, 0x0030, 0x10, 19, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 925) PIN_FIELD_BASE(68, 68, 3, 0x0030, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 926) PIN_FIELD_BASE(69, 69, 3, 0x0030, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 927) PIN_FIELD_BASE(70, 70, 3, 0x0030, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 928) PIN_FIELD_BASE(71, 71, 3, 0x0030, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 929) PIN_FIELD_BASE(72, 72, 3, 0x0030, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 930) PIN_FIELD_BASE(73, 73, 3, 0x0030, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 931) PIN_FIELD_BASE(74, 74, 3, 0x0030, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 932) PIN_FIELD_BASE(75, 75, 3, 0x0030, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 933) PIN_FIELD_BASE(76, 76, 3, 0x0030, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 934) PIN_FIELD_BASE(77, 77, 3, 0x0030, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 935) PIN_FIELD_BASE(78, 78, 3, 0x0030, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 936) PIN_FIELD_BASE(79, 79, 3, 0x0030, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 937) PIN_FIELD_BASE(80, 80, 3, 0x0030, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 938) PIN_FIELD_BASE(81, 81, 3, 0x0030, 0x10, 25, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 939) PIN_FIELD_BASE(82, 82, 3, 0x0030, 0x10, 24, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 940) PIN_FIELD_BASE(83, 83, 3, 0x0030, 0x10, 22, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 941) PIN_FIELD_BASE(84, 84, 3, 0x0030, 0x10, 23, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 942) PIN_FIELD_BASE(85, 85, 7, 0x0050, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 943) PIN_FIELD_BASE(86, 86, 7, 0x0040, 0x10, 29, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 944) PIN_FIELD_BASE(87, 87, 7, 0x0040, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 945) PIN_FIELD_BASE(88, 88, 7, 0x0040, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 946) PIN_FIELD_BASE(89, 89, 2, 0x0030, 0x10, 25, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 947) PIN_FIELD_BASE(90, 90, 3, 0x0030, 0x10, 21, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 948) PIN_FIELD_BASE(91, 91, 2, 0x0030, 0x10, 20, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 949) PIN_FIELD_BASE(92, 92, 2, 0x0030, 0x10, 19, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 950) PIN_FIELD_BASE(93, 93, 2, 0x0030, 0x10, 17, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 951) PIN_FIELD_BASE(94, 94, 2, 0x0030, 0x10, 18, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 952) PIN_FIELD_BASE(95, 95, 2, 0x0030, 0x10, 26, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 953) PIN_FIELD_BASE(96, 96, 2, 0x0030, 0x10, 27, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 954) PIN_FIELD_BASE(97, 97, 2, 0x0030, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 955) PIN_FIELD_BASE(98, 98, 2, 0x0030, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 956) PIN_FIELD_BASE(99, 99, 2, 0x0030, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 957) PIN_FIELD_BASE(100, 100, 2, 0x0030, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 958) PIN_FIELD_BASE(101, 101, 2, 0x0030, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 959) PIN_FIELD_BASE(102, 102, 2, 0x0030, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 960) PIN_FIELD_BASE(103, 103, 2, 0x0030, 0x10, 21, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 961) PIN_FIELD_BASE(104, 104, 2, 0x0030, 0x10, 23, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 962) PIN_FIELD_BASE(105, 105, 2, 0x0030, 0x10, 22, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 963) PIN_FIELD_BASE(106, 106, 2, 0x0030, 0x10, 24, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 964) PIN_FIELD_BASE(107, 107, 1, 0x0030, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 965) PIN_FIELD_BASE(108, 108, 1, 0x0030, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 966) PIN_FIELD_BASE(109, 109, 1, 0x0030, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 967) PIN_FIELD_BASE(110, 110, 1, 0x0030, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 968) PIN_FIELD_BASE(111, 111, 1, 0x0030, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 969) PIN_FIELD_BASE(112, 112, 1, 0x0030, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 970) PIN_FIELD_BASE(113, 113, 1, 0x0030, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 971) PIN_FIELD_BASE(114, 114, 1, 0x0030, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 972) PIN_FIELD_BASE(115, 115, 1, 0x0030, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 973) PIN_FIELD_BASE(116, 116, 1, 0x0030, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 974) PIN_FIELD_BASE(117, 117, 1, 0x0030, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 975) PIN_FIELD_BASE(118, 118, 1, 0x0030, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 976) PIN_FIELD_BASE(119, 119, 1, 0x0030, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 977) PIN_FIELD_BASE(120, 120, 1, 0x0030, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 978) PIN_FIELD_BASE(121, 121, 1, 0x0030, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 979) PIN_FIELD_BASE(122, 122, 4, 0x0010, 0x10, 9, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 980) PIN_FIELD_BASE(123, 123, 4, 0x0010, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 981) PIN_FIELD_BASE(124, 124, 4, 0x0010, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 982) PIN_FIELD_BASE(125, 125, 4, 0x0010, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 983) PIN_FIELD_BASE(126, 126, 4, 0x0010, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 984) PIN_FIELD_BASE(127, 127, 4, 0x0010, 0x10, 16, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 985) PIN_FIELD_BASE(128, 128, 4, 0x0010, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 986) PIN_FIELD_BASE(129, 129, 4, 0x0010, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 987) PIN_FIELD_BASE(130, 130, 4, 0x0010, 0x10, 17, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 988) PIN_FIELD_BASE(131, 131, 4, 0x0010, 0x10, 18, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 989) PIN_FIELD_BASE(132, 132, 4, 0x0010, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 990) PIN_FIELD_BASE(133, 133, 4, 0x0010, 0x10, 19, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 991) PIN_FIELD_BASE(134, 134, 5, 0x0020, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 992) PIN_FIELD_BASE(135, 135, 5, 0x0020, 0x10, 17, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 993) PIN_FIELD_BASE(136, 136, 5, 0x0020, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 994) PIN_FIELD_BASE(137, 137, 5, 0x0020, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 995) PIN_FIELD_BASE(138, 138, 5, 0x0020, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 996) PIN_FIELD_BASE(139, 139, 5, 0x0020, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 997) PIN_FIELD_BASE(140, 140, 5, 0x0020, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 998) PIN_FIELD_BASE(141, 141, 5, 0x0020, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 999) PIN_FIELD_BASE(142, 142, 5, 0x0020, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1000) PIN_FIELD_BASE(143, 143, 5, 0x0020, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1001) PIN_FIELD_BASE(144, 144, 5, 0x0020, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1002) PIN_FIELD_BASE(145, 145, 5, 0x0020, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1003) PIN_FIELD_BASE(146, 146, 5, 0x0020, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1004) PIN_FIELD_BASE(147, 147, 5, 0x0020, 0x10, 10, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1005) PIN_FIELD_BASE(148, 148, 5, 0x0020, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1006) PIN_FIELD_BASE(149, 149, 5, 0x0020, 0x10, 16, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1007) PIN_FIELD_BASE(150, 150, 7, 0x0040, 0x10, 23, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1008) PIN_FIELD_BASE(151, 151, 7, 0x0040, 0x10, 24, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1009) PIN_FIELD_BASE(152, 152, 7, 0x0040, 0x10, 25, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1010) PIN_FIELD_BASE(153, 153, 7, 0x0040, 0x10, 26, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1011) PIN_FIELD_BASE(154, 154, 7, 0x0040, 0x10, 28, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1012) PIN_FIELD_BASE(155, 155, 3, 0x0030, 0x10, 28, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1013) PIN_FIELD_BASE(156, 156, 3, 0x0030, 0x10, 27, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1014) PIN_FIELD_BASE(157, 157, 3, 0x0030, 0x10, 29, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1015) PIN_FIELD_BASE(158, 158, 3, 0x0030, 0x10, 26, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1016) PIN_FIELD_BASE(159, 159, 7, 0x0040, 0x10, 27, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1017) PIN_FIELD_BASE(160, 160, 5, 0x0020, 0x10, 8, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1018) PIN_FIELD_BASE(161, 161, 1, 0x0030, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1019) PIN_FIELD_BASE(162, 162, 1, 0x0030, 0x10, 16, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1020) PIN_FIELD_BASE(163, 163, 4, 0x0010, 0x10, 0, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1021) PIN_FIELD_BASE(164, 164, 4, 0x0010, 0x10, 1, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1022) PIN_FIELD_BASE(165, 165, 4, 0x0010, 0x10, 2, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1023) PIN_FIELD_BASE(166, 166, 4, 0x0010, 0x10, 3, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1024) PIN_FIELD_BASE(167, 167, 4, 0x0010, 0x10, 4, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1025) PIN_FIELD_BASE(168, 168, 4, 0x0010, 0x10, 5, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1026) PIN_FIELD_BASE(169, 169, 4, 0x0010, 0x10, 6, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1027) PIN_FIELD_BASE(170, 170, 4, 0x0010, 0x10, 7, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1028) PIN_FIELD_BASE(171, 171, 7, 0x0040, 0x10, 17, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1029) PIN_FIELD_BASE(172, 172, 7, 0x0040, 0x10, 18, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1030) PIN_FIELD_BASE(173, 173, 7, 0x0040, 0x10, 11, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1031) PIN_FIELD_BASE(174, 174, 7, 0x0040, 0x10, 12, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1032) PIN_FIELD_BASE(175, 175, 7, 0x0040, 0x10, 13, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1033) PIN_FIELD_BASE(176, 176, 7, 0x0040, 0x10, 14, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1034) PIN_FIELD_BASE(177, 177, 7, 0x0040, 0x10, 15, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1035) PINS_FIELD_BASE(178, 179, 7, 0x0040, 0x10, 16, 1),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1036) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1037)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1038) static const struct mtk_pin_reg_calc mt6765_reg_cals[PINCTRL_PIN_REG_MAX] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1039) [PINCTRL_PIN_REG_MODE] = MTK_RANGE(mt6765_pin_mode_range),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1040) [PINCTRL_PIN_REG_DIR] = MTK_RANGE(mt6765_pin_dir_range),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1041) [PINCTRL_PIN_REG_DI] = MTK_RANGE(mt6765_pin_di_range),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1042) [PINCTRL_PIN_REG_DO] = MTK_RANGE(mt6765_pin_do_range),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1043) [PINCTRL_PIN_REG_SMT] = MTK_RANGE(mt6765_pin_smt_range),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1044) [PINCTRL_PIN_REG_PD] = MTK_RANGE(mt6765_pin_pd_range),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1045) [PINCTRL_PIN_REG_PU] = MTK_RANGE(mt6765_pin_pu_range),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1046) [PINCTRL_PIN_REG_TDSEL] = MTK_RANGE(mt6765_pin_tdsel_range),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1047) [PINCTRL_PIN_REG_RDSEL] = MTK_RANGE(mt6765_pin_rdsel_range),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1048) [PINCTRL_PIN_REG_DRV] = MTK_RANGE(mt6765_pin_drv_range),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1049) [PINCTRL_PIN_REG_PUPD] = MTK_RANGE(mt6765_pin_pupd_range),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1050) [PINCTRL_PIN_REG_R0] = MTK_RANGE(mt6765_pin_r0_range),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1051) [PINCTRL_PIN_REG_R1] = MTK_RANGE(mt6765_pin_r1_range),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1052) [PINCTRL_PIN_REG_IES] = MTK_RANGE(mt6765_pin_ies_range),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1053) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1054)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1055) static const char * const mt6765_pinctrl_register_base_names[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1056) "iocfg0", "iocfg1", "iocfg2", "iocfg3", "iocfg4", "iocfg5",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1057) "iocfg6", "iocfg7",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1058) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1059)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1060) static const struct mtk_eint_hw mt6765_eint_hw = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1061) .port_mask = 7,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1062) .ports = 6,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1063) .ap_num = 160,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1064) .db_cnt = 13,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1065) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1066)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1067) static const struct mtk_pin_soc mt6765_data = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1068) .reg_cal = mt6765_reg_cals,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1069) .pins = mtk_pins_mt6765,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1070) .npins = ARRAY_SIZE(mtk_pins_mt6765),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1071) .ngrps = ARRAY_SIZE(mtk_pins_mt6765),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1072) .eint_hw = &mt6765_eint_hw,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1073) .gpio_m = 0,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1074) .base_names = mt6765_pinctrl_register_base_names,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1075) .nbase_names = ARRAY_SIZE(mt6765_pinctrl_register_base_names),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1076) .bias_set_combo = mtk_pinconf_bias_set_combo,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1077) .bias_get_combo = mtk_pinconf_bias_get_combo,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1078) .drive_set = mtk_pinconf_drive_set_raw,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1079) .drive_get = mtk_pinconf_drive_get_raw,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1080) .adv_pull_get = mtk_pinconf_adv_pull_get,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1081) .adv_pull_set = mtk_pinconf_adv_pull_set,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1082) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1083)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1084) static const struct of_device_id mt6765_pinctrl_of_match[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1085) { .compatible = "mediatek,mt6765-pinctrl", },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1086) { }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1087) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1088)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1089) static int mt6765_pinctrl_probe(struct platform_device *pdev)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1090) {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1091) return mtk_paris_pinctrl_probe(pdev, &mt6765_data);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1092) }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1093)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1094) static struct platform_driver mt6765_pinctrl_driver = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1095) .driver = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1096) .name = "mt6765-pinctrl",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1097) .of_match_table = mt6765_pinctrl_of_match,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1098) },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1099) .probe = mt6765_pinctrl_probe,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1100) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1101)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1102) static int __init mt6765_pinctrl_init(void)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1103) {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1104) return platform_driver_register(&mt6765_pinctrl_driver);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1105) }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1106) arch_initcall(mt6765_pinctrl_init);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1107)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1108) MODULE_LICENSE("GPL v2");
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1109) MODULE_DESCRIPTION("MediaTek MT6765 Pinctrl Driver");