/openbmc/linux/drivers/pinctrl/mediatek/ |
H A D | mtk-eint.c | 22 #include "mtk-eint.h" 67 static void __iomem *mtk_eint_get_offset(struct mtk_eint *eint, in mtk_eint_get_offset() argument 74 if (eint_num >= eint->hw->ap_num) in mtk_eint_get_offset() 75 eint_base = eint->hw->ap_num; in mtk_eint_get_offset() 77 reg = eint->base + offset + ((eint_num - eint_base) / 32) * 4; in mtk_eint_get_offset() 82 static unsigned int mtk_eint_can_en_debounce(struct mtk_eint *eint, in mtk_eint_can_en_debounce() argument 87 void __iomem *reg = mtk_eint_get_offset(eint, eint_num, in mtk_eint_can_en_debounce() 88 eint->regs->sens); in mtk_eint_can_en_debounce() 95 if (eint_num < eint->hw->db_cnt && sens != MTK_EINT_EDGE_SENSITIVE) in mtk_eint_can_en_debounce() 101 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 | 67 /* Used to fit into various EINT device */ 78 int mtk_eint_do_init(struct mtk_eint *eint); 79 int mtk_eint_do_suspend(struct mtk_eint *eint); 80 int mtk_eint_do_resume(struct mtk_eint *eint); 81 int mtk_eint_set_debounce(struct mtk_eint *eint, unsigned long eint_n, 83 int mtk_eint_find_irq(struct mtk_eint *eint, unsigned long eint_n); 86 static inline int mtk_eint_do_init(struct mtk_eint *eint) in mtk_eint_do_init() argument 91 static inline int mtk_eint_do_suspend(struct mtk_eint *eint) in mtk_eint_do_suspend() argument 96 static inline int mtk_eint_do_resume(struct mtk_eint *eint) in mtk_eint_do_resume() argument 101 static inline int mtk_eint_set_debounce(struct mtk_eint *eint, unsigned long eint_n, in mtk_eint_set_debounce() argument [all …]
|
H A D | pinctrl-mtk-common-v2.c | 18 #include "mtk-eint.h" 243 if (desc[i].eint.eint_n == eint_n) in mtk_xt_find_eint_num() 253 * Some modules use virtual GPIO as eint (e.g. pmif or usb). 254 * In MTK platform, external interrupt (EINT) and GPIO is 1-1 mapping 255 * and we can set GPIO as eint. 256 * But some modules use specific eint which doesn't have real GPIO pin. 267 /* if the GPIO is not supported for eint mode */ in mtk_is_virt_gpio() 268 if (desc->eint.eint_m == NO_EINT_SUPPORT) in mtk_is_virt_gpio() 271 if (desc->funcs && !desc->funcs[desc->eint.eint_m].name) in mtk_is_virt_gpio() 290 * Only eint virtual eint number is greater than gpio number. in mtk_xt_get_gpio_n() [all …]
|
H A D | pinctrl-mtk-common.c | 31 #include "mtk-eint.h" 737 if (pin->eint.eintnum == eint_num) in mtk_find_pin_by_eint_num() 867 if (pin->eint.eintnum == NO_EINT_SUPPORT) in mtk_gpio_to_irq() 870 eint_n = pin->eint.eintnum; in mtk_gpio_to_irq() 872 return mtk_eint_find_irq(pctl->eint, eint_n); in mtk_gpio_to_irq() 887 if (pin->eint.eintnum == NO_EINT_SUPPORT) in mtk_gpio_set_config() 891 eint_n = pin->eint.eintnum; in mtk_gpio_set_config() 893 return mtk_eint_set_debounce(pctl->eint, eint_n, debounce); in mtk_gpio_set_config() 913 return mtk_eint_do_suspend(pctl->eint); in mtk_eint_suspend() 920 return mtk_eint_do_resume(pctl->eint); in mtk_eint_resume() [all …]
|
H A D | pinctrl-mtk-common-v2.h | 197 * for eint data per pin 198 * @eint_m: the eint mux for this pin 199 * @eitn_n: the eint number for this pin 211 * @eint: the eint data for this pin 220 struct mtk_eint_desc eint; member 296 struct mtk_eint *eint; member
|
H A D | pinctrl-moore.c | 528 if (!hw->eint) in mtk_gpio_to_irq() 533 if (desc->eint.eint_n == (u16)EINT_NA) in mtk_gpio_to_irq() 536 return mtk_eint_find_irq(hw->eint, desc->eint.eint_n); in mtk_gpio_to_irq() 550 if (!hw->eint || in mtk_gpio_set_config() 552 desc->eint.eint_n == (u16)EINT_NA) in mtk_gpio_set_config() 557 return mtk_eint_set_debounce(hw->eint, desc->eint.eint_n, debounce); in mtk_gpio_set_config() 722 "Failed to add EINT, but pinctrl still can work\n"); in mtk_moore_pinctrl_probe()
|
H A D | pinctrl-moore.h | 24 #include "mtk-eint.h" 32 .eint = { \
|
H A D | pinctrl-paris.h | 26 #include "mtk-eint.h" 46 .eint = _eint, \
|
H A D | pinctrl-paris.c | 928 if (!hw->eint) in mtk_gpio_to_irq() 933 if (desc->eint.eint_n == EINT_NA) in mtk_gpio_to_irq() 936 return mtk_eint_find_irq(hw->eint, desc->eint.eint_n); in mtk_gpio_to_irq() 948 if (!hw->eint || in mtk_gpio_set_config() 950 desc->eint.eint_n == EINT_NA) in mtk_gpio_set_config() 955 return mtk_eint_set_debounce(hw->eint, desc->eint.eint_n, debounce); in mtk_gpio_set_config() 1095 "Failed to add EINT, but pinctrl still can work\n"); in mtk_paris_pinctrl_probe() 1112 return mtk_eint_do_suspend(pctl->eint); in mtk_paris_pinctrl_suspend() 1119 return mtk_eint_do_resume(pctl->eint); in mtk_paris_pinctrl_resume()
|
H A D | pinctrl-mtk-common.h | 14 #include "mtk-eint.h" 37 const struct mtk_desc_eint eint; member 44 .eint = _eint, \ 293 struct mtk_eint *eint; member
|
H A D | Kconfig | 153 map specific eint which doesn't have real gpio pin. 228 map specific eint which doesn't have real gpio pin.
|
/openbmc/linux/Documentation/devicetree/bindings/pinctrl/ |
H A D | samsung,pinctrl-wakeup-interrupt.yaml | 32 - samsung,s3c2410-wakeup-eint 33 - samsung,s3c2412-wakeup-eint 34 - samsung,s3c64xx-wakeup-eint 35 - samsung,s5pv210-wakeup-eint 36 - samsung,exynos4210-wakeup-eint 37 - samsung,exynos7-wakeup-eint 38 - samsung,exynos850-wakeup-eint 39 - samsung,exynosautov9-wakeup-eint 56 - samsung,s3c2410-wakeup-eint 57 - samsung,s3c2412-wakeup-eint [all …]
|
H A D | mediatek,mt6795-pinctrl.yaml | 35 Physical address base for GPIO base and eint registers. 41 - const: eint 52 - description: EINT interrupt 53 - description: EINT event_b interrupt 187 reg-names = "base", "eint";
|
H A D | mediatek,mt6779-pinctrl.yaml | 24 description: Physical addresses for GPIO base(s) and EINT registers. 83 - const: eint 106 const: eint 216 "eint";
|
H A D | mediatek,mt8188-pinctrl.yaml | 40 - description: eint registers base address 49 - const: eint 196 "eint";
|
H A D | samsung,pinctrl.yaml | 148 compatible = "samsung,s3c64xx-wakeup-eint"; 230 compatible = "samsung,exynos4210-wakeup-eint"; 316 compatible = "samsung,exynos7-wakeup-eint";
|
H A D | mediatek,mt8186-pinctrl.yaml | 50 - const: eint 239 "iocfg_rt", "eint";
|
/openbmc/linux/drivers/pinctrl/samsung/ |
H A D | pinctrl-exynos-arm64.c | 4 // with eint support. 66 /* Must start with EINTG banks, ordered by EINT group number. */ 80 /* Must start with EINTG banks, ordered by EINT group number. */ 87 /* Must start with EINTG banks, ordered by EINT group number. */ 93 /* Must start with EINTG banks, ordered by EINT group number. */ 99 /* Must start with EINTG banks, ordered by EINT group number. */ 105 /* Must start with EINTG banks, ordered by EINT group number. */ 116 /* Must start with EINTG banks, ordered by EINT group number. */ 122 /* Must start with EINTG banks, ordered by EINT group number. */ 128 /* Must start with EINTG banks, ordered by EINT group number. */ [all …]
|
H A D | pinctrl-exynos-arm.c | 3 // Exynos specific support for Samsung pinctrl/gpiolib driver with eint support. 92 /* Must start with EINTG banks, ordered by EINT group number. */ 152 /* Must start with EINTG banks, ordered by EINT group number. */ 164 /* Must start with EINTG banks, ordered by EINT group number. */ 239 /* Must start with EINTG banks, ordered by EINT group number. */ 260 /* Must start with EINTG banks, ordered by EINT group number. */ 285 /* Must start with EINTG banks, ordered by EINT group number. */ 356 /* Must start with EINTG banks, ordered by EINT group number. */ 374 /* Must start with EINTG banks, ordered by EINT group number. */ 402 /* Must start with EINTG banks, ordered by EINT group number. */ [all …]
|
H A D | pinctrl-samsung.h | 121 * @eint_func: function to set in CON register to configure pin as EINT. 123 * @eint_mask: bit mask of pins which support EINT function. 124 * @eint_offset: SoC-specific EINT register or interrupt offset of bank. 145 * @eint_base: base address of the pin-bank EINT registers. 146 * @eint_func: function to set in CON register to configure pin as EINT. 148 * @eint_mask: bit mask of pins which support EINT function. 149 * @eint_offset: SoC-specific EINT register or interrupt offset of bank.
|
H A D | pinctrl-s3c64xx.c | 218 * struct s3c64xx_eint_gpio_data - GPIO EINT data 220 * @domains: array of domains related to EINT interrupt groups 228 * Common functions for S3C64xx EINT configuration 300 * Functions for EINT GPIO configuration (EINT groups 1-9) 436 * Something must be really wrong if an unmapped EINT in s3c64xx_eint_gpio_irq() 615 * Something must be really wrong if an unmapped EINT in s3c64xx_irq_demux_eint() 677 { .compatible = "samsung,s3c64xx-wakeup-eint", }, 715 dev_err(dev, "failed to get wakeup EINT IRQ %d\n", i); in s3c64xx_eint_eint0_init()
|
H A D | pinctrl-exynos.c | 3 // Exynos specific support for Samsung pinctrl/gpiolib driver with eint support. 461 { .compatible = "samsung,s5pv210-wakeup-eint", 463 { .compatible = "samsung,exynos4210-wakeup-eint", 465 { .compatible = "samsung,exynos7-wakeup-eint", 467 { .compatible = "samsung,exynos850-wakeup-eint", 469 { .compatible = "samsung,exynosautov9-wakeup-eint", 591 dev_err(dev, "irq number for eint-%s-%d not found\n", in exynos_eint_wkup_init()
|
/openbmc/linux/sound/soc/codecs/ |
H A D | mt6359-accdet.c | 427 /* set and clear initial bit every eint interrupt */ in mt6359_accdet_jd_work() 542 /* adjust eint digital/analog setting */ in mt6359_accdet_irq() 585 ret = of_property_read_u32(node, "mediatek,eint-level-pol", in mt6359_accdet_parse_dt() 590 ret = of_property_read_u32(node, "mediatek,eint-use-ap", &tmp); in mt6359_accdet_parse_dt() 598 ret = of_property_read_u32(node, "mediatek,eint-detect-mode", in mt6359_accdet_parse_dt() 601 /* eint detection mode equals to EINT HW Mode */ in mt6359_accdet_parse_dt() 605 ret = of_property_read_u32(node, "mediatek,eint-num", &tmp); in mt6359_accdet_parse_dt() 615 ret = of_property_read_u32(node, "mediatek,eint-trig-mode", in mt6359_accdet_parse_dt() 624 ret = of_property_read_u32(node, "mediatek,eint-use-ext-res", in mt6359_accdet_parse_dt() 627 /* eint use internal resister */ in mt6359_accdet_parse_dt() [all …]
|
/openbmc/linux/arch/sparc/include/asm/ |
H A D | ecc.h | 41 * | RESV | ECHECK | EINT | 46 * EINT: Enable Interrupts for correctable errors. 0=off 1=on
|
/openbmc/linux/Documentation/devicetree/bindings/arm/samsung/ |
H A D | samsung-soc.yaml | 38 - samsung,s3c64xx-wakeup-eint
|