1
2
3
4
5
6 #ifndef _ASM_SIBYTE_SB1250_H
7 #define _ASM_SIBYTE_SB1250_H
8
9
10
11
12
13 #define SIBYTE_RELEASE 0x02111403
14
15 #define SB1250_NR_IRQS 64
16
17 #define BCM1480_NR_IRQS 128
18 #define BCM1480_NR_IRQS_HALF 64
19
20 #define SB1250_DUART_MINOR_BASE 64
21
22 #ifndef __ASSEMBLY__
23
24 #include <asm/addrspace.h>
25
26
27 #include <asm/sibyte/sb1250_scd.h>
28 #include <asm/sibyte/bcm1480_scd.h>
29 extern unsigned int sb1_pass;
30 extern unsigned int soc_pass;
31 extern unsigned int soc_type;
32 extern unsigned int periph_rev;
33 extern unsigned int zbbus_mhz;
34
35 extern void sb1250_time_init(void);
36 extern void sb1250_mask_irq(int cpu, int irq);
37 extern void sb1250_unmask_irq(int cpu, int irq);
38
39 extern void bcm1480_time_init(void);
40 extern void bcm1480_mask_irq(int cpu, int irq);
41 extern void bcm1480_unmask_irq(int cpu, int irq);
42
43 #define AT_spin \
44 __asm__ __volatile__ ( \
45 ".set noat\n" \
46 "li $at, 0\n" \
47 "1: beqz $at, 1b\n" \
48 ".set at\n" \
49 )
50
51 #endif
52
53 #define IOADDR(a) ((void __iomem *)(IO_BASE + (a)))
54
55 #endif