ENUM I3C_OPEN_DRAIN_SPEED(9)
β¨ enum i3c_open_drain_speed β I3C open-drain speed β¨
okay so real talk, this is a page straight out of the Kernel API Manual, bestie, and it's about one tiny little enum that lives rent-free in ./include/linux/i3c and honestly? it's giving "small but mighty." it's the enum i3c_open_drain_speed, and it's literally just here to tell you I3C open-drain speed. that's the whole vibe. short page, zero filler, we love a concise icon. π
π¦ SYNOPSIS π¦
enum i3c_open_drain_speed {
I3C_OPEN_DRAIN_SLOW_SPEED ,
I3C_OPEN_DRAIN_NORMAL_SPEED
};
like, two members. two. and yes the spacing is exactly what it is, do not come for me, i'm just the messenger π
πΈ Constants πΈ
I3C_OPEN_DRAIN_SLOW_SPEEDβ okay so this is the slow open-drain speed, and it's specifically the one you use for sending the first broadcast address. and here's the tea: when you send that first broadcast address at this speed, it's visible to all devices on the I3C bus β like, everybody sees it, it's a whole group chat. also,I3Cdevices that are chugging along inI2Cmode? they will turn off their spike filter when they switch intoI3Cmode. so that's a thing that happens, noted. π«ΆI3C_OPEN_DRAIN_NORMAL_SPEEDβ and this one is just the normal open-drain speed in I3C bus mode. no dramatic side effects, no spike-filter lore, just the regular speed doing its regular speed thing. main character energy but make it chill. π
π₯ SEE ALSO π₯
okay bestie, buckle up, because this section is long and i am not about to skip a single one of these. every single reference, here we go, in order, no cap:
Kernel file ./include/linux/i3c/master.h, then:
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_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)i3c_bus_for_each_i3cdev(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)
whew. drank water, touched grass, we're back. that's the whole list, i promise, nothing got left behind π
ngl, this whole page is living at ./include/linux/i3c and it's dated October 2026, and that's literally the sign-off bestie β mwah, hope the enum made sense, go forth and open-drain responsibly π§ββοΈβ¨π
π¦ 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