Linux Audio

Check our new training course

Loading...
v5.9
 
 1/*
 2 * Utils functions to implement the pincontrol driver.
 3 *
 4 * Copyright (c) 2013, NVIDIA Corporation.
 5 *
 6 * Author: Laxman Dewangan <ldewangan@nvidia.com>
 7 *
 8 * This program is free software; you can redistribute it and/or
 9 * modify it under the terms of the GNU General Public License as
10 * published by the Free Software Foundation version 2.
11 *
12 * This program is distributed "as is" WITHOUT ANY WARRANTY of any kind,
13 * whether express or implied; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15 * General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
20 * 02111-1307, USA
21 */
22#ifndef __PINCTRL_UTILS_H__
23#define __PINCTRL_UTILS_H__
24
 
 
 
 
 
25int pinctrl_utils_reserve_map(struct pinctrl_dev *pctldev,
26		struct pinctrl_map **map, unsigned *reserved_maps,
27		unsigned *num_maps, unsigned reserve);
28int pinctrl_utils_add_map_mux(struct pinctrl_dev *pctldev,
29		struct pinctrl_map **map, unsigned *reserved_maps,
30		unsigned *num_maps, const char *group,
31		const char *function);
32int pinctrl_utils_add_map_configs(struct pinctrl_dev *pctldev,
33		struct pinctrl_map **map, unsigned *reserved_maps,
34		unsigned *num_maps, const char *group,
35		unsigned long *configs, unsigned num_configs,
36		enum pinctrl_map_type type);
37int pinctrl_utils_add_config(struct pinctrl_dev *pctldev,
38		unsigned long **configs, unsigned *num_configs,
39		unsigned long config);
40void pinctrl_utils_free_map(struct pinctrl_dev *pctldev,
41		struct pinctrl_map *map, unsigned num_maps);
42
43#endif /* __PINCTRL_UTILS_H__ */
v6.8
 1/* SPDX-License-Identifier: GPL-2.0-only */
 2/*
 3 * Utils functions to implement the pincontrol driver.
 4 *
 5 * Copyright (c) 2013, NVIDIA Corporation.
 6 *
 7 * Author: Laxman Dewangan <ldewangan@nvidia.com>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 8 */
 9#ifndef __PINCTRL_UTILS_H__
10#define __PINCTRL_UTILS_H__
11
12#include <linux/pinctrl/machine.h>
13
14struct pinctrl_dev;
15struct pinctrl_map;
16
17int pinctrl_utils_reserve_map(struct pinctrl_dev *pctldev,
18		struct pinctrl_map **map, unsigned int *reserved_maps,
19		unsigned int *num_maps, unsigned int reserve);
20int pinctrl_utils_add_map_mux(struct pinctrl_dev *pctldev,
21		struct pinctrl_map **map, unsigned int *reserved_maps,
22		unsigned int *num_maps, const char *group,
23		const char *function);
24int pinctrl_utils_add_map_configs(struct pinctrl_dev *pctldev,
25		struct pinctrl_map **map, unsigned int *reserved_maps,
26		unsigned int *num_maps, const char *group,
27		unsigned long *configs, unsigned int num_configs,
28		enum pinctrl_map_type type);
29int pinctrl_utils_add_config(struct pinctrl_dev *pctldev,
30		unsigned long **configs, unsigned int *num_configs,
31		unsigned long config);
32void pinctrl_utils_free_map(struct pinctrl_dev *pctldev,
33		struct pinctrl_map *map, unsigned int num_maps);
34
35#endif /* __PINCTRL_UTILS_H__ */