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__
35extern 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
70