sound/soc/codecs/rt5668.h
Source file repositories/reference/linux-study-clean/sound/soc/codecs/rt5668.h
File Facts
- System
- Linux kernel
- Corpus path
sound/soc/codecs/rt5668.h- Extension
.h- Size
- 47103 bytes
- Lines
- 1313
- 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
sound/rt5668.h
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
#ifndef __RT5668_H__
#define __RT5668_H__
#include <sound/rt5668.h>
#define DEVICE_ID 0x6530
/* Info */
#define RT5668_RESET 0x0000
#define RT5668_VERSION_ID 0x00fd
#define RT5668_VENDOR_ID 0x00fe
#define RT5668_DEVICE_ID 0x00ff
/* I/O - Output */
#define RT5668_HP_CTRL_1 0x0002
#define RT5668_HP_CTRL_2 0x0003
#define RT5668_HPL_GAIN 0x0005
#define RT5668_HPR_GAIN 0x0006
#define RT5668_I2C_CTRL 0x0008
/* I/O - Input */
#define RT5668_CBJ_BST_CTRL 0x000b
#define RT5668_CBJ_CTRL_1 0x0010
#define RT5668_CBJ_CTRL_2 0x0011
#define RT5668_CBJ_CTRL_3 0x0012
#define RT5668_CBJ_CTRL_4 0x0013
#define RT5668_CBJ_CTRL_5 0x0014
#define RT5668_CBJ_CTRL_6 0x0015
#define RT5668_CBJ_CTRL_7 0x0016
/* I/O - ADC/DAC/DMIC */
#define RT5668_DAC1_DIG_VOL 0x0019
#define RT5668_STO1_ADC_DIG_VOL 0x001c
#define RT5668_STO1_ADC_BOOST 0x001f
#define RT5668_HP_IMP_GAIN_1 0x0022
#define RT5668_HP_IMP_GAIN_2 0x0023
/* Mixer - D-D */
#define RT5668_SIDETONE_CTRL 0x0024
#define RT5668_STO1_ADC_MIXER 0x0026
#define RT5668_AD_DA_MIXER 0x0029
#define RT5668_STO1_DAC_MIXER 0x002a
#define RT5668_A_DAC1_MUX 0x002b
#define RT5668_DIG_INF2_DATA 0x0030
/* Mixer - ADC */
#define RT5668_REC_MIXER 0x003c
#define RT5668_CAL_REC 0x0044
#define RT5668_ALC_BACK_GAIN 0x0049
/* Power */
#define RT5668_PWR_DIG_1 0x0061
#define RT5668_PWR_DIG_2 0x0062
#define RT5668_PWR_ANLG_1 0x0063
#define RT5668_PWR_ANLG_2 0x0064
#define RT5668_PWR_ANLG_3 0x0065
#define RT5668_PWR_MIXER 0x0066
#define RT5668_PWR_VOL 0x0067
/* Clock Detect */
#define RT5668_CLK_DET 0x006b
/* Filter Auto Reset */
#define RT5668_RESET_LPF_CTRL 0x006c
#define RT5668_RESET_HPF_CTRL 0x006d
/* DMIC */
#define RT5668_DMIC_CTRL_1 0x006e
/* Format - ADC/DAC */
#define RT5668_I2S1_SDP 0x0070
#define RT5668_I2S2_SDP 0x0071
#define RT5668_ADDA_CLK_1 0x0073
#define RT5668_ADDA_CLK_2 0x0074
#define RT5668_I2S1_F_DIV_CTRL_1 0x0075
#define RT5668_I2S1_F_DIV_CTRL_2 0x0076
/* Format - TDM Control */
#define RT5668_TDM_CTRL 0x0079
#define RT5668_TDM_ADDA_CTRL_1 0x007a
#define RT5668_TDM_ADDA_CTRL_2 0x007b
#define RT5668_DATA_SEL_CTRL_1 0x007c
#define RT5668_TDM_TCON_CTRL 0x007e
/* Function - Analog */
#define RT5668_GLB_CLK 0x0080
#define RT5668_PLL_CTRL_1 0x0081
#define RT5668_PLL_CTRL_2 0x0082
#define RT5668_PLL_TRACK_1 0x0083
#define RT5668_PLL_TRACK_2 0x0084
#define RT5668_PLL_TRACK_3 0x0085
#define RT5668_PLL_TRACK_4 0x0086
#define RT5668_PLL_TRACK_5 0x0087
#define RT5668_PLL_TRACK_6 0x0088
#define RT5668_PLL_TRACK_11 0x008c
#define RT5668_SDW_REF_CLK 0x008d
#define RT5668_DEPOP_1 0x008e
#define RT5668_DEPOP_2 0x008f
#define RT5668_HP_CHARGE_PUMP_1 0x0091
#define RT5668_HP_CHARGE_PUMP_2 0x0092
Annotation
- Immediate include surface: `sound/rt5668.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.