qbman_swp_en..._desc_direct(9)
π qbman_swp_en..._desc_direct(9) π
okay so bestie, this is a page straight out of the Kernel API Manual, and it's giving "niche driver lore that only three people on earth understand" π but don't worry, we're gonna get you through it. Stay with me π«Ά
β¨ NAME β¨
qbman_swp_enqueue_multiple_desc_direct β Issue a multi enqueue command using multiple enqueue descriptor. yeah. it's a mouthful. it's iconic like that π
πΈ SYNOPSIS πΈ
int qbman_swp_enqueue_multiple_desc_direct (struct qbman_swp *s , const
struct qbman_eq_desc *d , const struct dpaa2_fd *fd , int num_frames );
like, that's the whole vibe right there β¨ four params, one int coming back at you.
π ARGUMENTS π
sβ the software portal used for enqueue. this is your main character π«Ά the portal you're doing the enqueueing through.dβ table of minimal enqueue descriptor. yes, a table of them, plural energy πfdβ table pointer of frame descriptor table to be enqueued. it's a pointer, to a table, of frame descriptors. nested like my emotions πnum_framesβ number of fd to be enqueued. literally the count. how many are we sending. that's it π
π¦ DESCRIPTION π¦
Return the number of fd enqueued, or a negative error number. short and sweet, no cap. so you either get a happy little count back, or a negative number, which is the code's way of saying "bestieβ¦ no π" β that's your error signal π₯
β SEE ALSO β
the kernel file lives at ./drivers/soc/fsl/dpio/qbman-portal.c β go read it, it's the source of truth π
and here's the whole friend group, the entire squad, everybody in the qbman cinematic universe π:
qbman_swp_init(9),qbman_swp_finish(9)qbman_swp_interrupt_read_status(9),qbman_swp_interrupt_clear_status(9)qbman_swp_interrupt_get_trigger(9),qbman_swp_interrupt_set_trigger(9)qbman_swp_interrupt_get_inhibit(9),qbman_swp_interrupt_set_inhibit(9)qbman_eq_desc_set_no_orp(9),qbman_eq_desc_set_fq(9),qbman_eq_desc_set_qd(9)qbman_swp_enqueue_direct(9),qbman_swp_enqueue_mem_back(9)qbman_swp_enqueue_multiple_direct(9),qbman_swp_enqueue_multiple_mem_back(9)qbman_swp_enqueue_multiple_desc_mem_back(9)qbman_swp_push_get(9),qbman_swp_push_set(9)qbman_pull_desc_clear(9),qbman_pull_desc_set_storage(9),qbman_pull_desc_set_numframes(9)qbman_pull_desc_set_fq(9),qbman_pull_desc_set_wq(9),qbman_pull_desc_set_channel(9)qbman_swp_pull_direct(9),qbman_swp_pull_mem_back(9)qbman_swp_dqrr_next_direct(9),qbman_swp_dqrr_next_mem_back(9),qbman_swp_dqrr_consume(9)qbman_result_has_new_result(9)qbman_release_desc_clear(9),qbman_release_desc_set_bpid(9),qbman_release_desc_set_rcdi(9)qbman_swp_release_direct(9),qbman_swp_release_mem_back(9)qbman_swp_acquire(9)qbman_swp_set_irq_coalescing(9),qbman_swp_get_irq_coalescing(9)
ngl if you're new here, the*_directones and the*_mem_backones are cousins β you'll clock the pattern fast, iykyk π
and that's the page, bestie π this little gem lives under ./drivers/soc/fsl/dpio, dated October 2026, and it's part of the Kernel API Manual β go forth and enqueue, you absolute legend πβ¨
π¦ 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