summaryrefslogtreecommitdiff
path: root/firmware/src/os/req_ctx.h
diff options
context:
space:
mode:
authorlaforge <laforge@6dc7ffe9-61d6-0310-9af1-9938baff3ed1>2006-09-22 21:41:22 +0000
committerlaforge <laforge@6dc7ffe9-61d6-0310-9af1-9938baff3ed1>2006-09-22 21:41:22 +0000
commit706ffa9f3b986eff193377142459fbfde2362036 (patch)
treefbdb2d853265bf783db3a9eceebdded08efd297e /firmware/src/os/req_ctx.h
parent1c2b1d22016957bebe0a49c9069b85815f7cf936 (diff)
- move large rctx definitions to req_ctx.h
- add more fine-grained debugging macros in pcd_enumarate.c - resolve race conditions between main-loop ep_refill and irq-triggered ep_refill by adding one irq-[b]locking variant - consolidate endpoint reset code into reset_ep() - add code to handle correct transmission and reception of usb transfers larger than endpoint size - use new jump address (0x104000) in DFU Cstartup.S - move main_usb to pcd subdirectory - fix include/compile.h make dependencies - make usb benchmark code use new large req_ctx git-svn-id: https://svn.openpcd.org:2342/trunk@219 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
Diffstat (limited to 'firmware/src/os/req_ctx.h')
-rw-r--r--firmware/src/os/req_ctx.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/firmware/src/os/req_ctx.h b/firmware/src/os/req_ctx.h
index b68fb66..535267b 100644
--- a/firmware/src/os/req_ctx.h
+++ b/firmware/src/os/req_ctx.h
@@ -1,6 +1,9 @@
#ifndef _REQ_CTX_H
#define _REQ_CTX_H
+#define RCTX_SIZE_LARGE 2048
+#define RCTX_SIZE_SMALL 64
+
#define MAX_HDRSIZE sizeof(struct openpcd_hdr)
#define MAX_REQSIZE (64-MAX_HDRSIZE)
@@ -32,6 +35,8 @@ struct req_ctx {
#define RCTX_STATE_PIOIRQ_BUSY 0x80
+#define RCTX_STATE_INVALID 0xff
+
extern struct req_ctx *req_ctx_find_get(int large, unsigned long old_state, unsigned long new_state);
extern struct req_ctx *req_ctx_find_busy(void);
extern void req_ctx_set_state(struct req_ctx *ctx, unsigned long new_state);
personal git repositories of Harald Welte. Your mileage may vary