1 #ifndef _INCLUDE_CERF_H_
2 #define _INCLUDE_CERF_H_
4 #include <linux/config.h>
6 #ifdef CONFIG_SA1100_CERF_CPLD
9 // Map sa1100fb.c to sa1100_frontlight.c - Not pretty, but necessary.
10 #define CERF_BACKLIGHT_ENABLE sa1100_fl_enable
11 #define CERF_BACKLIGHT_DISABLE sa1100_fl_disable
14 // IO Pins for devices
17 #define CERF_PDA_CPLD 0xf1000000
18 #define CERF_PDA_CPLD_WRCLRINT (0x0)
19 #define CERF_PDA_CPLD_BACKLIGHT (0x2)
20 #define CERF_PDA_CPLD_SOUND_FREQ (0x4)
21 #define CERF_PDA_CPLD_KEYPAD_A (0x6)
22 #define CERF_PDA_CPLD_BATTFAULT (0x8)
23 #define CERF_PDA_CPLD_KEYPAD_B (0xa)
24 #define CERF_PDA_CPLD_SOUND_ENA (0xc)
25 #define CERF_PDA_CPLD_SOUND_RESET (0xe)
27 #define GPIO_CF_BVD2 GPIO_GPIO (5)
28 #define GPIO_CF_BVD1 GPIO_GPIO (6)
29 #define GPIO_CF_RESET GPIO_GPIO (7)
30 #define GPIO_CF_IRQ GPIO_GPIO (8)
31 #define GPIO_CF_CD GPIO_GPIO (9)
33 #define GPIO_PWR_SHUTDOWN GPIO_GPIO (25)
35 #define UCB1200_GPIO_CONT_CS 0x0001
36 #define UCB1200_GPIO_CONT_DOWN 0x0002
37 #define UCB1200_GPIO_CONT_INC 0x0004
38 #define UCB1200_GPIO_CONT_ENA 0x0008
39 #define UCB1200_GPIO_LCD_RESET 0x0010
40 #define UCB1200_GPIO_IRDA_ENABLE 0x0020
41 #define UCB1200_GPIO_BT_ENABLE 0x0040
42 #define UCB1200_GPIO_L3_DATA 0x0080
43 #define UCB1200_GPIO_L3_CLOCK 0x0100
44 #define UCB1200_GPIO_L3_MODE 0x0200
50 #define IRQ_UCB1200_CONT_CS IRQ_UCB1200_IO0
51 #define IRQ_UCB1200_CONT_DOWN IRQ_UCB1200_IO1
52 #define IRQ_UCB1200_CONT_INC IRQ_UCB1200_IO2
53 #define IRQ_UCB1200_CONT_ENA IRQ_UCB1200_IO3
54 #define IRQ_UCB1200_LCD_RESET IRQ_UCB1200_IO4
55 #define IRQ_UCB1200_IRDA_ENABLE IRQ_UCB1200_IO5
56 #define IRQ_UCB1200_BT_ENABLE IRQ_UCB1200_IO6
57 #define IRQ_UCB1200_L3_DATA IRQ_UCB1200_IO7
58 #define IRQ_UCB1200_L3_CLOCK IRQ_UCB1200_IO8
59 #define IRQ_UCB1200_L3_MODE IRQ_UCB1200_IO9
61 #define IRQ_GPIO_CF_BVD2 IRQ_GPIO5
62 #define IRQ_GPIO_CF_BVD1 IRQ_GPIO6
63 #define IRQ_GPIO_CF_IRQ IRQ_GPIO8
64 #define IRQ_GPIO_CF_CD IRQ_GPIO9
70 #define CERF_PDA_CPLD_SOUND_FREQ_8000 (0x01)
71 #define CERF_PDA_CPLD_SOUND_FREQ_11025 (0x05)
72 #define CERF_PDA_CPLD_SOUND_FREQ_16000 (0x02)
73 #define CERF_PDA_CPLD_SOUND_FREQ_22050 (0x06)
74 #define CERF_PDA_CPLD_SOUND_FREQ_32000 (0x03)
75 #define CERF_PDA_CPLD_SOUND_FREQ_44100 (0x07)
76 #define CERF_PDA_CPLD_SOUND_FREQ_48000 (0x0b)
82 #define CERF_PDA_CPLD_Get(x, y) (*((char*)(CERF_PDA_CPLD + (x))) & (y))
83 #define CERF_PDA_CPLD_Set(x, y, z) (*((char*)(CERF_PDA_CPLD + (x))) = (*((char*)(CERF_PDA_CPLD + (x))) & ~(z)) | (y))
84 #define CERF_PDA_CPLD_UnSet(x, y, z) (*((char*)(CERF_PDA_CPLD + (x))) = (*((char*)(CERF_PDA_CPLD + (x))) & ~(z)) & ~(y))
87 #else // CONFIG_SA1100_CERF_CPLD
90 #define GPIO_CF_BVD2 GPIO_GPIO (19)
91 #define GPIO_CF_BVD1 GPIO_GPIO (20)
92 #define GPIO_CF_RESET 0
93 #define GPIO_CF_IRQ GPIO_GPIO (22)
94 #define GPIO_CF_CD GPIO_GPIO (23)
96 #define GPIO_LCD_RESET GPIO_GPIO (15)
98 #define IRQ_GPIO_CF_BVD2 IRQ_GPIO19
99 #define IRQ_GPIO_CF_BVD1 IRQ_GPIO20
100 #define IRQ_GPIO_CF_IRQ IRQ_GPIO22
101 #define IRQ_GPIO_CF_CD IRQ_GPIO23
104 #endif // CONFIG_SA1100_CERF_CPLD
107 #define GPIO_UCB1200_IRQ GPIO_GPIO (18)
108 #define IRQ_GPIO_UCB1200_IRQ IRQ_GPIO18
110 #endif // _INCLUDE_CERF_H_