Lines Matching +full:c +full:- +full:sky
1 // SPDX-License-Identifier: GPL-2.0
2 // Copyright (C) 2018 Hangzhou C-SKY Microsystems co.,ltd.
44 * IFR_offset is NEN_offset - 8.
50 unsigned long ifr = ct->regs.mask - 8; in irq_ck_mask_set_bit()
51 u32 mask = d->mask; in irq_ck_mask_set_bit()
53 guard(raw_spinlock)(&gc->lock); in irq_ck_mask_set_bit()
54 *ct->mask_cache |= mask; in irq_ck_mask_set_bit()
55 irq_reg_writel(gc, *ct->mask_cache, ct->regs.mask); in irq_ck_mask_set_bit()
65 gc->reg_base = reg_base; in ck_set_gc()
66 gc->chip_types[0].regs.mask = mask_reg; in ck_set_gc()
67 gc->chip_types[0].chip.irq_mask = irq_gc_mask_clr_bit; in ck_set_gc()
68 gc->chip_types[0].chip.irq_unmask = irq_gc_mask_set_bit; in ck_set_gc()
70 if (of_property_read_bool(node, "csky,support-pulse-signal")) in ck_set_gc()
71 gc->chip_types[0].chip.irq_unmask = irq_ck_mask_set_bit; in ck_set_gc()
85 * The magic is 0x00010203 for ck-intc in build_channel_val()
86 * The magic is 0x03020100 for gx6605s-intc in build_channel_val()
106 pr_err("C-SKY Intc not a root irq controller\n"); in ck_intc_init_comm()
107 return -EINVAL; in ck_intc_init_comm()
112 pr_err("C-SKY Intc unable to map: %p.\n", node); in ck_intc_init_comm()
113 return -EINVAL; in ck_intc_init_comm()
119 pr_err("C-SKY Intc irq_domain_add failed.\n"); in ck_intc_init_comm()
120 return -ENOMEM; in ck_intc_init_comm()
127 pr_err("C-SKY Intc irq_alloc_gc failed.\n"); in ck_intc_init_comm()
128 return -ENOMEM; in ck_intc_init_comm()
192 IRQCHIP_DECLARE(csky_gx6605s_intc, "csky,gx6605s-intc", gx_intc_init);
195 * C-SKY simple 64 irqs interrupt controller, dual-together could support 128
205 /* handle 0 - 63 irqs */ in ck_irq_handler()
217 /* handle 64 - 127 irqs */ in ck_irq_handler()
254 IRQCHIP_DECLARE(ck_intc, "csky,apb-intc", ck_intc_init);
261 /* dual-apb-intc up to 128 irq sources*/ in ck_dual_intc_init()
280 IRQCHIP_DECLARE(ck_dual_intc, "csky,dual-apb-intc", ck_dual_intc_init);