Merge tag 'mtd/for-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux
[linux-2.6-microblaze.git] / drivers / pinctrl / devicetree.h
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3  * Internal interface to pinctrl device tree integration
4  *
5  * Copyright (C) 2012 NVIDIA CORPORATION. All rights reserved.
6  */
7
8 struct of_phandle_args;
9
10 #ifdef CONFIG_OF
11
12 void pinctrl_dt_free_maps(struct pinctrl *p);
13 int pinctrl_dt_to_map(struct pinctrl *p, struct pinctrl_dev *pctldev);
14
15 int pinctrl_count_index_with_args(const struct device_node *np,
16                                   const char *list_name);
17
18 int pinctrl_parse_index_with_args(const struct device_node *np,
19                                   const char *list_name, int index,
20                                   struct of_phandle_args *out_args);
21
22 #else
23
24 static inline int pinctrl_dt_to_map(struct pinctrl *p,
25                                     struct pinctrl_dev *pctldev)
26 {
27         return 0;
28 }
29
30 static inline void pinctrl_dt_free_maps(struct pinctrl *p)
31 {
32 }
33
34 static inline int pinctrl_count_index_with_args(const struct device_node *np,
35                                                 const char *list_name)
36 {
37         return -ENODEV;
38 }
39
40 static inline int
41 pinctrl_parse_index_with_args(const struct device_node *np,
42                               const char *list_name, int index,
43                               struct of_phandle_args *out_args)
44 {
45         return -ENODEV;
46 }
47
48 #endif