rpmsg_send(9)
π rpmsg_send(9) β the Kernel API Manual, bestie edition
okay so you found the rpmsg_send(9) page, and honestly? good for you. this is the one that actually pushes your bytes across the void to the remote processor. let's get into it β¨
πΈ NAME
rpmsg_send β send a message across to the remote processor π«Ά
π SYNOPSIS
int rpmsg_send (struct rpmsg_endpoint *ept , const void *data , int len
);
like, that's the whole vibe. three args, one int coming back at you. π
π¦ ARGUMENTS
eptβ the rpmsg endpoint. your lil handle on the conversation, bestie πdataβ payload of message. the actual stuff you're shipping π¦lenβ length of payload. how many bytes are you sending, no cap π’
β¨ DESCRIPTION
so here's the tea: this function sends data of length len on the ept endpoint. that's it, that's the job. π
the message gets sent to the remote processor that the ept endpoint belongs to β and it uses ept's address plus its associated rpmsg device destination addresses to figure out where it's going. iykyk. π«
now for the part you actually need to know π β in case there are no TX buffers available, the function will block until one becomes available, or a timeout of 15 seconds elapses. so yeah, it'll just sit there waiting and you'll be like "hello??" π and when that timeout hits, -ERESTARTSYS is returned. note it. memorize it. π«‘
β οΈ important vibe check: this can only be called from process context (for now). like, that's the rule. π
π RETURN
0 on success, and an appropriate error value on failure. that's it. slay. β
π₯ SEE ALSO
Kernel file ./drivers/rpmsg/rpmsg_core.c β go read it, it's giving main character energy π
rpmsg_create_channel(9)rpmsg_release_channel(9)rpmsg_create_ept(9)rpmsg_destroy_ept(9)rpmsg_sendto(9)rpmsg_trysend(9)rpmsg_trysendto(9)rpmsg_poll(9)rpmsg_set_flow_control(9)rpmsg_get_mtu(9)__register_rpmsg_driver(9)unregister_rpmsg_driver(9)
and that's the whole page, bestie π it lives in ./drivers/rpmsg, dated October 2026, and it's literally the rpmsg_send(9) manual β go send some messages, you've got this π§ββοΈβ
π¦ 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