comparison src/cs/drivers/drv_app/kpd/board/kpd_scan_functions.c @ 279:4dd30fac5933

kpd_scan_functions.c: rm trailing white space
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 23 Sep 2021 23:42:41 +0000
parents 4e78acac3d88
children 82665effff30
comparison
equal deleted inserted replaced
278:75758d7a9be3 279:4dd30fac5933
64 #if (BOARD == 7) 64 #if (BOARD == 7)
65 #define KP_ROWS 5 65 #define KP_ROWS 5
66 #define KP_COLS 4 66 #define KP_COLS 4
67 67
68 const T_KPD_PHYSICAL_KEY_ID keypad_layout[KP_ROWS][KP_COLS]= 68 const T_KPD_PHYSICAL_KEY_ID keypad_layout[KP_ROWS][KP_COLS]=
69 { 69 {
70 /* Layout of B-Sample */ 70 /* Layout of B-Sample */
71 {KPD_PKEY_SOFT_LEFT, KPD_PKEY_UP, KPD_PKEY_DOWN, KPD_PKEY_SOFT_RIGHT}, 71 {KPD_PKEY_SOFT_LEFT, KPD_PKEY_UP, KPD_PKEY_DOWN, KPD_PKEY_SOFT_RIGHT},
72 {KPD_PKEY_1, KPD_PKEY_2, KPD_PKEY_3, KPD_PKEY_GREEN}, 72 {KPD_PKEY_1, KPD_PKEY_2, KPD_PKEY_3, KPD_PKEY_GREEN},
73 {KPD_PKEY_4, KPD_PKEY_5, KPD_PKEY_6, KPD_PKEY_NULL}, 73 {KPD_PKEY_4, KPD_PKEY_5, KPD_PKEY_6, KPD_PKEY_NULL},
74 {KPD_PKEY_7, KPD_PKEY_8, KPD_PKEY_9, KPD_PKEY_NULL}, 74 {KPD_PKEY_7, KPD_PKEY_8, KPD_PKEY_9, KPD_PKEY_NULL},
76 }; 76 };
77 #elif ((BOARD == 8) || (BOARD == 9)) 77 #elif ((BOARD == 8) || (BOARD == 9))
78 #define KP_ROWS 5 78 #define KP_ROWS 5
79 #define KP_COLS 4 79 #define KP_COLS 4
80 const T_KPD_PHYSICAL_KEY_ID keypad_layout[KP_ROWS][KP_COLS]= 80 const T_KPD_PHYSICAL_KEY_ID keypad_layout[KP_ROWS][KP_COLS]=
81 { 81 {
82 /* Layout of C-Sample */ 82 /* Layout of C-Sample */
83 {KPD_PKEY_UP, KPD_PKEY_GREEN,KPD_PKEY_SOFT_RIGHT,KPD_PKEY_DOWN}, 83 {KPD_PKEY_UP, KPD_PKEY_GREEN,KPD_PKEY_SOFT_RIGHT,KPD_PKEY_DOWN},
84 {KPD_PKEY_1, KPD_PKEY_2, KPD_PKEY_3, KPD_PKEY_SOFT_LEFT}, 84 {KPD_PKEY_1, KPD_PKEY_2, KPD_PKEY_3, KPD_PKEY_SOFT_LEFT},
85 {KPD_PKEY_4, KPD_PKEY_5, KPD_PKEY_6, KPD_PKEY_NULL}, 85 {KPD_PKEY_4, KPD_PKEY_5, KPD_PKEY_6, KPD_PKEY_NULL},
86 {KPD_PKEY_7, KPD_PKEY_8, KPD_PKEY_9, KPD_PKEY_NULL}, 86 {KPD_PKEY_7, KPD_PKEY_8, KPD_PKEY_9, KPD_PKEY_NULL},
88 }; 88 };
89 #elif defined(CONFIG_TARGET_COMPAL) 89 #elif defined(CONFIG_TARGET_COMPAL)
90 #define KP_ROWS 5 90 #define KP_ROWS 5
91 #define KP_COLS 4 91 #define KP_COLS 4
92 const T_KPD_PHYSICAL_KEY_ID keypad_layout[KP_ROWS][KP_COLS]= 92 const T_KPD_PHYSICAL_KEY_ID keypad_layout[KP_ROWS][KP_COLS]=
93 { 93 {
94 /* Mot C1xx keypad */ 94 /* Mot C1xx keypad */
95 {KPD_PKEY_GREEN, KPD_PKEY_3, KPD_PKEY_2, KPD_PKEY_1}, 95 {KPD_PKEY_GREEN, KPD_PKEY_3, KPD_PKEY_2, KPD_PKEY_1},
96 {KPD_PKEY_UP, KPD_PKEY_6, KPD_PKEY_5, KPD_PKEY_4}, 96 {KPD_PKEY_UP, KPD_PKEY_6, KPD_PKEY_5, KPD_PKEY_4},
97 {KPD_PKEY_DOWN, KPD_PKEY_9, KPD_PKEY_8, KPD_PKEY_7}, 97 {KPD_PKEY_DOWN, KPD_PKEY_9, KPD_PKEY_8, KPD_PKEY_7},
98 {KPD_PKEY_LEFT, KPD_PKEY_DIESE, KPD_PKEY_0, KPD_PKEY_STAR}, 98 {KPD_PKEY_LEFT, KPD_PKEY_DIESE, KPD_PKEY_0, KPD_PKEY_STAR},
100 }; 100 };
101 #elif defined(CONFIG_TARGET_PIRELLI) 101 #elif defined(CONFIG_TARGET_PIRELLI)
102 #define KP_ROWS 5 102 #define KP_ROWS 5
103 #define KP_COLS 5 103 #define KP_COLS 5
104 const T_KPD_PHYSICAL_KEY_ID keypad_layout[KP_ROWS][KP_COLS]= 104 const T_KPD_PHYSICAL_KEY_ID keypad_layout[KP_ROWS][KP_COLS]=
105 { 105 {
106 /* Pirelli's keypad */ 106 /* Pirelli's keypad */
107 {KPD_PKEY_NAV_CENTER, KPD_PKEY_LEFT, KPD_PKEY_RIGHT, KPD_PKEY_UP, KPD_PKEY_NULL}, 107 {KPD_PKEY_NAV_CENTER, KPD_PKEY_LEFT, KPD_PKEY_RIGHT, KPD_PKEY_UP, KPD_PKEY_NULL},
108 {KPD_PKEY_SOFT_LEFT, KPD_PKEY_SOFT_RIGHT, KPD_PKEY_GREEN, KPD_PKEY_DOWN, KPD_PKEY_VOL_UP}, 108 {KPD_PKEY_SOFT_LEFT, KPD_PKEY_SOFT_RIGHT, KPD_PKEY_GREEN, KPD_PKEY_DOWN, KPD_PKEY_VOL_UP},
109 {KPD_PKEY_3, KPD_PKEY_6, KPD_PKEY_9, KPD_PKEY_DIESE, KPD_PKEY_VOL_DOWN}, 109 {KPD_PKEY_3, KPD_PKEY_6, KPD_PKEY_9, KPD_PKEY_DIESE, KPD_PKEY_VOL_DOWN},
110 {KPD_PKEY_2, KPD_PKEY_5, KPD_PKEY_8, KPD_PKEY_0, KPD_PKEY_REC}, 110 {KPD_PKEY_2, KPD_PKEY_5, KPD_PKEY_8, KPD_PKEY_0, KPD_PKEY_REC},
112 }; 112 };
113 #elif ((BOARD == 40) || (BOARD == 41) || (BOARD == 42) || (BOARD == 43)) 113 #elif ((BOARD == 40) || (BOARD == 41) || (BOARD == 42) || (BOARD == 43))
114 #define KP_ROWS 5 114 #define KP_ROWS 5
115 #define KP_COLS 5 115 #define KP_COLS 5
116 const T_KPD_PHYSICAL_KEY_ID keypad_layout[KP_ROWS][KP_COLS]= 116 const T_KPD_PHYSICAL_KEY_ID keypad_layout[KP_ROWS][KP_COLS]=
117 { 117 {
118 /* Layout of D-Sample and E-Sample */ 118 /* Layout of D-Sample and E-Sample */
119 {KPD_PKEY_GREEN, KPD_PKEY_VOL_DOWN, KPD_PKEY_VOL_UP,KPD_PKEY_SOFT_LEFT, KPD_PKEY_LEFT}, 119 {KPD_PKEY_GREEN, KPD_PKEY_VOL_DOWN, KPD_PKEY_VOL_UP,KPD_PKEY_SOFT_LEFT, KPD_PKEY_LEFT},
120 {KPD_PKEY_1, KPD_PKEY_2, KPD_PKEY_3, KPD_PKEY_REC, KPD_PKEY_RIGHT}, 120 {KPD_PKEY_1, KPD_PKEY_2, KPD_PKEY_3, KPD_PKEY_REC, KPD_PKEY_RIGHT},
121 {KPD_PKEY_4, KPD_PKEY_5, KPD_PKEY_6, KPD_PKEY_SOFT_RIGHT, KPD_PKEY_UP}, 121 {KPD_PKEY_4, KPD_PKEY_5, KPD_PKEY_6, KPD_PKEY_SOFT_RIGHT, KPD_PKEY_UP},
122 {KPD_PKEY_7, KPD_PKEY_8, KPD_PKEY_9, KPD_PKEY_NULL, KPD_PKEY_DOWN}, 122 {KPD_PKEY_7, KPD_PKEY_8, KPD_PKEY_9, KPD_PKEY_NULL, KPD_PKEY_DOWN},
147 147
148 #if (CHIPSET == 12) 148 #if (CHIPSET == 12)
149 149
150 /** kpd_init_ctrl_reg : Initialize the Control register 150 /** kpd_init_ctrl_reg : Initialize the Control register
151 */ 151 */
152 void kpd_init_ctrl_reg(const UINT8 software_nreset, 152 void kpd_init_ctrl_reg(const UINT8 software_nreset,
153 const T_KPD_Nsoftware_mode nsoftware_mode, 153 const T_KPD_Nsoftware_mode nsoftware_mode,
154 const T_KPD_PTV ptv, 154 const T_KPD_PTV ptv,
155 const T_KPD_EnableDetection long_key_process_en, 155 const T_KPD_EnableDetection long_key_process_en,
156 const T_KPD_EnableDetection time_out_empty_en, 156 const T_KPD_EnableDetection time_out_empty_en,
157 const T_KPD_EnableDetection time_out_long_key_en, 157 const T_KPD_EnableDetection time_out_long_key_en,
158 const T_KPD_EnableDetection repeat_mode_en) 158 const T_KPD_EnableDetection repeat_mode_en)
159 { 159 {
160 volatile UINT16 status_reg; 160 volatile UINT16 status_reg;
161 status_reg = *(volatile UINT16*) KBR_STATE_MACHINE_STATUS; 161 status_reg = *(volatile UINT16*) KBR_STATE_MACHINE_STATUS;
162 162
163 if ( (status_reg != KPD_TEST_TIMER_DEBOUNCING) && (status_reg != KPD_TEST_TIMER_LONG_KEY) && 163 if ( (status_reg != KPD_TEST_TIMER_DEBOUNCING) && (status_reg != KPD_TEST_TIMER_LONG_KEY) &&
164 (status_reg != KPD_TEST_TIMER_TIME_OUT) && (status_reg != KPD_TEST_TIMER_REPEAT_KEY) ) 164 (status_reg != KPD_TEST_TIMER_TIME_OUT) && (status_reg != KPD_TEST_TIMER_REPEAT_KEY) )
165 { 165 {
166 166
167 /* The PTV can be programmed since the timer is not running */ 167 /* The PTV can be programmed since the timer is not running */
168 168
169 *(volatile UINT16*) KBR_CTRL_REG = (software_nreset | 169 *(volatile UINT16*) KBR_CTRL_REG = (software_nreset |
170 nsoftware_mode << 1 | 170 nsoftware_mode << 1 |
171 ptv << 2 | 171 ptv << 2 |
172 long_key_process_en << 5 | 172 long_key_process_en << 5 |
173 time_out_empty_en << 6 | 173 time_out_empty_en << 6 |
174 time_out_long_key_en << 7 | 174 time_out_long_key_en << 7 |
175 repeat_mode_en << 8); 175 repeat_mode_en << 8);
176 } 176 }
177 else 177 else
178 { 178 {
179 179
180 /* The PTV must not be programmed when the timer is running */ 180 /* The PTV must not be programmed when the timer is running */
181 181
182 SetGroupBits16(*(volatile unsigned short *)(KBR_CTRL_REG), 0, 1, software_nreset); 182 SetGroupBits16(*(volatile unsigned short *)(KBR_CTRL_REG), 0, 1, software_nreset);
183 SetGroupBits16(*(volatile unsigned short *)(KBR_CTRL_REG), 1, 1, nsoftware_mode); 183 SetGroupBits16(*(volatile unsigned short *)(KBR_CTRL_REG), 1, 1, nsoftware_mode);
184 SetGroupBits16(*(volatile unsigned short *)(KBR_CTRL_REG), 5, 1, long_key_process_en); 184 SetGroupBits16(*(volatile unsigned short *)(KBR_CTRL_REG), 5, 1, long_key_process_en);
187 SetGroupBits16(*(volatile unsigned short *)(KBR_CTRL_REG), 8, 1, repeat_mode_en); 187 SetGroupBits16(*(volatile unsigned short *)(KBR_CTRL_REG), 8, 1, repeat_mode_en);
188 } 188 }
189 } 189 }
190 190
191 191
192 /** kpd_software_reset : reset software 192 /** kpd_software_reset : reset software
193 */ 193 */
194 void kpd_software_reset(void) 194 void kpd_software_reset(void)
195 { 195 {
196 volatile UINT16 mem_reg; 196 volatile UINT16 mem_reg;
197 197
198 mem_reg = (*(volatile UINT16*) KBR_CTRL_REG) & 0xFFFE; 198 mem_reg = (*(volatile UINT16*) KBR_CTRL_REG) & 0xFFFE;
199 *(volatile UINT16*) KBR_CTRL_REG = mem_reg; 199 *(volatile UINT16*) KBR_CTRL_REG = mem_reg;
200 200
201 } 201 }
202 202
205 */ 205 */
206 void kpd_set_debouncing_time(const UINT8 debouncing_time) 206 void kpd_set_debouncing_time(const UINT8 debouncing_time)
207 { 207 {
208 208
209 *(volatile UINT16*) KBR_DEBOUNCING_TIME = debouncing_time; 209 *(volatile UINT16*) KBR_DEBOUNCING_TIME = debouncing_time;
210 210
211 } 211 }
212 212
213 #endif /* #if (CHIPSET == 12) */ 213 #endif /* #if (CHIPSET == 12) */
214 214
215 215
223 T_RVF_MB_STATUS mb_status; 223 T_RVF_MB_STATUS mb_status;
224 T_KPD_KEY_PRESSED_MSG* msg_key_pressed; 224 T_KPD_KEY_PRESSED_MSG* msg_key_pressed;
225 T_KPD_PHYSICAL_KEY_ID key; 225 T_KPD_PHYSICAL_KEY_ID key;
226 226
227 /* Reserve memory for message */ 227 /* Reserve memory for message */
228 mb_status = rvf_get_buf (kpd_env_ctrl_blk->prim_id, sizeof(T_KPD_KEY_PRESSED_MSG), (void **) &msg_key_pressed); 228 mb_status = rvf_get_buf (kpd_env_ctrl_blk->prim_id, sizeof(T_KPD_KEY_PRESSED_MSG), (void **) &msg_key_pressed);
229 229
230 if (mb_status != RVF_RED) /* Memory allocation success */ 230 if (mb_status != RVF_RED) /* Memory allocation success */
231 { 231 {
232 /* Fill the message */ 232 /* Fill the message */
233 msg_key_pressed->hdr.msg_id = KPD_KEY_PRESSED_MSG; 233 msg_key_pressed->hdr.msg_id = KPD_KEY_PRESSED_MSG;
334 /* 334 /*
335 * delay 335 * delay
336 * 336 *
337 * Wait a while to let bus settle 337 * Wait a while to let bus settle
338 * Magic value found by trial and error 338 * Magic value found by trial and error
339 * 339 *
340 */ 340 */
341 static void delay(void) 341 static void delay(void)
342 { 342 {
343 volatile int i; 343 volatile int i;
344 344