1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Qualcomm Pin control
4  *
5  * (C) Copyright 2018 Ramon Fried <ramon.fried@gmail.com>
6  *
7  */
8 #ifndef _PINCTRL_QCOM_H
9 #define _PINCTRL_QCOM_H
10 
11 #include <asm/types.h>
12 #include <mach/gpio.h>
13 
14 struct udevice;
15 
16 struct msm_pinctrl_data {
17 	struct msm_pin_data pin_data;
18 	int functions_count;
19 	const char *(*get_function_name)(struct udevice *dev,
20 					 unsigned int selector);
21 	int (*get_function_mux)(unsigned int pin, unsigned int selector);
22 	const char *(*get_pin_name)(struct udevice *dev,
23 				    unsigned int selector);
24 };
25 
26 struct pinctrl_function {
27 	const char *name;
28 	int val;
29 };
30 
31 extern struct pinctrl_ops msm_pinctrl_ops;
32 
33 int msm_pinctrl_bind(struct udevice *dev);
34 
35 #endif
36