Lines Matching full:eic
17 /* EIC registers definition */
54 * The digital-chip EIC controller can support maximum 3 banks, and each bank
64 * The Spreadtrum EIC (external interrupt controller) can be used only in
67 * The Spreadtrum digital-chip EIC controller contains 4 sub-modules:
68 * debounce EIC, latch EIC, async EIC and sync EIC,
70 * The debounce EIC is used to capture the input signals' stable status
75 * The latch EIC is used to latch some special power down signals and
76 * generate interrupts, since the latch EIC does not depend on the APB clock
79 * The async EIC uses a 32k clock to capture the short signals (microsecond
82 * The EIC-sync is similar with GPIO's input function, which is a synchronized
115 "eic-debounce", "eic-latch", "eic-async",
116 "eic-sync",
264 dev_err(chip->parent, "Unsupported EIC type.\n"); in sprd_eic_irq_mask()
293 dev_err(chip->parent, "Unsupported EIC type.\n"); in sprd_eic_irq_unmask()
317 dev_err(chip->parent, "Unsupported EIC type.\n"); in sprd_eic_irq_ack()
474 dev_err(chip->parent, "Unsupported EIC type.\n"); in sprd_eic_irq_set_type()
490 * The debounce EIC and latch EIC can only support level trigger, so we in sprd_eic_toggle_trigger()
522 dev_warn(chip->parent, "EIC level was changed.\n"); in sprd_eic_toggle_trigger()
557 dev_err(chip->parent, "Unsupported EIC type.\n"); in sprd_eic_handle_one_type()
579 * Since the digital-chip EIC 4 sub-modules (debounce, latch, async in sprd_eic_irq_handler()
581 * them to let them check if there are EIC interrupts were triggered. in sprd_eic_irq_handler()
599 .name = "sprd-eic",
643 * We can have maximum 3 banks EICs, and each EIC has in sprd_eic_probe()
645 * have one bank EIC, thus base[1] and base[2] can be in sprd_eic_probe()
706 .compatible = "sprd,sc9860-eic-debounce",
710 .compatible = "sprd,sc9860-eic-latch",
714 .compatible = "sprd,sc9860-eic-async",
718 .compatible = "sprd,sc9860-eic-sync",
730 .name = "sprd-eic",
737 MODULE_DESCRIPTION("Spreadtrum EIC driver");