STRUCT RPMSG_DRIVER(9)
πΈ NAME πΈ
struct rpmsg_driver β bestie, this is the rpmsg driver struct, the whole personality of the page. It's from the Kernel API Manual π
β¨ SYNOPSIS β¨
struct rpmsg_driver {
struct device_driver drv;
const struct rpmsg_device_id *id_table;
int (*probe)(struct rpmsg_device *dev);
void (*remove)(struct rpmsg_device *dev);
int (*callback)(struct rpmsg_device *, void *, int, void *, u32);
int (*flowcontrol)(struct rpmsg_device *, void *, bool);
};
Okay so it's giving "a struct full of function pointers" and honestly? Iconic. Let's go member by member π
π«Ά Members π«Ά
drvβ the underlying device driver. Like, the actual driver underneath it all. Main character energy but make it astruct device_driver. π¦id_tableβ the rpmsg ids that this driver services. It's literally the "who's in my group chat" list of rpmsg ids πprobeβ invoked when a matching rpmsg channel (i.e. device) is found. Yup, it's the "omg we matched" moment π₯removeβ invoked when the rpmsg channel is removed. Not me getting emotional over a channel teardown πcallbackβ invoked when an inbound message is received on the channel. Incoming message? She's ready, she's on it, she's the notification sound fr fr πflowcontrolβ invoked when remote side flow control request is received. Yes, remote side β the flow control request came from over there, and this hook handles it, no cap π
π SEE ALSO π
- Kernel file
./include/linux/rpmsg.h struct rpmsg_channel_info(9)struct rpmsg_endpoint(9)module_rpmsg_driver(9)
All of these live in ./include/linux β go read them, they're lowkey obsessed with each other π§
π real talk though: this struct is defined in ./include/linux/rpmsg.h, so if you're poking around, that's the file. Slay.
Okay bestie that's the whole page!! No skips, no summarising, we ate and left no crumbs π This lil tour came to you from the Kernel API Manual, source ./include/linux, dated October 2026 β signing off, struct rpmsg_driver(9) forever πβ¨π
π¦ 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