STRUCT CS_DSP(9)

๐Ÿ“ฆ version 7.3.1, in nixpkgs unstable

๐Ÿ’– struct cs_dsp(9) ๐Ÿ’–

okay so this page is from the Kernel API Manual, and itโ€™s literally the configuration and state of a Cirrus Logic DSP. bestie, this struct is the main character energy for a whole DSP instance โ€” every field is right here, no cap. ๐ŸŽ€


โœจ NAME โœจ

struct cs_dsp โ€” Configuration and state of a Cirrus Logic DSP.


๐ŸŒธ SYNOPSIS ๐ŸŒธ

       struct cs_dsp {
           const char *name;
           int rev;
           int num;
           int type;
           struct device *dev;
           struct regmap *regmap;
           const struct cs_dsp_ops *ops;
           const struct cs_dsp_client_ops *client_ops;
           unsigned int base;
           unsigned int base_sysinfo;
           unsigned int sysclk_reg;
           unsigned int sysclk_mask;
           unsigned int sysclk_shift;
           bool no_core_startstop;
           struct list_head alg_regions;
           const char *fw_name;
           unsigned int fw_id;
           unsigned int fw_id_version;
           unsigned int fw_vendor_id;
           const struct cs_dsp_region *mem;
           int num_mems;
           int wmfw_ver;
           bool booted;
           bool running;
           bool hibernating;
           struct list_head ctl_list;
           struct mutex pwr_lock;
           unsigned int lock_regions;
         #ifdef CONFIG_DEBUG_FS;
           struct dentry *debugfs_root;
           const char *wmfw_file_name;
           const char *bin_file_name;
         #endif;
        };

๐Ÿ’… Members ๐Ÿ’…

okay bestie, field-by-field tea time. โ˜•

  • name โ€” the name of the DSP instance. literally its little nametag. ๐Ÿท๏ธ
  • rev โ€” revision of the DSP. โœจ
  • num โ€” DSP instance number. which one is this? this number. ๐Ÿ”ข
  • type โ€” type of DSP. ๐Ÿ’ซ
  • dev โ€” driver model representation of the device. the deviceโ€™s driver-model rep, slay. ๐Ÿซถ
  • regmap โ€” register map of the device. ๐Ÿ—บ๏ธ
  • ops โ€” function pointers for internal callbacks. ๐Ÿ”ง
  • client_ops โ€” function pointers for client callbacks. ๐Ÿซฑ
  • base โ€” address of the DSP registers. ๐Ÿ“
  • base_sysinfo โ€” address of the sysinfo register (Halo only). halo only, bestie, donโ€™t forget. ๐Ÿช„
  • sysclk_reg โ€” address of the sysclk register (ADSP1 only). ADSP1 only! โฐ
  • sysclk_mask โ€” mask of frequency bits within sysclk register (ADSP1 only). ADSP1 only again. ๐ŸŽš๏ธ
  • sysclk_shift โ€” shift of frequency bits within sysclk register (ADSP1 only). ADSP1 only, periodt. ๐Ÿ”€
  • alg_regions โ€” list of currently loaded algorithm regions. ๐Ÿง 
  • fw_name โ€” name of the current firmware. ๐Ÿท๏ธ
  • fw_id โ€” ID of the current firmware, obtained from the wmfw. ๐Ÿ†”
  • fw_id_version โ€” version of the firmware, obtained from the wmfw. ๐Ÿ”ข
  • fw_vendor_id โ€” vendor of the firmware, obtained from the wmfw. ๐Ÿข
  • mem โ€” DSP memory region descriptions. ๐Ÿ’พ
  • num_mems โ€” number of memory regions in this DSP. ๐Ÿงฎ
  • booted โ€” flag indicating DSP has been configured. โœ…
  • running โ€” flag indicating DSP is executing firmware. ๐Ÿƒ
  • ctl_list โ€” controls defined within the loaded DSP firmware. ๐ŸŽ›๏ธ
  • pwr_lock โ€” lock used to serialize accesses. ๐Ÿ”’
  • lock_regions โ€” enable MPU traps on specified memory regions. ๐Ÿšจ
  • debugfs_root โ€” debugfs directory for this DSP instance. ๐Ÿชฒ
  • wmfw_file_name โ€” filename of the currently loaded firmware. ๐Ÿ“„
  • bin_file_name โ€” filename of the currently loaded coefficients. ๐Ÿ“ฆ

๐Ÿฆ‹ SEE ALSO ๐Ÿฆ‹

Kernel file ./include/linux/firmware/cirrus/cs_dsp.h โ€” plus these linked icons, bestie: struct cs_dsp_region(9), struct cs_dsp_alg_region(9), struct cs_dsp_coeff_ctl(9), struct cs_dsp_client_ops(9), struct cs_dsp_wseq(9), struct cs_dsp_chunk(9), cs_dsp_chunk(9), cs_dsp_chunk_end(9), cs_dsp_chunk_bytes(9), cs_dsp_chunk_valid_addr(9). no cap, read the whole squad. ๐ŸŒˆ


okay thatโ€™s the whole page, bestie. source/version is ./include/linux/firmware/cirrus, date is October 2026, and yes this is the struct cs_dsp(9) page from the Kernel API Manual. go off, DSP icon. ๐Ÿ’…โœจ

๐Ÿ“ฆ where this page comes from