arch/tile: core support for Tilera 32-bit chips.
[linux-3.10.git] / arch / tile / include / asm / irq.h
1 /*
2  * Copyright 2010 Tilera Corporation. All Rights Reserved.
3  *
4  *   This program is free software; you can redistribute it and/or
5  *   modify it under the terms of the GNU General Public License
6  *   as published by the Free Software Foundation, version 2.
7  *
8  *   This program is distributed in the hope that it will be useful, but
9  *   WITHOUT ANY WARRANTY; without even the implied warranty of
10  *   MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or
11  *   NON INFRINGEMENT.  See the GNU General Public License for
12  *   more details.
13  */
14
15 #ifndef _ASM_TILE_IRQ_H
16 #define _ASM_TILE_IRQ_H
17
18 #include <linux/hardirq.h>
19
20 /* The hypervisor interface provides 32 IRQs. */
21 #define NR_IRQS 32
22
23 /* IRQ numbers used for linux IPIs. */
24 #define IRQ_RESCHEDULE 1
25
26 /* The HV interrupt state object. */
27 DECLARE_PER_CPU(HV_IntrState, dev_intr_state);
28
29 void ack_bad_irq(unsigned int irq);
30
31 /*
32  * Paravirtualized drivers should call this when their init calls
33  * discover a valid HV IRQ.
34  */
35 void tile_irq_activate(unsigned int irq);
36
37 #endif /* _ASM_TILE_IRQ_H */