i3c_bus_for_each_i3cdev(9)
β¨ i3c_bus_for_each_i3cdev(9) β¨
okay bestie so this is from the Kernel API Manual and it's literally the cutest lil loop helper β let's get into it π
π NAME π
i3c_bus_for_each_i3cdev β loops over every single I3C device that's chilling on the bus π¦
πΈ SYNOPSIS πΈ
i3c_bus_for_each_i3cdev (bus , dev );
π§ ARGUMENTS π§
busβ the I3C bus, aka the main character of this whole operation πdevβ an I3C device descriptor pointer that gets updated to point at the current slot each time the loop goes around π (yes bestie it moves, that's the whole point)
β DESCRIPTION β
Iterate over all the I3C devs that are present on the bus. that's it, that's the vibe β¨ lowkey iconic how simple it is fr fr π
π₯ SEE ALSO π₯
Kernel file ./include/linux/i3c/master.h and honestly a whole friend group of structs and helpers β here's the full roll call:
struct i3c_i2c_dev_desc(9), struct i2c_dev_boardinfo(9), struct i2c_dev_desc(9), struct i3c_ibi_slot(9), struct i3c_device_ibi_info(9), struct i3c_dev_boardinfo(9), struct i3c_dev_desc(9), struct i3c_device(9), enum i3c_bus_mode(9), enum i3c_open_drain_speed(9), enum i3c_addr_slot_status(9), struct i3c_bus(9), struct i3c_master_controller_ops(9), struct i3c_master_controller(9), i3c_bus_for_each_i2cdev(9), struct i3c_dma(9), i3c_dev_get_master_data(9), i3c_dev_set_master_data(9), i2c_dev_get_master_data(9), i2c_dev_set_master_data(9), i3c_dev_get_master(9), i2c_dev_get_master(9), i3c_master_get_bus(9)
all of them ate, no cap ππ«Ά
aaaand that's the page!! π this lil cutie lives in ./include/linux/i3c, it's dated October 2026, and it goes by i3c_bus_for_each_i3cdev(9) β mwah, go loop over some devices bestie πβπ
π¦ 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