nouveau_i2c_encoder_init(9)
π nouveau_i2c_encoder_init(9) π
okay so bestie, welcome to the Kernel API Manual β this one's a little function in the nouveau DRM world and honestly she's giving "small but mighty" β¨
πΈ NAME πΈ
nouveau_i2c_encoder_init β literally just: initialize an I2C slave encoder π
β¨ SYNOPSIS β¨
int nouveau_i2c_encoder_init (struct drm_device *dev , struct
nouveau_i2c_encoder *encoder , struct i2c_adapter *adap , const struct
i2c_board_info *info );
like, four args, one int return, no drama π«Ά
π¦ ARGUMENTS π¦
devβ the DRM device. the main character, if you will πencoderβ the encoder that's gonna get attached to the I2C device. and listen, you aren't required to have calleddrm_encoder_initbefore β no prerequisites, we love a low-maintenance queen πadapβ the I2C adapter that will be used to communicate with the device. the communication pipeline, the group chat, the vibe conduit πinfoβ the info used to create the I2C device. the required fields areaddrandtypeβ do not skip those, fr fr π
β DESCRIPTION β
so what does she actually do? she creates an I2C device on the specified bus β and yes, the module containing its driver is transparently loaded, so no manual module wrangling, she handles it π§ β and then attaches it to the specified nouveau_i2c_encoder. iconic behavior, honestly β¨
then the encoder_i2c_funcs field gets initialized with the hooks provided by the slave driver. it's giving "plug and play but make it kernel" π₯
and one more thing: if info.platform_data is non-NULL, it will be used as the initial slave config. noted π
Return value: 0 on success, or a negative errno on failure. and in particular β watch out β -ENODEV is returned when no matching driver is found π like, she looked, she really did, nobody answered π
ngl, if you get-ENODEVit's not you, it's the driver table. but also double check youraddrandtype, bestie π«Ά
π SEE ALSO π
- Kernel file
./drivers/gpu/drm/nouveau/dispnv04/nouveau_i2c_encoder.cβ go read the source, iykyk π
and that's the whole vibe check π this little page came to you from ./drivers/gpu/drm/nouveau/disp... β yeah, the path gets cut off in the footer, she's mysterious like that β dated October 2026, manual name nouveau_i2c_encoder_init(9). mwah, go forth and init your encoders ππ
π¦ 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