STRUCT MU3H_SCH_EP_INFO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ¦‹ NAME πŸ¦‹

okay bestie, this is struct mu3h_sch_ep_info β€” schedule information for endpoint. It's from the Kernel API Manual, and it's literally the blueprint for one endpoint's schedule info. slay. πŸ’…

✨ SYNOPSIS ✨

struct mu3h_sch_ep_info {
    u32 esit;
    u32 num_esit;
    u32 num_budget_microframes;
    struct list_head endpoint;
    struct hlist_node hentry;
    struct list_head tt_endpoint;
    struct mu3h_sch_bw_info *bw_info;
    struct mu3h_sch_tt *sch_tt;
    u32 ep_type;
    u32 maxpkt;
    struct usb_host_endpoint *ep;
    enum usb_device_speed speed;
    bool allocated;
    u32 offset;
    u32 repeat;
    u32 pkts;
    u32 cs_count;
    u32 burst_mode;
    u32 bw_budget_table[];
};

πŸ’… Members πŸ’…

  • esit β€” unit is 125us, equal to 2 << Interval field in ep-context. ⭐
  • num_esit β€” number of esit in a period. πŸŽ€
  • num_budget_microframes β€” number of continuous uframes (repeat==1) scheduled within the interval. πŸ¦‹
  • endpoint β€” linked into the bandwidth domain it belongs to. πŸ’–
  • hentry β€” hash table entry. πŸ”₯
  • tt_endpoint β€” linked into mu3h_sch_tt's list that it belongs to. 🌸
  • bw_info β€” the bandwidth domain this endpoint belongs to. πŸ‘‘
  • sch_tt β€” the mu3h_sch_tt it's linked into. 🫢
  • ep_type β€” endpoint type. ✨
  • maxpkt β€” max packet size of the endpoint. πŸ“¦
  • ep β€” address of the usb_host_endpoint struct. 🧚
  • speed β€” usb device speed. 🌈
  • allocated β€” the bandwidth is aready allocated from bus_bw. πŸ’€
  • offset β€” which uframe of the interval the transfer should be scheduled first time within the interval. ⏱️
  • repeat β€” the time gap between two uframes that transfers are scheduled within an interval. In the simple algorithm, only assign 0 or 1 to it; 0 means using only one uframe in an interval, and 1 means using num_budget_microframes continuous uframes. πŸ”
  • pkts β€” number of packets to be transferred in the scheduled uframes. πŸ“
  • cs_count β€” number of CS that the host will trigger. ⚑
  • burst_mode β€” burst mode for scheduling. 0: normal burst mode, distribute the bMaxBurst+1 packets for a single burst according to pkts and repeat, repeate the burst multiple times; 1: distribute the (bMaxBurst+1)*(Mult+1) packets according to pkts and repeat. normal mode is used by default. πŸ’₯
  • bw_budget_table β€” table to record bandwidth budget per microframe. πŸŽ€

🌈 SEE ALSO 🌈

Kernel file ./drivers/usb/host/xhci-mtk.h struct mu3h_sch_tt(9), struct mu3h_sch_bw_info(9), struct mu3c_ippc_regs(9).


mwah πŸ’‹ this page is served from ./drivers/usb/host, dated October 2026. periodt. 🫢

πŸ“¦ where this page comes from