drm_color_lut
static void amdgpu_dm_atomic_lut3d(const struct drm_color_lut *drm_lut3d,
static int amdgpu_dm_atomic_shaper_lut(const struct drm_color_lut *shaper_lut,
static int amdgpu_dm_atomic_blend_lut(const struct drm_color_lut *blend_lut,
const struct drm_color_lut *shaper = NULL, *lut3d = NULL;
const struct drm_color_lut *lut = NULL;
const struct drm_color_lut *degamma_lut, *regamma_lut;
const struct drm_color_lut *degamma_lut;
const struct drm_color_lut *degamma_lut;
const struct drm_color_lut *shaper_lut, *lut3d, *blend_lut;
static const struct drm_color_lut *
return blob ? (struct drm_color_lut *)blob->data : NULL;
static bool __is_lut_linear(const struct drm_color_lut *lut, uint32_t size)
static void __drm_lut_to_dc_gamma(const struct drm_color_lut *lut,
const struct drm_color_lut *lut, uint32_t lut_size,
const struct drm_color_lut *lut, uint32_t lut_size,
const struct drm_color_lut *regamma_lut,
const struct drm_color_lut *lut, uint32_t lut_size)
const struct drm_color_lut lut,
static void __drm_3dlut_to_dc_3dlut(const struct drm_color_lut *lut,
-1, -1, sizeof(struct drm_color_lut),
-1, -1, sizeof(struct drm_color_lut),
-1, -1, sizeof(struct drm_color_lut),
-1, -1, sizeof(struct drm_color_lut),
struct drm_color_lut *lut;
struct drm_color_lut *lut = (struct drm_color_lut *)lut_blob->data;
struct drm_color_lut *lut;
if (state->gamma_lut->length % sizeof(struct drm_color_lut))
lut_size = state->gamma_lut->length / sizeof(struct drm_color_lut);
lut = (struct drm_color_lut *)state->gamma_lut->data;
struct drm_color_lut *lut = blob->data;
struct drm_color_lut *lut)
AST_LUT_SIZE * sizeof(struct drm_color_lut)) {
struct drm_color_lut *lut;
lut = (struct drm_color_lut *)crtc->state->gamma_lut->data;
const size_t elem_size = sizeof(struct drm_color_lut);
const size_t elem_size = sizeof(struct drm_color_lut);
struct drm_color_lut *blob_data;
sizeof(struct drm_color_lut) * size,
const struct drm_color_lut *entry;
void drm_crtc_load_gamma_888(struct drm_crtc *crtc, const struct drm_color_lut *lut,
void drm_crtc_load_gamma_565_from_888(struct drm_crtc *crtc, const struct drm_color_lut *lut,
void drm_crtc_load_gamma_555_from_888(struct drm_crtc *crtc, const struct drm_color_lut *lut,
void drm_crtc_load_palette_8(struct drm_crtc *crtc, const struct drm_color_lut *lut,
struct drm_color_lut *lut;
struct drm_color_lut *lut;
const struct drm_color_lut *lut_in;
struct drm_color_lut *lut_out;
const struct drm_color_lut *entry =
const struct drm_color_lut *lut;
const struct drm_color_lut *lut = blob->data;
const struct drm_color_lut *lut = blob->data;
const struct drm_color_lut *lut;
const struct drm_color_lut *lut = blob->data;
const struct drm_color_lut *lut = blob->data;
const struct drm_color_lut *lut = blob->data;
static u32 glk_degamma_lut(const struct drm_color_lut *color)
static void glk_degamma_lut_pack(struct drm_color_lut *entry, u32 val)
static u32 mtl_degamma_lut(const struct drm_color_lut *color)
static void mtl_degamma_lut_pack(struct drm_color_lut *entry, u32 val)
const struct drm_color_lut *lut = blob->data;
const struct drm_color_lut *color)
const struct drm_color_lut *lut = blob->data;
const struct drm_color_lut *entry = &lut[i];
const struct drm_color_lut *lut = blob->data;
const struct drm_color_lut *entry;
static u32 chv_cgm_degamma_ldw(const struct drm_color_lut *color)
static u32 chv_cgm_degamma_udw(const struct drm_color_lut *color)
static void chv_cgm_degamma_pack(struct drm_color_lut *entry, u32 ldw, u32 udw)
const struct drm_color_lut *lut = blob->data;
static u32 chv_cgm_gamma_ldw(const struct drm_color_lut *color)
static u32 chv_cgm_gamma_udw(const struct drm_color_lut *color)
static void chv_cgm_gamma_pack(struct drm_color_lut *entry, u32 ldw, u32 udw)
const struct drm_color_lut *lut = blob->data;
const struct drm_color_lut *lut = blob->data;
const struct drm_color_lut *a = &lut[lut_size - 2];
const struct drm_color_lut *b = &lut[lut_size - 1];
static bool err_check(const struct drm_color_lut *lut1,
const struct drm_color_lut *lut2, u32 err)
static bool intel_lut_entries_equal(const struct drm_color_lut *lut1,
const struct drm_color_lut *lut2,
const struct drm_color_lut *lut1, *lut2;
struct drm_color_lut *lut;
struct drm_color_lut *lut;
struct drm_color_lut *lut;
struct drm_color_lut *lut;
struct drm_color_lut *lut;
struct drm_color_lut *lut;
struct drm_color_lut *lut;
struct drm_color_lut *lut;
struct drm_color_lut *lut;
struct drm_color_lut *lut;
struct drm_color_lut *lut;
static u32 i9xx_lut_8(const struct drm_color_lut *color)
static void i9xx_lut_8_pack(struct drm_color_lut *entry, u32 val)
static u32 i9xx_lut_10_ldw(const struct drm_color_lut *color)
static u32 i9xx_lut_10_udw(const struct drm_color_lut *color)
static void i9xx_lut_10_pack(struct drm_color_lut *color,
static void i9xx_lut_10_pack_slope(struct drm_color_lut *color,
static u32 i965_lut_10p6_ldw(const struct drm_color_lut *color)
static u32 i965_lut_10p6_udw(const struct drm_color_lut *color)
static void i965_lut_10p6_pack(struct drm_color_lut *entry, u32 ldw, u32 udw)
static u32 ilk_lut_10(const struct drm_color_lut *color)
static void ilk_lut_10_pack(struct drm_color_lut *entry, u32 val)
static u32 ilk_lut_12p4_ldw(const struct drm_color_lut *color)
static u32 ilk_lut_12p4_udw(const struct drm_color_lut *color)
static void ilk_lut_12p4_pack(struct drm_color_lut *entry, u32 ldw, u32 udw)
const struct drm_color_lut *lut)
lut = (struct drm_color_lut *)state->gamma_lut->data;
struct drm_color_lut hwlut = {
struct drm_color_lut *lut;
struct drm_color_lut *lut;
lut = (struct drm_color_lut *)state->gamma_lut->data;
struct drm_color_lut diff, hwlut;
static bool mtk_gamma_lut_is_descending(struct drm_color_lut *lut, u32 lut_size)
struct drm_color_lut *lut);
if (new_gamma_lut->length != MGAG200_LUT_SIZE * sizeof(struct drm_color_lut)) {
struct drm_color_lut *lut)
struct drm_color_lut *lut;
lut = (struct drm_color_lut *)state->gamma_lut->data;
void (*load)(struct drm_color_lut *, int size,
void (*load)(struct drm_color_lut *, int size, void __iomem *);
void head907d_olut_load(struct drm_color_lut *, int size, void __iomem *);
head507d_olut_load(struct drm_color_lut *in, int size, void __iomem *mem)
head907d_olut_load(struct drm_color_lut *in, int size, void __iomem *mem)
headc57d_olut_load_8(struct drm_color_lut *in, int size, void __iomem *mem)
headc57d_olut_load(struct drm_color_lut *in, int size, void __iomem *mem)
void (*load)(struct drm_color_lut *, int, void __iomem *))
struct drm_color_lut *in = blob ? blob->data : NULL;
void (*)(struct drm_color_lut *, int size, void __iomem *));
struct drm_color_lut;
wndwc57e_ilut_load(struct drm_color_lut *in, int size, void __iomem *mem)
static const struct drm_color_lut dispc_mgr_gamma_default_lut[] = {
const struct drm_color_lut *lut,
const struct drm_color_lut *lut,
sizeof(struct drm_color_lut);
struct drm_color_lut *lut = NULL;
lut = (struct drm_color_lut *)
const struct drm_color_lut *drm_lut)
struct drm_color_lut;
struct drm_color_lut *table;
cmm_config.lut.table = (struct drm_color_lut *)drm_lut->data;
struct drm_color_lut *lut = crtc->state->gamma_lut->data;
struct drm_color_lut *lut = crtc->state->gamma_lut->data;
struct drm_color_lut *lut;
lut = (struct drm_color_lut *)crtc->state->gamma_lut->data;
sysfb->fb_gamma_lut_size * sizeof(struct drm_color_lut);
struct drm_color_lut *lut)
struct drm_color_lut *lut)
struct drm_color_lut *lut)
static const struct drm_color_lut dispc_vp_gamma_default_lut[] = {
const struct drm_color_lut *lut,
struct drm_color_lut *lut = NULL;
lut = (struct drm_color_lut *)state->gamma_lut->data;
struct drm_color_lut *lut = crtc_state->gamma_lut->data;
static struct drm_color_lut test_linear_array[TEST_LUT_SIZE] = {
crtc_state->gamma_lut.base = (struct drm_color_lut *)crtc->state->gamma_lut->data;
crtc->state->gamma_lut->length / sizeof(struct drm_color_lut);
static_assert(sizeof(struct drm_color_lut) == sizeof(__u16) * 4);
if (new_crtc_state->gamma_lut->length / sizeof(struct drm_color_lut *)
struct drm_color_lut *base;
static struct drm_color_lut linear_array[LUT_SIZE] = {
static struct drm_color_lut srgb_array[LUT_SIZE] = {
static struct drm_color_lut srgb_inv_array[LUT_SIZE] = {
void drm_crtc_load_gamma_888(struct drm_crtc *crtc, const struct drm_color_lut *lut,
void drm_crtc_load_gamma_565_from_888(struct drm_crtc *crtc, const struct drm_color_lut *lut,
void drm_crtc_load_gamma_555_from_888(struct drm_crtc *crtc, const struct drm_color_lut *lut,
void drm_crtc_load_palette_8(struct drm_crtc *crtc, const struct drm_color_lut *lut,
return blob->length / sizeof(struct drm_color_lut);