#include <linux/init.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-mt8173.h"
#define DRV_BASE …
static const struct mtk_pin_spec_pupd_set_samereg mt8173_spec_pupd[] = …;
static const struct mtk_pin_ies_smt_set mt8173_smt_set[] = …;
static const struct mtk_pin_ies_smt_set mt8173_ies_set[] = …;
static const struct mtk_drv_group_desc mt8173_drv_grp[] = …;
static const struct mtk_pin_drv_grp mt8173_pin_drv[] = …;
static const struct mtk_pinctrl_devdata mt8173_pinctrl_data = …;
static int mt8173_pinctrl_probe(struct platform_device *pdev)
{ … }
static const struct of_device_id mt8173_pctrl_match[] = …;
static struct platform_driver mtk_pinctrl_driver = …;
static int __init mtk_pinctrl_init(void)
{ … }
arch_initcall(mtk_pinctrl_init);