si476x_core..._ctl_pin_cfg(9)
π si476x_core..._ctl_pin_cfg(9) β¨
okay so bestie, welcome to the Kernel API Manual β this one's a lil' function that sends the 'IC_LINK_GPIO_CTL_PIN_CFG' command straight to the device π and honestly? it's giving "let me rearrange my pins real quick" energy. no cap.
β¨ SYNOPSIS β¨
int si476x_core_cmd_ic_link_gpo_ctl_pin_cfg (struct si476x_core *core ,
enum si476x_icin_config icin , enum si476x_icip_config icip , enum
si476x_icon_config icon , enum si476x_icop_config icop );
like, four enums and a core. that's the whole vibe check π¦
π«Ά ARGUMENTS π«Ά
core- the device you're sending the command to π literally the main character here
icin- the ICIN pin function configuration, and your options are:
SI476X_ICIN_NOOPβ do not modify the behaviour πSI476X_ICIN_TRISTATEβ put the pin in tristate condition, enable 1MOhm pulldownSI476X_ICIN_GPO1_HIGHβ set pin to be an output, drive it high π₯SI476X_ICIN_GPO1_LOWβ set pin to be an output, drive it lowSI476X_ICIN_IC_LINKβ set the pin to be a part of Inter-Chip link π
icip- the ICIP pin function configuration, same lineup but with a
P: SI476X_ICIP_NOOPβ do not modify the behaviour πSI476X_ICIP_TRISTATEβ put the pin in tristate condition, enable 1MOhm pulldownSI476X_ICIP_GPO1_HIGHβ set pin to be an output, drive it high π₯SI476X_ICIP_GPO1_LOWβ set pin to be an output, drive it lowSI476X_ICIP_IC_LINKβ set the pin to be a part of Inter-Chip link π
- the ICIP pin function configuration, same lineup but with a
icon- the ICON pin function configuration, and bestie this one's different:
SI476X_ICON_NOOPβ do not modify the behaviour πSI476X_ICON_TRISTATEβ put the pin in tristate condition, enable 1MOhm pulldownSI476X_ICON_I2Sβ set the pin to be a part of audio interface in slave mode (DCLK) π§SI476X_ICON_IC_LINKβ set the pin to be a part of Inter-Chip link π
icop- the ICOP pin function configuration:
SI476X_ICOP_NOOPβ do not modify the behaviour πSI476X_ICOP_TRISTATEβ put the pin in tristate condition, enable 1MOhm pulldownSI476X_ICOP_I2Sβ set the pin to be a part of audio interface in slave mode (DOUT) [Si4761/63/65/67 Only] π (like, read the fine print, it's a whole exclusive club)SI476X_ICOP_IC_LINKβ set the pin to be a part of Inter-Chip link π
πΈ DESCRIPTION πΈ
so the function returns 0 on success and a negative error code on failure. that's it, that's the tea β not me being obsessed with how simple it is tbh π
ngl bestie, always check that return value. negative number = it did NOT slay.
π¦ SEE ALSO π¦
- the kernel file
./drivers/mfd/si476x-cmd.cπ si476x_core_send_command(9)si476x_core_cmd_func_info(9)si476x_core_cmd_set_property(9)si476x_core_cmd_get_property(9)si476x_core_cmd_dig_audio_pin_cfg(9)si476x_core_cmd_zif_pin_cfg(9)si476x_core_cmd_ana_audio_pin_cfg(9)si476x_core_cmd_intb_pin_cfg_a10(9)si476x_core_cmd_am_rsq_status(9)si476x_core_cmd_fm_seek_start(9)si476x_core_cmd_fm_rds_status(9)si476x_core_cmd_fm_phase_div_status(9)si476x_core_cmd_am_seek_start(9)
aight that's the whole page, periodt π
and before you go β huge shoutout to the source, <rainbow>./drivers/mfd</rainbow>, dated October 2026 β that's the version and the date, bestie, don't @ me ππ§π
π¦ 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