pinctrl-tegra.h (7ae9fb1b7ecbb5d85d07857943f677fd1a559b18) pinctrl-tegra.h (fad57233501beb5bd25f037cb9128a533e710600)
1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * Driver for the NVIDIA Tegra pinmux
4 *
5 * Copyright (c) 2011, NVIDIA CORPORATION. All rights reserved.
6 */
7
8#ifndef __PINMUX_TEGRA_H__
9#define __PINMUX_TEGRA_H__
10
11struct tegra_pmx {
12 struct device *dev;
13 struct pinctrl_dev *pctl;
14
15 const struct tegra_pinctrl_soc_data *soc;
1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * Driver for the NVIDIA Tegra pinmux
4 *
5 * Copyright (c) 2011, NVIDIA CORPORATION. All rights reserved.
6 */
7
8#ifndef __PINMUX_TEGRA_H__
9#define __PINMUX_TEGRA_H__
10
11struct tegra_pmx {
12 struct device *dev;
13 struct pinctrl_dev *pctl;
14
15 const struct tegra_pinctrl_soc_data *soc;
16 struct tegra_function *functions;
16 const char **group_pins;
17
18 struct pinctrl_gpio_range gpio_range;
19 struct pinctrl_desc desc;
20 int nbanks;
21 void __iomem **regs;
22 u32 *backup_regs;
23};

--- 162 unchanged lines hidden (view full) ---

186 * @groups: An array describing all pin groups the pin SoC supports.
187 * @ngroups: The numbmer of entries in @groups.
188 */
189struct tegra_pinctrl_soc_data {
190 unsigned ngpios;
191 const char *gpio_compatible;
192 const struct pinctrl_pin_desc *pins;
193 unsigned npins;
17 const char **group_pins;
18
19 struct pinctrl_gpio_range gpio_range;
20 struct pinctrl_desc desc;
21 int nbanks;
22 void __iomem **regs;
23 u32 *backup_regs;
24};

--- 162 unchanged lines hidden (view full) ---

187 * @groups: An array describing all pin groups the pin SoC supports.
188 * @ngroups: The numbmer of entries in @groups.
189 */
190struct tegra_pinctrl_soc_data {
191 unsigned ngpios;
192 const char *gpio_compatible;
193 const struct pinctrl_pin_desc *pins;
194 unsigned npins;
194 struct tegra_function *functions;
195 const char * const *functions;
195 unsigned nfunctions;
196 const struct tegra_pingroup *groups;
197 unsigned ngroups;
198 bool hsm_in_mux;
199 bool schmitt_in_mux;
200 bool drvtype_in_mux;
201 bool sfsel_in_mux;
202};
203
204extern const struct dev_pm_ops tegra_pinctrl_pm;
205
206int tegra_pinctrl_probe(struct platform_device *pdev,
207 const struct tegra_pinctrl_soc_data *soc_data);
208#endif
196 unsigned nfunctions;
197 const struct tegra_pingroup *groups;
198 unsigned ngroups;
199 bool hsm_in_mux;
200 bool schmitt_in_mux;
201 bool drvtype_in_mux;
202 bool sfsel_in_mux;
203};
204
205extern const struct dev_pm_ops tegra_pinctrl_pm;
206
207int tegra_pinctrl_probe(struct platform_device *pdev,
208 const struct tegra_pinctrl_soc_data *soc_data);
209#endif