STRUCT HSI_CONTROLLER(9)
π NAME π
struct hsi_controller β the HSI controller device bestie, like literally the main character of your HSI setup β¨
π¦ SYNOPSIS π¦
struct hsi_controller {
struct device device;
struct module *owner;
unsigned int id;
unsigned int num_ports;
struct hsi_port *port[];
};
okay so that's the whole vibe, no cap π
π Members π
deviceβ the driver model representation of the device, aka its whole driver-model identity card πͺͺownerβ a pointer to the module that owns the controller, like the parent holding the permission slip π«Άidβ the HSI controller ID, its little number tag π·οΈnum_portsβ the number of ports in the HSI controller, so you know how many port slots we're working with π’portβ the array of HSI ports, all of them chilling in one spot π
π SEE ALSO π
Kernel file ./include/linux/hsi/hsi.h, plus the whole friend group: struct hsi_channel(9), struct hsi_config(9), struct hsi_board_info(9), struct hsi_client(9), struct hsi_client_driver(9), struct hsi_msg(9), struct hsi_port(9), hsi_id(9), hsi_port_id(9), hsi_setup(9), hsi_flush(9), hsi_async_read(9), hsi_async_write(9), hsi_start_tx(9), hsi_stop_tx(9) β go say hi, iykyk π«
and that's a wrap, bestie π¬ this iconic little page lives in ./include/linux/hsi, dated October 2026 β slay, periodt π
β¨πΈ
π¦ 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