sound/soc/mediatek/mt8196/mt8196-reg.h
Source file repositories/reference/linux-study-clean/sound/soc/mediatek/mt8196/mt8196-reg.h
File Facts
- System
- Linux kernel
- Corpus path
sound/soc/mediatek/mt8196/mt8196-reg.h- Extension
.h- Size
- 695563 bytes
- Lines
- 12069
- 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 _MT8196_REG_H_
#define _MT8196_REG_H_
/* reg bit enum */
enum {
MT8196_MEMIF_PBUF_SIZE_32_BYTES,
MT8196_MEMIF_PBUF_SIZE_64_BYTES,
MT8196_MEMIF_PBUF_SIZE_128_BYTES,
MT8196_MEMIF_PBUF_SIZE_256_BYTES,
MT8196_MEMIF_PBUF_SIZE_NUM,
};
enum {
MT8196_MEMIF_MAX_LEN_0_BYTES,
MT8196_MEMIF_MAX_LEN_16_BYTES,
MT8196_MEMIF_MAX_LEN_32_BYTES,
MT8196_MEMIF_MAX_LEN_64_BYTES,
};
enum {
MT8196_MEMIF_MIN_LEN_NOT_SUPPORT,
MT8196_MEMIF_MIN_LEN_16_BYTES,
MT8196_MEMIF_MIN_LEN_32_BYTES,
MT8196_MEMIF_MIN_LEN_64_BYTES,
};
/*****************************************************************************
* R E G I S T E R D E F I N I T I O N
*****************************************************************************/
/* AUDIO_TOP_CON0 */
#define PDN_MTKAIFV4_SFT 25
#define PDN_MTKAIFV4_MASK 0x1
#define PDN_MTKAIFV4_MASK_SFT (0x1 << 25)
#define PDN_FM_I2S_SFT 24
#define PDN_FM_I2S_MASK 0x1
#define PDN_FM_I2S_MASK_SFT (0x1 << 24)
#define PDN_HW_GAIN01_SFT 21
#define PDN_HW_GAIN01_MASK 0x1
#define PDN_HW_GAIN01_MASK_SFT (0x1 << 21)
#define PDN_HW_GAIN23_SFT 20
#define PDN_HW_GAIN23_MASK 0x1
#define PDN_HW_GAIN23_MASK_SFT (0x1 << 20)
#define PDN_STF_SFT 19
#define PDN_STF_MASK 0x1
#define PDN_STF_MASK_SFT (0x1 << 19)
#define PDN_CM0_SFT 18
#define PDN_CM0_MASK 0x1
#define PDN_CM0_MASK_SFT (0x1 << 18)
#define PDN_CM1_SFT 17
#define PDN_CM1_MASK 0x1
#define PDN_CM1_MASK_SFT (0x1 << 17)
#define PDN_CM2_SFT 16
#define PDN_CM2_MASK 0x1
#define PDN_CM2_MASK_SFT (0x1 << 16)
#define PDN_PCM0_SFT 14
#define PDN_PCM0_MASK 0x1
#define PDN_PCM0_MASK_SFT (0x1 << 14)
#define PDN_PCM1_SFT 13
#define PDN_PCM1_MASK 0x1
#define PDN_PCM1_MASK_SFT (0x1 << 13)
/* AUDIO_TOP_CON1 */
#define PDN_UL0_ADC_SFT 23
#define PDN_UL0_ADC_MASK 0x1
#define PDN_UL0_ADC_MASK_SFT (0x1 << 23)
#define PDN_UL0_TML_SFT 22
#define PDN_UL0_TML_MASK 0x1
#define PDN_UL0_TML_MASK_SFT (0x1 << 22)
#define PDN_UL0_ADC_HIRES_SFT 21
#define PDN_UL0_ADC_HIRES_MASK 0x1
#define PDN_UL0_ADC_HIRES_MASK_SFT (0x1 << 21)
#define PDN_UL0_ADC_HIRES_TML_SFT 20
#define PDN_UL0_ADC_HIRES_TML_MASK 0x1
#define PDN_UL0_ADC_HIRES_TML_MASK_SFT (0x1 << 20)
#define PDN_UL1_ADC_SFT 19
#define PDN_UL1_ADC_MASK 0x1
#define PDN_UL1_ADC_MASK_SFT (0x1 << 19)
#define PDN_UL1_TML_SFT 18
#define PDN_UL1_TML_MASK 0x1
#define PDN_UL1_TML_MASK_SFT (0x1 << 18)
#define PDN_UL1_ADC_HIRES_SFT 17
#define PDN_UL1_ADC_HIRES_MASK 0x1
#define PDN_UL1_ADC_HIRES_MASK_SFT (0x1 << 17)
#define PDN_UL1_ADC_HIRES_TML_SFT 16
#define PDN_UL1_ADC_HIRES_TML_MASK 0x1
#define PDN_UL1_ADC_HIRES_TML_MASK_SFT (0x1 << 16)
#define PDN_UL2_ADC_SFT 15
#define PDN_UL2_ADC_MASK 0x1
#define PDN_UL2_ADC_MASK_SFT (0x1 << 15)
#define PDN_UL2_TML_SFT 14
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.