0001
0002
0003
0004
0005
0006 #ifndef _ASM_SIBYTE_SB1250_H
0007 #define _ASM_SIBYTE_SB1250_H
0008
0009
0010
0011
0012
0013 #define SIBYTE_RELEASE 0x02111403
0014
0015 #define SB1250_NR_IRQS 64
0016
0017 #define BCM1480_NR_IRQS 128
0018 #define BCM1480_NR_IRQS_HALF 64
0019
0020 #define SB1250_DUART_MINOR_BASE 64
0021
0022 #ifndef __ASSEMBLY__
0023
0024 #include <asm/addrspace.h>
0025
0026
0027 #include <asm/sibyte/sb1250_scd.h>
0028 #include <asm/sibyte/bcm1480_scd.h>
0029 extern unsigned int sb1_pass;
0030 extern unsigned int soc_pass;
0031 extern unsigned int soc_type;
0032 extern unsigned int periph_rev;
0033 extern unsigned int zbbus_mhz;
0034
0035 extern void sb1250_time_init(void);
0036 extern void sb1250_mask_irq(int cpu, int irq);
0037 extern void sb1250_unmask_irq(int cpu, int irq);
0038
0039 extern void bcm1480_time_init(void);
0040 extern void bcm1480_mask_irq(int cpu, int irq);
0041 extern void bcm1480_unmask_irq(int cpu, int irq);
0042
0043 #define AT_spin \
0044 __asm__ __volatile__ ( \
0045 ".set noat\n" \
0046 "li $at, 0\n" \
0047 "1: beqz $at, 1b\n" \
0048 ".set at\n" \
0049 )
0050
0051 #endif
0052
0053 #define IOADDR(a) ((void __iomem *)(IO_BASE + (a)))
0054
0055 #endif