This source file includes following definitions.
- shutdown
- debug_led
- get_flash_params_count
- camera_set_led
1 #include "platform.h"
2
3 void shutdown()
4 {
5 volatile long *p = (void*)0xc02200a0;
6
7 asm(
8 "MRS R1, CPSR\n"
9 "AND R0, R1, #0x80\n"
10 "ORR R1, R1, #0x80\n"
11 "MSR CPSR_cf, R1\n"
12 :::"r1","r0");
13
14 *p = 0x44;
15
16 while(1);
17 }
18
19
20 #define LED_PR 0xc02200C4
21
22 void debug_led(int state)
23 {
24 volatile long *p=(void*)LED_PR;
25 if (state)
26 p[0]=0x46;
27 else
28 p[0]=0x44;
29 }
30
31
32 int get_flash_params_count(void){
33 return 111;
34 }
35
36 #define LED_BASE 0xc02200C0
37
38 void camera_set_led(int led, int state, __attribute__ ((unused))int bright)
39
40 {
41 int leds[] = {12,16,4,8,4,0,4};
42 if(led < 4 || led > 10 || led == 6) return;
43 volatile long *p=(void*)LED_BASE + leds[led-4];
44 if (state)
45 p[0]=0x46;
46 else
47 p[0]=0x44;
48 }