Commit 999b85bf authored by Andy Shevchenko's avatar Andy Shevchenko
Browse files

pinctrl: intel: Make use of struct pinfunction and PINCTRL_PINFUNCTION()



Since pin control provides a generic data type and a macro for
the pin function definition, use them in the Intel driver.

Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: default avatarMika Westerberg <mika.westerberg@linux.intel.com>
parent 443a0a0f
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -372,7 +372,7 @@ static const char *intel_get_function_name(struct pinctrl_dev *pctldev,
{
	struct intel_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev);

	return pctrl->soc->functions[function].name;
	return pctrl->soc->functions[function].func.name;
}

static int intel_get_function_groups(struct pinctrl_dev *pctldev,
@@ -382,8 +382,8 @@ static int intel_get_function_groups(struct pinctrl_dev *pctldev,
{
	struct intel_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev);

	*groups = pctrl->soc->functions[function].groups;
	*ngroups = pctrl->soc->functions[function].ngroups;
	*groups = pctrl->soc->functions[function].func.groups;
	*ngroups = pctrl->soc->functions[function].func.ngroups;
	return 0;
}

+8 −5
Original line number Diff line number Diff line
@@ -36,11 +36,13 @@ struct intel_pingroup {

/**
 * struct intel_function - Description about a function
 * @func: Generic data of the pin function (name and groups of pins)
 * @name: Name of the function
 * @groups: An array of groups for this function
 * @ngroups: Number of groups in @groups
 */
struct intel_function {
	struct pinfunction func;
	const char *name;
	const char * const *groups;
	size_t ngroups;
@@ -185,6 +187,7 @@ struct intel_community {

#define FUNCTION(n, g)							\
	{								\
		.func = PINCTRL_PINFUNCTION((n), (g), ARRAY_SIZE(g)),	\
		.name = (n),						\
		.groups = (g),						\
		.ngroups = ARRAY_SIZE((g)),				\