1 /* $Id: pasori_test.c,v 1.5 2009-10-09 07:43:14 hito Exp $ */
2 #include <stdio.h>
3 #include <stdlib.h>
4
5 #include "config.h"
6 #include "libpafe.h"
7
8 int
test(pasori * p)9 test(pasori *p)
10 {
11 unsigned char data[] = "test data.";
12 int n = sizeof(data) - 1, r = 0;
13
14 printf("Echo test... ");
15 if (pasori_test_echo(p, data, &n)) {
16 r |= 1;
17 printf("error!\n");
18 } else {
19 printf("success\n");
20 }
21
22 printf("EPROM test... ");
23 if (pasori_test_eprom(p)) {
24 r |= 1;
25 printf("error!\n");
26 } else {
27 printf("success\n");
28 }
29
30 printf("RAM test... ");
31 if (pasori_test_ram(p)) {
32 r |= 1;
33 printf("error!\n");
34 } else {
35 printf("success\n");
36 }
37
38 printf("CPU test... ");
39 if (pasori_test_cpu(p)) {
40 r |= 1;
41 printf("error!\n");
42 } else {
43 printf("success\n");
44 }
45
46 printf("Polling test... ");
47 if (pasori_test_polling(p)) {
48 r |= 1;
49 printf("error!\n");
50 } else {
51 printf("success\n");
52 }
53 return r;
54 }
55
56 void
show_version(pasori * p)57 show_version(pasori *p)
58 {
59 int v1, v2;
60
61 if (pasori_version(p, &v1, &v2)) {
62 printf("cannot get version.\n");
63 return;
64 }
65
66 switch (pasori_type(p)) {
67 case PASORI_TYPE_S310:
68 printf("PaSoRi (RC-S310)\n firmware version %d.%02d\n", v1, v2);
69 break;
70 case PASORI_TYPE_S320:
71 printf("PaSoRi (RC-S320)\n firmware version %d.%02d\n", v1, v2);
72 break;
73 case PASORI_TYPE_S330:
74 printf("PaSoRi (RC-S330)\n firmware version %d.%02d\n", v1, v2);
75 break;
76 default:
77 printf("unknown hardware.\n");
78 }
79
80 }
81
82 int
main(void)83 main(void)
84 {
85 pasori *p;
86 int type;
87
88 p = pasori_open();
89 if (!p) {
90 printf("error\n");
91 exit(-1);
92 }
93 pasori_init(p);
94
95 show_version(p);
96
97 type = pasori_type(p);
98 if ((type == PASORI_TYPE_S310 || type == PASORI_TYPE_S320) && test(p)) {
99 pasori_close(p);
100 return 1;
101 }
102
103 pasori_close(p);
104
105 return 0;
106 }
107