sound/soc/codecs/rt1305.c

Source file repositories/reference/linux-study-clean/sound/soc/codecs/rt1305.c

File Facts

System
Linux kernel
Corpus path
sound/soc/codecs/rt1305.c
Extension
.c
Size
32262 bytes
Lines
1180
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

struct rt1305_priv {
	struct snd_soc_component *component;
	struct regmap *regmap;

	int sysclk;
	int sysclk_src;
	int lrck;
	int bclk;
	int master;

	int pll_src;
	int pll_in;
	int pll_out;
};

static const struct reg_default rt1305_reg[] = {

	{ 0x04, 0x0400 },
	{ 0x05, 0x0880 },
	{ 0x06, 0x0000 },
	{ 0x07, 0x3100 },
	{ 0x08, 0x8000 },
	{ 0x09, 0x0000 },
	{ 0x0a, 0x087e },
	{ 0x0b, 0x0020 },
	{ 0x0c, 0x0802 },
	{ 0x0d, 0x0020 },
	{ 0x10, 0x1d1d },
	{ 0x11, 0x1d1d },
	{ 0x12, 0xffff },
	{ 0x14, 0x000c },
	{ 0x16, 0x1717 },
	{ 0x17, 0x4000 },
	{ 0x18, 0x0019 },
	{ 0x20, 0x0000 },
	{ 0x22, 0x0000 },
	{ 0x24, 0x0000 },
	{ 0x26, 0x0000 },
	{ 0x28, 0x0000 },
	{ 0x2a, 0x4000 },
	{ 0x2b, 0x3000 },
	{ 0x2d, 0x6000 },
	{ 0x2e, 0x0000 },
	{ 0x2f, 0x8000 },
	{ 0x32, 0x0000 },
	{ 0x39, 0x0001 },
	{ 0x3a, 0x0000 },
	{ 0x3b, 0x1020 },
	{ 0x3c, 0x0000 },
	{ 0x3d, 0x0000 },
	{ 0x3e, 0x4c00 },
	{ 0x3f, 0x3000 },
	{ 0x40, 0x000c },
	{ 0x42, 0x0400 },
	{ 0x46, 0xc22c },
	{ 0x47, 0x0000 },
	{ 0x4b, 0x0000 },
	{ 0x4c, 0x0300 },
	{ 0x4f, 0xf000 },
	{ 0x50, 0xc200 },
	{ 0x51, 0x1f1f },
	{ 0x52, 0x01f0 },
	{ 0x53, 0x407f },
	{ 0x54, 0xffff },
	{ 0x58, 0x4005 },
	{ 0x5e, 0x0000 },
	{ 0x5f, 0x0000 },
	{ 0x60, 0xee13 },
	{ 0x62, 0x0000 },
	{ 0x63, 0x5f5f },
	{ 0x64, 0x0040 },
	{ 0x65, 0x4000 },
	{ 0x66, 0x4004 },
	{ 0x67, 0x0306 },
	{ 0x68, 0x8c04 },
	{ 0x69, 0xe021 },
	{ 0x6a, 0x0000 },
	{ 0x6c, 0xaaaa },
	{ 0x70, 0x0333 },
	{ 0x71, 0x3330 },
	{ 0x72, 0x3333 },
	{ 0x73, 0x3300 },
	{ 0x74, 0x0000 },
	{ 0x75, 0x0000 },
	{ 0x76, 0x0000 },
	{ 0x7a, 0x0003 },
	{ 0x7c, 0x10ec },
	{ 0x7e, 0x6251 },
	{ 0x80, 0x0800 },
	{ 0x81, 0x4000 },

Annotation

Implementation Notes