STRUCT D40_PHY_RES(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct d40_phy_res(9) β€” like, the Kernel API Manual page, bestie ✨

okay so this is one of those kernel API manual pages, the struct d40_phy_res(9) one, and honestly? it's giving "small but crucial" energy. it's literally the struct for handling eventlines mapped to physical channels. that's the whole vibe. πŸŽ€


✨ NAME ✨

struct d40_phy_res β€” the struct that handles eventlines mapped to physical channels. yes that's it, that's the job. πŸ¦‹


🌸 SYNOPSIS 🌸

okay here's the whole thing, exactly as it is, no cap:

struct d40_phy_res {
    spinlock_t lock;
    bool reserved;
    int num;
    u32 allocated_src;
    u32 allocated_dst;
    bool use_soft_lli;
 };

πŸ‘‘ Members πŸ‘‘

bestie, let's meet the members, they all matter, don't skip any of them:

  • lock β€” a lock that protects this entity. it's the bouncer at the door of this struct, keeping things from getting messy. πŸ”’
  • reserved β€” true if it's used by secure world or otherwise. so like, if this is true, hands off, it's taken. 😀
  • num β€” the physical channel number of this entity. that's its literal ID, its name tag at the party. πŸ”₯
  • allocated_src β€” a bit map showing which src event line's are mapped to this physical channel. it can also be free or physically allocated. lowkey doing a lot of jobs at once. 🌈
  • allocated_dst β€” same as for src but it's dst. and listen, allocated_dst and allocated_src both use the D40_ALLOC* defines as well as the event line number. important detail, don't forget it. πŸ’œ
  • use_soft_lli β€” to mark if the linked lists of the channel are managed by SW. SW = software, and it's the one holding the clipboard here. 🧚

🫢 SEE ALSO 🫢

go read these too, they're all in the same friend group, iykyk:

Kernel file ./drivers/dma/ste_dma40.c struct stedma40_platform_data(9), enum d40_command(9), struct d40_interrupt_lookup(9), struct d40_reg_val(9), struct d40_lli_pool(9), struct d40_desc(9), struct d40_lcla_pool(9), struct d40_chan(9), struct d40_gen_dmac(9), struct d40_base(9)


and that's the whole page, periodt πŸ’€βœ¨ cute lil sign-off time: this one lives under ./drivers/dma, dated October 2026, and it's still just struct d40_phy_res(9) being iconic. slay, go read your dma driver code, ily, bye πŸ“πŸ’–

πŸ“¦ where this page comes from