mei_txe_cou...l_read_slots(9)
π NAME π
mei_txe_count_full_read_slots β bestie, this one mimics the me device circular buffer. That's literally its whole thing, it's giving "understudy energy" but make it kernel π
β¨ SYNOPSIS β¨
int mei_txe_count_full_read_slots (struct mei_device *dev );
Okay so quick heads up, this page lives in the Kernel API Manual (that's section 9, the fancy "we're talking to kernel devs" section π
). Ngl the title up top is like, aggressively truncated into mei_txe_cou...l_read_slots(9) because somebody's terminal was not cooperating β but you and me both know the real name, it's mei_txe_count_full_read_slots, periodt.
π ARGUMENTS π
devβ the device structure. That's it. That's the whole vibe. You hand it thestruct mei_device *and it does its little count π«Ά
πΈ RETURN πΈ
Returns always buffer size in dwords count. Not "sometimes", not "depends on the weather" β always. In dwords. Count. Slay, honestly β¨
Lowkey a legend for this: no error path, no < 0 check, no drama. It just tells you the buffer size in dwords every single time. Iconic behaviour π
π¦ SEE ALSO π¦
You're gonna want the whole friend group, not just this one. Kernel file ./drivers/misc/mei/hw-txe.c is home base π and here's everybody else:
mei_txe_reg_read(9)mei_txe_reg_write(9)mei_txe_sec_reg_read_silent(9)mei_txe_sec_reg_read(9)mei_txe_sec_reg_write_silent(9)mei_txe_sec_reg_write(9)mei_txe_br_reg_read(9)mei_txe_br_reg_write(9)mei_txe_aliveness_set(9)mei_txe_aliveness_req_get(9)mei_txe_aliveness_get(9)mei_txe_aliveness_poll(9)mei_txe_aliveness_wait(9)mei_txe_aliveness_set_sync(9)mei_txe_pg_in_transition(9)mei_txe_pg_is_enabled(9)mei_txe_pg_state(9)mei_txe_input_ready_interrupt_enable(9)mei_txe_input_doorbell_set(9)mei_txe_output_ready_set(9)mei_txe_is_input_ready(9)mei_txe_intr_clear(9)mei_txe_intr_disable(9)mei_txe_intr_enable(9)mei_txe_synchronize_irq(9)mei_txe_pending_interrupts(9)mei_txe_input_payload_write(9)mei_txe_out_data_read(9)mei_txe_readiness_set_host_rdy(9)mei_txe_readiness_clear(9)mei_txe_readiness_get(9)mei_txe_readiness_is_sec_rdy(9)mei_txe_hw_is_ready(9)mei_txe_host_is_ready(9)mei_txe_readiness_wait(9)mei_txe_fw_status(9)mei_txe_hw_config(9)mei_txe_write(9)mei_txe_hbuf_depth(9)mei_txe_hbuf_empty_slots(9)mei_txe_read_hdr(9)mei_txe_read(9)mei_txe_hw_reset(9)mei_txe_hw_start(9)mei_txe_check_and_ack_intrs(9)mei_txe_irq_quick_handler(9)mei_txe_irq_thread_handler(9)mei_txe_dev_init(9)
That's the whole page, bestie, no filler, no cap π Now go read your circular buffer docs and hydrate π§
Sign-off time π: this lil masterpiece ships from ./drivers/misc/mei and it's dated October 2026 β yes, from the future, we stay ahead of schedule π
β¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms