1
0
Fork 0
alistair23-linux/include/video/imx-lcdifv3.h

35 lines
1.2 KiB
C

/* SPDX-License-Identifier: GPL-2.0+ */
/*
* Copyright 2019 NXP
*/
#ifndef __IMX_LCDIFV3_H__
#define __IMX_LCDIFV3_H__
struct lcdifv3_soc;
struct videomode;
struct lcdifv3_client_platformdata {
struct device_node *of_node;
};
int lcdifv3_vblank_irq_get(struct lcdifv3_soc *lcdifv3);
void lcdifv3_vblank_irq_enable(struct lcdifv3_soc *lcdifv3);
void lcdifv3_vblank_irq_disable(struct lcdifv3_soc *lcdifv3);
void lcdifv3_vblank_irq_clear(struct lcdifv3_soc *lcdifv3);
int lcdifv3_get_bus_fmt_from_pix_fmt(struct lcdifv3_soc *lcdifv3,
uint32_t format);
int lcdifv3_set_pix_fmt(struct lcdifv3_soc *lcdifv3, u32 format);
void lcdifv3_set_bus_fmt(struct lcdifv3_soc *lcdifv3, u32 bus_format);
void lcdifv3_set_fb_addr(struct lcdifv3_soc *lcdifv3, int id, u32 addr);
void lcdifv3_set_mode(struct lcdifv3_soc *lcdifv3, struct videomode *vmode);
void lcdifv3_set_fb_hcrop(struct lcdifv3_soc *lcdifv3, u32 src_w,
u32 fb_w, bool crop);
void lcdifv3_en_shadow_load(struct lcdifv3_soc *lcdifv3);
void lcdifv3_enable_controller(struct lcdifv3_soc *lcdifv3);
void lcdifv3_disable_controller(struct lcdifv3_soc *lcdifv3);
void lcdifv3_dump_registers(struct lcdifv3_soc *lcdifv3);
#endif