Commit 8c5dc2a5 authored by Peng Fan's avatar Peng Fan Committed by Linus Walleij
Browse files

pinctrl: spear: Use scope based of_node_put() cleanups



Use scope based of_node_put() cleanup to simplify code.

Signed-off-by: default avatarPeng Fan <peng.fan@nxp.com>
Link: https://lore.kernel.org/20240504-pinctrl-cleanup-v2-6-26c5f2dc1181@nxp.com


Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent 794e5dc5
Loading
Loading
Loading
Loading
+4 −9
Original line number Diff line number Diff line
@@ -151,24 +151,19 @@ static int spear_pinctrl_dt_node_to_map(struct pinctrl_dev *pctldev,
					unsigned *num_maps)
{
	struct spear_pmx *pmx = pinctrl_dev_get_drvdata(pctldev);
	struct device_node *np;
	struct property *prop;
	const char *function, *group;
	int ret, index = 0, count = 0;

	/* calculate number of maps required */
	for_each_child_of_node(np_config, np) {
	for_each_child_of_node_scoped(np_config, np) {
		ret = of_property_read_string(np, "st,function", &function);
		if (ret < 0) {
			of_node_put(np);
		if (ret < 0)
			return ret;
		}

		ret = of_property_count_strings(np, "st,pins");
		if (ret < 0) {
			of_node_put(np);
		if (ret < 0)
			return ret;
		}

		count += ret;
	}
@@ -182,7 +177,7 @@ static int spear_pinctrl_dt_node_to_map(struct pinctrl_dev *pctldev,
	if (!*map)
		return -ENOMEM;

	for_each_child_of_node(np_config, np) {
	for_each_child_of_node_scoped(np_config, np) {
		of_property_read_string(np, "st,function", &function);
		of_property_for_each_string(np, "st,pins", prop, group) {
			(*map)[index].type = PIN_MAP_TYPE_MUX_GROUP;