blob: 1002db5b5f3815c9014c6d32c667fbfc1a31a319 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
|
/* main_usb - OpenPCD test firmware for benchmarking USB performance
* (C) 2006 by Harald Welte <laforge@gnumonks.org>
*/
#include <errno.h>
#include <string.h>
#include <lib_AT91SAM7.h>
#include "openpcd.h"
#include "rc632.h"
#include "dbgu.h"
#include "led.h"
#include "pwm.h"
#include "tc.h"
#include "ssc.h"
#include "pcd_enumerate.h"
#include "usb_handler.h"
static char usb_buf1[64];
static char usb_buf2[64];
static struct req_ctx dummy_rctx1;
static void help(void)
{
}
void _init_func(void)
{
DEBUGPCR("\r\n===> main_usb <===\r\n");
help();
udp_init();
memset(usb_buf1, '1', sizeof(usb_buf1));
memset(usb_buf2, '2', sizeof(usb_buf2));
dummy_rctx1.tx.tot_len = sizeof(usb_buf1);
memcpy(dummy_rctx1.tx.data, usb_buf1, sizeof(usb_buf1));
}
int _main_dbgu(char key)
{
switch (key) {
default:
return -EINVAL;
}
return 0;
}
void _main_func(void)
{
/* first we try to get rid of pending to-be-sent stuff */
//usb_out_process();
/* next we deal with incoming reqyests from USB EP1 (OUT) */
//usb_in_process();
/* try unthrottling sources since we now are [more] likely to
* have empty request contexts */
//udp_unthrottle();
while (udp_refill_ep(2, &dummy_rctx1) < 0) ;
DEBUGP("S");
//led_toggle(2);
}
|