1 /* 2 * Allwinner SoCs display driver. 3 * 4 * Copyright (C) 2016 Allwinner. 5 * 6 * This file is licensed under the terms of the GNU General Public 7 * License version 2. This program is licensed "as is" without any 8 * warranty of any kind, whether express or implied. 9 */ 10 11 #ifndef __DISP_DEVICE_H__ 12 #define __DISP_DEVICE_H__ 13 14 #include "disp_private.h" 15 16 s32 disp_device_set_manager(struct disp_device *dispdev, 17 struct disp_manager *mgr); 18 s32 disp_device_unset_manager(struct disp_device *dispdev); 19 s32 disp_device_get_resolution(struct disp_device *dispdev, u32 *xres, 20 u32 *yres); 21 s32 disp_device_get_timings(struct disp_device *dispdev, 22 struct disp_video_timings *timings); 23 s32 disp_device_is_interlace(struct disp_device *dispdev); 24 s32 disp_device_get_status(struct disp_device *dispdev); 25 bool disp_device_is_in_safe_period(struct disp_device *dispdev); 26 u32 disp_device_usec_before_vblank(struct disp_device *dispdev); 27 s32 disp_device_register(struct disp_device *dispdev); 28 s32 disp_device_unregister(struct disp_device *dispdev); 29 struct disp_device *disp_device_get(int disp, 30 enum disp_output_type output_type); 31 struct disp_device *disp_device_find(int disp, 32 enum disp_output_type output_type); 33 struct list_head *disp_device_get_list_head(void); 34 35 /** 36 * @name :disp_device_get_from_priv 37 * @brief :get disp_device by comparing pointer of priv_data 38 * @param[IN] :priv_data:pointer of private date of disp_device 39 * @return :pointer of disp_device; NULL if not found 40 */ 41 struct disp_device *disp_device_get_from_priv(void *priv_data); 42 void disp_device_show_builtin_patten(struct disp_device *dispdev, u32 patten); 43 44 #endif 45