Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/drivers/pinctrl/mediatek/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 50 kB image not shown  

Quelle  pinctrl-mt6765.c

  Sprache: C
 

// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright (C) 2018 MediaTek Inc.
 *
 * Author: ZH Chen <zh.chen@mediatek.com>
 *
 */


#include <linux/module.h>
#include "pinctrl-mtk-mt6765.h"
#include "pinctrl-paris.h"

/* MT6765 have multiple bases to program pin configuration listed as the below:
 * iocfg[0]:0x10005000, iocfg[1]:0x10002C00, iocfg[2]:0x10002800,
 * iocfg[3]:0x10002A00, iocfg[4]:0x10002000, iocfg[5]:0x10002200,
 * iocfg[6]:0x10002500, iocfg[7]:0x10002600.
 * _i_base could be used to indicate what base the pin should be mapped into.
 */


#define PIN_FIELD_BASE(_s_pin, _e_pin, _i_base, _s_addr, _x_addrs, _s_bit, _x_bits) \
 PIN_FIELD_CALC(_s_pin, _e_pin, _i_base, _s_addr, _x_addrs, _s_bit, \
         _x_bits, 320)

#define PINS_FIELD_BASE(_s_pin, _e_pin, _i_base, _s_addr, _x_addrs, _s_bit, _x_bits) \
 PIN_FIELD_CALC(_s_pin, _e_pin, _i_base, _s_addr, _x_addrs, _s_bit, \
        _x_bits, 321)

static const struct mtk_pin_field_calc mt6765_pin_mode_range[] = {
 PIN_FIELD(02020x300, 0x10, 04),
};

static const struct mtk_pin_field_calc mt6765_pin_dir_range[] = {
 PIN_FIELD(02020x0, 0x10, 01),
};

static const struct mtk_pin_field_calc mt6765_pin_di_range[] = {
 PIN_FIELD(02020x200, 0x10, 01),
};

static const struct mtk_pin_field_calc mt6765_pin_do_range[] = {
 PIN_FIELD(02020x100, 0x10, 01),
};

static const struct mtk_pin_field_calc mt6765_pin_smt_range[] = {
 PINS_FIELD_BASE(0320x00b0, 0x10, 41),
 PINS_FIELD_BASE(4720x00b0, 0x10, 51),
 PIN_FIELD_BASE(8830x0080, 0x10, 31),
 PINS_FIELD_BASE(91120x00b0, 0x10, 61),
 PIN_FIELD_BASE(121250x0060, 0x10, 91),
 PINS_FIELD_BASE(131660x00b0, 0x10, 101),
 PINS_FIELD_BASE(172060x00b0, 0x10, 81),
 PINS_FIELD_BASE(212460x00b0, 0x10, 91),
 PINS_FIELD_BASE(252860x00b0, 0x10, 71),
 PIN_FIELD_BASE(292960x00b0, 0x10, 01),
 PIN_FIELD_BASE(303060x00b0, 0x10, 11),
 PINS_FIELD_BASE(313460x00b0, 0x10, 21),
 PINS_FIELD_BASE(353660x00b0, 0x10, 51),
 PIN_FIELD_BASE(373760x00b0, 0x10, 61),
 PIN_FIELD_BASE(383860x00b0, 0x10, 41),
 PINS_FIELD_BASE(394060x00b0, 0x10, 31),
 PINS_FIELD_BASE(414270x00c0, 0x10, 61),
 PIN_FIELD_BASE(434370x00c0, 0x10, 31),
 PIN_FIELD_BASE(444470x00c0, 0x10, 41),
 PIN_FIELD_BASE(454570x00c0, 0x10, 81),
 PINS_FIELD_BASE(464770x00c0, 0x10, 71),
 PIN_FIELD_BASE(484870x00c0, 0x10, 151),
 PIN_FIELD_BASE(494970x00c0, 0x10, 171),
 PIN_FIELD_BASE(505070x00c0, 0x10, 141),
 PIN_FIELD_BASE(515170x00c0, 0x10, 161),
 PINS_FIELD_BASE(525770x00c0, 0x10, 01),
 PINS_FIELD_BASE(586070x00c0, 0x10, 121),
 PINS_FIELD_BASE(616230x0080, 0x10, 51),
 PINS_FIELD_BASE(636430x0080, 0x10, 41),
 PINS_FIELD_BASE(656630x0080, 0x10, 71),
 PINS_FIELD_BASE(676830x0080, 0x10, 61),
 PINS_FIELD_BASE(697330x0080, 0x10, 11),
 PINS_FIELD_BASE(747830x0080, 0x10, 21),
 PINS_FIELD_BASE(798030x0080, 0x10, 01),
 PIN_FIELD_BASE(818130x0080, 0x10, 121),
 PIN_FIELD_BASE(828230x0080, 0x10, 111),
 PIN_FIELD_BASE(838330x0080, 0x10, 91),
 PIN_FIELD_BASE(848430x0080, 0x10, 101),
 PIN_FIELD_BASE(858570x00c0, 0x10, 121),
 PIN_FIELD_BASE(868670x00c0, 0x10, 131),
 PIN_FIELD_BASE(878770x00c0, 0x10, 21),
 PIN_FIELD_BASE(888870x00c0, 0x10, 11),
 PIN_FIELD_BASE(898920x00b0, 0x10, 131),
 PIN_FIELD_BASE(909030x0080, 0x10, 81),
 PINS_FIELD_BASE(919220x00b0, 0x10, 81),
 PINS_FIELD_BASE(939420x00b0, 0x10, 71),
 PINS_FIELD_BASE(959620x00b0, 0x10, 141),
 PINS_FIELD_BASE(979820x00b0, 0x10, 21),
 PIN_FIELD_BASE(999920x00b0, 0x10, 01),
 PIN_FIELD_BASE(10010020x00b0, 0x10, 11),
 PINS_FIELD_BASE(10110220x00b0, 0x10, 31),
 PIN_FIELD_BASE(10310320x00b0, 0x10, 91),
 PIN_FIELD_BASE(10410420x00b0, 0x10, 111),
 PIN_FIELD_BASE(10510520x00b0, 0x10, 101),
 PIN_FIELD_BASE(10610620x00b0, 0x10, 121),
 PIN_FIELD_BASE(10710710x0080, 0x10, 41),
 PIN_FIELD_BASE(10810810x0080, 0x10, 31),
 PIN_FIELD_BASE(10910910x0080, 0x10, 51),
 PIN_FIELD_BASE(11011010x0080, 0x10, 01),
 PIN_FIELD_BASE(11111110x0080, 0x10, 11),
 PIN_FIELD_BASE(11211210x0080, 0x10, 21),
 PIN_FIELD_BASE(11311310x0080, 0x10, 91),
 PIN_FIELD_BASE(11411410x0080, 0x10, 101),
 PIN_FIELD_BASE(11511510x0080, 0x10, 61),
 PIN_FIELD_BASE(11611610x0080, 0x10, 71),
 PIN_FIELD_BASE(11711710x0080, 0x10, 121),
 PIN_FIELD_BASE(11811810x0080, 0x10, 131),
 PIN_FIELD_BASE(11911910x0080, 0x10, 141),
 PIN_FIELD_BASE(12012010x0080, 0x10, 111),
 PIN_FIELD_BASE(12112110x0080, 0x10, 81),
 PIN_FIELD_BASE(12212240x0080, 0x10, 21),
 PIN_FIELD_BASE(12312340x0080, 0x10, 31),
 PIN_FIELD_BASE(12412440x0080, 0x10, 11),
 PIN_FIELD_BASE(12512540x0080, 0x10, 51),
 PIN_FIELD_BASE(12612640x0080, 0x10, 71),
 PIN_FIELD_BASE(12712740x0080, 0x10, 91),
 PIN_FIELD_BASE(12812840x0080, 0x10, 41),
 PIN_FIELD_BASE(12912940x0080, 0x10, 81),
 PIN_FIELD_BASE(13013040x0080, 0x10, 101),
 PIN_FIELD_BASE(13113140x0080, 0x10, 111),
 PIN_FIELD_BASE(13213240x0080, 0x10, 61),
 PIN_FIELD_BASE(13313340x0080, 0x10, 121),
 PIN_FIELD_BASE(13413450x0060, 0x10, 111),
 PIN_FIELD_BASE(13513550x0060, 0x10, 131),
 PIN_FIELD_BASE(13613650x0060, 0x10, 11),
 PIN_FIELD_BASE(13713750x0060, 0x10, 71),
 PIN_FIELD_BASE(13813850x0060, 0x10, 41),
 PIN_FIELD_BASE(13913950x0060, 0x10, 51),
 PIN_FIELD_BASE(14014050x0060, 0x10, 01),
 PIN_FIELD_BASE(14114150x0060, 0x10, 61),
 PIN_FIELD_BASE(14214250x0060, 0x10, 21),
 PIN_FIELD_BASE(14314350x0060, 0x10, 31),
 PINS_FIELD_BASE(14414750x0060, 0x10, 101),
 PINS_FIELD_BASE(14814950x0060, 0x10, 121),
 PINS_FIELD_BASE(15015170x00c0, 0x10, 91),
 PINS_FIELD_BASE(15215370x00c0, 0x10, 101),
 PIN_FIELD_BASE(15415470x00c0, 0x10, 111),
 PINS_FIELD_BASE(15515830x0080, 0x10, 131),
 PIN_FIELD_BASE(15915970x00c0, 0x10, 111),
 PIN_FIELD_BASE(16016050x0060, 0x10, 81),
 PIN_FIELD_BASE(16116110x0080, 0x10, 151),
 PIN_FIELD_BASE(16216210x0080, 0x10, 161),
 PINS_FIELD_BASE(16317040x0080, 0x10, 01),
 PINS_FIELD_BASE(17117970x00c0, 0x10, 51),
};

static const struct mtk_pin_field_calc mt6765_pin_pd_range[] = {
 PIN_FIELD_BASE(0020x0040, 0x10, 61),
 PIN_FIELD_BASE(1120x0040, 0x10, 71),
 PIN_FIELD_BASE(2220x0040, 0x10, 101),
 PIN_FIELD_BASE(3320x0040, 0x10, 111),
 PIN_FIELD_BASE(4420x0040, 0x10, 121),
 PIN_FIELD_BASE(5520x0040, 0x10, 131),
 PIN_FIELD_BASE(6620x0040, 0x10, 141),
 PIN_FIELD_BASE(7720x0040, 0x10, 151),
 PIN_FIELD_BASE(8830x0040, 0x10, 121),
 PIN_FIELD_BASE(9920x0040, 0x10, 161),
 PIN_FIELD_BASE(101020x0040, 0x10, 81),
 PIN_FIELD_BASE(111120x0040, 0x10, 91),
 PIN_FIELD_BASE(121250x0030, 0x10, 91),
 PIN_FIELD_BASE(131360x0040, 0x10, 141),
 PIN_FIELD_BASE(141460x0040, 0x10, 131),
 PIN_FIELD_BASE(151560x0040, 0x10, 151),
 PIN_FIELD_BASE(161660x0040, 0x10, 121),
 PIN_FIELD_BASE(171760x0040, 0x10, 71),
 PIN_FIELD_BASE(181860x0040, 0x10, 41),
 PIN_FIELD_BASE(191960x0040, 0x10, 61),
 PIN_FIELD_BASE(202060x0040, 0x10, 51),
 PIN_FIELD_BASE(212160x0040, 0x10, 101),
 PIN_FIELD_BASE(222260x0040, 0x10, 91),
 PIN_FIELD_BASE(232360x0040, 0x10, 111),
 PIN_FIELD_BASE(242460x0040, 0x10, 81),
 PIN_FIELD_BASE(252560x0040, 0x10, 21),
 PIN_FIELD_BASE(262660x0040, 0x10, 11),
 PIN_FIELD_BASE(272760x0040, 0x10, 31),
 PINS_FIELD_BASE(284060x0040, 0x10, 01),
 PIN_FIELD_BASE(414170x0060, 0x10, 191),
 PIN_FIELD_BASE(424270x0060, 0x10, 91),
 PIN_FIELD_BASE(434370x0060, 0x10, 81),
 PIN_FIELD_BASE(444470x0060, 0x10, 101),
 PIN_FIELD_BASE(454570x0060, 0x10, 221),
 PIN_FIELD_BASE(464670x0060, 0x10, 211),
 PIN_FIELD_BASE(474770x0060, 0x10, 201),
 PIN_FIELD_BASE(484870x0070, 0x10, 31),
 PIN_FIELD_BASE(494970x0070, 0x10, 51),
 PIN_FIELD_BASE(505070x0070, 0x10, 21),
 PIN_FIELD_BASE(515170x0070, 0x10, 41),
 PIN_FIELD_BASE(525270x0060, 0x10, 11),
 PIN_FIELD_BASE(535370x0060, 0x10, 01),
 PIN_FIELD_BASE(545470x0060, 0x10, 51),
 PIN_FIELD_BASE(555570x0060, 0x10, 31),
 PIN_FIELD_BASE(565670x0060, 0x10, 41),
 PIN_FIELD_BASE(575770x0060, 0x10, 21),
 PIN_FIELD_BASE(585870x0070, 0x10, 01),
 PIN_FIELD_BASE(595970x0060, 0x10, 311),
 PIN_FIELD_BASE(606070x0060, 0x10, 301),
 PIN_FIELD_BASE(616130x0040, 0x10, 181),
 PIN_FIELD_BASE(626230x0040, 0x10, 141),
 PIN_FIELD_BASE(636330x0040, 0x10, 171),
 PIN_FIELD_BASE(646430x0040, 0x10, 131),
 PIN_FIELD_BASE(656530x0040, 0x10, 201),
 PIN_FIELD_BASE(666630x0040, 0x10, 161),
 PIN_FIELD_BASE(676730x0040, 0x10, 191),
 PIN_FIELD_BASE(686830x0040, 0x10, 151),
 PIN_FIELD_BASE(696930x0040, 0x10, 81),
 PIN_FIELD_BASE(707030x0040, 0x10, 71),
 PIN_FIELD_BASE(717130x0040, 0x10, 61),
 PIN_FIELD_BASE(727230x0040, 0x10, 51),
 PIN_FIELD_BASE(737330x0040, 0x10, 41),
 PIN_FIELD_BASE(747430x0040, 0x10, 31),
 PIN_FIELD_BASE(757530x0040, 0x10, 21),
 PIN_FIELD_BASE(767630x0040, 0x10, 11),
 PIN_FIELD_BASE(777730x0040, 0x10, 01),
 PIN_FIELD_BASE(787830x0040, 0x10, 91),
 PIN_FIELD_BASE(797930x0040, 0x10, 111),
 PIN_FIELD_BASE(808030x0040, 0x10, 101),
 PIN_FIELD_BASE(818130x0040, 0x10, 251),
 PIN_FIELD_BASE(828230x0040, 0x10, 241),
 PIN_FIELD_BASE(838330x0040, 0x10, 221),
 PIN_FIELD_BASE(848430x0040, 0x10, 231),
 PIN_FIELD_BASE(858570x0070, 0x10, 11),
 PIN_FIELD_BASE(868670x0060, 0x10, 291),
 PIN_FIELD_BASE(878770x0060, 0x10, 71),
 PIN_FIELD_BASE(888870x0060, 0x10, 61),
 PIN_FIELD_BASE(898920x0040, 0x10, 211),
 PINS_FIELD_BASE(909430x0040, 0x10, 211),
 PIN_FIELD_BASE(959520x0040, 0x10, 221),
 PIN_FIELD_BASE(969620x0040, 0x10, 231),
 PIN_FIELD_BASE(979720x0040, 0x10, 21),
 PIN_FIELD_BASE(989820x0040, 0x10, 31),
 PIN_FIELD_BASE(999920x0040, 0x10, 01),
 PIN_FIELD_BASE(10010020x0040, 0x10, 11),
 PIN_FIELD_BASE(10110120x0040, 0x10, 41),
 PIN_FIELD_BASE(10210220x0040, 0x10, 51),
 PIN_FIELD_BASE(10310320x0040, 0x10, 171),
 PIN_FIELD_BASE(10410420x0040, 0x10, 191),
 PIN_FIELD_BASE(10510520x0040, 0x10, 181),
 PIN_FIELD_BASE(10610620x0040, 0x10, 201),
 PIN_FIELD_BASE(10710710x0040, 0x10, 41),
 PIN_FIELD_BASE(10810810x0040, 0x10, 31),
 PIN_FIELD_BASE(10910910x0040, 0x10, 51),
 PIN_FIELD_BASE(11011010x0040, 0x10, 01),
 PIN_FIELD_BASE(11111110x0040, 0x10, 11),
 PIN_FIELD_BASE(11211210x0040, 0x10, 21),
 PIN_FIELD_BASE(11311310x0040, 0x10, 91),
 PIN_FIELD_BASE(11411410x0040, 0x10, 101),
 PIN_FIELD_BASE(11511510x0040, 0x10, 61),
 PIN_FIELD_BASE(11611610x0040, 0x10, 71),
 PIN_FIELD_BASE(11711710x0040, 0x10, 121),
 PIN_FIELD_BASE(11811810x0040, 0x10, 131),
 PIN_FIELD_BASE(11911910x0040, 0x10, 141),
 PIN_FIELD_BASE(12012010x0040, 0x10, 111),
 PINS_FIELD_BASE(12113310x0040, 0x10, 81),
 PIN_FIELD_BASE(13413450x0030, 0x10, 141),
 PIN_FIELD_BASE(13513550x0030, 0x10, 191),
 PIN_FIELD_BASE(13613650x0030, 0x10, 11),
 PIN_FIELD_BASE(13713750x0030, 0x10, 71),
 PIN_FIELD_BASE(13813850x0030, 0x10, 41),
 PIN_FIELD_BASE(13913950x0030, 0x10, 51),
 PIN_FIELD_BASE(14014050x0030, 0x10, 01),
 PIN_FIELD_BASE(14114150x0030, 0x10, 61),
 PIN_FIELD_BASE(14214250x0030, 0x10, 21),
 PIN_FIELD_BASE(14314350x0030, 0x10, 31),
 PIN_FIELD_BASE(14414450x0030, 0x10, 121),
 PIN_FIELD_BASE(14514550x0030, 0x10, 111),
 PIN_FIELD_BASE(14614650x0030, 0x10, 131),
 PIN_FIELD_BASE(14714750x0030, 0x10, 101),
 PIN_FIELD_BASE(14814850x0030, 0x10, 151),
 PIN_FIELD_BASE(14914950x0030, 0x10, 161),
 PIN_FIELD_BASE(15015070x0060, 0x10, 231),
 PIN_FIELD_BASE(15115170x0060, 0x10, 241),
 PIN_FIELD_BASE(15215270x0060, 0x10, 251),
 PIN_FIELD_BASE(15315370x0060, 0x10, 261),
 PIN_FIELD_BASE(15415470x0060, 0x10, 281),
 PIN_FIELD_BASE(15515530x0040, 0x10, 281),
 PIN_FIELD_BASE(15615630x0040, 0x10, 271),
 PIN_FIELD_BASE(15715730x0040, 0x10, 291),
 PIN_FIELD_BASE(15815830x0040, 0x10, 261),
 PIN_FIELD_BASE(15915970x0060, 0x10, 271),
 PIN_FIELD_BASE(16016050x0030, 0x10, 81),
 PIN_FIELD_BASE(16116110x0040, 0x10, 151),
 PIN_FIELD_BASE(16216210x0040, 0x10, 161),
 PIN_FIELD_BASE(16316340x0020, 0x10, 01),
 PIN_FIELD_BASE(16416440x0020, 0x10, 11),
 PIN_FIELD_BASE(16516540x0020, 0x10, 21),
 PIN_FIELD_BASE(16616640x0020, 0x10, 31),
 PIN_FIELD_BASE(16716740x0020, 0x10, 41),
 PIN_FIELD_BASE(16816840x0020, 0x10, 51),
 PIN_FIELD_BASE(16916940x0020, 0x10, 61),
 PIN_FIELD_BASE(17017040x0020, 0x10, 71),
 PIN_FIELD_BASE(17117170x0060, 0x10, 171),
 PIN_FIELD_BASE(17217270x0060, 0x10, 181),
 PIN_FIELD_BASE(17317370x0060, 0x10, 111),
 PIN_FIELD_BASE(17417470x0060, 0x10, 121),
 PIN_FIELD_BASE(17517570x0060, 0x10, 131),
 PIN_FIELD_BASE(17617670x0060, 0x10, 141),
 PIN_FIELD_BASE(17717770x0060, 0x10, 151),
 PINS_FIELD_BASE(17817970x0060, 0x10, 161),
};

static const struct mtk_pin_field_calc mt6765_pin_pu_range[] = {
 PIN_FIELD_BASE(0020x0060, 0x10, 61),
 PIN_FIELD_BASE(1120x0060, 0x10, 71),
 PIN_FIELD_BASE(2220x0060, 0x10, 101),
 PIN_FIELD_BASE(3320x0060, 0x10, 111),
 PIN_FIELD_BASE(4420x0060, 0x10, 121),
 PIN_FIELD_BASE(5520x0060, 0x10, 131),
 PIN_FIELD_BASE(6620x0060, 0x10, 141),
 PIN_FIELD_BASE(7720x0060, 0x10, 151),
 PIN_FIELD_BASE(8830x0050, 0x10, 121),
 PIN_FIELD_BASE(9920x0060, 0x10, 161),
 PIN_FIELD_BASE(101020x0060, 0x10, 81),
 PIN_FIELD_BASE(111120x0060, 0x10, 91),
 PIN_FIELD_BASE(121250x0040, 0x10, 91),
 PIN_FIELD_BASE(131360x0060, 0x10, 141),
 PIN_FIELD_BASE(141460x0060, 0x10, 131),
 PIN_FIELD_BASE(151560x0060, 0x10, 151),
 PIN_FIELD_BASE(161660x0060, 0x10, 121),
 PIN_FIELD_BASE(171760x0060, 0x10, 71),
 PIN_FIELD_BASE(181860x0060, 0x10, 41),
 PIN_FIELD_BASE(191960x0060, 0x10, 61),
 PIN_FIELD_BASE(202060x0060, 0x10, 51),
 PIN_FIELD_BASE(212160x0060, 0x10, 101),
 PIN_FIELD_BASE(222260x0060, 0x10, 91),
 PIN_FIELD_BASE(232360x0060, 0x10, 111),
 PIN_FIELD_BASE(242460x0060, 0x10, 81),
 PIN_FIELD_BASE(252560x0060, 0x10, 21),
 PIN_FIELD_BASE(262660x0060, 0x10, 11),
 PIN_FIELD_BASE(272760x0060, 0x10, 31),
 PINS_FIELD_BASE(284060x0060, 0x10, 01),
 PIN_FIELD_BASE(414170x0080, 0x10, 191),
 PIN_FIELD_BASE(424270x0080, 0x10, 91),
 PIN_FIELD_BASE(434370x0080, 0x10, 81),
 PIN_FIELD_BASE(444470x0080, 0x10, 101),
 PIN_FIELD_BASE(454570x0080, 0x10, 221),
 PIN_FIELD_BASE(464670x0080, 0x10, 211),
 PIN_FIELD_BASE(474770x0080, 0x10, 201),
 PIN_FIELD_BASE(484870x0090, 0x10, 31),
 PIN_FIELD_BASE(494970x0090, 0x10, 51),
 PIN_FIELD_BASE(505070x0090, 0x10, 21),
 PIN_FIELD_BASE(515170x0090, 0x10, 41),
 PIN_FIELD_BASE(525270x0080, 0x10, 11),
 PIN_FIELD_BASE(535370x0080, 0x10, 01),
 PIN_FIELD_BASE(545470x0080, 0x10, 51),
 PIN_FIELD_BASE(555570x0080, 0x10, 31),
 PIN_FIELD_BASE(565670x0080, 0x10, 41),
 PIN_FIELD_BASE(575770x0080, 0x10, 21),
 PIN_FIELD_BASE(585870x0090, 0x10, 01),
 PIN_FIELD_BASE(595970x0080, 0x10, 311),
 PIN_FIELD_BASE(606070x0080, 0x10, 301),
 PIN_FIELD_BASE(616130x0050, 0x10, 181),
 PIN_FIELD_BASE(626230x0050, 0x10, 141),
 PIN_FIELD_BASE(636330x0050, 0x10, 171),
 PIN_FIELD_BASE(646430x0050, 0x10, 131),
 PIN_FIELD_BASE(656530x0050, 0x10, 201),
 PIN_FIELD_BASE(666630x0050, 0x10, 161),
 PIN_FIELD_BASE(676730x0050, 0x10, 191),
 PIN_FIELD_BASE(686830x0050, 0x10, 151),
 PIN_FIELD_BASE(696930x0050, 0x10, 81),
 PIN_FIELD_BASE(707030x0050, 0x10, 71),
 PIN_FIELD_BASE(717130x0050, 0x10, 61),
 PIN_FIELD_BASE(727230x0050, 0x10, 51),
 PIN_FIELD_BASE(737330x0050, 0x10, 41),
 PIN_FIELD_BASE(747430x0050, 0x10, 31),
 PIN_FIELD_BASE(757530x0050, 0x10, 21),
 PIN_FIELD_BASE(767630x0050, 0x10, 11),
 PIN_FIELD_BASE(777730x0050, 0x10, 01),
 PIN_FIELD_BASE(787830x0050, 0x10, 91),
 PIN_FIELD_BASE(797930x0050, 0x10, 111),
 PIN_FIELD_BASE(808030x0050, 0x10, 101),
 PIN_FIELD_BASE(818130x0050, 0x10, 251),
 PIN_FIELD_BASE(828230x0050, 0x10, 241),
 PIN_FIELD_BASE(838330x0050, 0x10, 221),
 PIN_FIELD_BASE(848430x0050, 0x10, 231),
 PIN_FIELD_BASE(858570x0090, 0x10, 11),
 PIN_FIELD_BASE(868670x0080, 0x10, 291),
 PIN_FIELD_BASE(878770x0080, 0x10, 71),
 PIN_FIELD_BASE(888870x0080, 0x10, 61),
 PIN_FIELD_BASE(898920x0060, 0x10, 211),
 PINS_FIELD_BASE(909430x0050, 0x10, 211),
 PIN_FIELD_BASE(959520x0060, 0x10, 221),
 PIN_FIELD_BASE(969620x0060, 0x10, 231),
 PIN_FIELD_BASE(979720x0060, 0x10, 21),
 PIN_FIELD_BASE(989820x0060, 0x10, 31),
 PIN_FIELD_BASE(999920x0060, 0x10, 01),
 PIN_FIELD_BASE(10010020x0060, 0x10, 11),
 PIN_FIELD_BASE(10110120x0060, 0x10, 41),
 PIN_FIELD_BASE(10210220x0060, 0x10, 51),
 PIN_FIELD_BASE(10310320x0060, 0x10, 171),
 PIN_FIELD_BASE(10410420x0060, 0x10, 191),
 PIN_FIELD_BASE(10510520x0060, 0x10, 181),
 PIN_FIELD_BASE(10610620x0060, 0x10, 201),
 PIN_FIELD_BASE(10710710x0050, 0x10, 41),
 PIN_FIELD_BASE(10810810x0050, 0x10, 31),
 PIN_FIELD_BASE(10910910x0050, 0x10, 51),
 PIN_FIELD_BASE(11011010x0050, 0x10, 01),
 PIN_FIELD_BASE(11111110x0050, 0x10, 11),
 PIN_FIELD_BASE(11211210x0050, 0x10, 21),
 PIN_FIELD_BASE(11311310x0050, 0x10, 91),
 PIN_FIELD_BASE(11411410x0050, 0x10, 101),
 PIN_FIELD_BASE(11511510x0050, 0x10, 61),
 PIN_FIELD_BASE(11611610x0050, 0x10, 71),
 PIN_FIELD_BASE(11711710x0050, 0x10, 121),
 PIN_FIELD_BASE(11811810x0050, 0x10, 131),
 PIN_FIELD_BASE(11911910x0050, 0x10, 141),
 PIN_FIELD_BASE(12012010x0050, 0x10, 111),
 PINS_FIELD_BASE(12113310x0050, 0x10, 81),
 PIN_FIELD_BASE(13413450x0040, 0x10, 141),
 PIN_FIELD_BASE(13513550x0040, 0x10, 191),
 PIN_FIELD_BASE(13613650x0040, 0x10, 11),
 PIN_FIELD_BASE(13713750x0040, 0x10, 71),
 PIN_FIELD_BASE(13813850x0040, 0x10, 41),
 PIN_FIELD_BASE(13913950x0040, 0x10, 51),
 PIN_FIELD_BASE(14014050x0040, 0x10, 01),
 PIN_FIELD_BASE(14114150x0040, 0x10, 61),
 PIN_FIELD_BASE(14214250x0040, 0x10, 21),
 PIN_FIELD_BASE(14314350x0040, 0x10, 31),
 PIN_FIELD_BASE(14414450x0040, 0x10, 121),
 PIN_FIELD_BASE(14514550x0040, 0x10, 111),
 PIN_FIELD_BASE(14614650x0040, 0x10, 131),
 PIN_FIELD_BASE(14714750x0040, 0x10, 101),
 PIN_FIELD_BASE(14814850x0040, 0x10, 151),
 PIN_FIELD_BASE(14914950x0040, 0x10, 161),
 PIN_FIELD_BASE(15015070x0080, 0x10, 231),
 PIN_FIELD_BASE(15115170x0080, 0x10, 241),
 PIN_FIELD_BASE(15215270x0080, 0x10, 251),
 PIN_FIELD_BASE(15315370x0080, 0x10, 261),
 PIN_FIELD_BASE(15415470x0080, 0x10, 281),
 PIN_FIELD_BASE(15515530x0050, 0x10, 281),
 PIN_FIELD_BASE(15615630x0050, 0x10, 271),
 PIN_FIELD_BASE(15715730x0050, 0x10, 291),
 PIN_FIELD_BASE(15815830x0050, 0x10, 261),
 PIN_FIELD_BASE(15915970x0080, 0x10, 271),
 PIN_FIELD_BASE(16016050x0040, 0x10, 81),
 PIN_FIELD_BASE(16116110x0050, 0x10, 151),
 PIN_FIELD_BASE(16216210x0050, 0x10, 161),
 PIN_FIELD_BASE(16316340x0040, 0x10, 01),
 PIN_FIELD_BASE(16416440x0040, 0x10, 11),
 PIN_FIELD_BASE(16516540x0040, 0x10, 21),
 PIN_FIELD_BASE(16616640x0040, 0x10, 31),
 PIN_FIELD_BASE(16716740x0040, 0x10, 41),
 PIN_FIELD_BASE(16816840x0040, 0x10, 51),
 PIN_FIELD_BASE(16916940x0040, 0x10, 61),
 PIN_FIELD_BASE(17017040x0040, 0x10, 71),
 PIN_FIELD_BASE(17117170x0080, 0x10, 171),
 PIN_FIELD_BASE(17217270x0080, 0x10, 181),
 PIN_FIELD_BASE(17317370x0080, 0x10, 111),
 PIN_FIELD_BASE(17417470x0080, 0x10, 121),
 PIN_FIELD_BASE(17517570x0080, 0x10, 131),
 PIN_FIELD_BASE(17617670x0080, 0x10, 141),
 PIN_FIELD_BASE(17717770x0080, 0x10, 151),
 PINS_FIELD_BASE(17817970x0080, 0x10, 161),
};

static const struct mtk_pin_field_calc mt6765_pin_tdsel_range[] = {
 PINS_FIELD_BASE(0320x00c0, 0x10, 164),
 PINS_FIELD_BASE(4720x00c0, 0x10, 204),
 PIN_FIELD_BASE(8830x0090, 0x10, 124),
 PINS_FIELD_BASE(91120x00c0, 0x10, 244),
 PIN_FIELD_BASE(121250x0080, 0x10, 44),
 PINS_FIELD_BASE(131660x00e0, 0x10, 84),
 PINS_FIELD_BASE(172060x00e0, 0x10, 04),
 PINS_FIELD_BASE(212460x00e0, 0x10, 44),
 PINS_FIELD_BASE(252860x00d0, 0x10, 284),
 PIN_FIELD_BASE(292960x00d0, 0x10, 04),
 PIN_FIELD_BASE(303060x00d0, 0x10, 44),
 PINS_FIELD_BASE(313460x00d0, 0x10, 84),
 PINS_FIELD_BASE(353660x00d0, 0x10, 204),
 PIN_FIELD_BASE(373760x00d0, 0x10, 244),
 PIN_FIELD_BASE(383860x00d0, 0x10, 164),
 PINS_FIELD_BASE(394060x00d0, 0x10, 124),
 PINS_FIELD_BASE(414270x00d0, 0x10, 244),
 PIN_FIELD_BASE(434370x00d0, 0x10, 124),
 PIN_FIELD_BASE(444470x00d0, 0x10, 164),
 PIN_FIELD_BASE(454570x00e0, 0x10, 04),
 PINS_FIELD_BASE(464770x00d0, 0x10, 284),
 PINS_FIELD_BASE(484970x00e0, 0x10, 284),
 PINS_FIELD_BASE(505170x00e0, 0x10, 244),
 PINS_FIELD_BASE(525770x00d0, 0x10, 04),
 PINS_FIELD_BASE(586070x00e0, 0x10, 164),
 PINS_FIELD_BASE(616230x0090, 0x10, 204),
 PINS_FIELD_BASE(636430x0090, 0x10, 164),
 PINS_FIELD_BASE(656630x0090, 0x10, 284),
 PINS_FIELD_BASE(676830x0090, 0x10, 244),
 PINS_FIELD_BASE(697330x0090, 0x10, 44),
 PINS_FIELD_BASE(747830x0090, 0x10, 84),
 PINS_FIELD_BASE(798030x0090, 0x10, 04),
 PIN_FIELD_BASE(818130x00a0, 0x10, 84),
 PINS_FIELD_BASE(828330x00a0, 0x10, 44),
 PIN_FIELD_BASE(848430x00a0, 0x10, 84),
 PIN_FIELD_BASE(858570x00e0, 0x10, 164),
 PIN_FIELD_BASE(868670x00e0, 0x10, 204),
 PIN_FIELD_BASE(878770x00d0, 0x10, 84),
 PIN_FIELD_BASE(888870x00d0, 0x10, 44),
 PIN_FIELD_BASE(898920x00d0, 0x10, 124),
 PIN_FIELD_BASE(909030x00a0, 0x10, 04),
 PINS_FIELD_BASE(919220x00d0, 0x10, 04),
 PINS_FIELD_BASE(939420x00c0, 0x10, 284),
 PINS_FIELD_BASE(959620x00d0, 0x10, 164),
 PINS_FIELD_BASE(979820x00c0, 0x10, 84),
 PIN_FIELD_BASE(999920x00c0, 0x10, 04),
 PIN_FIELD_BASE(10010020x00c0, 0x10, 44),
 PINS_FIELD_BASE(10110220x00c0, 0x10, 124),
 PINS_FIELD_BASE(10310420x00d0, 0x10, 44),
 PINS_FIELD_BASE(10510620x00d0, 0x10, 84),
 PIN_FIELD_BASE(10710710x0090, 0x10, 164),
 PIN_FIELD_BASE(10810810x0090, 0x10, 124),
 PIN_FIELD_BASE(10910910x0090, 0x10, 204),
 PIN_FIELD_BASE(11011010x0090, 0x10, 04),
 PIN_FIELD_BASE(11111110x0090, 0x10, 44),
 PIN_FIELD_BASE(11211210x0090, 0x10, 84),
 PIN_FIELD_BASE(11311310x00a0, 0x10, 44),
 PIN_FIELD_BASE(11411410x00a0, 0x10, 84),
 PIN_FIELD_BASE(11511510x0090, 0x10, 244),
 PIN_FIELD_BASE(11611610x0090, 0x10, 284),
 PIN_FIELD_BASE(11711710x00a0, 0x10, 164),
 PIN_FIELD_BASE(11811810x00a0, 0x10, 204),
 PIN_FIELD_BASE(11911910x00a0, 0x10, 244),
 PIN_FIELD_BASE(12012010x00a0, 0x10, 124),
 PIN_FIELD_BASE(12112110x00a0, 0x10, 04),
 PIN_FIELD_BASE(12212240x0090, 0x10, 84),
 PIN_FIELD_BASE(12312340x0090, 0x10, 124),
 PIN_FIELD_BASE(12412440x0090, 0x10, 44),
 PINS_FIELD_BASE(12513040x0090, 0x10, 124),
 PIN_FIELD_BASE(13113140x0090, 0x10, 164),
 PIN_FIELD_BASE(13213240x0090, 0x10, 124),
 PIN_FIELD_BASE(13313340x0090, 0x10, 204),
 PIN_FIELD_BASE(13413450x0080, 0x10, 124),
 PIN_FIELD_BASE(13513550x0080, 0x10, 204),
 PIN_FIELD_BASE(13613650x0070, 0x10, 44),
 PIN_FIELD_BASE(13713750x0070, 0x10, 284),
 PIN_FIELD_BASE(13813850x0070, 0x10, 164),
 PIN_FIELD_BASE(13913950x0070, 0x10, 204),
 PIN_FIELD_BASE(14014050x0070, 0x10, 04),
 PIN_FIELD_BASE(14114150x0070, 0x10, 244),
 PIN_FIELD_BASE(14214250x0070, 0x10, 84),
 PIN_FIELD_BASE(14314350x0070, 0x10, 124),
 PINS_FIELD_BASE(14414750x0080, 0x10, 84),
 PINS_FIELD_BASE(14814950x0080, 0x10, 164),
 PINS_FIELD_BASE(15015170x00e0, 0x10, 44),
 PINS_FIELD_BASE(15215370x00e0, 0x10, 84),
 PIN_FIELD_BASE(15415470x00e0, 0x10, 124),
 PINS_FIELD_BASE(15515830x00a0, 0x10, 124),
 PIN_FIELD_BASE(15915970x00e0, 0x10, 124),
 PIN_FIELD_BASE(16016050x0080, 0x10, 04),
 PINS_FIELD_BASE(16116210x00a0, 0x10, 284),
 PINS_FIELD_BASE(16317040x0090, 0x10, 04),
 PINS_FIELD_BASE(17117970x00d0, 0x10, 204),
};

static const struct mtk_pin_field_calc mt6765_pin_rdsel_range[] = {
 PINS_FIELD_BASE(0320x0090, 0x10, 82),
 PINS_FIELD_BASE(4720x0090, 0x10, 102),
 PIN_FIELD_BASE(8830x0060, 0x10, 62),
 PINS_FIELD_BASE(91120x0090, 0x10, 122),
 PIN_FIELD_BASE(121250x0050, 0x10, 182),
 PINS_FIELD_BASE(131660x00a0, 0x10, 182),
 PINS_FIELD_BASE(172060x00a0, 0x10, 142),
 PINS_FIELD_BASE(212460x00a0, 0x10, 162),
 PINS_FIELD_BASE(252860x00a0, 0x10, 122),
 PIN_FIELD_BASE(292960x0090, 0x10, 06),
 PIN_FIELD_BASE(303060x0090, 0x10, 66),
 PINS_FIELD_BASE(313460x0090, 0x10, 126),
 PINS_FIELD_BASE(353660x00a0, 0x10, 06),
 PIN_FIELD_BASE(373760x00a0, 0x10, 66),
 PIN_FIELD_BASE(383860x0090, 0x10, 246),
 PINS_FIELD_BASE(394060x0090, 0x10, 186),
 PINS_FIELD_BASE(414270x00a0, 0x10, 122),
 PIN_FIELD_BASE(434370x00a0, 0x10, 62),
 PIN_FIELD_BASE(444470x00a0, 0x10, 82),
 PIN_FIELD_BASE(454570x00a0, 0x10, 162),
 PINS_FIELD_BASE(464770x00a0, 0x10, 142),
 PINS_FIELD_BASE(484970x00a0, 0x10, 302),
 PINS_FIELD_BASE(505170x00a0, 0x10, 282),
 PINS_FIELD_BASE(525770x00a0, 0x10, 02),
 PINS_FIELD_BASE(586070x00a0, 0x10, 242),
 PINS_FIELD_BASE(616230x0060, 0x10, 102),
 PINS_FIELD_BASE(636430x0060, 0x10, 82),
 PINS_FIELD_BASE(656630x0060, 0x10, 142),
 PINS_FIELD_BASE(676830x0060, 0x10, 122),
 PINS_FIELD_BASE(697330x0060, 0x10, 22),
 PINS_FIELD_BASE(747830x0060, 0x10, 42),
 PINS_FIELD_BASE(798030x0060, 0x10, 02),
 PIN_FIELD_BASE(818130x0060, 0x10, 202),
 PINS_FIELD_BASE(828330x0060, 0x10, 182),
 PIN_FIELD_BASE(848430x0060, 0x10, 202),
 PIN_FIELD_BASE(858570x00a0, 0x10, 242),
 PIN_FIELD_BASE(868670x00a0, 0x10, 262),
 PIN_FIELD_BASE(878770x00a0, 0x10, 42),
 PIN_FIELD_BASE(888870x00a0, 0x10, 22),
 PIN_FIELD_BASE(898920x0090, 0x10, 222),
 PIN_FIELD_BASE(909030x0060, 0x10, 162),
 PINS_FIELD_BASE(919220x0090, 0x10, 162),
 PINS_FIELD_BASE(939420x0090, 0x10, 142),
 PINS_FIELD_BASE(959620x0090, 0x10, 242),
 PINS_FIELD_BASE(979820x0090, 0x10, 42),
 PIN_FIELD_BASE(999920x0090, 0x10, 02),
 PIN_FIELD_BASE(10010020x0090, 0x10, 22),
 PINS_FIELD_BASE(10110220x0090, 0x10, 62),
 PINS_FIELD_BASE(10310420x0090, 0x10, 182),
 PINS_FIELD_BASE(10510620x0090, 0x10, 202),
 PIN_FIELD_BASE(10710710x0060, 0x10, 82),
 PIN_FIELD_BASE(10810810x0060, 0x10, 62),
 PIN_FIELD_BASE(10910910x0060, 0x10, 102),
 PIN_FIELD_BASE(11011010x0060, 0x10, 02),
 PIN_FIELD_BASE(11111110x0060, 0x10, 22),
 PIN_FIELD_BASE(11211210x0060, 0x10, 42),
 PIN_FIELD_BASE(11311310x0060, 0x10, 182),
 PIN_FIELD_BASE(11411410x0060, 0x10, 202),
 PIN_FIELD_BASE(11511510x0060, 0x10, 122),
 PIN_FIELD_BASE(11611610x0060, 0x10, 142),
 PIN_FIELD_BASE(11711710x0060, 0x10, 242),
 PIN_FIELD_BASE(11811810x0060, 0x10, 262),
 PIN_FIELD_BASE(11911910x0060, 0x10, 282),
 PIN_FIELD_BASE(12012010x0060, 0x10, 222),
 PIN_FIELD_BASE(12112110x0060, 0x10, 162),
 PIN_FIELD_BASE(12212240x0070, 0x10, 86),
 PIN_FIELD_BASE(12312340x0070, 0x10, 146),
 PIN_FIELD_BASE(12412440x0070, 0x10, 26),
 PINS_FIELD_BASE(12513040x0070, 0x10, 146),
 PIN_FIELD_BASE(13113140x0070, 0x10, 206),
 PIN_FIELD_BASE(13213240x0070, 0x10, 146),
 PIN_FIELD_BASE(13313340x0070, 0x10, 266),
 PIN_FIELD_BASE(13413450x0050, 0x10, 222),
 PIN_FIELD_BASE(13513550x0050, 0x10, 302),
 PIN_FIELD_BASE(13613650x0050, 0x10, 22),
 PIN_FIELD_BASE(13713750x0050, 0x10, 142),
 PIN_FIELD_BASE(13813850x0050, 0x10, 82),
 PIN_FIELD_BASE(13913950x0050, 0x10, 102),
 PIN_FIELD_BASE(14014050x0050, 0x10, 02),
 PIN_FIELD_BASE(14114150x0050, 0x10, 122),
 PIN_FIELD_BASE(14214250x0050, 0x10, 42),
 PIN_FIELD_BASE(14314350x0050, 0x10, 62),
 PINS_FIELD_BASE(14414750x0050, 0x10, 202),
 PINS_FIELD_BASE(14814950x0050, 0x10, 242),
 PINS_FIELD_BASE(15015170x00a0, 0x10, 182),
 PINS_FIELD_BASE(15215370x00a0, 0x10, 202),
 PIN_FIELD_BASE(15415470x00a0, 0x10, 222),
 PINS_FIELD_BASE(15515830x0060, 0x10, 222),
 PIN_FIELD_BASE(15915970x00a0, 0x10, 222),
 PIN_FIELD_BASE(16016050x0050, 0x10, 162),
 PINS_FIELD_BASE(16116210x0060, 0x10, 302),
 PINS_FIELD_BASE(16317040x0070, 0x10, 02),
 PINS_FIELD_BASE(17117970x00a0, 0x10, 102),
};

static const struct mtk_pin_field_calc mt6765_pin_drv_range[] = {
 PINS_FIELD_BASE(0220x0000, 0x10, 123),
 PIN_FIELD_BASE(3320x0000, 0x10, 153),
 PINS_FIELD_BASE(4620x0000, 0x10, 183),
 PIN_FIELD_BASE(7720x0000, 0x10, 213),
 PIN_FIELD_BASE(8830x0000, 0x10, 93),
 PINS_FIELD_BASE(91120x0000, 0x10, 243),
 PIN_FIELD_BASE(121250x0000, 0x10, 273),
 PINS_FIELD_BASE(131560x0010, 0x10, 33),
 PIN_FIELD_BASE(161660x0010, 0x10, 63),
 PIN_FIELD_BASE(171760x0000, 0x10, 233),
 PIN_FIELD_BASE(181860x0000, 0x10, 263),
 PINS_FIELD_BASE(192060x0000, 0x10, 233),
 PINS_FIELD_BASE(212360x0000, 0x10, 293),
 PIN_FIELD_BASE(242460x0010, 0x10, 03),
 PINS_FIELD_BASE(252760x0000, 0x10, 173),
 PIN_FIELD_BASE(282860x0000, 0x10, 203),
 PIN_FIELD_BASE(292960x0000, 0x10, 03),
 PIN_FIELD_BASE(303060x0000, 0x10, 33),
 PINS_FIELD_BASE(313460x0000, 0x10, 63),
 PINS_FIELD_BASE(353660x0000, 0x10, 132),
 PIN_FIELD_BASE(373760x0000, 0x10, 152),
 PIN_FIELD_BASE(383860x0000, 0x10, 112),
 PINS_FIELD_BASE(394060x0000, 0x10, 92),
 PINS_FIELD_BASE(414270x0000, 0x10, 213),
 PIN_FIELD_BASE(434370x0000, 0x10, 93),
 PIN_FIELD_BASE(444470x0000, 0x10, 123),
 PIN_FIELD_BASE(454570x0000, 0x10, 273),
 PINS_FIELD_BASE(464770x0000, 0x10, 243),
 PINS_FIELD_BASE(484970x0010, 0x10, 183),
 PINS_FIELD_BASE(505170x0010, 0x10, 153),
 PINS_FIELD_BASE(525770x0000, 0x10, 03),
 PINS_FIELD_BASE(586070x0010, 0x10, 93),
 PINS_FIELD_BASE(616230x0000, 0x10, 153),
 PINS_FIELD_BASE(636430x0000, 0x10, 123),
 PINS_FIELD_BASE(656630x0000, 0x10, 213),
 PINS_FIELD_BASE(676830x0000, 0x10, 183),
 PINS_FIELD_BASE(697330x0000, 0x10, 33),
 PINS_FIELD_BASE(747830x0000, 0x10, 63),
 PINS_FIELD_BASE(798030x0000, 0x10, 03),
 PIN_FIELD_BASE(818130x0010, 0x10, 03),
 PINS_FIELD_BASE(828330x0000, 0x10, 273),
 PIN_FIELD_BASE(848430x0010, 0x10, 03),
 PIN_FIELD_BASE(858570x0010, 0x10, 93),
 PIN_FIELD_BASE(868670x0010, 0x10, 123),
 PIN_FIELD_BASE(878770x0000, 0x10, 63),
 PIN_FIELD_BASE(888870x0000, 0x10, 33),
 PIN_FIELD_BASE(898920x0010, 0x10, 153),
 PIN_FIELD_BASE(909030x0000, 0x10, 243),
 PIN_FIELD_BASE(919120x0010, 0x10, 63),
 PIN_FIELD_BASE(929220x0010, 0x10, 33),
 PIN_FIELD_BASE(939320x0000, 0x10, 273),
 PIN_FIELD_BASE(949420x0010, 0x10, 03),
 PINS_FIELD_BASE(959620x0010, 0x10, 183),
 PINS_FIELD_BASE(979820x0000, 0x10, 63),
 PIN_FIELD_BASE(999920x0000, 0x10, 03),
 PIN_FIELD_BASE(10010020x0000, 0x10, 33),
 PINS_FIELD_BASE(10110220x0000, 0x10, 93),
 PINS_FIELD_BASE(10310420x0010, 0x10, 93),
 PINS_FIELD_BASE(10510620x0010, 0x10, 123),
 PIN_FIELD_BASE(10710710x0000, 0x10, 123),
 PIN_FIELD_BASE(10810810x0000, 0x10, 93),
 PIN_FIELD_BASE(10910910x0000, 0x10, 153),
 PIN_FIELD_BASE(11011010x0000, 0x10, 03),
 PIN_FIELD_BASE(11111110x0000, 0x10, 33),
 PIN_FIELD_BASE(11211210x0000, 0x10, 63),
 PIN_FIELD_BASE(11311310x0000, 0x10, 273),
 PIN_FIELD_BASE(11411410x0010, 0x10, 03),
 PIN_FIELD_BASE(11511510x0000, 0x10, 183),
 PIN_FIELD_BASE(11611610x0000, 0x10, 213),
 PIN_FIELD_BASE(11711710x0010, 0x10, 63),
 PIN_FIELD_BASE(11811810x0010, 0x10, 93),
 PIN_FIELD_BASE(11911910x0010, 0x10, 123),
 PIN_FIELD_BASE(12012010x0010, 0x10, 33),
 PIN_FIELD_BASE(12112110x0000, 0x10, 243),
 PIN_FIELD_BASE(12212240x0000, 0x10, 93),
 PIN_FIELD_BASE(12312340x0000, 0x10, 123),
 PIN_FIELD_BASE(12412440x0000, 0x10, 63),
 PINS_FIELD_BASE(12513040x0000, 0x10, 123),
 PIN_FIELD_BASE(13113140x0000, 0x10, 153),
 PIN_FIELD_BASE(13213240x0000, 0x10, 123),
 PIN_FIELD_BASE(13313340x0000, 0x10, 183),
 PIN_FIELD_BASE(13413450x0010, 0x10, 63),
 PIN_FIELD_BASE(13513550x0010, 0x10, 123),
 PIN_FIELD_BASE(13613650x0000, 0x10, 33),
 PIN_FIELD_BASE(13713750x0000, 0x10, 213),
 PIN_FIELD_BASE(13813850x0000, 0x10, 123),
 PIN_FIELD_BASE(13913950x0000, 0x10, 153),
 PIN_FIELD_BASE(14014050x0000, 0x10, 03),
 PIN_FIELD_BASE(14114150x0000, 0x10, 183),
 PIN_FIELD_BASE(14214250x0000, 0x10, 63),
 PIN_FIELD_BASE(14314350x0000, 0x10, 93),
 PINS_FIELD_BASE(14414650x0010, 0x10, 03),
 PIN_FIELD_BASE(14714750x0010, 0x10, 33),
 PINS_FIELD_BASE(14814950x0010, 0x10, 93),
 PINS_FIELD_BASE(15015170x0010, 0x10, 03),
 PINS_FIELD_BASE(15215370x0010, 0x10, 33),
 PIN_FIELD_BASE(15415470x0010, 0x10, 63),
 PINS_FIELD_BASE(15515730x0010, 0x10, 33),
 PIN_FIELD_BASE(15815830x0010, 0x10, 63),
 PIN_FIELD_BASE(15915970x0010, 0x10, 63),
 PIN_FIELD_BASE(16016050x0000, 0x10, 243),
 PINS_FIELD_BASE(16116210x0010, 0x10, 153),
 PINS_FIELD_BASE(16316640x0000, 0x10, 03),
 PINS_FIELD_BASE(16717040x0000, 0x10, 33),
 PINS_FIELD_BASE(17117470x0000, 0x10, 183),
 PINS_FIELD_BASE(17517970x0000, 0x10, 153),
};

static const struct mtk_pin_field_calc mt6765_pin_pupd_range[] = {
 PINS_FIELD_BASE(02800x0050, 0x10, 181),
 PIN_FIELD_BASE(292960x0050, 0x10, 01),
 PIN_FIELD_BASE(303060x0050, 0x10, 11),
 PIN_FIELD_BASE(313160x0050, 0x10, 51),
 PIN_FIELD_BASE(323260x0050, 0x10, 21),
 PIN_FIELD_BASE(333360x0050, 0x10, 41),
 PIN_FIELD_BASE(343460x0050, 0x10, 31),
 PIN_FIELD_BASE(353560x0050, 0x10, 101),
 PIN_FIELD_BASE(363660x0050, 0x10, 111),
 PIN_FIELD_BASE(373760x0050, 0x10, 91),
 PIN_FIELD_BASE(383860x0050, 0x10, 61),
 PIN_FIELD_BASE(393960x0050, 0x10, 81),
 PINS_FIELD_BASE(409060x0050, 0x10, 71),
 PIN_FIELD_BASE(919120x0050, 0x10, 31),
 PIN_FIELD_BASE(929220x0050, 0x10, 21),
 PIN_FIELD_BASE(939320x0050, 0x10, 01),
 PINS_FIELD_BASE(9412120x0050, 0x10, 11),
 PIN_FIELD_BASE(12212240x0030, 0x10, 11),
 PIN_FIELD_BASE(12312340x0030, 0x10, 21),
 PIN_FIELD_BASE(12412440x0030, 0x10, 01),
 PIN_FIELD_BASE(12512540x0030, 0x10, 41),
 PIN_FIELD_BASE(12612640x0030, 0x10, 61),
 PIN_FIELD_BASE(12712740x0030, 0x10, 81),
 PIN_FIELD_BASE(12812840x0030, 0x10, 31),
 PIN_FIELD_BASE(12912940x0030, 0x10, 71),
 PIN_FIELD_BASE(13013040x0030, 0x10, 91),
 PIN_FIELD_BASE(13113140x0030, 0x10, 101),
 PIN_FIELD_BASE(13213240x0030, 0x10, 51),
 PINS_FIELD_BASE(13317940x0030, 0x10, 111),
};

static const struct mtk_pin_field_calc mt6765_pin_r0_range[] = {
 PINS_FIELD_BASE(02840x0030, 0x10, 111),
 PIN_FIELD_BASE(292960x0070, 0x10, 01),
 PIN_FIELD_BASE(303060x0070, 0x10, 11),
 PIN_FIELD_BASE(313160x0070, 0x10, 51),
 PIN_FIELD_BASE(323260x0070, 0x10, 21),
 PIN_FIELD_BASE(333360x0070, 0x10, 41),
 PIN_FIELD_BASE(343460x0070, 0x10, 31),
 PIN_FIELD_BASE(353560x0070, 0x10, 101),
 PIN_FIELD_BASE(363660x0070, 0x10, 111),
 PIN_FIELD_BASE(373760x0070, 0x10, 91),
 PIN_FIELD_BASE(383860x0070, 0x10, 61),
 PIN_FIELD_BASE(393960x0070, 0x10, 81),
 PINS_FIELD_BASE(409060x0070, 0x10, 71),
 PIN_FIELD_BASE(919120x0070, 0x10, 31),
 PIN_FIELD_BASE(929220x0070, 0x10, 21),
 PIN_FIELD_BASE(939320x0070, 0x10, 01),
 PINS_FIELD_BASE(9412120x0070, 0x10, 11),
 PIN_FIELD_BASE(12212240x0050, 0x10, 11),
 PIN_FIELD_BASE(12312340x0050, 0x10, 21),
 PIN_FIELD_BASE(12412440x0050, 0x10, 01),
 PIN_FIELD_BASE(12512540x0050, 0x10, 41),
 PIN_FIELD_BASE(12612640x0050, 0x10, 61),
 PIN_FIELD_BASE(12712740x0050, 0x10, 81),
 PIN_FIELD_BASE(12812840x0050, 0x10, 31),
 PIN_FIELD_BASE(12912940x0050, 0x10, 71),
 PIN_FIELD_BASE(13013040x0050, 0x10, 91),
 PIN_FIELD_BASE(13113140x0050, 0x10, 101),
 PIN_FIELD_BASE(13213240x0050, 0x10, 51),
 PINS_FIELD_BASE(13317940x0050, 0x10, 111),
};

static const struct mtk_pin_field_calc mt6765_pin_r1_range[] = {
 PINS_FIELD_BASE(02840x0050, 0x10, 111),
 PIN_FIELD_BASE(292960x0080, 0x10, 01),
 PIN_FIELD_BASE(303060x0080, 0x10, 11),
 PIN_FIELD_BASE(313160x0080, 0x10, 51),
 PIN_FIELD_BASE(323260x0080, 0x10, 21),
 PIN_FIELD_BASE(333360x0080, 0x10, 41),
 PIN_FIELD_BASE(343460x0080, 0x10, 31),
 PIN_FIELD_BASE(353560x0080, 0x10, 101),
 PIN_FIELD_BASE(363660x0080, 0x10, 111),
 PIN_FIELD_BASE(373760x0080, 0x10, 91),
 PIN_FIELD_BASE(383860x0080, 0x10, 61),
 PIN_FIELD_BASE(393960x0080, 0x10, 81),
 PINS_FIELD_BASE(409060x0080, 0x10, 71),
 PIN_FIELD_BASE(919120x0080, 0x10, 31),
 PIN_FIELD_BASE(929220x0080, 0x10, 21),
 PIN_FIELD_BASE(939320x0080, 0x10, 01),
 PINS_FIELD_BASE(9412120x0080, 0x10, 11),
 PIN_FIELD_BASE(12212240x0060, 0x10, 11),
 PIN_FIELD_BASE(12312340x0060, 0x10, 21),
 PIN_FIELD_BASE(12412440x0060, 0x10, 01),
 PIN_FIELD_BASE(12512540x0060, 0x10, 41),
 PIN_FIELD_BASE(12612640x0060, 0x10, 61),
 PIN_FIELD_BASE(12712740x0060, 0x10, 81),
 PIN_FIELD_BASE(12812840x0060, 0x10, 31),
 PIN_FIELD_BASE(12912940x0060, 0x10, 71),
 PIN_FIELD_BASE(13013040x0060, 0x10, 91),
 PIN_FIELD_BASE(13113140x0060, 0x10, 101),
 PIN_FIELD_BASE(13213240x0060, 0x10, 51),
 PINS_FIELD_BASE(13317940x0060, 0x10, 111),
};

static const struct mtk_pin_field_calc mt6765_pin_ies_range[] = {
 PIN_FIELD_BASE(0020x0030, 0x10, 61),
 PIN_FIELD_BASE(1120x0030, 0x10, 71),
 PIN_FIELD_BASE(2220x0030, 0x10, 101),
 PIN_FIELD_BASE(3320x0030, 0x10, 111),
 PIN_FIELD_BASE(4420x0030, 0x10, 121),
 PIN_FIELD_BASE(5520x0030, 0x10, 131),
 PIN_FIELD_BASE(6620x0030, 0x10, 141),
 PIN_FIELD_BASE(7720x0030, 0x10, 151),
 PIN_FIELD_BASE(8830x0030, 0x10, 121),
 PIN_FIELD_BASE(9920x0030, 0x10, 161),
 PIN_FIELD_BASE(101020x0030, 0x10, 81),
 PIN_FIELD_BASE(111120x0030, 0x10, 91),
 PIN_FIELD_BASE(121250x0020, 0x10, 91),
 PIN_FIELD_BASE(131360x0020, 0x10, 261),
 PIN_FIELD_BASE(141460x0020, 0x10, 251),
 PIN_FIELD_BASE(151560x0020, 0x10, 271),
 PIN_FIELD_BASE(161660x0020, 0x10, 241),
 PIN_FIELD_BASE(171760x0020, 0x10, 191),
 PIN_FIELD_BASE(181860x0020, 0x10, 161),
 PIN_FIELD_BASE(191960x0020, 0x10, 181),
 PIN_FIELD_BASE(202060x0020, 0x10, 171),
 PIN_FIELD_BASE(212160x0020, 0x10, 221),
 PIN_FIELD_BASE(222260x0020, 0x10, 211),
 PIN_FIELD_BASE(232360x0020, 0x10, 231),
 PIN_FIELD_BASE(242460x0020, 0x10, 201),
 PIN_FIELD_BASE(252560x0020, 0x10, 141),
 PIN_FIELD_BASE(262660x0020, 0x10, 131),
 PIN_FIELD_BASE(272760x0020, 0x10, 151),
 PIN_FIELD_BASE(282860x0020, 0x10, 121),
 PIN_FIELD_BASE(292960x0020, 0x10, 01),
 PIN_FIELD_BASE(303060x0020, 0x10, 11),
 PIN_FIELD_BASE(313160x0020, 0x10, 51),
 PIN_FIELD_BASE(323260x0020, 0x10, 21),
 PIN_FIELD_BASE(333360x0020, 0x10, 41),
 PIN_FIELD_BASE(343460x0020, 0x10, 31),
 PIN_FIELD_BASE(353560x0020, 0x10, 101),
 PIN_FIELD_BASE(363660x0020, 0x10, 111),
 PIN_FIELD_BASE(373760x0020, 0x10, 91),
 PIN_FIELD_BASE(383860x0020, 0x10, 61),
 PIN_FIELD_BASE(393960x0020, 0x10, 81),
 PIN_FIELD_BASE(404060x0020, 0x10, 71),
 PIN_FIELD_BASE(414170x0040, 0x10, 191),
 PIN_FIELD_BASE(424270x0040, 0x10, 91),
 PIN_FIELD_BASE(434370x0040, 0x10, 81),
 PIN_FIELD_BASE(444470x0040, 0x10, 101),
 PIN_FIELD_BASE(454570x0040, 0x10, 221),
 PIN_FIELD_BASE(464670x0040, 0x10, 211),
 PIN_FIELD_BASE(474770x0040, 0x10, 201),
 PIN_FIELD_BASE(484870x0050, 0x10, 31),
 PIN_FIELD_BASE(494970x0050, 0x10, 51),
 PIN_FIELD_BASE(505070x0050, 0x10, 21),
 PIN_FIELD_BASE(515170x0050, 0x10, 41),
 PIN_FIELD_BASE(525270x0040, 0x10, 11),
 PIN_FIELD_BASE(535370x0040, 0x10, 01),
 PIN_FIELD_BASE(545470x0040, 0x10, 51),
 PIN_FIELD_BASE(555570x0040, 0x10, 31),
 PIN_FIELD_BASE(565670x0040, 0x10, 41),
 PIN_FIELD_BASE(575770x0040, 0x10, 21),
 PIN_FIELD_BASE(585870x0050, 0x10, 01),
 PIN_FIELD_BASE(595970x0040, 0x10, 311),
 PIN_FIELD_BASE(606070x0040, 0x10, 301),
 PIN_FIELD_BASE(616130x0030, 0x10, 181),
 PIN_FIELD_BASE(626230x0030, 0x10, 141),
 PIN_FIELD_BASE(636330x0030, 0x10, 171),
 PIN_FIELD_BASE(646430x0030, 0x10, 131),
 PIN_FIELD_BASE(656530x0030, 0x10, 201),
 PIN_FIELD_BASE(666630x0030, 0x10, 161),
 PIN_FIELD_BASE(676730x0030, 0x10, 191),
 PIN_FIELD_BASE(686830x0030, 0x10, 151),
 PIN_FIELD_BASE(696930x0030, 0x10, 81),
 PIN_FIELD_BASE(707030x0030, 0x10, 71),
 PIN_FIELD_BASE(717130x0030, 0x10, 61),
 PIN_FIELD_BASE(727230x0030, 0x10, 51),
 PIN_FIELD_BASE(737330x0030, 0x10, 41),
 PIN_FIELD_BASE(747430x0030, 0x10, 31),
 PIN_FIELD_BASE(757530x0030, 0x10, 21),
 PIN_FIELD_BASE(767630x0030, 0x10, 11),
 PIN_FIELD_BASE(777730x0030, 0x10, 01),
 PIN_FIELD_BASE(787830x0030, 0x10, 91),
 PIN_FIELD_BASE(797930x0030, 0x10, 111),
 PIN_FIELD_BASE(808030x0030, 0x10, 101),
 PIN_FIELD_BASE(818130x0030, 0x10, 251),
 PIN_FIELD_BASE(828230x0030, 0x10, 241),
 PIN_FIELD_BASE(838330x0030, 0x10, 221),
 PIN_FIELD_BASE(848430x0030, 0x10, 231),
 PIN_FIELD_BASE(858570x0050, 0x10, 11),
 PIN_FIELD_BASE(868670x0040, 0x10, 291),
 PIN_FIELD_BASE(878770x0040, 0x10, 71),
 PIN_FIELD_BASE(888870x0040, 0x10, 61),
 PIN_FIELD_BASE(898920x0030, 0x10, 251),
 PIN_FIELD_BASE(909030x0030, 0x10, 211),
 PIN_FIELD_BASE(919120x0030, 0x10, 201),
 PIN_FIELD_BASE(929220x0030, 0x10, 191),
 PIN_FIELD_BASE(939320x0030, 0x10, 171),
 PIN_FIELD_BASE(949420x0030, 0x10, 181),
 PIN_FIELD_BASE(959520x0030, 0x10, 261),
 PIN_FIELD_BASE(969620x0030, 0x10, 271),
 PIN_FIELD_BASE(979720x0030, 0x10, 21),
 PIN_FIELD_BASE(989820x0030, 0x10, 31),
 PIN_FIELD_BASE(999920x0030, 0x10, 01),
 PIN_FIELD_BASE(10010020x0030, 0x10, 11),
 PIN_FIELD_BASE(10110120x0030, 0x10, 41),
 PIN_FIELD_BASE(10210220x0030, 0x10, 51),
 PIN_FIELD_BASE(10310320x0030, 0x10, 211),
 PIN_FIELD_BASE(10410420x0030, 0x10, 231),
 PIN_FIELD_BASE(10510520x0030, 0x10, 221),
 PIN_FIELD_BASE(10610620x0030, 0x10, 241),
 PIN_FIELD_BASE(10710710x0030, 0x10, 41),
 PIN_FIELD_BASE(10810810x0030, 0x10, 31),
 PIN_FIELD_BASE(10910910x0030, 0x10, 51),
 PIN_FIELD_BASE(11011010x0030, 0x10, 01),
 PIN_FIELD_BASE(11111110x0030, 0x10, 11),
 PIN_FIELD_BASE(11211210x0030, 0x10, 21),
 PIN_FIELD_BASE(11311310x0030, 0x10, 91),
 PIN_FIELD_BASE(11411410x0030, 0x10, 101),
 PIN_FIELD_BASE(11511510x0030, 0x10, 61),
 PIN_FIELD_BASE(11611610x0030, 0x10, 71),
 PIN_FIELD_BASE(11711710x0030, 0x10, 121),
 PIN_FIELD_BASE(11811810x0030, 0x10, 131),
 PIN_FIELD_BASE(11911910x0030, 0x10, 141),
 PIN_FIELD_BASE(12012010x0030, 0x10, 111),
 PIN_FIELD_BASE(12112110x0030, 0x10, 81),
 PIN_FIELD_BASE(12212240x0010, 0x10, 91),
 PIN_FIELD_BASE(12312340x0010, 0x10, 101),
 PIN_FIELD_BASE(12412440x0010, 0x10, 81),
 PIN_FIELD_BASE(12512540x0010, 0x10, 121),
 PIN_FIELD_BASE(12612640x0010, 0x10, 141),
 PIN_FIELD_BASE(12712740x0010, 0x10, 161),
 PIN_FIELD_BASE(12812840x0010, 0x10, 111),
 PIN_FIELD_BASE(12912940x0010, 0x10, 151),
 PIN_FIELD_BASE(13013040x0010, 0x10, 171),
 PIN_FIELD_BASE(13113140x0010, 0x10, 181),
 PIN_FIELD_BASE(13213240x0010, 0x10, 131),
 PIN_FIELD_BASE(13313340x0010, 0x10, 191),
 PIN_FIELD_BASE(13413450x0020, 0x10, 141),
 PIN_FIELD_BASE(13513550x0020, 0x10, 171),
 PIN_FIELD_BASE(13613650x0020, 0x10, 11),
 PIN_FIELD_BASE(13713750x0020, 0x10, 71),
 PIN_FIELD_BASE(13813850x0020, 0x10, 41),
 PIN_FIELD_BASE(13913950x0020, 0x10, 51),
 PIN_FIELD_BASE(14014050x0020, 0x10, 01),
 PIN_FIELD_BASE(14114150x0020, 0x10, 61),
 PIN_FIELD_BASE(14214250x0020, 0x10, 21),
 PIN_FIELD_BASE(14314350x0020, 0x10, 31),
 PIN_FIELD_BASE(14414450x0020, 0x10, 121),
 PIN_FIELD_BASE(14514550x0020, 0x10, 111),
 PIN_FIELD_BASE(14614650x0020, 0x10, 131),
 PIN_FIELD_BASE(14714750x0020, 0x10, 101),
 PIN_FIELD_BASE(14814850x0020, 0x10, 151),
 PIN_FIELD_BASE(14914950x0020, 0x10, 161),
 PIN_FIELD_BASE(15015070x0040, 0x10, 231),
 PIN_FIELD_BASE(15115170x0040, 0x10, 241),
 PIN_FIELD_BASE(15215270x0040, 0x10, 251),
 PIN_FIELD_BASE(15315370x0040, 0x10, 261),
 PIN_FIELD_BASE(15415470x0040, 0x10, 281),
 PIN_FIELD_BASE(15515530x0030, 0x10, 281),
 PIN_FIELD_BASE(15615630x0030, 0x10, 271),
 PIN_FIELD_BASE(15715730x0030, 0x10, 291),
 PIN_FIELD_BASE(15815830x0030, 0x10, 261),
 PIN_FIELD_BASE(15915970x0040, 0x10, 271),
 PIN_FIELD_BASE(16016050x0020, 0x10, 81),
 PIN_FIELD_BASE(16116110x0030, 0x10, 151),
 PIN_FIELD_BASE(16216210x0030, 0x10, 161),
 PIN_FIELD_BASE(16316340x0010, 0x10, 01),
 PIN_FIELD_BASE(16416440x0010, 0x10, 11),
 PIN_FIELD_BASE(16516540x0010, 0x10, 21),
 PIN_FIELD_BASE(16616640x0010, 0x10, 31),
 PIN_FIELD_BASE(16716740x0010, 0x10, 41),
 PIN_FIELD_BASE(16816840x0010, 0x10, 51),
 PIN_FIELD_BASE(16916940x0010, 0x10, 61),
 PIN_FIELD_BASE(17017040x0010, 0x10, 71),
 PIN_FIELD_BASE(17117170x0040, 0x10, 171),
 PIN_FIELD_BASE(17217270x0040, 0x10, 181),
 PIN_FIELD_BASE(17317370x0040, 0x10, 111),
 PIN_FIELD_BASE(17417470x0040, 0x10, 121),
 PIN_FIELD_BASE(17517570x0040, 0x10, 131),
 PIN_FIELD_BASE(17617670x0040, 0x10, 141),
 PIN_FIELD_BASE(17717770x0040, 0x10, 151),
 PINS_FIELD_BASE(17817970x0040, 0x10, 161),
};

static const struct mtk_pin_reg_calc mt6765_reg_cals[PINCTRL_PIN_REG_MAX] = {
 [PINCTRL_PIN_REG_MODE] = MTK_RANGE(mt6765_pin_mode_range),
 [PINCTRL_PIN_REG_DIR] = MTK_RANGE(mt6765_pin_dir_range),
 [PINCTRL_PIN_REG_DI] = MTK_RANGE(mt6765_pin_di_range),
 [PINCTRL_PIN_REG_DO] = MTK_RANGE(mt6765_pin_do_range),
 [PINCTRL_PIN_REG_SMT] = MTK_RANGE(mt6765_pin_smt_range),
 [PINCTRL_PIN_REG_PD] = MTK_RANGE(mt6765_pin_pd_range),
 [PINCTRL_PIN_REG_PU] = MTK_RANGE(mt6765_pin_pu_range),
 [PINCTRL_PIN_REG_TDSEL] = MTK_RANGE(mt6765_pin_tdsel_range),
 [PINCTRL_PIN_REG_RDSEL] = MTK_RANGE(mt6765_pin_rdsel_range),
 [PINCTRL_PIN_REG_DRV] = MTK_RANGE(mt6765_pin_drv_range),
 [PINCTRL_PIN_REG_PUPD] = MTK_RANGE(mt6765_pin_pupd_range),
 [PINCTRL_PIN_REG_R0] = MTK_RANGE(mt6765_pin_r0_range),
 [PINCTRL_PIN_REG_R1] = MTK_RANGE(mt6765_pin_r1_range),
 [PINCTRL_PIN_REG_IES] = MTK_RANGE(mt6765_pin_ies_range),
};

static const char * const mt6765_pinctrl_register_base_names[] = {
 "iocfg0""iocfg1""iocfg2""iocfg3""iocfg4""iocfg5",
 "iocfg6""iocfg7",
};

static const struct mtk_eint_hw mt6765_eint_hw = {
 .port_mask = 7,
 .ports     = 6,
 .ap_num    = 160,
 .db_cnt    = 13,
 .db_time   = debounce_time_mt6765,
};

static const struct mtk_pin_soc mt6765_data = {
 .reg_cal = mt6765_reg_cals,
 .pins = mtk_pins_mt6765,
 .npins = ARRAY_SIZE(mtk_pins_mt6765),
 .ngrps = ARRAY_SIZE(mtk_pins_mt6765),
 .eint_hw = &mt6765_eint_hw,
 .gpio_m = 0,
 .base_names = mt6765_pinctrl_register_base_names,
 .nbase_names = ARRAY_SIZE(mt6765_pinctrl_register_base_names),
 .bias_set_combo = mtk_pinconf_bias_set_combo,
 .bias_get_combo = mtk_pinconf_bias_get_combo,
 .drive_set = mtk_pinconf_drive_set_raw,
 .drive_get = mtk_pinconf_drive_get_raw,
 .adv_pull_get = mtk_pinconf_adv_pull_get,
 .adv_pull_set = mtk_pinconf_adv_pull_set,
};

static const struct of_device_id mt6765_pinctrl_of_match[] = {
 { .compatible = "mediatek,mt6765-pinctrl", .data = &mt6765_data },
 { }
};
MODULE_DEVICE_TABLE(of, mt6765_pinctrl_of_match);

static struct platform_driver mt6765_pinctrl_driver = {
 .driver = {
  .name = "mt6765-pinctrl",
  .of_match_table = mt6765_pinctrl_of_match,
 },
 .probe = mtk_paris_pinctrl_probe,
};

static int __init mt6765_pinctrl_init(void)
{
 return platform_driver_register(&mt6765_pinctrl_driver);
}
arch_initcall(mt6765_pinctrl_init);

MODULE_LICENSE("GPL v2");
MODULE_DESCRIPTION("MediaTek MT6765 Pinctrl Driver");

Messung V0.5 in Prozent
C=99 H=100 G=99

¤ Dauer der Verarbeitung: 0.24 Sekunden  (vorverarbeitet am  2026-06-08) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.