Lines Matching +full:mips +full:- +full:gic
3 * Author: Paul Burton <paul.burton@mips.com>
12 # error Please include asm/mips-cps.h rather than asm/mips-gic.h
20 /* The base address of the GIC registers */
23 /* Offsets from the GIC base address to various control blocks */
33 /* For read-only shared registers */
35 CPS_ACCESSOR_RO(gic, sz, MIPS_GIC_SHARED_OFS + off, name)
37 /* For read-write shared registers */
39 CPS_ACCESSOR_RW(gic, sz, MIPS_GIC_SHARED_OFS + off, name)
41 /* For read-only local registers */
43 CPS_ACCESSOR_RO(gic, sz, MIPS_GIC_LOCAL_OFS + off, vl_##name) \
44 CPS_ACCESSOR_RO(gic, sz, MIPS_GIC_REDIR_OFS + off, vo_##name)
46 /* For read-write local registers */
48 CPS_ACCESSOR_RW(gic, sz, MIPS_GIC_LOCAL_OFS + off, vl_##name) \
49 CPS_ACCESSOR_RW(gic, sz, MIPS_GIC_REDIR_OFS + off, vo_##name)
51 /* For read-only shared per-interrupt registers */
64 /* For read-write shared per-interrupt registers */
75 /* For read-only local per-interrupt registers */
82 /* For read-write local per-interrupt registers */
89 /* For read-only shared bit-per-interrupt registers */
112 /* For read-write shared bit-per-interrupt registers */
153 /* For read-only local bit-per-interrupt registers */
160 /* For read-write local bit-per-interrupt registers */
167 /* GIC_SH_CONFIG - Information about the GIC configuration */
174 /* GIC_SH_COUNTER - Shared global counter value */
179 /* GIC_SH_POL_* - Configures interrupt polarity */
183 #define GIC_POL_FALLING_EDGE 0 /* when single-edge triggered */
184 #define GIC_POL_RISING_EDGE 1 /* when single-edge triggered */
186 /* GIC_SH_TRIG_* - Configures interrupts to be edge or level triggered */
191 /* GIC_SH_DUAL_* - Configures whether interrupts trigger on both edges */
193 #define GIC_DUAL_SINGLE 0 /* when edge-triggered */
194 #define GIC_DUAL_DUAL 1 /* when edge-triggered */
196 /* GIC_SH_WEDGE - Write an 'edge', ie. trigger an interrupt */
201 /* GIC_SH_RMASK_* - Reset/clear shared interrupt mask bits */
204 /* GIC_SH_SMASK_* - Set shared interrupt mask bits */
207 /* GIC_SH_MASK_* - Read the current shared interrupt mask */
210 /* GIC_SH_PEND_* - Read currently pending shared interrupts */
213 /* GIC_SH_MAPx_PIN - Map shared interrupts to a particular CPU pin */
219 /* GIC_SH_MAPx_VP - Map shared interrupts to a particular Virtual Processor */
222 /* GIC_Vx_CTL - VP-level interrupt control */
230 /* GIC_Vx_PEND - Read currently pending local interrupts */
233 /* GIC_Vx_MASK - Read the current local interrupt mask */
236 /* GIC_Vx_RMASK - Reset/clear local interrupt mask bits */
239 /* GIC_Vx_SMASK - Set local interrupt mask bits */
242 /* GIC_Vx_*_MAP - Route local interrupts to the desired pins */
245 /* GIC_Vx_WD_MAP - Route the local watchdog timer interrupt */
248 /* GIC_Vx_COMPARE_MAP - Route the local count/compare interrupt */
251 /* GIC_Vx_TIMER_MAP - Route the local CPU timer (cp0 count/compare) interrupt */
254 /* GIC_Vx_FDC_MAP - Route the local fast debug channel interrupt */
257 /* GIC_Vx_PERFCTR_MAP - Route the local performance counter interrupt */
260 /* GIC_Vx_SWINT0_MAP - Route the local software interrupt 0 */
263 /* GIC_Vx_SWINT1_MAP - Route the local software interrupt 1 */
266 /* GIC_Vx_OTHER - Configure access to other Virtual Processor registers */
270 /* GIC_Vx_IDENT - Retrieve the local Virtual Processor's ID */
274 /* GIC_Vx_COMPARE - Value to compare with GIC_SH_COUNTER */
277 /* GIC_Vx_EIC_SHADOW_SET_BASE - Set shadow register set for each interrupt */
281 * enum mips_gic_local_interrupt - GIC local interrupts
282 * @GIC_LOCAL_INT_WD: GIC watchdog timer interrupt
283 * @GIC_LOCAL_INT_COMPARE: GIC count/compare interrupt
291 * Enumerates interrupts provided by the GIC that are local to a VP.
305 * mips_gic_present() - Determine whether a GIC is present
307 * Determines whether a MIPS Global Interrupt Controller (GIC) is present in
310 * Return true if a GIC is present, else false.
318 * mips_gic_vx_map_reg() - Return GIC_Vx_<intr>_MAP register offset
319 * @intr: A GIC local interrupt
322 * within the block of GIC map registers. This is almost the same as the order
348 * gic_get_c0_compare_int() - Return cp0 count/compare interrupt virq
351 * interrupt, which may be routed via the GIC.
358 * gic_get_c0_perfcount_int() - Return performance counter interrupt virq
361 * which may be routed via the GIC.
368 * gic_get_c0_fdc_int() - Return fast debug channel interrupt virq
371 * which may be routed via the GIC.