diff --git a/drivers/pinctrl/core.c b/drivers/pinctrl/core.c index 84a24a693e0cabc408c2d00b06b81877d86a2d8f..feadf1c31133890a66e235bef916ec0242b57f9c 100644 --- a/drivers/pinctrl/core.c +++ b/drivers/pinctrl/core.c @@ -309,7 +309,7 @@ void pinctrl_add_gpio_range(struct pinctrl_dev *pctldev, struct pinctrl_gpio_range *range) { mutex_lock(&pctldev->gpio_ranges_lock); - list_add(&range->node, &pctldev->gpio_ranges); + list_add_tail(&range->node, &pctldev->gpio_ranges); mutex_unlock(&pctldev->gpio_ranges_lock); } @@ -569,7 +569,7 @@ struct pinctrl *pinctrl_get(struct device *dev, const char *name) /* Add the pinmux to the global list */ mutex_lock(&pinctrl_list_mutex); - list_add(&p->node, &pinctrl_list); + list_add_tail(&p->node, &pinctrl_list); mutex_unlock(&pinctrl_list_mutex); return p; @@ -749,7 +749,7 @@ static int pinctrl_hog_map(struct pinctrl_dev *pctldev, dev_info(pctldev->dev, "hogged map %s, function %s\n", map->name, map->function); mutex_lock(&pctldev->pinctrl_hogs_lock); - list_add(&hog->node, &pctldev->pinctrl_hogs); + list_add_tail(&hog->node, &pctldev->pinctrl_hogs); mutex_unlock(&pctldev->pinctrl_hogs_lock); return 0; @@ -1197,7 +1197,7 @@ struct pinctrl_dev *pinctrl_register(struct pinctrl_desc *pctldesc, pinctrl_init_device_debugfs(pctldev); mutex_lock(&pinctrldev_list_mutex); - list_add(&pctldev->node, &pinctrldev_list); + list_add_tail(&pctldev->node, &pinctrldev_list); mutex_unlock(&pinctrldev_list_mutex); pinctrl_hog_maps(pctldev); return pctldev; diff --git a/drivers/pinctrl/pinmux.c b/drivers/pinctrl/pinmux.c index fe4a00751c60d2f0f5831024b0d244a268435c94..5a09cd20220862cc188e1ba29aafd49c38ba2458 100644 --- a/drivers/pinctrl/pinmux.c +++ b/drivers/pinctrl/pinmux.c @@ -480,7 +480,7 @@ static int pinmux_enable_muxmap(struct pinctrl_dev *pctldev, kfree(grp); return ret; } - list_add(&grp->node, &p->groups); + list_add_tail(&grp->node, &p->groups); return 0; }