| /linux/drivers/pinctrl/mediatek/ |
| H A D | mtk-eint.c | 76 static void __iomem *mtk_eint_get_offset(struct mtk_eint *eint, in mtk_eint_get_offset() argument 80 unsigned int idx = eint->pins[eint_num].index; in mtk_eint_get_offset() 81 unsigned int inst = eint->pins[eint_num].instance; in mtk_eint_get_offset() 84 reg = eint->base[inst] + offset + (idx / 32 * 4); in mtk_eint_get_offset() 89 static unsigned int mtk_eint_can_en_debounce(struct mtk_eint *eint, in mtk_eint_can_en_debounce() argument 93 unsigned int bit = BIT(eint->pins[eint_num].index % 32); in mtk_eint_can_en_debounce() 94 void __iomem *reg = mtk_eint_get_offset(eint, eint_num, in mtk_eint_can_en_debounce() 95 eint->regs->sens); in mtk_eint_can_en_debounce() 102 if (eint->pins[eint_num].debounce && sens != MTK_EINT_EDGE_SENSITIVE) in mtk_eint_can_en_debounce() 108 static int mtk_eint_flip_edge(struct mtk_eint *eint, int hwirq) in mtk_eint_flip_edge() argument [all …]
|
| H A D | mtk-eint.h | 92 int mtk_eint_do_init(struct mtk_eint *eint, struct mtk_eint_pin *eint_pin); 93 int mtk_eint_do_suspend(struct mtk_eint *eint); 94 int mtk_eint_do_resume(struct mtk_eint *eint); 95 int mtk_eint_set_debounce(struct mtk_eint *eint, unsigned long eint_n, 97 int mtk_eint_find_irq(struct mtk_eint *eint, unsigned long eint_n); 100 static inline int mtk_eint_do_init(struct mtk_eint *eint, in mtk_eint_do_init() argument 106 static inline int mtk_eint_do_suspend(struct mtk_eint *eint) in mtk_eint_do_suspend() argument 111 static inline int mtk_eint_do_resume(struct mtk_eint *eint) in mtk_eint_do_resume() argument 116 static inline int mtk_eint_set_debounce(struct mtk_eint *eint, unsigned long eint_n, in mtk_eint_set_debounce() argument 122 static inline int mtk_eint_find_irq(struct mtk_eint *eint, unsigned long eint_n) in mtk_eint_find_irq() argument
|
| H A D | pinctrl-mtk-common-v2.c | 245 if (desc[i].eint.eint_n == eint_n) in mtk_xt_find_eint_num() 270 if (desc->eint.eint_m == NO_EINT_SUPPORT) in mtk_is_virt_gpio() 273 if (desc->funcs && !desc->funcs[desc->eint.eint_m].name) in mtk_is_virt_gpio() 295 desc[eint_n].eint.eint_n == eint_n) in mtk_xt_get_gpio_n() 342 desc->eint.eint_m); in mtk_xt_set_gpio_as_eint() 380 hw->eint = devm_kzalloc(hw->dev, sizeof(*hw->eint), GFP_KERNEL); in mtk_build_eint() 381 if (!hw->eint) in mtk_build_eint() 388 hw->eint->nbase = count_reg_names - (int)hw->soc->nbase_names; in mtk_build_eint() 389 if (hw->eint->nbase <= 0) in mtk_build_eint() 392 hw->eint->base = devm_kmalloc_array(&pdev->dev, hw->eint->nbase, in mtk_build_eint() [all …]
|
| H A D | pinctrl-mtk-common.c | 738 if (pin->eint.eintnum == eint_num) in mtk_find_pin_by_eint_num() 874 if (pin->eint.eintnum == NO_EINT_SUPPORT) in mtk_gpio_to_irq() 877 eint_n = pin->eint.eintnum; in mtk_gpio_to_irq() 879 return mtk_eint_find_irq(pctl->eint, eint_n); in mtk_gpio_to_irq() 894 if (pin->eint.eintnum == NO_EINT_SUPPORT) in mtk_gpio_set_config() 898 eint_n = pin->eint.eintnum; in mtk_gpio_set_config() 900 return mtk_eint_set_debounce(pctl->eint, eint_n, debounce); in mtk_gpio_set_config() 920 return mtk_eint_do_suspend(pctl->eint); in mtk_eint_suspend() 927 return mtk_eint_do_resume(pctl->eint); in mtk_eint_resume() 1005 mtk_pmx_set_mode(pctl->pctl_dev, pin->pin.number, pin->eint.eintmux); in mtk_xt_set_gpio_as_eint() [all …]
|
| H A D | pinctrl-moore.c | 547 if (!hw->eint) in mtk_gpio_to_irq() 552 if (desc->eint.eint_n == (u16)EINT_NA) in mtk_gpio_to_irq() 555 return mtk_eint_find_irq(hw->eint, desc->eint.eint_n); in mtk_gpio_to_irq() 569 if (!hw->eint || in mtk_gpio_set_config() 571 desc->eint.eint_n == (u16)EINT_NA) in mtk_gpio_set_config() 576 return mtk_eint_set_debounce(hw->eint, desc->eint.eint_n, debounce); in mtk_gpio_set_config()
|
| H A D | pinctrl-paris.c | 911 if (!hw->eint) in mtk_gpio_to_irq() 916 if (desc->eint.eint_n == EINT_NA) in mtk_gpio_to_irq() 919 return mtk_eint_find_irq(hw->eint, desc->eint.eint_n); in mtk_gpio_to_irq() 931 if (!hw->eint || in mtk_gpio_set_config() 933 desc->eint.eint_n == EINT_NA) in mtk_gpio_set_config() 938 return mtk_eint_set_debounce(hw->eint, desc->eint.eint_n, debounce); in mtk_gpio_set_config() 1092 return mtk_eint_do_suspend(pctl->eint); in mtk_paris_pinctrl_suspend() 1099 return mtk_eint_do_resume(pctl->eint); in mtk_paris_pinctrl_resume()
|
| H A D | Kconfig | 153 map specific eint which doesn't have real gpio pin. 265 map specific eint which doesn't have real gpio pin. 277 map specific eint which doesn't have real gpio pin. 303 map specific eint which doesn't have real gpio pin.
|
| H A D | Makefile | 3 obj-$(CONFIG_EINT_MTK) += mtk-eint.o
|
| /linux/arch/arm/boot/dts/samsung/ |
| H A D | s3c64xx.dtsi | 182 compatible = "samsung,s3c64xx-wakeup-eint";
|
| H A D | exynos4210.dtsi | 322 compatible = "samsung,exynos4210-wakeup-eint";
|
| H A D | exynos5260.dtsi | 381 compatible = "samsung,exynos4210-wakeup-eint";
|
| H A D | exynos4x12.dtsi | 221 compatible = "samsung,exynos4210-wakeup-eint";
|
| H A D | s5pv210.dtsi | 114 compatible = "samsung,s5pv210-wakeup-eint";
|
| H A D | exynos3250.dtsi | 465 compatible = "samsung,exynos4210-wakeup-eint";
|
| H A D | exynos5420.dtsi | 510 compatible = "samsung,exynos4210-wakeup-eint";
|
| /linux/arch/arm/boot/dts/mediatek/ |
| H A D | mt7629.dtsi | 153 reg-names = "base", "eint";
|
| /linux/arch/arm64/boot/dts/mediatek/ |
| H A D | mt7622.dtsi | 314 reg-names = "base", "eint";
|
| H A D | mt8186-corsola.dtsi | 1146 mmc1_pins_eint: mmc1-eint-pins {
|