Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge tag 'pinctrl-v4.19-5' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl

Linus writes:
"pin control fix for v4.19:

A single pin control fix for v4.19:
- Interrupt setup in the MCP23S08 driver."

* tag 'pinctrl-v4.19-5' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:
pinctrl: mcp23s08: fix irq and irqchip setup order

+12 -1
+12 -1
drivers/pinctrl/pinctrl-mcp23s08.c
··· 636 636 return err; 637 637 } 638 638 639 + return 0; 640 + } 641 + 642 + static int mcp23s08_irqchip_setup(struct mcp23s08 *mcp) 643 + { 644 + struct gpio_chip *chip = &mcp->chip; 645 + int err; 646 + 639 647 err = gpiochip_irqchip_add_nested(chip, 640 648 &mcp23s08_irq_chip, 641 649 0, ··· 920 912 } 921 913 922 914 if (mcp->irq && mcp->irq_controller) { 923 - ret = mcp23s08_irq_setup(mcp); 915 + ret = mcp23s08_irqchip_setup(mcp); 924 916 if (ret) 925 917 goto fail; 926 918 } ··· 951 943 ret = PTR_ERR(mcp->pctldev); 952 944 goto fail; 953 945 } 946 + 947 + if (mcp->irq) 948 + ret = mcp23s08_irq_setup(mcp); 954 949 955 950 fail: 956 951 if (ret < 0)