Loading Documentation/devicetree/bindings/interrupt-controller/qti,mpm.txt +2 −2 Original line number Diff line number Diff line Loading @@ -52,7 +52,7 @@ Properties: Example: wakegic: wake-gic@7781b8 { compatible = "qcom,mpm-gic", "qcom,mpm-gic-msm8953"; compatible = "qcom,mpm-gic", "qcom,mpm-gic-msm8953", "qcom,mpm-gic-msm8937"; interrupts = <GIC_SPI 171 IRQ_TYPE_EDGE_RISING>; reg = <0x601d4 0x1000>, <0xb011008 0x4>; /* MSM_APCS_GCC_BASE 4K */ Loading Loading @@ -85,7 +85,7 @@ properties: Example: wakegpio: wake-gpio { compatible = "qcom,mpm-gpio", "qcom,mpm-gpio-msm8953"; compatible = "qcom,mpm-gpio", "qcom,mpm-gpio-msm8953", "qcom,mpm-gpio-msm8937"; interrupt-controller; interrupt-parent = <&tlmm>; #interrupt-cells = <2>; Loading drivers/irqchip/qcom/Makefile +1 −0 Original line number Diff line number Diff line Loading @@ -2,3 +2,4 @@ obj-$(CONFIG_QTI_PDC) += pdc.o obj-$(CONFIG_QTI_PDC_SM8150) += pdc-sm8150.o obj-$(CONFIG_QTI_PDC_SM6150) += pdc-sm6150.o obj-$(CONFIG_QTI_MPM) += mpm.o obj-$(CONFIG_QTI_MPM) += mpm.o mpm-8937.o drivers/irqchip/qcom/mpm-8937.c 0 → 100644 +74 −0 Original line number Diff line number Diff line /* Copyright (c) 2018, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * */ #include "mpm.h" const struct mpm_pin mpm_msm8937_gic_chip_data[] = { {2, 216}, {49, 172}, {53, 104}, {58, 166}, {62, 222}, {-1}, }; const struct mpm_pin mpm_msm8937_gpio_chip_data[] = { {3, 38}, {4, 1}, {5, 5}, {6, 9}, {8, 37}, {9, 36}, {10, 13}, {11, 35}, {12, 17}, {13, 21}, {14, 54}, {15, 34}, {16, 31}, {17, 58}, {18, 28}, {19, 42}, {20, 25}, {21, 12}, {22, 43}, {23, 44}, {24, 45}, {25, 46}, {26, 48}, {27, 65}, {28, 93}, {29, 97}, {30, 63}, {31, 70}, {32, 71}, {33, 72}, {34, 81}, {35, 126}, {36, 90}, {37, 128}, {38, 91}, {39, 41}, {40, 127}, {41, 86}, {50, 67}, {51, 73}, {52, 74}, {53, 62}, {54, 124}, {55, 61}, {56, 130}, {57, 59}, {59, 50}, {-1}, }; drivers/irqchip/qcom/mpm.c +8 −0 Original line number Diff line number Diff line Loading @@ -601,11 +601,19 @@ static int msm_mpm_init(struct device_node *node) } static const struct of_device_id mpm_gic_chip_data_table[] = { { .compatible = "qcom,mpm-gic-msm8937", .data = mpm_msm8937_gic_chip_data, }, {} }; MODULE_DEVICE_TABLE(of, mpm_gic_chip_data_table); static const struct of_device_id mpm_gpio_chip_data_table[] = { { .compatible = "qcom,mpm-gpio-msm8937", .data = mpm_msm8937_gpio_chip_data, }, {} }; Loading drivers/irqchip/qcom/mpm.h +3 −0 Original line number Diff line number Diff line Loading @@ -21,4 +21,7 @@ struct mpm_pin { irq_hw_number_t hwirq; }; extern const struct mpm_pin mpm_msm8937_gic_chip_data[]; extern const struct mpm_pin mpm_msm8937_gpio_chip_data[]; #endif /* __QCOM_MPM_H__ */ Loading
Documentation/devicetree/bindings/interrupt-controller/qti,mpm.txt +2 −2 Original line number Diff line number Diff line Loading @@ -52,7 +52,7 @@ Properties: Example: wakegic: wake-gic@7781b8 { compatible = "qcom,mpm-gic", "qcom,mpm-gic-msm8953"; compatible = "qcom,mpm-gic", "qcom,mpm-gic-msm8953", "qcom,mpm-gic-msm8937"; interrupts = <GIC_SPI 171 IRQ_TYPE_EDGE_RISING>; reg = <0x601d4 0x1000>, <0xb011008 0x4>; /* MSM_APCS_GCC_BASE 4K */ Loading Loading @@ -85,7 +85,7 @@ properties: Example: wakegpio: wake-gpio { compatible = "qcom,mpm-gpio", "qcom,mpm-gpio-msm8953"; compatible = "qcom,mpm-gpio", "qcom,mpm-gpio-msm8953", "qcom,mpm-gpio-msm8937"; interrupt-controller; interrupt-parent = <&tlmm>; #interrupt-cells = <2>; Loading
drivers/irqchip/qcom/Makefile +1 −0 Original line number Diff line number Diff line Loading @@ -2,3 +2,4 @@ obj-$(CONFIG_QTI_PDC) += pdc.o obj-$(CONFIG_QTI_PDC_SM8150) += pdc-sm8150.o obj-$(CONFIG_QTI_PDC_SM6150) += pdc-sm6150.o obj-$(CONFIG_QTI_MPM) += mpm.o obj-$(CONFIG_QTI_MPM) += mpm.o mpm-8937.o
drivers/irqchip/qcom/mpm-8937.c 0 → 100644 +74 −0 Original line number Diff line number Diff line /* Copyright (c) 2018, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * */ #include "mpm.h" const struct mpm_pin mpm_msm8937_gic_chip_data[] = { {2, 216}, {49, 172}, {53, 104}, {58, 166}, {62, 222}, {-1}, }; const struct mpm_pin mpm_msm8937_gpio_chip_data[] = { {3, 38}, {4, 1}, {5, 5}, {6, 9}, {8, 37}, {9, 36}, {10, 13}, {11, 35}, {12, 17}, {13, 21}, {14, 54}, {15, 34}, {16, 31}, {17, 58}, {18, 28}, {19, 42}, {20, 25}, {21, 12}, {22, 43}, {23, 44}, {24, 45}, {25, 46}, {26, 48}, {27, 65}, {28, 93}, {29, 97}, {30, 63}, {31, 70}, {32, 71}, {33, 72}, {34, 81}, {35, 126}, {36, 90}, {37, 128}, {38, 91}, {39, 41}, {40, 127}, {41, 86}, {50, 67}, {51, 73}, {52, 74}, {53, 62}, {54, 124}, {55, 61}, {56, 130}, {57, 59}, {59, 50}, {-1}, };
drivers/irqchip/qcom/mpm.c +8 −0 Original line number Diff line number Diff line Loading @@ -601,11 +601,19 @@ static int msm_mpm_init(struct device_node *node) } static const struct of_device_id mpm_gic_chip_data_table[] = { { .compatible = "qcom,mpm-gic-msm8937", .data = mpm_msm8937_gic_chip_data, }, {} }; MODULE_DEVICE_TABLE(of, mpm_gic_chip_data_table); static const struct of_device_id mpm_gpio_chip_data_table[] = { { .compatible = "qcom,mpm-gpio-msm8937", .data = mpm_msm8937_gpio_chip_data, }, {} }; Loading
drivers/irqchip/qcom/mpm.h +3 −0 Original line number Diff line number Diff line Loading @@ -21,4 +21,7 @@ struct mpm_pin { irq_hw_number_t hwirq; }; extern const struct mpm_pin mpm_msm8937_gic_chip_data[]; extern const struct mpm_pin mpm_msm8937_gpio_chip_data[]; #endif /* __QCOM_MPM_H__ */