sound/soc/codecs/aw88166.h

Source file repositories/reference/linux-study-clean/sound/soc/codecs/aw88166.h

File Facts

System
Linux kernel
Corpus path
sound/soc/codecs/aw88166.h
Extension
.h
Size
16978 bytes
Lines
530
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.

Dependency Surface

Detected Declarations

Annotated Snippet

// SPDX-License-Identifier: GPL-2.0-only
//
// aw88166.h --  ALSA SoC AW88166 codec support
//
// Copyright (c) 2025 AWINIC Technology CO., LTD
//
// Author: Weidong Wang <wangweidong.a@awinic.com>
//

#ifndef __AW88166_H__
#define __AW88166_H__

/* registers list */
#define AW88166_ID_REG			(0x00)
#define AW88166_SYSST_REG		(0x01)
#define AW88166_SYSINT_REG		(0x02)
#define AW88166_SYSINTM_REG		(0x03)
#define AW88166_SYSCTRL_REG		(0x04)
#define AW88166_SYSCTRL2_REG		(0x05)
#define AW88166_I2SCTRL1_REG		(0x06)
#define AW88166_I2SCTRL2_REG		(0x07)
#define AW88166_I2SCTRL3_REG		(0x08)
#define AW88166_DACCFG1_REG		(0x09)
#define AW88166_DACCFG2_REG		(0x0A)
#define AW88166_DACCFG3_REG		(0x0B)
#define AW88166_DACCFG4_REG		(0x0C)
#define AW88166_DACCFG5_REG		(0x0D)
#define AW88166_DACCFG6_REG		(0x0E)
#define AW88166_DACCFG7_REG		(0x0F)
#define AW88166_MPDCFG1_REG		(0x10)
#define AW88166_MPDCFG2_REG		(0x11)
#define AW88166_MPDCFG3_REG		(0x12)
#define AW88166_MPDCFG4_REG		(0x13)
#define AW88166_PWMCTRL1_REG		(0x14)
#define AW88166_PWMCTRL2_REG		(0x15)
#define AW88166_PWMCTRL3_REG		(0x16)
#define AW88166_I2SCFG1_REG		(0x17)
#define AW88166_DBGCTRL_REG		(0x18)
#define AW88166_HAGCST_REG		(0x20)
#define AW88166_VBAT_REG		(0x21)
#define AW88166_TEMP_REG		(0x22)
#define AW88166_PVDD_REG		(0x23)
#define AW88166_ISNDAT_REG		(0x24)
#define AW88166_I2SINT_REG		(0x25)
#define AW88166_I2SCAPCNT_REG		(0x26)
#define AW88166_ANASTA1_REG		(0x27)
#define AW88166_ANASTA2_REG		(0x28)
#define AW88166_ANASTA3_REG		(0x29)
#define AW88166_TESTDET_REG		(0x2A)
#define AW88166_TESTIN_REG		(0x38)
#define AW88166_TESTOUT_REG		(0x39)
#define AW88166_MEMTEST_REG		(0x3A)
#define AW88166_DSPMADD_REG		(0x40)
#define AW88166_DSPMDAT_REG		(0x41)
#define AW88166_WDT_REG		(0x42)
#define AW88166_ACR1_REG		(0x43)
#define AW88166_ACR2_REG		(0x44)
#define AW88166_ASR1_REG		(0x45)
#define AW88166_ASR2_REG		(0x46)
#define AW88166_DSPCFG_REG		(0x47)
#define AW88166_ASR3_REG		(0x48)
#define AW88166_ASR4_REG		(0x49)
#define AW88166_DSPVCALB_REG		(0x4A)
#define AW88166_CRCCTRL_REG		(0x4B)
#define AW88166_DSPDBG1_REG		(0x4C)
#define AW88166_DSPDBG2_REG		(0x4D)
#define AW88166_DSPDBG3_REG		(0x4E)
#define AW88166_ISNCTRL1_REG		(0x50)
#define AW88166_PLLCTRL1_REG		(0x51)
#define AW88166_PLLCTRL2_REG		(0x52)
#define AW88166_PLLCTRL3_REG		(0x53)
#define AW88166_CDACTRL1_REG		(0x54)
#define AW88166_CDACTRL2_REG		(0x55)
#define AW88166_CDACTRL3_REG		(0x56)
#define AW88166_SADCCTRL1_REG		(0x57)
#define AW88166_SADCCTRL2_REG		(0x58)
#define AW88166_BOPCTRL1_REG		(0x59)
#define AW88166_BOPCTRL2_REG		(0x5A)
#define AW88166_BOPCTRL3_REG		(0x5B)
#define AW88166_BOPCTRL4_REG		(0x5C)
#define AW88166_BOPCTRL5_REG		(0x5D)
#define AW88166_BOPCTRL6_REG		(0x5E)
#define AW88166_BOPCTRL7_REG		(0x5F)
#define AW88166_BSTCTRL1_REG		(0x60)
#define AW88166_BSTCTRL2_REG		(0x61)
#define AW88166_BSTCTRL3_REG		(0x62)
#define AW88166_BSTCTRL4_REG		(0x63)
#define AW88166_BSTCTRL5_REG		(0x64)
#define AW88166_BSTCTRL6_REG		(0x65)
#define AW88166_DSMCFG1_REG		(0x66)

Annotation

Implementation Notes