ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.6.tar.bz2
[linux-2.6.git] / include / asm-arm / arch-sa1100 / freebird.h
1 /*
2  *
3  */
4
5 #ifndef __ASM_ARCH_HARDWARE_H
6 #error "include <asm/hardware.h> instead"
7 #endif
8
9
10 /* Board Control Register */
11
12 #define BCR_BASE  0xf0000000
13 #define BCR (*(volatile unsigned int *)(BCR_BASE))
14
15 #define BCR_DB1110      (0x00A07410)
16
17
18 #define BCR_FREEBIRD_AUDIO_PWR  (1<<0)  /* Audio Power (1 = on, 0 = off) */
19 #define BCR_FREEBIRD_LCD_PWR            (1<<1)  /* LCD Power (1 = on) */
20 #define BCR_FREEBIRD_CODEC_RST  (1<<2)  /* 0 = Holds UCB1300, ADI7171, and UDA1341 in reset */
21 #define BCR_FREEBIRD_IRDA_FSEL  (1<<3)  /* IRDA Frequency select (0 = SIR, 1 = MIR/ FIR) */
22 #define BCR_FREEBIRD_IRDA_MD0   (1<<4)  /* Range/Power select */
23 #define BCR_FREEBIRD_IRDA_MD1   (1<<5)  /* Range/Power select */
24 #define BCR_FREEBIRD_LCD_DISP   (1<<7)  /* LCD display (1 = on, 0 = off */
25 #define BCR_FREEBIRD_LCD_BACKLIGHT      (1<<16) /* LCD backlight ,1=on */
26 #define BCR_FREEBIRD_LCD_LIGHT_INC      (1<<17) /* LCD backlight brightness */
27 #define BCR_FREEBIRD_LCD_LIGHT_DU       (1<<18) /* LCD backlight brightness */
28 #define BCR_FREEBIRD_LCD_INC                    (1<<19) /* LCD contrast  */
29 #define BCR_FREEBIRD_LCD_DU                     (1<<20) /* LCD contrast */
30 #define BCR_FREEBIRD_QMUTE                      (1<<21) /* Quick Mute */
31 #define BCR_FREEBIRD_ALARM_LED          (1<<22) /* ALARM LED control */
32 #define BCR_FREEBIRD_SPK_OFF    (1<<23) /* 1 = Speaker amplifier power off */
33
34 #ifndef __ASSEMBLY__
35 extern unsigned long BCR_value;
36 #define BCR_set( x )    BCR = (BCR_value |= (x))
37 #define BCR_clear( x )  BCR = (BCR_value &= ~(x))
38 #endif
39
40
41 /* GPIOs for which the generic definition doesn't say much */
42 #define GPIO_FREEBIRD_NPOWER_BUTTON             GPIO_GPIO(0)
43 #define GPIO_FREEBIRD_APP1_BUTTON               GPIO_GPIO(1)
44 #define GPIO_FREEBIRD_APP2_BUTTON               GPIO_GPIO(2)
45 #define GPIO_FREEBIRD_APP3_BUTTOM               GPIO_GPIO(3)
46 #define GPIO_FREEBIRD_UCB1300                   GPIO_GPIO(4)
47
48 #define GPIO_FREEBIRD_EXPWR                             GPIO_GPIO(8)
49 #define GPIO_FREEBIRD_CHARGING                  GPIO_GPIO(9)
50 #define GPIO_FREEBIRD_RAMD                              GPIO_GPIO(14)
51 #define GPIO_FREEBIRD_L3_DATA                   GPIO_GPIO(15)
52 #define GPIO_FREEBIRD_L3_MODE                   GPIO_GPIO(17)
53 #define GPIO_FREEBIRD_L3_CLOCK                  GPIO_GPIO(18)
54 #define GPIO_FREEBIRD_STEREO_64FS_CLK   GPIO_GPIO(10)
55
56 #define GPIO_FREEBIRD_CF_CD                             GPIO_GPIO(22)
57 #define GPIO_FREEBIRD_CF_IRQ                    GPIO_GPIO(21)
58 #define GPIO_FREEBIRD_CF_BVD                    GPIO_GPIO(25)
59
60 #define IRQ_GPIO_FREEBIRD_NPOWER_BUTTON IRQ_GPIO0
61 #define IRQ_GPIO_FREEBIRD_APP1_BUTTON   IRQ_GPIO1
62 #define IRQ_GPIO_FREEBIRD_APP2_BUTTON   IRQ_GPIO2
63 #define IRQ_GPIO_FREEBIRD_APP3_BUTTON   IRQ_GPIO3
64 #define IRQ_GPIO_FREEBIRD_UCB1300_IRQ   IRQ_GPIO4
65
66 #define IRQ_GPIO_FREEBIRD_CF_IRQ                IRQ_GPIO21
67 #define IRQ_GPIO_FREEBIRD_CF_CD                 IRQ_GPIO22
68 #define IRQ_GPIO_FREEBIRD_CF_BVD                IRQ_GPIO25
69