comparison packages/hal/arm/sa11x0/assabet/current/src/assabet_misc.c @ 143:6b5f480c6929 ecos-sw-2000-12-08

Merge from eCos master repository on 2000-12-08-02:09:36-GMT
author jlarmour
date Fri, 08 Dec 2000 03:30:06 +0000
parents 518f42066aba
children 2e9a636d9de9
comparison
equal deleted inserted replaced
142:12eccf9656f3 143:6b5f480c6929
244 // Force "alternate" use of GPIO pins used for LCD screen 244 // Force "alternate" use of GPIO pins used for LCD screen
245 *SA11X0_GPIO_ALTERNATE_FUNCTION |= 0x000003FC; // Bits 2..9 245 *SA11X0_GPIO_ALTERNATE_FUNCTION |= 0x000003FC; // Bits 2..9
246 *SA11X0_GPIO_PIN_DIRECTION |= 0x000003FC; // Bits 2..9 246 *SA11X0_GPIO_PIN_DIRECTION |= 0x000003FC; // Bits 2..9
247 *SA11X0_GPIO_PIN_OUTPUT_CLEAR = 0x000003FC; // Bits 2..9 247 *SA11X0_GPIO_PIN_OUTPUT_CLEAR = 0x000003FC; // Bits 2..9
248 } 248 }
249
250 #include CYGHWR_MEMORY_LAYOUT_H
251 typedef void code_fun(void);
252 void assabet_program_new_stack(void *func)
253 {
254 register CYG_ADDRESS stack_ptr asm("sp");
255 register CYG_ADDRESS old_stack asm("r4");
256 register code_fun *new_func asm("r0");
257 old_stack = stack_ptr;
258 stack_ptr = CYGMEM_REGION_ram + CYGMEM_REGION_ram_SIZE - sizeof(CYG_ADDRESS);
259 new_func = (code_fun*)func;
260 new_func();
261 stack_ptr = old_stack;
262 return;
263 }