pdc_rx_list_init(9)
π NAME π
pdc_rx_list_init β Start a new receive descriptor list for a given PDC. This page is from the Kernel API Manual, bestie β¨
πΈ SYNOPSIS πΈ
Here's the exact spell you cast:
int pdc_rx_list_init (struct pdc_state *pdcs , struct scatterlist
*dst_sg , void *ctx );
π ARGUMENTS π
pdcsβ PDC state for SPU handling request. It's the state buddy holding the request info, iykyk.dst_sgβ scatterlist providing rx buffers for response to be returned to mailbox client. This is the buffer crew for the response going back to the mailbox client.ctxβ Opaque context for this request. Literally opaque, no peeking π
π DESCRIPTION π
Okay so this function posts a single receive descriptor to hold the metadata that precedes a response. For example, with SPU-M, that metadata is a 32-byte DMA header and an 8-byte BCM header. Iconic little metadata stack, honestly.
Then it moves the msg_start descriptor indexes for both tx and rx to indicate the start of a new message. Fresh message, fresh indexes β main character reset energy π
π₯ RETURN π₯
PDC_SUCCESSβ when it's successful π< 0β when there's an error (e.g.,rx ring is full) π
π SEE ALSO π
Kernel file: ./drivers/mailbox/bcm-pdc-mailbox.c
Also these besties:
pdc_setup_debugfs(9)pdc_build_rxd(9)pdc_build_txd(9)pdc_receive_one(9)pdc_receive(9)pdc_tx_list_sg_add(9)pdc_tx_list_final(9)pdc_rx_list_sg_add(9)pdc_irq_handler(9)pdc_work_cb(9)pdc_ring_init(9)pdc_desc_count(9)pdc_rings_full(9)pdc_last_tx_done(9)pdc_send_data(9)pdc_hw_init(9)pdc_hw_disable(9)pdc_rx_buf_pool_create(9)pdc_interrupts_init(9)pdc_mb_init(9)pdc_dt_read(9)pdc_probe(9)
Source/version + date: this one lives under ./drivers/mailbox and is dated October 2026 β from the Kernel API Manual. Bye bestie, go init that receive descriptor list ππ«Ά
π¦ 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