1/* linux/drivers/video/exynos_mipi_dsi_common.h 2 * 3 * Header file for Samsung SoC MIPI-DSI common driver. 4 * 5 * Copyright (c) 2012 Samsung Electronics Co., Ltd 6 * 7 * InKi Dae <inki.dae@samsung.com> 8 * Donghwa Lee <dh09.lee@samsung.com> 9 * 10 * This program is free software; you can redistribute it and/or modify 11 * it under the terms of the GNU General Public License version 2 as 12 * published by the Free Software Foundation. 13*/ 14 15#ifndef _EXYNOS_MIPI_DSI_COMMON_H 16#define _EXYNOS_MIPI_DSI_COMMON_H 17 18static DECLARE_COMPLETION(dsim_rd_comp); 19static DECLARE_COMPLETION(dsim_wr_comp); 20 21int exynos_mipi_dsi_wr_data(struct mipi_dsim_device *dsim, unsigned int data_id, 22 const unsigned char *data0, unsigned int data_size); 23int exynos_mipi_dsi_rd_data(struct mipi_dsim_device *dsim, unsigned int data_id, 24 unsigned int data0, unsigned int req_size, u8 *rx_buf); 25irqreturn_t exynos_mipi_dsi_interrupt_handler(int irq, void *dev_id); 26void exynos_mipi_dsi_init_interrupt(struct mipi_dsim_device *dsim); 27int exynos_mipi_dsi_init_dsim(struct mipi_dsim_device *dsim); 28void exynos_mipi_dsi_stand_by(struct mipi_dsim_device *dsim, 29 unsigned int enable); 30int exynos_mipi_dsi_set_display_mode(struct mipi_dsim_device *dsim, 31 struct mipi_dsim_config *dsim_info); 32int exynos_mipi_dsi_init_link(struct mipi_dsim_device *dsim); 33int exynos_mipi_dsi_set_hs_enable(struct mipi_dsim_device *dsim); 34int exynos_mipi_dsi_set_data_transfer_mode(struct mipi_dsim_device *dsim, 35 unsigned int mode); 36int exynos_mipi_dsi_enable_frame_done_int(struct mipi_dsim_device *dsim, 37 unsigned int enable); 38int exynos_mipi_dsi_get_frame_done_status(struct mipi_dsim_device *dsim); 39int exynos_mipi_dsi_clear_frame_done(struct mipi_dsim_device *dsim); 40 41extern struct fb_info *registered_fb[FB_MAX] __read_mostly; 42 43int exynos_mipi_dsi_fifo_clear(struct mipi_dsim_device *dsim, 44 unsigned int val); 45 46#endif /* _EXYNOS_MIPI_DSI_COMMON_H */ 47