]> rtime.felk.cvut.cz Git - sysless.git/blob - board/arm/lpc2364_addat/libs/hwinit/error.c
5f3a8795ee8186c99827a9e0b96f2b361aa04b49
[sysless.git] / board / arm / lpc2364_addat / libs / hwinit / error.c
1 #include <deb_led.h>
2 #include <error.h>
3
4 static void
5 waitblink(int len)
6 {
7         while (len--) {
8                 unsigned int i =2000000;
9                 while(--i);
10         }
11 }
12
13 void error(enum error err)
14 {
15         if (err == SUCCESS)
16                 return;
17         /* For case of unintetional rewrite of IO port setting. */
18         deb_led_init();
19         while (1) {
20                 int i;
21                 for (i=7; i>=0; i--) {
22                         deb_led_set(~0);
23                         if (err & (1<<i))
24                                 waitblink(3); /* 1 */
25                         else
26                                 waitblink(1); /* 0 */
27                         deb_led_set(DEB_LED_ERROR);
28                         waitblink(1);
29                                 
30                 }
31                 waitblink(5);           
32         }
33 }