linux/drivers/pinctrl/mediatek/pinctrl-mt8183.c

// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright (C) 2018 MediaTek Inc.
 *
 * Author: Zhiyong Tao <[email protected]>
 *
 */

#include "pinctrl-mtk-mt8183.h"
#include "pinctrl-paris.h"

/* MT8183 have multiple bases to program pin configuration listed as the below:
 * iocfg[0]:0x10005000, iocfg[1]:0x11F20000, iocfg[2]:0x11E80000,
 * iocfg[3]:0x11E70000, iocfg[4]:0x11E90000, iocfg[5]:0x11D30000,
 * iocfg[6]:0x11D20000, iocfg[7]:0x11C50000, iocfg[8]:0x11F30000.
 * _i_based 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)

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

static const struct mtk_pin_field_calc mt8183_pin_mode_range[] =;

static const struct mtk_pin_field_calc mt8183_pin_dir_range[] =;

static const struct mtk_pin_field_calc mt8183_pin_di_range[] =;

static const struct mtk_pin_field_calc mt8183_pin_do_range[] =;

static const struct mtk_pin_field_calc mt8183_pin_ies_range[] =;

static const struct mtk_pin_field_calc mt8183_pin_smt_range[] =;

static const struct mtk_pin_field_calc mt8183_pin_pullen_range[] =;

static const struct mtk_pin_field_calc mt8183_pin_pullsel_range[] =;

static const struct mtk_pin_field_calc mt8183_pin_drv_range[] =;

static const struct mtk_pin_field_calc mt8183_pin_pupd_range[] =;

static const struct mtk_pin_field_calc mt8183_pin_r0_range[] =;

static const struct mtk_pin_field_calc mt8183_pin_r1_range[] =;

static const struct mtk_pin_field_calc mt8183_pin_e1e0en_range[] =;

static const struct mtk_pin_field_calc mt8183_pin_e0_range[] =;

static const struct mtk_pin_field_calc mt8183_pin_e1_range[] =;

static const struct mtk_pin_reg_calc mt8183_reg_cals[PINCTRL_PIN_REG_MAX] =;

static const char * const mt8183_pinctrl_register_base_names[] =;

static const struct mtk_eint_hw mt8183_eint_hw =;

static const struct mtk_pin_soc mt8183_data =;

static const struct of_device_id mt8183_pinctrl_of_match[] =;

static struct platform_driver mt8183_pinctrl_driver =;

static int __init mt8183_pinctrl_init(void)
{}
arch_initcall(mt8183_pinctrl_init);