1*e78d57b2SSean Wang /* SPDX-License-Identifier: GPL-2.0 */ 2*e78d57b2SSean Wang /* 3*e78d57b2SSean Wang * Copyright (C) 2017-2018 MediaTek Inc. 4*e78d57b2SSean Wang * 5*e78d57b2SSean Wang * Author: Sean Wang <sean.wang@mediatek.com> 6*e78d57b2SSean Wang * 7*e78d57b2SSean Wang */ 8*e78d57b2SSean Wang #ifndef __PINCTRL_MOORE_H 9*e78d57b2SSean Wang #define __PINCTRL_MOORE_H 10*e78d57b2SSean Wang 11*e78d57b2SSean Wang #include <linux/gpio.h> 12*e78d57b2SSean Wang #include <linux/gpio/driver.h> 13*e78d57b2SSean Wang #include <linux/io.h> 14*e78d57b2SSean Wang #include <linux/init.h> 15*e78d57b2SSean Wang #include <linux/of.h> 16*e78d57b2SSean Wang #include <linux/of_platform.h> 17*e78d57b2SSean Wang #include <linux/platform_device.h> 18*e78d57b2SSean Wang #include <linux/pinctrl/pinctrl.h> 19*e78d57b2SSean Wang #include <linux/pinctrl/pinmux.h> 20*e78d57b2SSean Wang #include <linux/pinctrl/pinconf.h> 21*e78d57b2SSean Wang #include <linux/pinctrl/pinconf-generic.h> 22*e78d57b2SSean Wang 23*e78d57b2SSean Wang #include "../core.h" 24*e78d57b2SSean Wang #include "../pinconf.h" 25*e78d57b2SSean Wang #include "../pinmux.h" 26*e78d57b2SSean Wang #include "mtk-eint.h" 27*e78d57b2SSean Wang #include "pinctrl-mtk-common-v2.h" 28*e78d57b2SSean Wang 29*e78d57b2SSean Wang #define MTK_RANGE(_a) { .range = (_a), .nranges = ARRAY_SIZE(_a), } 30*e78d57b2SSean Wang #define PINCTRL_PIN_GROUP(name, id) \ 31*e78d57b2SSean Wang { \ 32*e78d57b2SSean Wang name, \ 33*e78d57b2SSean Wang id##_pins, \ 34*e78d57b2SSean Wang ARRAY_SIZE(id##_pins), \ 35*e78d57b2SSean Wang id##_funcs, \ 36*e78d57b2SSean Wang } 37*e78d57b2SSean Wang 38*e78d57b2SSean Wang int mtk_moore_pinctrl_probe(struct platform_device *pdev, 39*e78d57b2SSean Wang const struct mtk_pin_soc *soc); 40*e78d57b2SSean Wang 41*e78d57b2SSean Wang #endif /* __PINCTRL_MOORE_H */ 42