Root/atusb/fw/include/atusb/ep0.h

Source at commit ea23c905d32bfd2478915021476f9ede2ee014b8 created 1 year 10 months ago.
By Josef Filzmaier, atusb/fw: Introduction of a new board named HULUSB
1/*
2 * include/atusb/ep0.h - EP0 extension protocol
3 *
4 * Written 2008-2011, 2013 by Werner Almesberger
5 * Copyright 2008-2011, 2013 Werner Almesberger
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
11 */
12
13
14#ifndef EP0_H
15#define EP0_H
16
17#include <atusb/atusb.h>
18
19
20/*
21 * EP0 protocol:
22 *
23 * 0.0 initial release
24 * 0.1 addition of ATUSB_TEST
25 * 0.2 First public release
26 * 0.3 ATUSB_EUI64_READ/WRITE for permanent EUI64 handling
27 * Support to run the firmware on Atmel Raven USB dongles
28 * Remove FCS frame check from firmware and leave it to the driver
29 * Use extended operation mode for TX for automatic ACK handling
30 */
31
32#define EP0ATUSB_MAJOR 0 /* EP0 protocol, major revision */
33#define EP0ATUSB_MINOR 3 /* EP0 protocol, minor revision */
34
35
36/*
37 * bmRequestType:
38 *
39 * D7 D6..5 D4...0
40 * | | |
41 * direction (0 = host->dev)
42 * type (2 = vendor)
43 * recipient (0 = device)
44 */
45
46#ifndef USB_TYPE_VENDOR
47#define USB_TYPE_VENDOR 0x40
48#endif
49
50#ifndef USB_DIR_IN
51#define USB_DIR_IN 0x80
52#endif
53
54#ifndef USB_DIR_OUT
55#define USB_DIR_OUT 0x00
56#endif
57
58#define ATUSB_FROM_DEV(req) (ATUSB_REQ_FROM_DEV | (req) << 8)
59#define ATUSB_TO_DEV(req) (ATUSB_REQ_TO_DEV | (req) << 8)
60
61
62void ep0_init(void);
63
64#endif /* !EP0_H */
65

Archive Download this file



interactive