There is a potential bug. See below.
+struct int_queue {
+ struct QH *first;
+ struct QH *current;
+ struct QH *last;
+ struct qTD *tds;
+};
+
+#define NEXT_QH(qh) (struct QH *)((qh)-qh_link ~0x1f)
+
+static int
+enable_periodic(struct ehci_ctrl *ctrl)
+{
+
From: Patrick Georgi patr...@georgi-clan.de
Interrupt transfers aren't meant to be used from the async list
(the EHCI spec indicates trouble with low/full-speed intr on async).
Build a periodic list instead, and provide an API to make use of it.
Then, use that API from the existing interrupt
2 matches
Mail list logo