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 18 kB image not shown  

Quelle  pinctrl-mt2712.c

  Sprache: C
 

// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright (c) 2018 MediaTek Inc.
 * Author: Zhiyong Tao <zhiyong.tao@mediatek.com>
 *
 */


#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/of.h>
#include <linux/pinctrl/pinctrl.h>
#include <linux/regmap.h>
#include <linux/pinctrl/pinconf-generic.h>
#include <dt-bindings/pinctrl/mt65xx.h>

#include "pinctrl-mtk-common.h"
#include "pinctrl-mtk-mt2712.h"

static const struct mtk_pin_spec_pupd_set_samereg mt2712_spec_pupd[] = {
 MTK_PIN_PUPD_SPEC_SR(180xe50, 210),
 MTK_PIN_PUPD_SPEC_SR(190xe60, 121110),
 MTK_PIN_PUPD_SPEC_SR(200xe50, 543),
 MTK_PIN_PUPD_SPEC_SR(210xe60, 151413),
 MTK_PIN_PUPD_SPEC_SR(220xe50, 876),
 MTK_PIN_PUPD_SPEC_SR(230xe70, 210),

 MTK_PIN_PUPD_SPEC_SR(300xf30, 210),
 MTK_PIN_PUPD_SPEC_SR(310xf30, 654),
 MTK_PIN_PUPD_SPEC_SR(320xf30, 1098),
 MTK_PIN_PUPD_SPEC_SR(330xf30, 141312),
 MTK_PIN_PUPD_SPEC_SR(340xf40, 210),
 MTK_PIN_PUPD_SPEC_SR(350xf40, 654),
 MTK_PIN_PUPD_SPEC_SR(360xf40, 1098),
 MTK_PIN_PUPD_SPEC_SR(370xc40, 210),
 MTK_PIN_PUPD_SPEC_SR(380xc60, 210),
 MTK_PIN_PUPD_SPEC_SR(390xc60, 210),
 MTK_PIN_PUPD_SPEC_SR(400xc60, 210),
 MTK_PIN_PUPD_SPEC_SR(410xc60, 210),
 MTK_PIN_PUPD_SPEC_SR(420xc60, 210),
 MTK_PIN_PUPD_SPEC_SR(430xc60, 210),
 MTK_PIN_PUPD_SPEC_SR(440xc60, 210),
 MTK_PIN_PUPD_SPEC_SR(450xc60, 210),
 MTK_PIN_PUPD_SPEC_SR(460xc50, 210),
 MTK_PIN_PUPD_SPEC_SR(470xda0, 210),
 MTK_PIN_PUPD_SPEC_SR(480xd90, 210),
 MTK_PIN_PUPD_SPEC_SR(490xdf0, 141312),
 MTK_PIN_PUPD_SPEC_SR(500xdf0, 1098),
 MTK_PIN_PUPD_SPEC_SR(510xdf0, 654),
 MTK_PIN_PUPD_SPEC_SR(520xdf0, 210),
 MTK_PIN_PUPD_SPEC_SR(530xd50, 210),
 MTK_PIN_PUPD_SPEC_SR(540xd80, 210),
 MTK_PIN_PUPD_SPEC_SR(550xe00, 210),
 MTK_PIN_PUPD_SPEC_SR(560xd40, 210),

 MTK_PIN_PUPD_SPEC_SR(630xc80, 210),
 MTK_PIN_PUPD_SPEC_SR(640xdb0, 141312),
 MTK_PIN_PUPD_SPEC_SR(650xdb0, 654),
 MTK_PIN_PUPD_SPEC_SR(660xdb0, 1098),
 MTK_PIN_PUPD_SPEC_SR(670xcd0, 210),
 MTK_PIN_PUPD_SPEC_SR(680xdb0, 210),
 MTK_PIN_PUPD_SPEC_SR(690xc90, 210),
 MTK_PIN_PUPD_SPEC_SR(700xcc0, 210),

 MTK_PIN_PUPD_SPEC_SR(890xce0, 210),
 MTK_PIN_PUPD_SPEC_SR(900xdd0, 141312),
 MTK_PIN_PUPD_SPEC_SR(910xdd0, 1098),
 MTK_PIN_PUPD_SPEC_SR(920xdd0, 654),
 MTK_PIN_PUPD_SPEC_SR(930xdd0, 210),
 MTK_PIN_PUPD_SPEC_SR(940xd20, 210),
 MTK_PIN_PUPD_SPEC_SR(950xcf0, 210),
 MTK_PIN_PUPD_SPEC_SR(960xd30, 210),

 MTK_PIN_PUPD_SPEC_SR(1350xe50, 11109),
 MTK_PIN_PUPD_SPEC_SR(1360xe50, 141312),
 MTK_PIN_PUPD_SPEC_SR(1370xe70, 543),
 MTK_PIN_PUPD_SPEC_SR(1380xe70, 876),
 MTK_PIN_PUPD_SPEC_SR(1390xe70, 11109),
 MTK_PIN_PUPD_SPEC_SR(1400xe70, 141312),
 MTK_PIN_PUPD_SPEC_SR(1410xe60, 210),
 MTK_PIN_PUPD_SPEC_SR(1420xe60, 543)
};

static const struct mtk_pin_ies_smt_set mt2712_smt_set[] = {
 MTK_PIN_IES_SMT_SPEC(030x900, 2),
 MTK_PIN_IES_SMT_SPEC(470x900, 0),
 MTK_PIN_IES_SMT_SPEC(8110x900, 1),
 MTK_PIN_IES_SMT_SPEC(12120x8d0, 6),
 MTK_PIN_IES_SMT_SPEC(13130x8d0, 7),
 MTK_PIN_IES_SMT_SPEC(14140x8d0, 6),
 MTK_PIN_IES_SMT_SPEC(15150x8d0, 7),
 MTK_PIN_IES_SMT_SPEC(18230x8d0, 1),
 MTK_PIN_IES_SMT_SPEC(24250x8d0, 2),
 MTK_PIN_IES_SMT_SPEC(26260x8d0, 3),
 MTK_PIN_IES_SMT_SPEC(27270x8d0, 4),
 MTK_PIN_IES_SMT_SPEC(28290x8d0, 3),
 MTK_PIN_IES_SMT_SPEC(30360xf50, 13),
 MTK_PIN_IES_SMT_SPEC(37370xc40, 13),
 MTK_PIN_IES_SMT_SPEC(38450xc60, 13),
 MTK_PIN_IES_SMT_SPEC(46460xc50, 13),
 MTK_PIN_IES_SMT_SPEC(47470xda0, 13),
 MTK_PIN_IES_SMT_SPEC(48480xd90, 13),
 MTK_PIN_IES_SMT_SPEC(49520xd60, 13),
 MTK_PIN_IES_SMT_SPEC(53530xd50, 13),
 MTK_PIN_IES_SMT_SPEC(54540xd80, 13),
 MTK_PIN_IES_SMT_SPEC(55550xe00, 13),
 MTK_PIN_IES_SMT_SPEC(56560xd40, 13),
 MTK_PIN_IES_SMT_SPEC(57620x900, 3),
 MTK_PIN_IES_SMT_SPEC(63630xc80, 13),
 MTK_PIN_IES_SMT_SPEC(64660xca0, 13),
 MTK_PIN_IES_SMT_SPEC(67670xc80, 13),
 MTK_PIN_IES_SMT_SPEC(68680xca0, 13),
 MTK_PIN_IES_SMT_SPEC(69690xc90, 13),
 MTK_PIN_IES_SMT_SPEC(70700xc80, 13),
 MTK_PIN_IES_SMT_SPEC(71740x8d0, 8),
 MTK_PIN_IES_SMT_SPEC(75770x8d0, 9),
 MTK_PIN_IES_SMT_SPEC(78810x8d0, 10),
 MTK_PIN_IES_SMT_SPEC(82880x8d0, 9),
 MTK_PIN_IES_SMT_SPEC(89890xce0, 13),
 MTK_PIN_IES_SMT_SPEC(90930xd00, 13),
 MTK_PIN_IES_SMT_SPEC(94940xce0, 13),
 MTK_PIN_IES_SMT_SPEC(95960xcf0, 13),
 MTK_PIN_IES_SMT_SPEC(971000x8d0, 11),
 MTK_PIN_IES_SMT_SPEC(1011040x8d0, 12),
 MTK_PIN_IES_SMT_SPEC(1051050x8d0, 13),
 MTK_PIN_IES_SMT_SPEC(1061060x8d0, 14),
 MTK_PIN_IES_SMT_SPEC(1071070x8d0, 15),
 MTK_PIN_IES_SMT_SPEC(1081080x8e0, 0),
 MTK_PIN_IES_SMT_SPEC(1091090x8e0, 1),
 MTK_PIN_IES_SMT_SPEC(1101100x8e0, 2),
 MTK_PIN_IES_SMT_SPEC(1111110x8d0, 13),
 MTK_PIN_IES_SMT_SPEC(1121120x8d0, 14),
 MTK_PIN_IES_SMT_SPEC(1131130x8d0, 15),
 MTK_PIN_IES_SMT_SPEC(1141140x8e0, 0),
 MTK_PIN_IES_SMT_SPEC(1151150x8e0, 1),
 MTK_PIN_IES_SMT_SPEC(1161160x8e0, 2),
 MTK_PIN_IES_SMT_SPEC(1171170x8e0, 3),
 MTK_PIN_IES_SMT_SPEC(1181180x8e0, 4),
 MTK_PIN_IES_SMT_SPEC(1191190x8e0, 5),
 MTK_PIN_IES_SMT_SPEC(1201200x8e0, 3),
 MTK_PIN_IES_SMT_SPEC(1211210x8e0, 4),
 MTK_PIN_IES_SMT_SPEC(1221220x8e0, 5),
 MTK_PIN_IES_SMT_SPEC(1231260x8e0, 6),
 MTK_PIN_IES_SMT_SPEC(1271300x8e0, 7),
 MTK_PIN_IES_SMT_SPEC(1311340x8e0, 8),
 MTK_PIN_IES_SMT_SPEC(1351420x8d0, 1),
 MTK_PIN_IES_SMT_SPEC(1431470x8e0, 9),
 MTK_PIN_IES_SMT_SPEC(1481520x8e0, 10),
 MTK_PIN_IES_SMT_SPEC(1531560x8e0, 11),
 MTK_PIN_IES_SMT_SPEC(1571600x8e0, 12),
 MTK_PIN_IES_SMT_SPEC(1611640x8e0, 13),
 MTK_PIN_IES_SMT_SPEC(1651680x8e0, 14),
 MTK_PIN_IES_SMT_SPEC(1691700x8e0, 15),
 MTK_PIN_IES_SMT_SPEC(1711720x8f0, 0),
 MTK_PIN_IES_SMT_SPEC(1731730x8f0, 1),
 MTK_PIN_IES_SMT_SPEC(1741750x8f0, 2),
 MTK_PIN_IES_SMT_SPEC(1761760x8f0, 1),
 MTK_PIN_IES_SMT_SPEC(1771770x8f0, 3),
 MTK_PIN_IES_SMT_SPEC(1781780x8f0, 4),
 MTK_PIN_IES_SMT_SPEC(1791790x8f0, 3),
 MTK_PIN_IES_SMT_SPEC(1801800x8f0, 4),
 MTK_PIN_IES_SMT_SPEC(1811810x8f0, 5),
 MTK_PIN_IES_SMT_SPEC(1821820x8f0, 6),
 MTK_PIN_IES_SMT_SPEC(1831830x8f0, 5),
 MTK_PIN_IES_SMT_SPEC(1841840x8f0, 6),
 MTK_PIN_IES_SMT_SPEC(1851860x8f0, 7),
 MTK_PIN_IES_SMT_SPEC(1871870x8f0, 8),
 MTK_PIN_IES_SMT_SPEC(1881880x8f0, 9),
 MTK_PIN_IES_SMT_SPEC(1891890x8f0, 8),
 MTK_PIN_IES_SMT_SPEC(1901900x8f0, 9),
 MTK_PIN_IES_SMT_SPEC(1911910x8f0, 10),
 MTK_PIN_IES_SMT_SPEC(1921920x8f0, 11),
 MTK_PIN_IES_SMT_SPEC(1931940x8f0, 10),
 MTK_PIN_IES_SMT_SPEC(1951950x8f0, 11),
 MTK_PIN_IES_SMT_SPEC(1961990x8f0, 12),
 MTK_PIN_IES_SMT_SPEC(2002030x8f0, 13),
 MTK_PIN_IES_SMT_SPEC(2042060x8f0, 14),
 MTK_PIN_IES_SMT_SPEC(2072090x8f0, 15)
};

static const struct mtk_pin_ies_smt_set mt2712_ies_set[] = {
 MTK_PIN_IES_SMT_SPEC(030x8c0, 2),
 MTK_PIN_IES_SMT_SPEC(470x8c0, 0),
 MTK_PIN_IES_SMT_SPEC(890x8c0, 1),
 MTK_PIN_IES_SMT_SPEC(10110x8c0, 4),
 MTK_PIN_IES_SMT_SPEC(12120x890, 6),
 MTK_PIN_IES_SMT_SPEC(13130x890, 7),
 MTK_PIN_IES_SMT_SPEC(14140x890, 6),
 MTK_PIN_IES_SMT_SPEC(15150x890, 7),
 MTK_PIN_IES_SMT_SPEC(18230x890, 1),
 MTK_PIN_IES_SMT_SPEC(24250x890, 2),
 MTK_PIN_IES_SMT_SPEC(26260x890, 3),
 MTK_PIN_IES_SMT_SPEC(27270x890, 4),
 MTK_PIN_IES_SMT_SPEC(28290x890, 3),
 MTK_PIN_IES_SMT_SPEC(30360xf50, 14),
 MTK_PIN_IES_SMT_SPEC(37370xc40, 14),
 MTK_PIN_IES_SMT_SPEC(38450xc60, 14),
 MTK_PIN_IES_SMT_SPEC(46460xc50, 14),
 MTK_PIN_IES_SMT_SPEC(47470xda0, 14),
 MTK_PIN_IES_SMT_SPEC(48480xd90, 14),
 MTK_PIN_IES_SMT_SPEC(49520xd60, 14),
 MTK_PIN_IES_SMT_SPEC(53530xd50, 14),
 MTK_PIN_IES_SMT_SPEC(54540xd80, 14),
 MTK_PIN_IES_SMT_SPEC(55550xe00, 14),
 MTK_PIN_IES_SMT_SPEC(56560xd40, 14),
 MTK_PIN_IES_SMT_SPEC(57620x8c0, 3),
 MTK_PIN_IES_SMT_SPEC(63630xc80, 14),
 MTK_PIN_IES_SMT_SPEC(64660xca0, 14),
 MTK_PIN_IES_SMT_SPEC(67680xc80, 14),
 MTK_PIN_IES_SMT_SPEC(69690xc90, 14),
 MTK_PIN_IES_SMT_SPEC(70700xc80, 14),
 MTK_PIN_IES_SMT_SPEC(71740x890, 8),
 MTK_PIN_IES_SMT_SPEC(75770x890, 9),
 MTK_PIN_IES_SMT_SPEC(78810x890, 10),
 MTK_PIN_IES_SMT_SPEC(82880x890, 9),
 MTK_PIN_IES_SMT_SPEC(89890xce0, 14),
 MTK_PIN_IES_SMT_SPEC(90930xd00, 14),
 MTK_PIN_IES_SMT_SPEC(94940xce0, 14),
 MTK_PIN_IES_SMT_SPEC(95960xcf0, 14),
 MTK_PIN_IES_SMT_SPEC(971000x890, 11),
 MTK_PIN_IES_SMT_SPEC(1011040x890, 12),
 MTK_PIN_IES_SMT_SPEC(1051050x890, 13),
 MTK_PIN_IES_SMT_SPEC(1061060x890, 14),
 MTK_PIN_IES_SMT_SPEC(1071070x890, 15),
 MTK_PIN_IES_SMT_SPEC(1081080x8a0, 0),
 MTK_PIN_IES_SMT_SPEC(1091090x8a0, 1),
 MTK_PIN_IES_SMT_SPEC(1101100x8a0, 2),
 MTK_PIN_IES_SMT_SPEC(1111110x890, 13),
 MTK_PIN_IES_SMT_SPEC(1121120x890, 14),
 MTK_PIN_IES_SMT_SPEC(1131130x890, 15),
 MTK_PIN_IES_SMT_SPEC(1141140x8a0, 0),
 MTK_PIN_IES_SMT_SPEC(1151150x8a0, 1),
 MTK_PIN_IES_SMT_SPEC(1161160x8a0, 2),
 MTK_PIN_IES_SMT_SPEC(1171170x8a0, 3),
 MTK_PIN_IES_SMT_SPEC(1181180x8a0, 4),
 MTK_PIN_IES_SMT_SPEC(1191190x8a0, 5),
 MTK_PIN_IES_SMT_SPEC(1201200x8a0, 3),
 MTK_PIN_IES_SMT_SPEC(1211210x8a0, 4),
 MTK_PIN_IES_SMT_SPEC(1221220x8a0, 5),
 MTK_PIN_IES_SMT_SPEC(1231260x8a0, 6),
 MTK_PIN_IES_SMT_SPEC(1271300x8a0, 7),
 MTK_PIN_IES_SMT_SPEC(1311350x8a0, 8),
 MTK_PIN_IES_SMT_SPEC(1361420x890, 1),
 MTK_PIN_IES_SMT_SPEC(1431470x8a0, 9),
 MTK_PIN_IES_SMT_SPEC(1481520x8a0, 10),
 MTK_PIN_IES_SMT_SPEC(1531560x8a0, 11),
 MTK_PIN_IES_SMT_SPEC(1571600x8a0, 12),
 MTK_PIN_IES_SMT_SPEC(1611640x8a0, 13),
 MTK_PIN_IES_SMT_SPEC(1651680x8a0, 14),
 MTK_PIN_IES_SMT_SPEC(1691700x8a0, 15),
 MTK_PIN_IES_SMT_SPEC(1711720x8b0, 0),
 MTK_PIN_IES_SMT_SPEC(1731730x8b0, 1),
 MTK_PIN_IES_SMT_SPEC(1741750x8b0, 2),
 MTK_PIN_IES_SMT_SPEC(1761760x8b0, 1),
 MTK_PIN_IES_SMT_SPEC(1771770x8b0, 3),
 MTK_PIN_IES_SMT_SPEC(1781780x8b0, 4),
 MTK_PIN_IES_SMT_SPEC(1791790x8b0, 3),
 MTK_PIN_IES_SMT_SPEC(1801800x8b0, 4),
 MTK_PIN_IES_SMT_SPEC(1811810x8b0, 5),
 MTK_PIN_IES_SMT_SPEC(1821820x8b0, 6),
 MTK_PIN_IES_SMT_SPEC(1831830x8b0, 5),
 MTK_PIN_IES_SMT_SPEC(1841840x8b0, 6),
 MTK_PIN_IES_SMT_SPEC(1851860x8b0, 7),
 MTK_PIN_IES_SMT_SPEC(1871870x8b0, 8),
 MTK_PIN_IES_SMT_SPEC(1881880x8b0, 9),
 MTK_PIN_IES_SMT_SPEC(1891890x8b0, 8),
 MTK_PIN_IES_SMT_SPEC(1901900x8b0, 9),
 MTK_PIN_IES_SMT_SPEC(1911910x8b0, 10),
 MTK_PIN_IES_SMT_SPEC(1921920x8b0, 11),
 MTK_PIN_IES_SMT_SPEC(1931940x8b0, 10),
 MTK_PIN_IES_SMT_SPEC(1951950x8b0, 11),
 MTK_PIN_IES_SMT_SPEC(1961990x8b0, 12),
 MTK_PIN_IES_SMT_SPEC(2002030x8b0, 13),
 MTK_PIN_IES_SMT_SPEC(2042060x8b0, 14),
 MTK_PIN_IES_SMT_SPEC(2072090x8b0, 15)
};

static const struct mtk_drv_group_desc mt2712_drv_grp[] =  {
 /* 0E4E8SR 4/8/12/16 */
 MTK_DRV_GRP(416124),
 /* 0E2E4SR  2/4/6/8 */
 MTK_DRV_GRP(28122),
 /* E8E4E2  2/4/6/8/10/12/14/16 */
 MTK_DRV_GRP(216022)
};

static const struct mtk_pin_drv_grp mt2712_pin_drv[] = {
 MTK_PIN_DRV_GRP(00xc10, 40),
 MTK_PIN_DRV_GRP(10xc10, 40),
 MTK_PIN_DRV_GRP(20xc10, 40),
 MTK_PIN_DRV_GRP(30xc10, 40),

 MTK_PIN_DRV_GRP(40xc00, 120),
 MTK_PIN_DRV_GRP(50xc00, 120),
 MTK_PIN_DRV_GRP(60xc00, 120),
 MTK_PIN_DRV_GRP(70xc00, 120),

 MTK_PIN_DRV_GRP(80xc10, 00),
 MTK_PIN_DRV_GRP(90xc10, 00),
 MTK_PIN_DRV_GRP(100xc10, 00),
 MTK_PIN_DRV_GRP(110xc10, 00),

 MTK_PIN_DRV_GRP(120xb60, 00),

 MTK_PIN_DRV_GRP(130xb60, 40),

 MTK_PIN_DRV_GRP(140xb60, 00),

 MTK_PIN_DRV_GRP(150xb60, 40),

 MTK_PIN_DRV_GRP(180xb40, 01),
 MTK_PIN_DRV_GRP(190xb40, 01),
 MTK_PIN_DRV_GRP(200xb40, 01),
 MTK_PIN_DRV_GRP(210xb40, 01),
 MTK_PIN_DRV_GRP(220xb40, 01),
 MTK_PIN_DRV_GRP(230xb40, 01),

 MTK_PIN_DRV_GRP(240xb40, 40),

 MTK_PIN_DRV_GRP(250xb40, 80),

 MTK_PIN_DRV_GRP(260xb40, 120),

 MTK_PIN_DRV_GRP(270xb50, 00),

 MTK_PIN_DRV_GRP(280xb40, 120),
 MTK_PIN_DRV_GRP(290xb40, 120),

 MTK_PIN_DRV_GRP(300xf50, 82),
 MTK_PIN_DRV_GRP(310xf50, 82),
 MTK_PIN_DRV_GRP(320xf50, 82),
 MTK_PIN_DRV_GRP(330xf50, 82),
 MTK_PIN_DRV_GRP(340xf50, 82),
 MTK_PIN_DRV_GRP(350xf50, 82),
 MTK_PIN_DRV_GRP(360xf50, 82),

 MTK_PIN_DRV_GRP(370xc40, 82),

 MTK_PIN_DRV_GRP(380xc60, 82),
 MTK_PIN_DRV_GRP(390xc60, 82),
 MTK_PIN_DRV_GRP(400xc60, 82),
 MTK_PIN_DRV_GRP(410xc60, 82),
 MTK_PIN_DRV_GRP(420xc60, 82),
 MTK_PIN_DRV_GRP(430xc60, 82),
 MTK_PIN_DRV_GRP(440xc60, 82),
 MTK_PIN_DRV_GRP(450xc60, 82),

 MTK_PIN_DRV_GRP(460xc50, 82),

 MTK_PIN_DRV_GRP(470xda0, 82),

 MTK_PIN_DRV_GRP(480xd90, 82),

 MTK_PIN_DRV_GRP(490xd60, 82),
 MTK_PIN_DRV_GRP(500xd60, 82),
 MTK_PIN_DRV_GRP(510xd60, 82),
 MTK_PIN_DRV_GRP(520xd60, 82),

 MTK_PIN_DRV_GRP(530xd50, 82),

 MTK_PIN_DRV_GRP(540xd80, 82),

 MTK_PIN_DRV_GRP(550xe00, 82),

 MTK_PIN_DRV_GRP(560xd40, 82),

 MTK_PIN_DRV_GRP(630xc80, 82),

 MTK_PIN_DRV_GRP(640xca0, 82),
 MTK_PIN_DRV_GRP(650xca0, 82),
 MTK_PIN_DRV_GRP(660xca0, 82),

 MTK_PIN_DRV_GRP(670xcd0, 82),

 MTK_PIN_DRV_GRP(680xca0, 82),

 MTK_PIN_DRV_GRP(690xc90, 82),

 MTK_PIN_DRV_GRP(700xcc0, 82),

 MTK_PIN_DRV_GRP(710xb60, 81),
 MTK_PIN_DRV_GRP(720xb60, 81),
 MTK_PIN_DRV_GRP(730xb60, 81),
 MTK_PIN_DRV_GRP(740xb60, 81),

 MTK_PIN_DRV_GRP(750xb60, 121),
 MTK_PIN_DRV_GRP(760xb60, 121),
 MTK_PIN_DRV_GRP(770xb60, 121),

 MTK_PIN_DRV_GRP(780xb70, 01),
 MTK_PIN_DRV_GRP(790xb70, 01),
 MTK_PIN_DRV_GRP(800xb70, 01),
 MTK_PIN_DRV_GRP(810xb70, 01),

 MTK_PIN_DRV_GRP(820xb60, 121),
 MTK_PIN_DRV_GRP(830xb60, 121),
 MTK_PIN_DRV_GRP(840xb60, 121),
 MTK_PIN_DRV_GRP(850xb60, 121),
 MTK_PIN_DRV_GRP(860xb60, 121),
 MTK_PIN_DRV_GRP(870xb60, 121),
 MTK_PIN_DRV_GRP(880xb60, 121),

 MTK_PIN_DRV_GRP(890xce0, 82),

 MTK_PIN_DRV_GRP(900xd00, 82),
 MTK_PIN_DRV_GRP(910xd00, 82),
 MTK_PIN_DRV_GRP(920xd00, 82),
 MTK_PIN_DRV_GRP(930xd00, 82),

 MTK_PIN_DRV_GRP(940xd20, 82),

 MTK_PIN_DRV_GRP(950xcf0, 82),

 MTK_PIN_DRV_GRP(960xd30, 82),

 MTK_PIN_DRV_GRP(970xb70, 40),
 MTK_PIN_DRV_GRP(980xb70, 40),
 MTK_PIN_DRV_GRP(990xb70, 40),
 MTK_PIN_DRV_GRP(1000xb70, 40),

 MTK_PIN_DRV_GRP(1010xb70, 80),
 MTK_PIN_DRV_GRP(1020xb70, 80),
 MTK_PIN_DRV_GRP(1030xb70, 80),
 MTK_PIN_DRV_GRP(1040xb70, 80),

 MTK_PIN_DRV_GRP(1350xb40, 01),
 MTK_PIN_DRV_GRP(1360xb40, 01),
 MTK_PIN_DRV_GRP(1370xb40, 01),
 MTK_PIN_DRV_GRP(1380xb40, 01),
 MTK_PIN_DRV_GRP(1390xb40, 01),
 MTK_PIN_DRV_GRP(1400xb40, 01),
 MTK_PIN_DRV_GRP(1410xb40, 01),
 MTK_PIN_DRV_GRP(1420xb40, 01),

 MTK_PIN_DRV_GRP(1430xba0, 120),
 MTK_PIN_DRV_GRP(1440xba0, 120),
 MTK_PIN_DRV_GRP(1450xba0, 120),
 MTK_PIN_DRV_GRP(1460xba0, 120),
 MTK_PIN_DRV_GRP(1470xba0, 120),

 MTK_PIN_DRV_GRP(1480xbb0, 00),
 MTK_PIN_DRV_GRP(1490xbb0, 00),
 MTK_PIN_DRV_GRP(1500xbb0, 00),
 MTK_PIN_DRV_GRP(1510xbb0, 00),
 MTK_PIN_DRV_GRP(1520xbb0, 00),

 MTK_PIN_DRV_GRP(1530xbb0, 40),
 MTK_PIN_DRV_GRP(1540xbb0, 40),
 MTK_PIN_DRV_GRP(1550xbb0, 40),
 MTK_PIN_DRV_GRP(1560xbb0, 40),

 MTK_PIN_DRV_GRP(1570xbb0, 80),
 MTK_PIN_DRV_GRP(1580xbb0, 80),
 MTK_PIN_DRV_GRP(1590xbb0, 80),
 MTK_PIN_DRV_GRP(1600xbb0, 80),

 MTK_PIN_DRV_GRP(1610xbb0, 120),
 MTK_PIN_DRV_GRP(1620xbb0, 120),
 MTK_PIN_DRV_GRP(1630xbb0, 120),
 MTK_PIN_DRV_GRP(1640xbb0, 120),

 MTK_PIN_DRV_GRP(1650xbc0, 00),
 MTK_PIN_DRV_GRP(1660xbc0, 00),
 MTK_PIN_DRV_GRP(1670xbc0, 00),
 MTK_PIN_DRV_GRP(1680xbc0, 00),

 MTK_PIN_DRV_GRP(1690xbc0, 40),
 MTK_PIN_DRV_GRP(1700xbc0, 40),

 MTK_PIN_DRV_GRP(1710xbc0, 80),
 MTK_PIN_DRV_GRP(1720xbc0, 80),

 MTK_PIN_DRV_GRP(1730xbc0, 120),

 MTK_PIN_DRV_GRP(1740xbd0, 00),
 MTK_PIN_DRV_GRP(1750xbd0, 00),

 MTK_PIN_DRV_GRP(1760xbc0, 120),

 MTK_PIN_DRV_GRP(1770xbd0, 40),

 MTK_PIN_DRV_GRP(1780xbd0, 80),

 MTK_PIN_DRV_GRP(1790xbd0, 40),

 MTK_PIN_DRV_GRP(1800xbd0, 80),

 MTK_PIN_DRV_GRP(1810xbd0, 120),

 MTK_PIN_DRV_GRP(1820xbe0, 00),

 MTK_PIN_DRV_GRP(1830xbd0, 120),

 MTK_PIN_DRV_GRP(1840xbe0, 00),

 MTK_PIN_DRV_GRP(1850xbe0, 40),

 MTK_PIN_DRV_GRP(1860xbe0, 80),

 MTK_PIN_DRV_GRP(1870xbe0, 120),

 MTK_PIN_DRV_GRP(1880xbf0, 00),

 MTK_PIN_DRV_GRP(1890xbe0, 120),

 MTK_PIN_DRV_GRP(1900xbf0, 00),

 MTK_PIN_DRV_GRP(1910xbf0, 40),

 MTK_PIN_DRV_GRP(1920xbf0, 80),

 MTK_PIN_DRV_GRP(1930xbf0, 40),
 MTK_PIN_DRV_GRP(1940xbf0, 40),

 MTK_PIN_DRV_GRP(1950xbf0, 80),

 MTK_PIN_DRV_GRP(1960xbf0, 120),
 MTK_PIN_DRV_GRP(1970xbf0, 120),
 MTK_PIN_DRV_GRP(1980xbf0, 120),
 MTK_PIN_DRV_GRP(1990xbf0, 120),

 MTK_PIN_DRV_GRP(2000xc00, 00),
 MTK_PIN_DRV_GRP(2010xc00, 00),
 MTK_PIN_DRV_GRP(2020xc00, 00),
 MTK_PIN_DRV_GRP(2030xc00, 00),

 MTK_PIN_DRV_GRP(2040xc00, 40),
 MTK_PIN_DRV_GRP(2050xc00, 40),
 MTK_PIN_DRV_GRP(2060xc00, 40),

 MTK_PIN_DRV_GRP(2070xc00, 80),
 MTK_PIN_DRV_GRP(2080xc00, 80),
 MTK_PIN_DRV_GRP(2090xc00, 80),
};

static const struct mtk_pinctrl_devdata mt2712_pinctrl_data = {
 .pins = mtk_pins_mt2712,
 .npins = ARRAY_SIZE(mtk_pins_mt2712),
 .grp_desc = mt2712_drv_grp,
 .n_grp_cls = ARRAY_SIZE(mt2712_drv_grp),
 .pin_drv_grp = mt2712_pin_drv,
 .n_pin_drv_grps = ARRAY_SIZE(mt2712_pin_drv),
 .spec_ies = mt2712_ies_set,
 .n_spec_ies = ARRAY_SIZE(mt2712_ies_set),
 .spec_pupd = mt2712_spec_pupd,
 .n_spec_pupd = ARRAY_SIZE(mt2712_spec_pupd),
 .spec_smt = mt2712_smt_set,
 .n_spec_smt = ARRAY_SIZE(mt2712_smt_set),
 .spec_pull_set = mtk_pctrl_spec_pull_set_samereg,
 .spec_ies_smt_set = mtk_pconf_spec_set_ies_smt_range,
 .dir_offset = 0x0000,
 .pullen_offset = 0x0100,
 .pullsel_offset = 0x0200,
 .dout_offset = 0x0300,
 .din_offset = 0x0400,
 .pinmux_offset = 0x0500,
 .type1_start = 210,
 .type1_end = 210,
 .port_shf = 4,
 .port_mask = 0xf,
 .port_align = 4,
 .mode_mask = 0xf,
 .mode_per_reg = 5,
 .mode_shf = 4,
 .eint_hw = {
  .port_mask = 0xf,
  .ports     = 8,
  .ap_num    = 229,
  .db_cnt    = 40,
  .db_time   = debounce_time_mt2701,
 },
};

static const struct of_device_id mt2712_pctrl_match[] = {
 { .compatible = "mediatek,mt2712-pinctrl", .data = &mt2712_pinctrl_data },
 { }
};
MODULE_DEVICE_TABLE(of, mt2712_pctrl_match);

static struct platform_driver mtk_pinctrl_driver = {
 .probe = mtk_pctrl_common_probe,
 .driver = {
  .name = "mediatek-mt2712-pinctrl",
  .of_match_table = mt2712_pctrl_match,
  .pm = pm_sleep_ptr(&mtk_eint_pm_ops),
 },
};

static int __init mtk_pinctrl_init(void)
{
 return platform_driver_register(&mtk_pinctrl_driver);
}

arch_initcall(mtk_pinctrl_init);

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

¤ Dauer der Verarbeitung: 0.11 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.