STRUCT ANALOG_DEMOD_OPS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ‘‘ struct analog_demod_ops(9) β€” bestie edition

okay so this is a page straight out of the Kernel API Manual, and it's about struct analog_demod_ops β€” literally the demodulation info and callbacks for analog TV and radio πŸŽ€. yes it's old-school analog, yes it still slays. stay with me.


✨ NAME ✨

struct analog_demod_ops β€” demodulation information and callbacks for analog TV and radio πŸ’–


🌸 SYNOPSIS 🌸

like, here's the whole vibe, verbatim, no cap:

struct analog_demod_ops {
    struct analog_demod_info info;
    void (*set_params)(struct dvb_frontend *fe, struct analog_parameters
*params);
    int (*has_signal)(struct dvb_frontend *fe, u16 *signal);
    int (*get_afc)(struct dvb_frontend *fe, s32 *afc);
    void (*tuner_status)(struct dvb_frontend *fe);
    void (*standby)(struct dvb_frontend *fe);
    void (*release)(struct dvb_frontend *fe);
    int (*i2c_gate_ctrl)(struct dvb_frontend *fe, int enable);
    int (*set_config)(struct dvb_frontend *fe, void *priv_cfg);
};

πŸ’… Members πŸ’…

group chat roll call, one by one 🫢

  • info β€” a pointer to struct analog_demod_info. that's it, that's the whole job πŸ’œ
  • set_params β€” callback function used to inform the demod to set the demodulator parameters needed to decode an analog or radio channel. the properties get passed via struct analog_params. it's giving "here are your settings, go off" ✨
  • has_signal β€” returns 0xffff if has signal, or 0 if it doesn't. yes it's literally just vibes: 0xffff = we're so back, 0 = it's so over 😭
  • get_afc β€” used only by analog TV core. reports the frequency drift due to AFC. lowkey a little snitch, but in a helpful way πŸ¦‹
  • tuner_status β€” callback function that returns tuner status bits, e. g. TUNER_STATUS_LOCKED and TUNER_STATUS_STEREO. it's giving status update bestie πŸ”₯
  • standby β€” set the tuner to standby mode. nap time, periodt πŸ’€
  • release β€” callback function called when frontend is detached. drivers should free any allocated memory. no leaks, no crumbs, we leave it spotless πŸ§ΉπŸ’…
  • i2c_gate_ctrl β€” controls the I2C gate. newer drivers should use I2C mux support instead πŸ‘€ so like... it works, but it's not the moment anymore.
  • set_config β€” callback function used to send some tuner-specific parameters. custom-fit, just for your tuner πŸŽ€

πŸ¦‹ SEE ALSO πŸ¦‹

the whole friend group, linked below πŸ’–


mwah πŸ’‹ this page lives in ./include/media and it's dated October 2026 β€” go read it, ily, bye 🫢✨

πŸ“¦ where this page comes from