sound/soc/codecs/tscs42xx.h
Source file repositories/reference/linux-study-clean/sound/soc/codecs/tscs42xx.h
File Facts
- System
- Linux kernel
- Corpus path
sound/soc/codecs/tscs42xx.h- Extension
.h- Size
- 78296 bytes
- Lines
- 2702
- 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
// SPDX-License-Identifier: GPL-2.0
// tscs42xx.h -- TSCS42xx ALSA SoC Audio driver
// Copyright 2017 Tempo Semiconductor, Inc.
// Author: Steven Eckhoff <steven.eckhoff.opensource@gmail.com>
#ifndef __WOOKIE_H__
#define __WOOKIE_H__
enum {
TSCS42XX_PLL_SRC_XTAL,
TSCS42XX_PLL_SRC_MCLK1,
TSCS42XX_PLL_SRC_MCLK2,
TSCS42XX_PLL_SRC_CNT,
};
#define R_HPVOLL 0x0
#define R_HPVOLR 0x1
#define R_SPKVOLL 0x2
#define R_SPKVOLR 0x3
#define R_DACVOLL 0x4
#define R_DACVOLR 0x5
#define R_ADCVOLL 0x6
#define R_ADCVOLR 0x7
#define R_INVOLL 0x8
#define R_INVOLR 0x9
#define R_INMODE 0x0B
#define R_INSELL 0x0C
#define R_INSELR 0x0D
#define R_AIC1 0x13
#define R_AIC2 0x14
#define R_CNVRTR0 0x16
#define R_ADCSR 0x17
#define R_CNVRTR1 0x18
#define R_DACSR 0x19
#define R_PWRM1 0x1A
#define R_PWRM2 0x1B
#define R_CTL 0x1C
#define R_CONFIG0 0x1F
#define R_CONFIG1 0x20
#define R_DMICCTL 0x24
#define R_CLECTL 0x25
#define R_MUGAIN 0x26
#define R_COMPTH 0x27
#define R_CMPRAT 0x28
#define R_CATKTCL 0x29
#define R_CATKTCH 0x2A
#define R_CRELTCL 0x2B
#define R_CRELTCH 0x2C
#define R_LIMTH 0x2D
#define R_LIMTGT 0x2E
#define R_LATKTCL 0x2F
#define R_LATKTCH 0x30
#define R_LRELTCL 0x31
#define R_LRELTCH 0x32
#define R_EXPTH 0x33
#define R_EXPRAT 0x34
#define R_XATKTCL 0x35
#define R_XATKTCH 0x36
#define R_XRELTCL 0x37
#define R_XRELTCH 0x38
#define R_FXCTL 0x39
#define R_DACCRWRL 0x3A
#define R_DACCRWRM 0x3B
#define R_DACCRWRH 0x3C
#define R_DACCRRDL 0x3D
#define R_DACCRRDM 0x3E
#define R_DACCRRDH 0x3F
#define R_DACCRADDR 0x40
#define R_DCOFSEL 0x41
#define R_PLLCTL9 0x4E
#define R_PLLCTLA 0x4F
#define R_PLLCTLB 0x50
#define R_PLLCTLC 0x51
#define R_PLLCTLD 0x52
#define R_PLLCTLE 0x53
#define R_PLLCTLF 0x54
#define R_PLLCTL10 0x55
#define R_PLLCTL11 0x56
#define R_PLLCTL12 0x57
#define R_PLLCTL1B 0x60
#define R_PLLCTL1C 0x61
#define R_TIMEBASE 0x77
#define R_DEVIDL 0x7D
#define R_DEVIDH 0x7E
#define R_RESET 0x80
#define R_DACCRSTAT 0x8A
#define R_PLLCTL0 0x8E
#define R_PLLREFSEL 0x8F
#define R_DACMBCEN 0xC7
#define R_DACMBCCTL 0xC8
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.