STRUCT MEI_CL(9)

๐Ÿ“ฆ version 7.3.1, in nixpkgs unstable

struct mei_cl(9) ๐Ÿ’…โœจ

okay bestie, welcome to the Kernel API Manual glow-up for struct mei_cl โ€” the me client host representation carried in file->private_data. Yes, itโ€™s giving kernel-internals main character energy, and weโ€™re getting into every single field. no skipping. periodt. ๐ŸŽ€


๐Ÿ’– NAME ๐Ÿ’–

struct mei_cl โ€” the me client host representation carried in file->private_data. Thatโ€™s the whole vibe: itโ€™s the client-side host representation, and it lives in file->private_data. ๐Ÿซถ


โœจ SYNOPSIS โœจ

struct mei_cl {
    struct list_head link;
    struct mei_device *dev;
    enum file_state state;
    wait_queue_head_t tx_wait;
    wait_queue_head_t rx_wait;
    wait_queue_head_t wait;
    wait_queue_head_t ev_wait;
    struct fasync_struct *ev_async;
    int status;
    struct mei_me_client *me_cl;
    const struct file *fp;
    u8 host_client_id;
    struct list_head vtag_map;
    u8 tx_flow_ctrl_creds;
    u8 rx_flow_ctrl_creds;
    u8 timer_count;
    u8 notify_en;
    u8 notify_ev;
    u8 tx_cb_queued;
    enum mei_file_transaction_states writing_state;
    struct list_head rd_pending;
    spinlock_t rd_completed_lock;
    struct list_head rd_completed;
    struct mei_dma_data dma;
    u8 dma_mapped;
    struct mei_cl_device *cldev;
};

๐ŸŒธ Members ๐ŸŒธ

  • link โ€” the link in the clients list. iconic little list glue. ๐Ÿ”—
  • dev โ€” the mei parent device. the parent-device realness. ๐Ÿ‘‘
  • state โ€” file operation state. where the file-op of it all is at. โœจ
  • tx_wait โ€” wait queue for tx completion. yes, wait queue, for tx completion. ๐Ÿ’ค
  • rx_wait โ€” wait queue for rx completion. matching wait queue, matching completion. ๐Ÿซถ
  • wait โ€” wait queue for management operation. management-operation wait queue, fr fr. ๐Ÿงš
  • ev_wait โ€” notification wait queue. the notification wait queue. ๐ŸŒธ
  • ev_async โ€” event async notification. async event notification, no cap. โšก
  • status โ€” connection status. connection status check, bestie. ๐Ÿฉท
  • me_cl โ€” fw client connected. the connected fw client. ๐Ÿ”ฅ
  • fp โ€” file associated with client. the file associated with the client. ๐Ÿ“
  • host_client_id โ€” host id. literally the host id. ๐Ÿชช
  • vtag_map โ€” vtag map. thatโ€™s the vtag map. ๐Ÿ—บ๏ธ
  • tx_flow_ctrl_creds โ€” transmit flow credentials. transmit flow creds, periodt. ๐Ÿ“ค
  • rx_flow_ctrl_creds โ€” receive flow credentials. receive flow creds, matching energy. ๐Ÿ“ฅ
  • timer_count โ€” watchdog timer for operation completion. watchdog timer for operation completion, very โ€œthe clock is tickingโ€ of it all. โฐ
  • notify_en โ€” notification - enabled/disabled. notification enabled/disabled, iykyk. ๐Ÿ””
  • notify_ev โ€” pending notification event. the pending notification event. ๐Ÿ“ฌ
  • tx_cb_queued โ€” number of tx callbacks in queue. the number of tx callbacks in queue. ๐Ÿงฎ
  • writing_state โ€” state of the tx. state of the tx, keeping it real. โœ๏ธ
  • rd_pending โ€” pending read credits. pending read credits, bestie. ๐ŸŽŸ๏ธ
  • rd_completed_lock โ€” protects rd_completed queue. this lock is literally protecting the rd_completed queue. ๐Ÿ’…
  • rd_completed โ€” completed read. completed read, slay. โœ…
  • dma โ€” dma settings. dma settings, the configuration of it all. ๐Ÿ› ๏ธ
  • dma_mapped โ€” dma buffer is currently mapped. yes: the dma buffer is currently mapped. ๐Ÿ—บ๏ธ
  • cldev โ€” device on the mei client bus. device on the mei client bus, periodt. ๐ŸšŒ

๐Ÿ‘€ SEE ALSO ๐Ÿ‘€

go peek at the kernel file ./drivers/misc/mei/mei_dev.h and these besties too โ€” theyโ€™re all linked in the lore:


mwah ๐Ÿ’‹ โ€” this kernel-api cutie lives in ./drivers/misc/mei, dated October 2026, and itโ€™s literally struct mei_cl(9). take care of her! ๐Ÿ’–๐ŸŒทโœจ

๐Ÿ“ฆ where this page comes from