diff options
author | Linus Walleij <linus.walleij@linaro.org> | 2015-12-17 08:57:46 -0500 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2015-12-17 08:57:46 -0500 |
commit | 4dccc93f1e7f4e2fd92a48c40a7ac9211a029352 (patch) | |
tree | 717a183f0dba200a882126cf095f38e319302c51 /drivers/pinctrl | |
parent | d4eed63bb8a3749a6cf19bbc98c943fafb4a826d (diff) | |
parent | 9f9499ae8e6415cefc4fe0a96ad0e27864353c89 (diff) |
Merge tag 'v4.4-rc5' into devel
Linux 4.4-rc5
Diffstat (limited to 'drivers/pinctrl')
-rw-r--r-- | drivers/pinctrl/Kconfig | 4 | ||||
-rw-r--r-- | drivers/pinctrl/freescale/pinctrl-imx1-core.c | 8 | ||||
-rw-r--r-- | drivers/pinctrl/mediatek/pinctrl-mtk-common.c | 11 | ||||
-rw-r--r-- | drivers/pinctrl/sh-pfc/pfc-sh7734.c | 6 |
4 files changed, 13 insertions, 16 deletions
diff --git a/drivers/pinctrl/Kconfig b/drivers/pinctrl/Kconfig index 2b80a796d966..99a4c10ed43f 100644 --- a/drivers/pinctrl/Kconfig +++ b/drivers/pinctrl/Kconfig | |||
@@ -5,8 +5,6 @@ | |||
5 | config PINCTRL | 5 | config PINCTRL |
6 | bool | 6 | bool |
7 | 7 | ||
8 | if PINCTRL | ||
9 | |||
10 | menu "Pin controllers" | 8 | menu "Pin controllers" |
11 | depends on PINCTRL | 9 | depends on PINCTRL |
12 | 10 | ||
@@ -275,5 +273,3 @@ config PINCTRL_TB10X | |||
275 | select GPIOLIB | 273 | select GPIOLIB |
276 | 274 | ||
277 | endmenu | 275 | endmenu |
278 | |||
279 | endif | ||
diff --git a/drivers/pinctrl/freescale/pinctrl-imx1-core.c b/drivers/pinctrl/freescale/pinctrl-imx1-core.c index 88a7fac11bd4..acaf84cadca3 100644 --- a/drivers/pinctrl/freescale/pinctrl-imx1-core.c +++ b/drivers/pinctrl/freescale/pinctrl-imx1-core.c | |||
@@ -538,8 +538,10 @@ static int imx1_pinctrl_parse_functions(struct device_node *np, | |||
538 | func->groups[i] = child->name; | 538 | func->groups[i] = child->name; |
539 | grp = &info->groups[grp_index++]; | 539 | grp = &info->groups[grp_index++]; |
540 | ret = imx1_pinctrl_parse_groups(child, grp, info, i++); | 540 | ret = imx1_pinctrl_parse_groups(child, grp, info, i++); |
541 | if (ret == -ENOMEM) | 541 | if (ret == -ENOMEM) { |
542 | of_node_put(child); | ||
542 | return ret; | 543 | return ret; |
544 | } | ||
543 | } | 545 | } |
544 | 546 | ||
545 | return 0; | 547 | return 0; |
@@ -582,8 +584,10 @@ static int imx1_pinctrl_parse_dt(struct platform_device *pdev, | |||
582 | 584 | ||
583 | for_each_child_of_node(np, child) { | 585 | for_each_child_of_node(np, child) { |
584 | ret = imx1_pinctrl_parse_functions(child, info, ifunc++); | 586 | ret = imx1_pinctrl_parse_functions(child, info, ifunc++); |
585 | if (ret == -ENOMEM) | 587 | if (ret == -ENOMEM) { |
588 | of_node_put(child); | ||
586 | return -ENOMEM; | 589 | return -ENOMEM; |
590 | } | ||
587 | } | 591 | } |
588 | 592 | ||
589 | return 0; | 593 | return 0; |
diff --git a/drivers/pinctrl/mediatek/pinctrl-mtk-common.c b/drivers/pinctrl/mediatek/pinctrl-mtk-common.c index 3bb4a2ae8ee4..8db7cdfbfbc6 100644 --- a/drivers/pinctrl/mediatek/pinctrl-mtk-common.c +++ b/drivers/pinctrl/mediatek/pinctrl-mtk-common.c | |||
@@ -754,7 +754,7 @@ static int mtk_gpio_get_direction(struct gpio_chip *chip, unsigned offset) | |||
754 | reg_addr = mtk_get_port(pctl, offset) + pctl->devdata->dir_offset; | 754 | reg_addr = mtk_get_port(pctl, offset) + pctl->devdata->dir_offset; |
755 | bit = BIT(offset & 0xf); | 755 | bit = BIT(offset & 0xf); |
756 | regmap_read(pctl->regmap1, reg_addr, &read_val); | 756 | regmap_read(pctl->regmap1, reg_addr, &read_val); |
757 | return !!(read_val & bit); | 757 | return !(read_val & bit); |
758 | } | 758 | } |
759 | 759 | ||
760 | static int mtk_gpio_get(struct gpio_chip *chip, unsigned offset) | 760 | static int mtk_gpio_get(struct gpio_chip *chip, unsigned offset) |
@@ -764,12 +764,8 @@ static int mtk_gpio_get(struct gpio_chip *chip, unsigned offset) | |||
764 | unsigned int read_val = 0; | 764 | unsigned int read_val = 0; |
765 | struct mtk_pinctrl *pctl = dev_get_drvdata(chip->dev); | 765 | struct mtk_pinctrl *pctl = dev_get_drvdata(chip->dev); |
766 | 766 | ||
767 | if (mtk_gpio_get_direction(chip, offset)) | 767 | reg_addr = mtk_get_port(pctl, offset) + |
768 | reg_addr = mtk_get_port(pctl, offset) + | 768 | pctl->devdata->din_offset; |
769 | pctl->devdata->dout_offset; | ||
770 | else | ||
771 | reg_addr = mtk_get_port(pctl, offset) + | ||
772 | pctl->devdata->din_offset; | ||
773 | 769 | ||
774 | bit = BIT(offset & 0xf); | 770 | bit = BIT(offset & 0xf); |
775 | regmap_read(pctl->regmap1, reg_addr, &read_val); | 771 | regmap_read(pctl->regmap1, reg_addr, &read_val); |
@@ -1004,6 +1000,7 @@ static struct gpio_chip mtk_gpio_chip = { | |||
1004 | .owner = THIS_MODULE, | 1000 | .owner = THIS_MODULE, |
1005 | .request = gpiochip_generic_request, | 1001 | .request = gpiochip_generic_request, |
1006 | .free = gpiochip_generic_free, | 1002 | .free = gpiochip_generic_free, |
1003 | .get_direction = mtk_gpio_get_direction, | ||
1007 | .direction_input = mtk_gpio_direction_input, | 1004 | .direction_input = mtk_gpio_direction_input, |
1008 | .direction_output = mtk_gpio_direction_output, | 1005 | .direction_output = mtk_gpio_direction_output, |
1009 | .get = mtk_gpio_get, | 1006 | .get = mtk_gpio_get, |
diff --git a/drivers/pinctrl/sh-pfc/pfc-sh7734.c b/drivers/pinctrl/sh-pfc/pfc-sh7734.c index 20373a9c1710..b0b328b3130b 100644 --- a/drivers/pinctrl/sh-pfc/pfc-sh7734.c +++ b/drivers/pinctrl/sh-pfc/pfc-sh7734.c | |||
@@ -23,11 +23,11 @@ | |||
23 | PORT_GP_12(5, fn, sfx) | 23 | PORT_GP_12(5, fn, sfx) |
24 | 24 | ||
25 | #undef _GP_DATA | 25 | #undef _GP_DATA |
26 | #define _GP_DATA(bank, pin, name, sfx) \ | 26 | #define _GP_DATA(bank, pin, name, sfx, cfg) \ |
27 | PINMUX_DATA(name##_DATA, name##_FN, name##_IN, name##_OUT) | 27 | PINMUX_DATA(name##_DATA, name##_FN, name##_IN, name##_OUT) |
28 | 28 | ||
29 | #define _GP_INOUTSEL(bank, pin, name, sfx) name##_IN, name##_OUT | 29 | #define _GP_INOUTSEL(bank, pin, name, sfx, cfg) name##_IN, name##_OUT |
30 | #define _GP_INDT(bank, pin, name, sfx) name##_DATA | 30 | #define _GP_INDT(bank, pin, name, sfx, cfg) name##_DATA |
31 | #define GP_INOUTSEL(bank) PORT_GP_32_REV(bank, _GP_INOUTSEL, unused) | 31 | #define GP_INOUTSEL(bank) PORT_GP_32_REV(bank, _GP_INOUTSEL, unused) |
32 | #define GP_INDT(bank) PORT_GP_32_REV(bank, _GP_INDT, unused) | 32 | #define GP_INDT(bank) PORT_GP_32_REV(bank, _GP_INDT, unused) |
33 | 33 | ||