sound/soc/codecs/tlv320dac33.h

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

File Facts

System
Linux kernel
Corpus path
sound/soc/codecs/tlv320dac33.h
Extension
.h
Size
7966 bytes
Lines
251
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

#ifndef __TLV320DAC33_H
#define __TLV320DAC33_H

#define DAC33_PAGE_SELECT		0x00
#define DAC33_PWR_CTRL			0x01
#define DAC33_PLL_CTRL_A		0x02
#define DAC33_PLL_CTRL_B		0x03
#define DAC33_PLL_CTRL_C		0x04
#define DAC33_PLL_CTRL_D		0x05
#define DAC33_PLL_CTRL_E		0x06
#define DAC33_INT_OSC_CTRL		0x07
#define DAC33_INT_OSC_FREQ_RAT_A	0x08
#define DAC33_INT_OSC_FREQ_RAT_B	0x09
#define DAC33_INT_OSC_DAC_RATIO_SET	0x0A
#define DAC33_CALIB_TIME		0x0B
#define DAC33_INT_OSC_CTRL_B		0x0C
#define DAC33_INT_OSC_CTRL_C		0x0D
#define DAC33_INT_OSC_STATUS		0x0E
#define DAC33_INT_OSC_DAC_RATIO_READ	0x0F
#define DAC33_INT_OSC_FREQ_RAT_READ_A	0x10
#define DAC33_INT_OSC_FREQ_RAT_READ_B	0x11
#define DAC33_SER_AUDIOIF_CTRL_A	0x12
#define DAC33_SER_AUDIOIF_CTRL_B	0x13
#define DAC33_SER_AUDIOIF_CTRL_C	0x14
#define DAC33_FIFO_CTRL_A		0x15
#define DAC33_UTHR_MSB			0x16
#define DAC33_UTHR_LSB			0x17
#define DAC33_ATHR_MSB			0x18
#define DAC33_ATHR_LSB			0x19
#define DAC33_LTHR_MSB			0x1A
#define DAC33_LTHR_LSB			0x1B
#define DAC33_PREFILL_MSB		0x1C
#define DAC33_PREFILL_LSB		0x1D
#define DAC33_NSAMPLE_MSB		0x1E
#define DAC33_NSAMPLE_LSB		0x1F
#define DAC33_FIFO_WPTR_MSB		0x20
#define DAC33_FIFO_WPTR_LSB		0x21
#define DAC33_FIFO_RPTR_MSB		0x22
#define DAC33_FIFO_RPTR_LSB		0x23
#define DAC33_FIFO_DEPTH_MSB		0x24
#define DAC33_FIFO_DEPTH_LSB		0x25
#define DAC33_SAMPLES_REMAINING_MSB	0x26
#define DAC33_SAMPLES_REMAINING_LSB	0x27
#define DAC33_FIFO_IRQ_FLAG		0x28
#define DAC33_FIFO_IRQ_MASK		0x29
#define DAC33_FIFO_IRQ_MODE_A		0x2A
#define DAC33_FIFO_IRQ_MODE_B		0x2B
#define DAC33_DAC_CTRL_A		0x2C
#define DAC33_DAC_CTRL_B		0x2D
#define DAC33_DAC_CTRL_C		0x2E
#define DAC33_LDAC_DIG_VOL_CTRL		0x2F
#define DAC33_RDAC_DIG_VOL_CTRL		0x30
#define DAC33_DAC_STATUS_FLAGS		0x31
#define DAC33_ASRC_CTRL_A		0x32
#define DAC33_ASRC_CTRL_B		0x33
#define DAC33_SRC_REF_CLK_RATIO_A	0x34
#define DAC33_SRC_REF_CLK_RATIO_B	0x35
#define DAC33_SRC_EST_REF_CLK_RATIO_A	0x36
#define DAC33_SRC_EST_REF_CLK_RATIO_B	0x37
#define DAC33_INTP_CTRL_A		0x38
#define DAC33_INTP_CTRL_B		0x39
/* Registers 0x3A - 0x3F Reserved */
#define DAC33_LDAC_PWR_CTRL		0x40
#define DAC33_RDAC_PWR_CTRL		0x41
#define DAC33_OUT_AMP_CM_CTRL		0x42
#define DAC33_OUT_AMP_PWR_CTRL		0x43
#define DAC33_OUT_AMP_CTRL		0x44
#define DAC33_LINEL_TO_LLO_VOL		0x45
/* Registers 0x45 - 0x47 Reserved */
#define DAC33_LINER_TO_RLO_VOL		0x48
#define DAC33_ANA_VOL_SOFT_STEP_CTRL	0x49
#define DAC33_OSC_TRIM			0x4A
/* Registers 0x4B - 0x7C Reserved */
#define DAC33_DEVICE_ID_MSB		0x7D
#define DAC33_DEVICE_ID_LSB		0x7E
#define DAC33_DEVICE_REV_ID		0x7F

#define DAC33_CACHEREGNUM               128

/* Bit definitions */

/* DAC33_PWR_CTRL (0x01) */
#define DAC33_DACRPDNB			(0x01 << 0)
#define DAC33_DACLPDNB			(0x01 << 1)
#define DAC33_OSCPDNB			(0x01 << 2)
#define DAC33_PLLPDNB			(0x01 << 3)
#define DAC33_PDNALLB			(0x01 << 4)
#define DAC33_SOFT_RESET		(0x01 << 7)

/* DAC33_INT_OSC_CTRL (0x07) */

Annotation

Implementation Notes