STRUCT PRUETH_QUEUE_DESC(9)
π struct prueth_queue_desc(9) π
okay bestie, this is a page from the Kernel API Manual and it's literally all about one little struct called struct prueth_queue_desc β the queue descriptor. it's giving "small but runs the whole group chat" energy. π«Ά
β¨ NAME β¨
struct prueth_queue_desc β the Queue descriptor, periodt.
πΈ SYNOPSIS πΈ
here's the whole glow-up, character for character, no cap:
struct prueth_queue_desc {
u16 rd_ptr;
u16 wr_ptr;
u8 busy_s;
u8 status;
u8 max_fill_level;
u8 overflow_cnt;
};
look at her. six fields. iconic. π
π¦ Members π¦
so let's do a vibe check on every single member, one by one, no skipping:
rd_ptrβ the read pointer, and she points to a buffer descriptor over in Shared PRU RAM. that's her whole job. πwr_ptrβ the write pointer, also pointing at a buffer descriptor in Shared PRU RAM. her andrd_ptrare literally besties doing the same thing from different directions. β¨busy_sβ the slave queue busy flag. the slave (that's us, hii π) sets this to request access from the master (the PRU). it's the "hey can i get in the chat" flag.statusβ a bit field status register, and the bits are doing the most:- Bit
0: Master queue busy flag. - Bit
1: Packet has been placed in collision queue. - Bit
2: Packet has been discarded due to overflow. π
- Bit
max_fill_levelβ the maximum queue usage seen. her peak. her main character era. πoverflow_cntβ the count of queue overflows. lowkey a sad number but somebody has to track it. π
π§ Description π§
okay so here's the lore: each port has up to 4 queues, and they're variable length. the queue gets processed as a ring buffer with read and write pointers doing their little circular dance. π
both of those pointers are address pointers β and this part matters, so listen up β they increment by 4 for each buffer descriptor position. fr fr, that's the detail. π
and the queue has a length defined in constants (not here, go look elsewhere bestie) plus a status. that's the whole thing. slay.
π₯ SEE ALSO π₯
go read these next, they're the rest of the friend group:
- Kernel file
./drivers/net/ethernet/ti/icssm/icssm_prueth.hstructprueth_queue_info(9) - struct
prueth_packet_info(9) - struct
prueth_firmware(9) - struct
prueth_private_data(9)
and that's the whole page, bestie β brought to you by ./drivers/net/ethernet/ti/icssm, dated October 2026. π
mark your calendars, mwah ππΈ
π¦ 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