drivers/video/fbdev/omap2/omapfb/dss/dispc_coefs.c

Source file repositories/reference/linux-study-clean/drivers/video/fbdev/omap2/omapfb/dss/dispc_coefs.c

File Facts

System
Linux kernel
Corpus path
drivers/video/fbdev/omap2/omapfb/dss/dispc_coefs.c
Extension
.c
Size
7781 bytes
Lines
315
Domain
Driver Families
Bucket
drivers/video
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
/*
 * linux/drivers/video/omap2/dss/dispc_coefs.c
 *
 * Copyright (C) 2011 Texas Instruments
 * Author: Chandrabhanu Mahapatra <cmahapatra@ti.com>
 */

#include <linux/kernel.h>
#include <video/omapfb_dss.h>

#include "dispc.h"

static const struct dispc_coef coef3_M8[8] = {
	{ 0,  0, 128,  0, 0 },
	{ 0, -4, 123,  9, 0 },
	{ 0, -4, 108, 24, 0 },
	{ 0, -2,  87, 43, 0 },
	{ 0, 64,  64,  0, 0 },
	{ 0, 43,  87, -2, 0 },
	{ 0, 24, 108, -4, 0 },
	{ 0,  9, 123, -4, 0 },
};

static const struct dispc_coef coef3_M9[8] = {
	{ 0,  6, 116,  6, 0 },
	{ 0,  0, 112, 16, 0 },
	{ 0, -2, 100, 30, 0 },
	{ 0, -2,  83, 47, 0 },
	{ 0, 64,  64,  0, 0 },
	{ 0, 47,  83, -2, 0 },
	{ 0, 30, 100, -2, 0 },
	{ 0, 16, 112,  0, 0 },
};

static const struct dispc_coef coef3_M10[8] = {
	{ 0, 10, 108, 10, 0 },
	{ 0,  3, 104, 21, 0 },
	{ 0,  0,  94, 34, 0 },
	{ 0, -1,  80, 49, 0 },
	{ 0, 64,  64,  0, 0 },
	{ 0, 49,  80, -1, 0 },
	{ 0, 34,  94,  0, 0 },
	{ 0, 21, 104,  3, 0 },
};

static const struct dispc_coef coef3_M11[8] = {
	{ 0, 14, 100, 14, 0 },
	{ 0,  6,  98, 24, 0 },
	{ 0,  2,  90, 36, 0 },
	{ 0,  0,  78, 50, 0 },
	{ 0, 64,  64,  0, 0 },
	{ 0, 50,  78,  0, 0 },
	{ 0, 36,  90,  2, 0 },
	{ 0, 24,  98,  6, 0 },
};

static const struct dispc_coef coef3_M12[8] = {
	{ 0, 16,  96, 16, 0 },
	{ 0,  9,  93, 26, 0 },
	{ 0,  4,  86, 38, 0 },
	{ 0,  1,  76, 51, 0 },
	{ 0, 64,  64,  0, 0 },
	{ 0, 51,  76,  1, 0 },
	{ 0, 38,  86,  4, 0 },
	{ 0, 26,  93,  9, 0 },
};

static const struct dispc_coef coef3_M13[8] = {
	{ 0, 18,  92, 18, 0 },
	{ 0, 10,  90, 28, 0 },
	{ 0,  5,  83, 40, 0 },
	{ 0,  1,  75, 52, 0 },
	{ 0, 64,  64,  0, 0 },
	{ 0, 52,  75,  1, 0 },
	{ 0, 40,  83,  5, 0 },
	{ 0, 28,  90, 10, 0 },
};

static const struct dispc_coef coef3_M14[8] = {
	{ 0, 20, 88, 20, 0 },
	{ 0, 12, 86, 30, 0 },
	{ 0,  6, 81, 41, 0 },
	{ 0,  2, 74, 52, 0 },
	{ 0, 64, 64,  0, 0 },
	{ 0, 52, 74,  2, 0 },
	{ 0, 41, 81,  6, 0 },
	{ 0, 30, 86, 12, 0 },
};

Annotation

Implementation Notes