cregit-Linux how code gets into the kernel

Release 4.18 drivers/pinctrl/berlin/berlin.h

/* SPDX-License-Identifier: GPL-2.0 */
/*
 * Marvell Berlin SoC pinctrl driver.
 *
 * Copyright (C) 2014 Marvell Technology Group Ltd.
 *
 * Antoine Ténart <antoine.tenart@free-electrons.com>
 */

#ifndef __PINCTRL_BERLIN_H

#define __PINCTRL_BERLIN_H


struct berlin_desc_function {
	
const char	*name;
	
u8		muxval;
};


struct berlin_desc_group {
	
const char			*name;
	
u8				offset;
	
u8				bit_width;
	
u8				lsb;
	
struct berlin_desc_function	*functions;
};


struct berlin_pinctrl_desc {
	
const struct berlin_desc_group	*groups;
	
unsigned			ngroups;
};


struct berlin_pinctrl_function {
	
const char	*name;
	
const char	**groups;
	
unsigned	ngroups;
};


#define BERLIN_PINCTRL_GROUP(_name, _offset, _width, _lsb, ...)		\
	{                                                               \
                .name = _name,                                          \
                .offset = _offset,                                      \
                .bit_width = _width,                                    \
                .lsb = _lsb,                                            \
                .functions = (struct berlin_desc_function[]){           \
                        __VA_ARGS__, { } },                             \
        }


#define BERLIN_PINCTRL_FUNCTION(_muxval, _name)		\
	{                                               \
                .name = _name,                          \
                .muxval = _muxval,                      \
        }


#define BERLIN_PINCTRL_FUNCTION_UNKNOWN		{}

int berlin_pinctrl_probe(struct platform_device *pdev,
			 const struct berlin_pinctrl_desc *desc);

int berlin_pinctrl_probe_regmap(struct platform_device *pdev,
				const struct berlin_pinctrl_desc *desc,
				struct regmap *regmap);

#endif /* __PINCTRL_BERLIN_H */

Overall Contributors

PersonTokensPropCommitsCommitProp
Antoine Ténart12484.93%133.33%
JiSheng Zhang2215.07%266.67%
Total146100.00%3100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.