diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-09-16 11:07:04 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-09-16 11:07:04 -0400 |
commit | 9efeaaf9a0c1a27c2be8b2d37c73142555702a4f (patch) | |
tree | e1460b0b29c91af71c7e2e81a7a6bdc757eb9376 | |
parent | d1291ebd85770299857b355160864cd1a9f6e5e9 (diff) | |
parent | fa84b52cb681b27e6b5e003457562e25a239b9c4 (diff) |
Merge tag 'pinctrl-v4.3-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl
Pull pin control fixes from Linus Walleij:
"This is a first set of pin control fixes for the v4.3 series. Nothing
special to say, business as usual.
- Some IS_ERR() fixes from Julia Lawall. I always wanted the
compiler to catch these but error pointers by nailing them as an
err pointer intrinsic type or something seem to be a "no can do".
In any case, cocinelle is obviously up to the task, better than
bugs staying around.
- Better error handling for NULL GPIO chips.
- Fix a compile error from the big irq desc refactoring. I'm
surprised the fallout wasn't bigger than this"
* tag 'pinctrl-v4.3-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:
pinctrl: samsung: s3c24xx: fix syntax error
pinctrl: core: Warn about NULL gpio_chip in pinctrl_ready_for_gpio_range()
pinctrl: join lines that can be a single line within 80 columns
pinctrl: digicolor: convert null test to IS_ERR test
pinctrl: qcom: ssbi: convert null test to IS_ERR test
-rw-r--r-- | drivers/pinctrl/core.c | 3 | ||||
-rw-r--r-- | drivers/pinctrl/pinctrl-digicolor.c | 4 | ||||
-rw-r--r-- | drivers/pinctrl/pinmux.c | 3 | ||||
-rw-r--r-- | drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c | 4 | ||||
-rw-r--r-- | drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c | 4 | ||||
-rw-r--r-- | drivers/pinctrl/samsung/pinctrl-s3c24xx.c | 2 |
6 files changed, 11 insertions, 9 deletions
diff --git a/drivers/pinctrl/core.c b/drivers/pinctrl/core.c index 69723e07036b..9638a00c67c2 100644 --- a/drivers/pinctrl/core.c +++ b/drivers/pinctrl/core.c | |||
@@ -349,6 +349,9 @@ static bool pinctrl_ready_for_gpio_range(unsigned gpio) | |||
349 | struct pinctrl_gpio_range *range = NULL; | 349 | struct pinctrl_gpio_range *range = NULL; |
350 | struct gpio_chip *chip = gpio_to_chip(gpio); | 350 | struct gpio_chip *chip = gpio_to_chip(gpio); |
351 | 351 | ||
352 | if (WARN(!chip, "no gpio_chip for gpio%i?", gpio)) | ||
353 | return false; | ||
354 | |||
352 | mutex_lock(&pinctrldev_list_mutex); | 355 | mutex_lock(&pinctrldev_list_mutex); |
353 | 356 | ||
354 | /* Loop over the pin controllers */ | 357 | /* Loop over the pin controllers */ |
diff --git a/drivers/pinctrl/pinctrl-digicolor.c b/drivers/pinctrl/pinctrl-digicolor.c index 461fffc4c62a..11f8b835d3b6 100644 --- a/drivers/pinctrl/pinctrl-digicolor.c +++ b/drivers/pinctrl/pinctrl-digicolor.c | |||
@@ -337,9 +337,9 @@ static int dc_pinctrl_probe(struct platform_device *pdev) | |||
337 | pmap->dev = &pdev->dev; | 337 | pmap->dev = &pdev->dev; |
338 | 338 | ||
339 | pmap->pctl = pinctrl_register(pctl_desc, &pdev->dev, pmap); | 339 | pmap->pctl = pinctrl_register(pctl_desc, &pdev->dev, pmap); |
340 | if (!pmap->pctl) { | 340 | if (IS_ERR(pmap->pctl)) { |
341 | dev_err(&pdev->dev, "pinctrl driver registration failed\n"); | 341 | dev_err(&pdev->dev, "pinctrl driver registration failed\n"); |
342 | return -EINVAL; | 342 | return PTR_ERR(pmap->pctl); |
343 | } | 343 | } |
344 | 344 | ||
345 | ret = dc_gpiochip_add(pmap, pdev->dev.of_node); | 345 | ret = dc_gpiochip_add(pmap, pdev->dev.of_node); |
diff --git a/drivers/pinctrl/pinmux.c b/drivers/pinctrl/pinmux.c index 67e08cb315c4..29984b36926a 100644 --- a/drivers/pinctrl/pinmux.c +++ b/drivers/pinctrl/pinmux.c | |||
@@ -313,8 +313,7 @@ static int pinmux_func_name_to_selector(struct pinctrl_dev *pctldev, | |||
313 | 313 | ||
314 | /* See if this pctldev has this function */ | 314 | /* See if this pctldev has this function */ |
315 | while (selector < nfuncs) { | 315 | while (selector < nfuncs) { |
316 | const char *fname = ops->get_function_name(pctldev, | 316 | const char *fname = ops->get_function_name(pctldev, selector); |
317 | selector); | ||
318 | 317 | ||
319 | if (!strcmp(function, fname)) | 318 | if (!strcmp(function, fname)) |
320 | return selector; | 319 | return selector; |
diff --git a/drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c b/drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c index c978b311031b..e1a3721bc8e5 100644 --- a/drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c +++ b/drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c | |||
@@ -723,9 +723,9 @@ static int pm8xxx_gpio_probe(struct platform_device *pdev) | |||
723 | #endif | 723 | #endif |
724 | 724 | ||
725 | pctrl->pctrl = pinctrl_register(&pctrl->desc, &pdev->dev, pctrl); | 725 | pctrl->pctrl = pinctrl_register(&pctrl->desc, &pdev->dev, pctrl); |
726 | if (!pctrl->pctrl) { | 726 | if (IS_ERR(pctrl->pctrl)) { |
727 | dev_err(&pdev->dev, "couldn't register pm8xxx gpio driver\n"); | 727 | dev_err(&pdev->dev, "couldn't register pm8xxx gpio driver\n"); |
728 | return -ENODEV; | 728 | return PTR_ERR(pctrl->pctrl); |
729 | } | 729 | } |
730 | 730 | ||
731 | pctrl->chip = pm8xxx_gpio_template; | 731 | pctrl->chip = pm8xxx_gpio_template; |
diff --git a/drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c b/drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c index 2d1b69f171be..6652b8d7f707 100644 --- a/drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c +++ b/drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c | |||
@@ -814,9 +814,9 @@ static int pm8xxx_mpp_probe(struct platform_device *pdev) | |||
814 | #endif | 814 | #endif |
815 | 815 | ||
816 | pctrl->pctrl = pinctrl_register(&pctrl->desc, &pdev->dev, pctrl); | 816 | pctrl->pctrl = pinctrl_register(&pctrl->desc, &pdev->dev, pctrl); |
817 | if (!pctrl->pctrl) { | 817 | if (IS_ERR(pctrl->pctrl)) { |
818 | dev_err(&pdev->dev, "couldn't register pm8xxx mpp driver\n"); | 818 | dev_err(&pdev->dev, "couldn't register pm8xxx mpp driver\n"); |
819 | return -ENODEV; | 819 | return PTR_ERR(pctrl->pctrl); |
820 | } | 820 | } |
821 | 821 | ||
822 | pctrl->chip = pm8xxx_mpp_template; | 822 | pctrl->chip = pm8xxx_mpp_template; |
diff --git a/drivers/pinctrl/samsung/pinctrl-s3c24xx.c b/drivers/pinctrl/samsung/pinctrl-s3c24xx.c index 019844d479bb..d168b39dd7fd 100644 --- a/drivers/pinctrl/samsung/pinctrl-s3c24xx.c +++ b/drivers/pinctrl/samsung/pinctrl-s3c24xx.c | |||
@@ -361,7 +361,7 @@ static inline void s3c24xx_demux_eint(struct irq_desc *desc, | |||
361 | u32 offset, u32 range) | 361 | u32 offset, u32 range) |
362 | { | 362 | { |
363 | struct s3c24xx_eint_data *data = irq_desc_get_handler_data(desc); | 363 | struct s3c24xx_eint_data *data = irq_desc_get_handler_data(desc); |
364 | struct irq_chip *chip = irq_desc_get_irq_chip(desc); | 364 | struct irq_chip *chip = irq_desc_get_chip(desc); |
365 | struct samsung_pinctrl_drv_data *d = data->drvdata; | 365 | struct samsung_pinctrl_drv_data *d = data->drvdata; |
366 | unsigned int pend, mask; | 366 | unsigned int pend, mask; |
367 | 367 | ||