mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-23 06:36:29 +07:00
drm: atmel-hlcdc: add sam9x60 LCD controller
Add the LCD controller for SAM9X60. Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com> [claudiu.beznea@microchip.com: add fixed_clksrc option to atmel_hlcdc_dc_sam9x60] Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com> Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Link: https://patchwork.freedesktop.org/patch/msgid/1556195748-11106-6-git-send-email-claudiu.beznea@microchip.com
This commit is contained in:
parent
262d67e73f
commit
e2435ead76
@ -364,6 +364,103 @@ static const struct atmel_hlcdc_dc_desc atmel_hlcdc_dc_sama5d4 = {
|
|||||||
.nlayers = ARRAY_SIZE(atmel_hlcdc_sama5d4_layers),
|
.nlayers = ARRAY_SIZE(atmel_hlcdc_sama5d4_layers),
|
||||||
.layers = atmel_hlcdc_sama5d4_layers,
|
.layers = atmel_hlcdc_sama5d4_layers,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static const struct atmel_hlcdc_layer_desc atmel_hlcdc_sam9x60_layers[] = {
|
||||||
|
{
|
||||||
|
.name = "base",
|
||||||
|
.formats = &atmel_hlcdc_plane_rgb_formats,
|
||||||
|
.regs_offset = 0x60,
|
||||||
|
.id = 0,
|
||||||
|
.type = ATMEL_HLCDC_BASE_LAYER,
|
||||||
|
.cfgs_offset = 0x2c,
|
||||||
|
.layout = {
|
||||||
|
.xstride = { 2 },
|
||||||
|
.default_color = 3,
|
||||||
|
.general_config = 4,
|
||||||
|
.disc_pos = 5,
|
||||||
|
.disc_size = 6,
|
||||||
|
},
|
||||||
|
.clut_offset = 0x600,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
.name = "overlay1",
|
||||||
|
.formats = &atmel_hlcdc_plane_rgb_formats,
|
||||||
|
.regs_offset = 0x160,
|
||||||
|
.id = 1,
|
||||||
|
.type = ATMEL_HLCDC_OVERLAY_LAYER,
|
||||||
|
.cfgs_offset = 0x2c,
|
||||||
|
.layout = {
|
||||||
|
.pos = 2,
|
||||||
|
.size = 3,
|
||||||
|
.xstride = { 4 },
|
||||||
|
.pstride = { 5 },
|
||||||
|
.default_color = 6,
|
||||||
|
.chroma_key = 7,
|
||||||
|
.chroma_key_mask = 8,
|
||||||
|
.general_config = 9,
|
||||||
|
},
|
||||||
|
.clut_offset = 0xa00,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
.name = "overlay2",
|
||||||
|
.formats = &atmel_hlcdc_plane_rgb_formats,
|
||||||
|
.regs_offset = 0x260,
|
||||||
|
.id = 2,
|
||||||
|
.type = ATMEL_HLCDC_OVERLAY_LAYER,
|
||||||
|
.cfgs_offset = 0x2c,
|
||||||
|
.layout = {
|
||||||
|
.pos = 2,
|
||||||
|
.size = 3,
|
||||||
|
.xstride = { 4 },
|
||||||
|
.pstride = { 5 },
|
||||||
|
.default_color = 6,
|
||||||
|
.chroma_key = 7,
|
||||||
|
.chroma_key_mask = 8,
|
||||||
|
.general_config = 9,
|
||||||
|
},
|
||||||
|
.clut_offset = 0xe00,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
.name = "high-end-overlay",
|
||||||
|
.formats = &atmel_hlcdc_plane_rgb_and_yuv_formats,
|
||||||
|
.regs_offset = 0x360,
|
||||||
|
.id = 3,
|
||||||
|
.type = ATMEL_HLCDC_OVERLAY_LAYER,
|
||||||
|
.cfgs_offset = 0x4c,
|
||||||
|
.layout = {
|
||||||
|
.pos = 2,
|
||||||
|
.size = 3,
|
||||||
|
.memsize = 4,
|
||||||
|
.xstride = { 5, 7 },
|
||||||
|
.pstride = { 6, 8 },
|
||||||
|
.default_color = 9,
|
||||||
|
.chroma_key = 10,
|
||||||
|
.chroma_key_mask = 11,
|
||||||
|
.general_config = 12,
|
||||||
|
.scaler_config = 13,
|
||||||
|
.phicoeffs = {
|
||||||
|
.x = 17,
|
||||||
|
.y = 33,
|
||||||
|
},
|
||||||
|
.csc = 14,
|
||||||
|
},
|
||||||
|
.clut_offset = 0x1200,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
static const struct atmel_hlcdc_dc_desc atmel_hlcdc_dc_sam9x60 = {
|
||||||
|
.min_width = 0,
|
||||||
|
.min_height = 0,
|
||||||
|
.max_width = 2048,
|
||||||
|
.max_height = 2048,
|
||||||
|
.max_spw = 0xff,
|
||||||
|
.max_vpw = 0xff,
|
||||||
|
.max_hpw = 0x3ff,
|
||||||
|
.fixed_clksrc = true,
|
||||||
|
.nlayers = ARRAY_SIZE(atmel_hlcdc_sam9x60_layers),
|
||||||
|
.layers = atmel_hlcdc_sam9x60_layers,
|
||||||
|
};
|
||||||
|
|
||||||
static const struct of_device_id atmel_hlcdc_of_match[] = {
|
static const struct of_device_id atmel_hlcdc_of_match[] = {
|
||||||
{
|
{
|
||||||
.compatible = "atmel,at91sam9n12-hlcdc",
|
.compatible = "atmel,at91sam9n12-hlcdc",
|
||||||
@ -385,6 +482,10 @@ static const struct of_device_id atmel_hlcdc_of_match[] = {
|
|||||||
.compatible = "atmel,sama5d4-hlcdc",
|
.compatible = "atmel,sama5d4-hlcdc",
|
||||||
.data = &atmel_hlcdc_dc_sama5d4,
|
.data = &atmel_hlcdc_dc_sama5d4,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
.compatible = "microchip,sam9x60-hlcdc",
|
||||||
|
.data = &atmel_hlcdc_dc_sam9x60,
|
||||||
|
},
|
||||||
{ /* sentinel */ },
|
{ /* sentinel */ },
|
||||||
};
|
};
|
||||||
MODULE_DEVICE_TABLE(of, atmel_hlcdc_of_match);
|
MODULE_DEVICE_TABLE(of, atmel_hlcdc_of_match);
|
||||||
|
Loading…
Reference in New Issue
Block a user