i3c_master_s...c_cmd_locked(9)
π
i3c_master_send_ccc_cmd_locked(9) β the Kernel API Manual entry you didn't know you needed
okay so picture this: you're deep in the i3c subsystem, the vibe is immaculate, and you need to actually send a CCC (Common Command Codes). that's it, that's the whole function. this is your girl. it lives in the Kernel API Manual, and honestly? she's a whole mood. π¦
β¨ SYNOPSIS β¨
int i3c_master_send_ccc_cmd_locked (struct i3c_master_controller *master
, struct i3c_ccc_cmd *cmd );
like, look at her. two args, one int coming back. clean. minimal. main character energy fr fr. π
π ARGUMENTS π
masterβ the master used to send frames on the bus, bestie. this is the controller doing the actual yeeting of bytes onto the wire. π₯cmdβ the command to send. yes literally, that's the whole thing. she's the payload, the moment, the iconic little struct. β¨
β RETURN β
so here's the tea: you get 0 in case of success, or a negative error code otherwise. and listen β the I3C Mx error codes are stored in cmd->err, so don't go looking in the return value for those, okay? check cmd->err. iykyk. π«Ά
ngl this is the part people skim and then are like "why is my error code weird" β it's in cmd->err, go look there. π
π SEE ALSO π
it's giving linked list of neighbors and i'm obsessed. the Kernel file ./drivers/i3c/master.c is where the magic lives, and these are all your sisters in the same file, no cap:
i3c_bus_maintenance_lock(9)i3c_bus_maintenance_unlock(9)i3c_bus_normaluse_lock(9)i3c_bus_normaluse_unlock(9)i3c_master_queue_hotjoin(9)i3c_master_get_free_addr(9)i3c_master_setaasa_locked(9)i3c_master_entdaa_locked(9)i3c_master_enec_disec_locked(9)i3c_master_disec_locked(9)i3c_master_enec_locked(9)i3c_master_defslvs_locked(9)i3c_master_reattach_i3c_dev_locked(9)i3c_master_has_wakeup_enabled_devs(9)i3c_master_dma_map_single(9)i3c_master_dma_unmap_single(9)i3c_master_set_info(9)i3c_master_bus_init(9)__i3c_master_add_i3c_dev_locked(9)i3c_master_add_i3c_dev_locked(9)i3c_master_do_daa_ext(9)i3c_master_do_daa(9)i3c_master_queue_ibi(9)i3c_generic_ibi_free_pool(9)i3c_generic_ibi_alloc_pool(9)i3c_generic_ibi_get_free_slot(9)i3c_generic_ibi_recycle_slot(9)i3c_master_register(9)i3c_master_unregister(9)i3c_dev_disable_ibi_locked(9)i3c_dev_enable_ibi_locked(9)i3c_dev_request_ibi_locked(9)i3c_dev_free_ibi_locked(9)
like... that's the whole friend group. every single one. invite them all to the group chat. π
and that's the page, babes β sourced from ./drivers/i3c, dated October 2026, and it's the one and only i3c_master_s...c_cmd_locked(9) from the Kernel API Manual. go forth and send your CCCs responsibly. slay. πβ‘π
π¦ 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