pdc_probe(9)
π pdc_probe(9) β Kernel API Manual π
okay so bestie, welcome to pdc_probe, a page from the Kernel API Manual and honestly? it's a whole moment. sit down, grab a strawberry π, and let's get into it.
β¨ NAME β¨
pdc_probe β the probe function for the PDC driver. yep, that's it, that's the vibe. it's the lil "hey, u up?" that the kernel sends when it wants to bring a PDC to life π«Ά
πΈ SYNOPSIS πΈ
int pdc_probe (struct platform_device *pdev );
like, that's the whole thing. one function, one arg, one int coming back atcha. iconic behavior honestly π
π ARGUMENTS π
pdevβ the PDC platform device. this is the main character of the whole operation, the device we're about to set up π
π¦ DESCRIPTION π¦
okay so here's what pdc_probe actually does, and it's honestly doing the most (affectionate):
it reserves and maps the register regions that are defined in the device tree π β like, going and claiming the turf and drawing the map, no cap.
then it allocates and initializes the tx and rx DMA rings β¨ β both of them, not just one, because we're not doing half a job in this house.
and finally it initializes a mailbox controller for each PDC π β yes, each one. every single PDC gets its own.
β RETURN β
0if successful πΈ< 0if an error π
so like, zero means slay, negative means something went sideways. periodt.
π SEE ALSO π
bestie, there is a whole friend group here and i'm obsessed. the kernel file lives at ./drivers/mailbox/bcm-pdc-mailbox.c π and here's everyone else you should go say hi to:
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_init(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)
fr fr, that's the whole squad π§π
and that's the page!! before u go β this one's from ./drivers/mailbox, dated October 2026, and it's the pdc_probe(9) entry in the Kernel API Manual. mwah, go read some kernel source, ily πππ
π¦ 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