Merge tag 'pinctrl-v5.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw...
[linux-2.6-block.git] / drivers / pinctrl / qcom / pinctrl-spmi-gpio.c
index 442db15e0729285427b3cebf148d9f4004f17c57..f1fece5b9c06ab690340f420aceaf46b2717809b 100644 (file)
@@ -793,11 +793,13 @@ static int pmic_gpio_populate(struct pmic_gpio_state *state,
        switch (subtype) {
        case PMIC_GPIO_SUBTYPE_GPIO_4CH:
                pad->have_buffer = true;
+               /* Fall through */
        case PMIC_GPIO_SUBTYPE_GPIOC_4CH:
                pad->num_sources = 4;
                break;
        case PMIC_GPIO_SUBTYPE_GPIO_8CH:
                pad->have_buffer = true;
+               /* Fall through */
        case PMIC_GPIO_SUBTYPE_GPIOC_8CH:
                pad->num_sources = 8;
                break;
@@ -1113,6 +1115,12 @@ static const struct of_device_id pmic_gpio_of_match[] = {
        { .compatible = "qcom,pma8084-gpio", .data = (void *) 22 },
        /* pms405 has 12 GPIOs with holes on 1, 9, and 10 */
        { .compatible = "qcom,pms405-gpio", .data = (void *) 12 },
+       /* pm8150 has 10 GPIOs with holes on 2, 5, 7 and 8 */
+       { .compatible = "qcom,pm8150-gpio", .data = (void *) 10 },
+       /* pm8150b has 12 GPIOs with holes on 3, r and 7 */
+       { .compatible = "qcom,pm8150b-gpio", .data = (void *) 12 },
+       /* pm8150l has 12 GPIOs with holes on 7 */
+       { .compatible = "qcom,pm8150l-gpio", .data = (void *) 12 },
        { },
 };