sound/soc/codecs/rt5670.h
Source file repositories/reference/linux-study-clean/sound/soc/codecs/rt5670.h
File Facts
- System
- Linux kernel
- Corpus path
sound/soc/codecs/rt5670.h- Extension
.h- Size
- 70316 bytes
- Lines
- 2030
- Domain
- Driver Families
- Bucket
- sound/soc
- Inferred role
- Driver Families: implementation source
- Status
- source implementation candidate
Why This File Exists
Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
struct rt5670_priv
Annotated Snippet
struct rt5670_priv {
struct snd_soc_component *component;
struct regmap *regmap;
struct snd_soc_jack *jack;
struct snd_soc_jack_gpio hp_gpio;
int jd_mode;
bool in2_diff;
bool gpio1_is_irq;
bool gpio1_is_ext_spk_en;
bool dmic_en;
unsigned int dmic1_data_pin;
/* 0 = GPIO6; 1 = IN2P; 3 = GPIO7*/
unsigned int dmic2_data_pin;
/* 0 = GPIO8; 1 = IN3N; */
unsigned int dmic3_data_pin;
/* 0 = GPIO9; 1 = GPIO10; 2 = GPIO5*/
int sysclk;
int sysclk_src;
int lrck[RT5670_AIFS];
int bclk[RT5670_AIFS];
int master[RT5670_AIFS];
int pll_src;
int pll_in;
int pll_out;
int dsp_sw; /* expected parameter setting */
int dsp_rate;
int jack_type;
int jack_type_saved;
bool dac1_mixl_dac1_switch;
bool dac1_mixr_dac1_switch;
bool dac1_playback_switch_l;
bool dac1_playback_switch_r;
};
void rt5670_jack_suspend(struct snd_soc_component *component);
void rt5670_jack_resume(struct snd_soc_component *component);
int rt5670_set_jack_detect(struct snd_soc_component *component,
struct snd_soc_jack *jack);
const char *rt5670_components(void);
#endif /* __RT5670_H__ */
Annotation
- Detected declarations: `struct rt5670_priv`.
- Atlas domain: Driver Families / sound/soc.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.