sound/soc/codecs/wm8962.h
Source file repositories/reference/linux-study-clean/sound/soc/codecs/wm8962.h
File Facts
- System
- Linux kernel
- Corpus path
sound/soc/codecs/wm8962.h- Extension
.h- Size
- 215289 bytes
- Lines
- 3782
- 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
asm/types.hsound/soc.h
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
#ifndef _WM8962_H
#define _WM8962_H
#include <asm/types.h>
#include <sound/soc.h>
#define WM8962_SYSCLK_MCLK 0
#define WM8962_SYSCLK_FLL 1
#define WM8962_SYSCLK_PLL3 2
#define WM8962_FLL 1
#define WM8962_FLL_MCLK 1
#define WM8962_FLL_BCLK 2
#define WM8962_FLL_OSC 3
#define WM8962_FLL_INT 4
/*
* Register values.
*/
#define WM8962_LEFT_INPUT_VOLUME 0x00
#define WM8962_RIGHT_INPUT_VOLUME 0x01
#define WM8962_HPOUTL_VOLUME 0x02
#define WM8962_HPOUTR_VOLUME 0x03
#define WM8962_CLOCKING1 0x04
#define WM8962_ADC_DAC_CONTROL_1 0x05
#define WM8962_ADC_DAC_CONTROL_2 0x06
#define WM8962_AUDIO_INTERFACE_0 0x07
#define WM8962_CLOCKING2 0x08
#define WM8962_AUDIO_INTERFACE_1 0x09
#define WM8962_LEFT_DAC_VOLUME 0x0A
#define WM8962_RIGHT_DAC_VOLUME 0x0B
#define WM8962_AUDIO_INTERFACE_2 0x0E
#define WM8962_SOFTWARE_RESET 0x0F
#define WM8962_ALC1 0x11
#define WM8962_ALC2 0x12
#define WM8962_ALC3 0x13
#define WM8962_NOISE_GATE 0x14
#define WM8962_LEFT_ADC_VOLUME 0x15
#define WM8962_RIGHT_ADC_VOLUME 0x16
#define WM8962_ADDITIONAL_CONTROL_1 0x17
#define WM8962_ADDITIONAL_CONTROL_2 0x18
#define WM8962_PWR_MGMT_1 0x19
#define WM8962_PWR_MGMT_2 0x1A
#define WM8962_ADDITIONAL_CONTROL_3 0x1B
#define WM8962_ANTI_POP 0x1C
#define WM8962_CLOCKING_3 0x1E
#define WM8962_INPUT_MIXER_CONTROL_1 0x1F
#define WM8962_LEFT_INPUT_MIXER_VOLUME 0x20
#define WM8962_RIGHT_INPUT_MIXER_VOLUME 0x21
#define WM8962_INPUT_MIXER_CONTROL_2 0x22
#define WM8962_INPUT_BIAS_CONTROL 0x23
#define WM8962_LEFT_INPUT_PGA_CONTROL 0x25
#define WM8962_RIGHT_INPUT_PGA_CONTROL 0x26
#define WM8962_SPKOUTL_VOLUME 0x28
#define WM8962_SPKOUTR_VOLUME 0x29
#define WM8962_THERMAL_SHUTDOWN_STATUS 0x2F
#define WM8962_ADDITIONAL_CONTROL_4 0x30
#define WM8962_CLASS_D_CONTROL_1 0x31
#define WM8962_CLASS_D_CONTROL_2 0x33
#define WM8962_CLOCKING_4 0x38
#define WM8962_DAC_DSP_MIXING_1 0x39
#define WM8962_DAC_DSP_MIXING_2 0x3A
#define WM8962_DC_SERVO_0 0x3C
#define WM8962_DC_SERVO_1 0x3D
#define WM8962_DC_SERVO_4 0x40
#define WM8962_DC_SERVO_6 0x42
#define WM8962_ANALOGUE_PGA_BIAS 0x44
#define WM8962_ANALOGUE_HP_0 0x45
#define WM8962_ANALOGUE_HP_2 0x47
#define WM8962_CHARGE_PUMP_1 0x48
#define WM8962_CHARGE_PUMP_B 0x52
#define WM8962_WRITE_SEQUENCER_CONTROL_1 0x57
#define WM8962_WRITE_SEQUENCER_CONTROL_2 0x5A
#define WM8962_WRITE_SEQUENCER_CONTROL_3 0x5D
#define WM8962_CONTROL_INTERFACE 0x5E
#define WM8962_MIXER_ENABLES 0x63
#define WM8962_HEADPHONE_MIXER_1 0x64
#define WM8962_HEADPHONE_MIXER_2 0x65
#define WM8962_HEADPHONE_MIXER_3 0x66
#define WM8962_HEADPHONE_MIXER_4 0x67
#define WM8962_SPEAKER_MIXER_1 0x69
#define WM8962_SPEAKER_MIXER_2 0x6A
#define WM8962_SPEAKER_MIXER_3 0x6B
#define WM8962_SPEAKER_MIXER_4 0x6C
#define WM8962_SPEAKER_MIXER_5 0x6D
#define WM8962_BEEP_GENERATOR_1 0x6E
#define WM8962_OSCILLATOR_TRIM_3 0x73
#define WM8962_OSCILLATOR_TRIM_4 0x74
#define WM8962_OSCILLATOR_TRIM_7 0x77
Annotation
- Immediate include surface: `asm/types.h`, `sound/soc.h`.
- 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.