VSF Documented
vsf_usbh_dl1x5.h
Go to the documentation of this file.
1/*****************************************************************************
2 * Copyright(C)2009-2022 by VSF Team *
3 * *
4 * Licensed under the Apache License, Version 2.0 (the "License"); *
5 * you may not use this file except in compliance with the License. *
6 * You may obtain a copy of the License at *
7 * *
8 * http://www.apache.org/licenses/LICENSE-2.0 *
9 * *
10 * Unless required by applicable law or agreed to in writing, software *
11 * distributed under the License is distributed on an "AS IS" BASIS, *
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. *
13 * See the License for the specific language governing permissions and *
14 * limitations under the License. *
15 * *
16 ****************************************************************************/
17
18#ifndef __VSF_USBH_DL1X5_H__
19#define __VSF_USBH_DL1X5_H__
20
21/*============================ INCLUDES ======================================*/
23
24#if VSF_USE_USB_HOST == ENABLED && VSF_USBH_USE_DL1X5 == ENABLED
25
26#ifdef __cplusplus
27extern "C" {
28#endif
29
30/*============================ MACROS ========================================*/
31/*============================ MACROFIED FUNCTIONS ===========================*/
32/*============================ TYPES =========================================*/
33
34typedef struct edid_t {
54 struct edid_color_t {
107
108typedef struct vga_timing_t {
110 struct {
116 } h, v;
118
119typedef void (*vk_usbh_dl1x5_callback_t)(void *dev, vsf_err_t err);
120
121/*============================ GLOBAL VARIABLES ==============================*/
122
124
125/*============================ PROTOTYPES ====================================*/
126
127extern vga_timing_t * vk_usbh_dl1x5_get_timing(void *dev);
128
129#if !(VSF_USE_UI == ENABLED && VSF_DISP_USE_DL1X5 == ENABLED)
130extern void vk_usbh_dl1x5_set_callback(void *dev, vk_usbh_dl1x5_callback_t callback);
131
132extern vsf_err_t vk_usbh_dl1x5_commit(void *dev);
133// pixel_num in range [1, 256]
134extern bool vk_usbh_dl1x5_fill_color(void *dev, uint_fast32_t gram_pixel_addr,
135 uint_fast16_t pixel_num, uint16_t color_rgb565);
136extern bool vk_usbh_dl1x5_fill_buf(void *dev, uint_fast32_t gram_pixel_addr,
137 uint_fast16_t pixel_num, uint16_t *color_rgb565_ptr);
138#endif
139
140#ifdef __cplusplus
141}
142#endif
143
144#endif
145#endif
vsf_err_t
Definition __type.h:42
Definition vsf_usbh.h:268
unsigned short uint16_t
Definition stdint.h:7
unsigned uint32_t
Definition stdint.h:9
unsigned int uint_fast32_t
Definition stdint.h:27
unsigned short uint_fast16_t
Definition stdint.h:25
unsigned char uint8_t
Definition stdint.h:5
Definition vsf_usbh_dl1x5.h:47
uint8_t v_size_cm
Definition vsf_usbh_dl1x5.h:50
uint8_t dpms
Definition vsf_usbh_dl1x5.h:52
uint8_t h_size_cm
Definition vsf_usbh_dl1x5.h:49
uint8_t gamma
Definition vsf_usbh_dl1x5.h:51
uint8_t video_input
Definition vsf_usbh_dl1x5.h:48
Definition vsf_usbh_dl1x5.h:54
uint8_t white_y
Definition vsf_usbh_dl1x5.h:64
uint8_t red_green_low
Definition vsf_usbh_dl1x5.h:55
uint8_t red_x
Definition vsf_usbh_dl1x5.h:57
uint8_t white_x
Definition vsf_usbh_dl1x5.h:63
uint8_t green_y
Definition vsf_usbh_dl1x5.h:60
uint8_t red_y
Definition vsf_usbh_dl1x5.h:58
uint8_t blue_y
Definition vsf_usbh_dl1x5.h:62
uint8_t bluw_white_low
Definition vsf_usbh_dl1x5.h:56
uint8_t green_x
Definition vsf_usbh_dl1x5.h:59
uint8_t blue_x
Definition vsf_usbh_dl1x5.h:61
Definition vsf_usbh_dl1x5.h:73
uint8_t stereo_mode
Definition vsf_usbh_dl1x5.h:97
uint8_t v_sync_width_high
Definition vsf_usbh_dl1x5.h:87
uint8_t seperate_sync
Definition vsf_usbh_dl1x5.h:100
uint8_t v_border
Definition vsf_usbh_dl1x5.h:96
uint8_t h_sync_positive
Definition vsf_usbh_dl1x5.h:98
uint8_t v_blanking_high
Definition vsf_usbh_dl1x5.h:81
uint8_t v_sync_offset_low
Definition vsf_usbh_dl1x5.h:86
uint8_t v_sync_positive
Definition vsf_usbh_dl1x5.h:99
uint8_t interlaced
Definition vsf_usbh_dl1x5.h:102
uint8_t stereo
Definition vsf_usbh_dl1x5.h:101
uint8_t v_active_high
Definition vsf_usbh_dl1x5.h:82
uint8_t h_active_high
Definition vsf_usbh_dl1x5.h:78
uint8_t h_blanking_low
Definition vsf_usbh_dl1x5.h:76
uint8_t h_image_size_mm_high
Definition vsf_usbh_dl1x5.h:94
uint8_t v_image_size_mm_high
Definition vsf_usbh_dl1x5.h:93
uint8_t v_active_low
Definition vsf_usbh_dl1x5.h:79
uint8_t v_image_size_mm_low
Definition vsf_usbh_dl1x5.h:92
uint8_t h_sync_width_high
Definition vsf_usbh_dl1x5.h:89
uint8_t h_sync_offset_high
Definition vsf_usbh_dl1x5.h:90
uint8_t v_sync_offset_high
Definition vsf_usbh_dl1x5.h:88
uint8_t h_blanking_high
Definition vsf_usbh_dl1x5.h:77
uint8_t h_sync_width_low
Definition vsf_usbh_dl1x5.h:84
uint8_t h_sync_offset_low
Definition vsf_usbh_dl1x5.h:83
uint8_t v_blanking_low
Definition vsf_usbh_dl1x5.h:80
uint16_t pixel_clock_10khz
Definition vsf_usbh_dl1x5.h:74
uint8_t h_active_low
Definition vsf_usbh_dl1x5.h:75
uint8_t v_sync_width_low
Definition vsf_usbh_dl1x5.h:85
uint8_t h_border
Definition vsf_usbh_dl1x5.h:95
uint8_t h_image_size_mm_low
Definition vsf_usbh_dl1x5.h:91
Definition vsf_usbh_dl1x5.h:66
uint8_t reserved_timings
Definition vsf_usbh_dl1x5.h:68
uint16_t timings
Definition vsf_usbh_dl1x5.h:67
Definition vsf_usbh_dl1x5.h:70
uint16_t timing_id[8]
Definition vsf_usbh_dl1x5.h:71
Definition vsf_usbh_dl1x5.h:36
uint8_t year
Definition vsf_usbh_dl1x5.h:41
uint8_t week
Definition vsf_usbh_dl1x5.h:40
uint16_t manufacturer
Definition vsf_usbh_dl1x5.h:37
uint16_t product
Definition vsf_usbh_dl1x5.h:38
uint32_t serial
Definition vsf_usbh_dl1x5.h:39
Definition vsf_usbh_dl1x5.h:43
uint8_t version
Definition vsf_usbh_dl1x5.h:44
uint8_t revision
Definition vsf_usbh_dl1x5.h:45
Definition vsf_usbh_dl1x5.h:34
struct edid_t::edid_standard_timings_t standard_timings
struct edid_t::edid_vendor_product_id_t product
struct edid_t::edid_vendor_version_t version
struct edid_t::edid_color_t color
struct edid_t::edid_detailed_timing_t detailed_timings[4]
uint8_t header[8]
Definition vsf_usbh_dl1x5.h:35
uint8_t checksum
Definition vsf_usbh_dl1x5.h:105
struct edid_t::edid_established_timings_t established_timings
uint8_t extension_flag
Definition vsf_usbh_dl1x5.h:104
struct edid_t::edid_basic_param_t basic
Definition vsf_usbh_dl1x5.h:108
struct vga_timing_t::@256 h
uint16_t pixel_clock_10khz
Definition vsf_usbh_dl1x5.h:109
uint16_t back_porch
Definition vsf_usbh_dl1x5.h:114
uint8_t sync_positive
Definition vsf_usbh_dl1x5.h:115
uint16_t front_porch
Definition vsf_usbh_dl1x5.h:112
uint16_t active
Definition vsf_usbh_dl1x5.h:111
struct vga_timing_t::@256 v
uint16_t sync
Definition vsf_usbh_dl1x5.h:113
struct vk_romfs_header_t VSF_CAL_PACKED
bool vk_usbh_dl1x5_fill_buf(void *dev, uint_fast32_t gram_pixel_addr, uint_fast16_t pixel_num, uint16_t *color_rgb565_ptr)
Definition vsf_usbh_dl1x5.c:697
vsf_err_t vk_usbh_dl1x5_commit(void *dev)
Definition vsf_usbh_dl1x5.c:675
bool vk_usbh_dl1x5_fill_color(void *dev, uint_fast32_t gram_pixel_addr, uint_fast16_t pixel_num, uint16_t color_rgb565)
Definition vsf_usbh_dl1x5.c:689
void vk_usbh_dl1x5_set_callback(void *dev, vk_usbh_dl1x5_callback_t callback)
Definition vsf_usbh_dl1x5.c:669
vga_timing_t * vk_usbh_dl1x5_get_timing(void *dev)
Definition vsf_usbh_dl1x5.c:663
void(* vk_usbh_dl1x5_callback_t)(void *dev, vsf_err_t err)
Definition vsf_usbh_dl1x5.h:119
const vk_usbh_class_drv_t vk_usbh_dl1x5_drv
Definition vsf_usbh_dl1x5.c:166