-#define UHCI_NUM_SKELQH 12
-#define skel_int128_qh skelqh[0]
-#define skel_int64_qh skelqh[1]
-#define skel_int32_qh skelqh[2]
-#define skel_int16_qh skelqh[3]
-#define skel_int8_qh skelqh[4]
-#define skel_int4_qh skelqh[5]
-#define skel_int2_qh skelqh[6]
-#define skel_int1_qh skelqh[7]
-#define skel_ls_control_qh skelqh[8]
-#define skel_fs_control_qh skelqh[9]
-#define skel_bulk_qh skelqh[10]
-#define skel_term_qh skelqh[11]
-
-/*
- * Search tree for determining where <interval> fits in the skelqh[]
- * skeleton.
- *
- * An interrupt request should be placed into the slowest skelqh[]
- * which meets the interval/period/frequency requirement.
- * An interrupt request is allowed to be faster than <interval> but not slower.
- *
- * For a given <interval>, this function returns the appropriate/matching
- * skelqh[] index value.
- */
-static inline int __interval_to_skel(int interval)
-{
- if (interval < 16) {
- if (interval < 4) {
- if (interval < 2)
- return 7; /* int1 for 0-1 ms */
- return 6; /* int2 for 2-3 ms */
- }
- if (interval < 8)
- return 5; /* int4 for 4-7 ms */
- return 4; /* int8 for 8-15 ms */
- }
- if (interval < 64) {
- if (interval < 32)
- return 3; /* int16 for 16-31 ms */
- return 2; /* int32 for 32-63 ms */
- }
- if (interval < 128)
- return 1; /* int64 for 64-127 ms */
- return 0; /* int128 for 128-255 ms (Max.) */
-}
+#define UHCI_NUM_SKELQH 14
+#define skel_unlink_qh skelqh[0]
+#define skel_iso_qh skelqh[1]
+#define skel_int128_qh skelqh[2]
+#define skel_int64_qh skelqh[3]
+#define skel_int32_qh skelqh[4]
+#define skel_int16_qh skelqh[5]
+#define skel_int8_qh skelqh[6]
+#define skel_int4_qh skelqh[7]
+#define skel_int2_qh skelqh[8]
+#define skel_int1_qh skelqh[9]
+#define skel_ls_control_qh skelqh[10]
+#define skel_fs_control_qh skelqh[11]
+#define skel_bulk_qh skelqh[12]
+#define skel_term_qh skelqh[13]
+
+/* Find the skelqh entry corresponding to an interval exponent */
+#define UHCI_SKEL_INDEX(exponent) (9 - exponent)