qbman_result_has_new_result(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸŽ€ NAME πŸŽ€

Hey bestie πŸ’– welcome to the qbman_result_has_new_result(9) page from the Kernel API Manual. This is the function that checks and gets the dequeue response from the dq storage memory set in pull dequeue command ✨


✨ SYNOPSIS ✨

int qbman_result_has_new_result (struct qbman_swp *s , const struct
       dpaa2_dq *dq );

🌸 ARGUMENTS 🌸

  • s β€” the software portal object, the main character you’re passing in 🫢
  • dq β€” the dequeue result read from the memory, no cap πŸ’…

πŸ’– DESCRIPTION πŸ’–

Okay so this function is basically your vibe check for a dequeue result πŸ‘‘

It returns 1 for getting a valid dequeue result, or 0 for not getting a valid dequeue result. Periodt.

It’s only used for user-provided storage of dequeue results, not DQRR. DQRR said not today πŸ™ˆ

For efficiency purposes, the driver will perform any required endianness conversion to ensure that the user's dequeue result storage is in host-endian format. Translation: the driver handles the endianness glow-up for you ✨

As such, once the user has called qbman_result_has_new_result and been returned a valid dequeue result, they should not call it again on the same memory location (except of course if another dequeue command has been executed to produce a new result to that location). That’s the rule, bestie β€” don’t double-dip the same memory unless a fresh command has dropped a new result there πŸ’€


πŸ¦‹ SEE ALSO πŸ¦‹

Kernel file ./drivers/soc/fsl/dpio/qbman-portal.c is the home base. The whole crew: 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_direct(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_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) πŸ’œ


Bye from your girl at ./drivers/soc/fsl/dpio, October 2026 β€” catch you in the next qbman_result_has_new_result(9) check πŸ’…βœ¨

πŸ“¦ where this page comes from