drivers/media/tuners/tda18271-maps.c

Source file repositories/reference/linux-study-clean/drivers/media/tuners/tda18271-maps.c

File Facts

System
Linux kernel
Corpus path
drivers/media/tuners/tda18271-maps.c
Extension
.c
Size
44811 bytes
Lines
1292
Domain
Driver Families
Bucket
drivers/media
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 tda18271_pll_map {
	u32 lomax;
	u8 pd; /* post div */
	u8 d;  /*      div */
};

struct tda18271_map {
	u32 rfmax;
	u8  val;
};

/*---------------------------------------------------------------------*/

static struct tda18271_pll_map tda18271c1_main_pll[] = {
	{ .lomax =  32000, .pd = 0x5f, .d = 0xf0 },
	{ .lomax =  35000, .pd = 0x5e, .d = 0xe0 },
	{ .lomax =  37000, .pd = 0x5d, .d = 0xd0 },
	{ .lomax =  41000, .pd = 0x5c, .d = 0xc0 },
	{ .lomax =  44000, .pd = 0x5b, .d = 0xb0 },
	{ .lomax =  49000, .pd = 0x5a, .d = 0xa0 },
	{ .lomax =  54000, .pd = 0x59, .d = 0x90 },
	{ .lomax =  61000, .pd = 0x58, .d = 0x80 },
	{ .lomax =  65000, .pd = 0x4f, .d = 0x78 },
	{ .lomax =  70000, .pd = 0x4e, .d = 0x70 },
	{ .lomax =  75000, .pd = 0x4d, .d = 0x68 },
	{ .lomax =  82000, .pd = 0x4c, .d = 0x60 },
	{ .lomax =  89000, .pd = 0x4b, .d = 0x58 },
	{ .lomax =  98000, .pd = 0x4a, .d = 0x50 },
	{ .lomax = 109000, .pd = 0x49, .d = 0x48 },
	{ .lomax = 123000, .pd = 0x48, .d = 0x40 },
	{ .lomax = 131000, .pd = 0x3f, .d = 0x3c },
	{ .lomax = 141000, .pd = 0x3e, .d = 0x38 },
	{ .lomax = 151000, .pd = 0x3d, .d = 0x34 },
	{ .lomax = 164000, .pd = 0x3c, .d = 0x30 },
	{ .lomax = 179000, .pd = 0x3b, .d = 0x2c },
	{ .lomax = 197000, .pd = 0x3a, .d = 0x28 },
	{ .lomax = 219000, .pd = 0x39, .d = 0x24 },
	{ .lomax = 246000, .pd = 0x38, .d = 0x20 },
	{ .lomax = 263000, .pd = 0x2f, .d = 0x1e },
	{ .lomax = 282000, .pd = 0x2e, .d = 0x1c },
	{ .lomax = 303000, .pd = 0x2d, .d = 0x1a },
	{ .lomax = 329000, .pd = 0x2c, .d = 0x18 },
	{ .lomax = 359000, .pd = 0x2b, .d = 0x16 },
	{ .lomax = 395000, .pd = 0x2a, .d = 0x14 },
	{ .lomax = 438000, .pd = 0x29, .d = 0x12 },
	{ .lomax = 493000, .pd = 0x28, .d = 0x10 },
	{ .lomax = 526000, .pd = 0x1f, .d = 0x0f },
	{ .lomax = 564000, .pd = 0x1e, .d = 0x0e },
	{ .lomax = 607000, .pd = 0x1d, .d = 0x0d },
	{ .lomax = 658000, .pd = 0x1c, .d = 0x0c },
	{ .lomax = 718000, .pd = 0x1b, .d = 0x0b },
	{ .lomax = 790000, .pd = 0x1a, .d = 0x0a },
	{ .lomax = 877000, .pd = 0x19, .d = 0x09 },
	{ .lomax = 987000, .pd = 0x18, .d = 0x08 },
	{ .lomax =      0, .pd = 0x00, .d = 0x00 }, /* end */
};

static struct tda18271_pll_map tda18271c2_main_pll[] = {
	{ .lomax =  33125, .pd = 0x57, .d = 0xf0 },
	{ .lomax =  35500, .pd = 0x56, .d = 0xe0 },
	{ .lomax =  38188, .pd = 0x55, .d = 0xd0 },
	{ .lomax =  41375, .pd = 0x54, .d = 0xc0 },
	{ .lomax =  45125, .pd = 0x53, .d = 0xb0 },
	{ .lomax =  49688, .pd = 0x52, .d = 0xa0 },
	{ .lomax =  55188, .pd = 0x51, .d = 0x90 },
	{ .lomax =  62125, .pd = 0x50, .d = 0x80 },
	{ .lomax =  66250, .pd = 0x47, .d = 0x78 },
	{ .lomax =  71000, .pd = 0x46, .d = 0x70 },
	{ .lomax =  76375, .pd = 0x45, .d = 0x68 },
	{ .lomax =  82750, .pd = 0x44, .d = 0x60 },
	{ .lomax =  90250, .pd = 0x43, .d = 0x58 },
	{ .lomax =  99375, .pd = 0x42, .d = 0x50 },
	{ .lomax = 110375, .pd = 0x41, .d = 0x48 },
	{ .lomax = 124250, .pd = 0x40, .d = 0x40 },
	{ .lomax = 132500, .pd = 0x37, .d = 0x3c },
	{ .lomax = 142000, .pd = 0x36, .d = 0x38 },
	{ .lomax = 152750, .pd = 0x35, .d = 0x34 },
	{ .lomax = 165500, .pd = 0x34, .d = 0x30 },
	{ .lomax = 180500, .pd = 0x33, .d = 0x2c },
	{ .lomax = 198750, .pd = 0x32, .d = 0x28 },
	{ .lomax = 220750, .pd = 0x31, .d = 0x24 },
	{ .lomax = 248500, .pd = 0x30, .d = 0x20 },
	{ .lomax = 265000, .pd = 0x27, .d = 0x1e },
	{ .lomax = 284000, .pd = 0x26, .d = 0x1c },
	{ .lomax = 305500, .pd = 0x25, .d = 0x1a },
	{ .lomax = 331000, .pd = 0x24, .d = 0x18 },
	{ .lomax = 361000, .pd = 0x23, .d = 0x16 },
	{ .lomax = 397500, .pd = 0x22, .d = 0x14 },
	{ .lomax = 441500, .pd = 0x21, .d = 0x12 },
	{ .lomax = 497000, .pd = 0x20, .d = 0x10 },

Annotation

Implementation Notes