sound/soc/codecs/es8326.h
Source file repositories/reference/linux-study-clean/sound/soc/codecs/es8326.h
File Facts
- System
- Linux kernel
- Corpus path
sound/soc/codecs/es8326.h- Extension
.h- Size
- 5968 bytes
- Lines
- 204
- 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.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
#ifndef _ES8326_H
#define _ES8326_H
/* ES8326 register space */
#define ES8326_RESET 0x00
#define ES8326_CLK_CTL 0x01
#define ES8326_CLK_INV 0x02
#define ES8326_CLK_RESAMPLE 0x03
#define ES8326_CLK_DIV1 0x04
#define ES8326_CLK_DIV2 0x05
#define ES8326_CLK_DLL 0x06
#define ES8326_CLK_MUX 0x07
#define ES8326_CLK_ADC_SEL 0x08
#define ES8326_CLK_DAC_SEL 0x09
#define ES8326_CLK_ADC_OSR 0x0a
#define ES8326_CLK_DAC_OSR 0x0b
#define ES8326_CLK_DIV_CPC 0x0c
#define ES8326_CLK_DIV_BCLK 0x0d
#define ES8326_CLK_TRI 0x0e
#define ES8326_CLK_DIV_LRCK 0x0f
#define ES8326_CLK_VMIDS1 0x10
#define ES8326_CLK_VMIDS2 0x11
#define ES8326_CLK_CAL_TIME 0x12
#define ES8326_FMT 0x13
#define ES8326_DAC_MUTE 0x14
#define ES8326_ADC_MUTE 0x15
#define ES8326_ANA_PDN 0x16
#define ES8326_PGA_PDN 0x17
#define ES8326_VMIDSEL 0x18
#define ES8326_ANA_LP 0x19
#define ES8326_ANA_DMS 0x1a
#define ES8326_ANA_MICBIAS 0x1b
#define ES8326_ANA_VSEL 0x1c
#define ES8326_SYS_BIAS 0x1d
#define ES8326_BIAS_SW1 0x1e
#define ES8326_BIAS_SW2 0x1f
#define ES8326_BIAS_SW3 0x20
#define ES8326_BIAS_SW4 0x21
#define ES8326_VMIDLOW 0x22
#define ES8326_PGAGAIN 0x23
#define ES8326_HP_DRIVER 0x24
#define ES8326_DAC2HPMIX 0x25
#define ES8326_HP_VOL 0x26
#define ES8326_HP_CAL 0x27
#define ES8326_HP_DRIVER_REF 0x28
#define ES8326_ADC_SCALE 0x29
#define ES8326_ADC1_SRC 0x2a
#define ES8326_ADC2_SRC 0x2b
#define ES8326_ADC1_VOL 0x2c
#define ES8326_ADC2_VOL 0x2d
#define ES8326_ADC_RAMPRATE 0x2e
#define ES8326_ADC_DRE 0x2f
#define ES8326_ADC_DRE_GAIN 0x30
#define ES8326_ADC_DRE_GATE 0x31
#define ES8326_ALC_RECOVERY 0x32
#define ES8326_ALC_LEVEL 0x33
#define ES8326_ADC_HPFS1 0x34
#define ES8326_ADC_HPFS2 0x35
#define ES8326_ADC_EQ 0x36
#define ES8326_HP_OFFSET_CAL 0x4A
#define ES8326_HPL_OFFSET_INI 0x4B
#define ES8326_HPR_OFFSET_INI 0x4C
#define ES8326_DAC_DSM 0x4D
#define ES8326_DAC_RAMPRATE 0x4E
#define ES8326_DAC_VPPSCALE 0x4F
#define ES8326_DACL_VOL 0x50
#define ES8326_DRC_RECOVERY 0x53
#define ES8326_DRC_WINSIZE 0x54
#define ES8326_DAC_CROSSTALK 0x55
#define ES8326_HPJACK_TIMER 0x56
#define ES8326_HPDET_TYPE 0x57
#define ES8326_INT_SOURCE 0x58
#define ES8326_INTOUT_IO 0x59
#define ES8326_SDINOUT1_IO 0x5A
#define ES8326_SDINOUT23_IO 0x5B
#define ES8326_JACK_PULSE 0x5C
#define ES8326_DACR_VOL 0xF4
#define ES8326_SPKL_VOL 0xF5
#define ES8326_SPKR_VOL 0xF6
#define ES8326_HP_MISC 0xF7
#define ES8326_CTIA_OMTP_STA 0xF8
#define ES8326_PULLUP_CTL 0xF9
#define ES8326_CSM_I2C_STA 0xFA
#define ES8326_HPDET_STA 0xFB
#define ES8326_CSM_MUTE_STA 0xFC
#define ES8326_CHIP_ID1 0xFD
#define ES8326_CHIP_ID2 0xFE
#define ES8326_CHIP_VERSION 0xFF
Annotation
- 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.