| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- /*
- * Allwinner SoCs display driver.
- *
- * Copyright (C) 2016 Allwinner.
- *
- * This file is licensed under the terms of the GNU General Public
- * License version 2. This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
- #ifndef __SUNXI_METADATA_H__
- #define __SUNXI_METADATA_H__
- enum {
- /* hdr static metadata is available */
- SUNXI_METADATA_FLAG_HDR_SATIC_METADATA = 0x00000001,
- /* hdr dynamic metadata is available */
- SUNXI_METADATA_FLAG_HDR_DYNAMIC_METADATA = 0x00000002,
- /* afbc header data is available */
- SUNXI_METADATA_FLAG_AFBC_HEADER = 0x00000010,
- };
- struct afbc_header {
- u32 signature;
- u16 filehdr_size;
- u16 version;
- u32 body_size;
- u8 ncomponents;
- u8 header_layout;
- u8 yuv_transform;
- u8 block_split;
- u8 inputbits[4];
- u16 block_width;
- u16 block_height;
- u16 width;
- u16 height;
- u8 left_crop;
- u8 top_crop;
- u16 block_layout;
- };
- struct display_master_data {
- /* display primaries */
- u16 display_primaries_x[3];
- u16 display_primaries_y[3];
- /* white_point */
- u16 white_point_x;
- u16 white_point_y;
- /* max/min display mastering luminance */
- u32 max_display_mastering_luminance;
- u32 min_display_mastering_luminance;
- };
- /* static metadata type 1 */
- struct hdr_static_metadata {
- struct display_master_data disp_master;
- u16 maximum_content_light_level;
- u16 maximum_frame_average_light_level;
- };
- /* sunxi video metadata for ve and de */
- struct sunxi_metadata {
- struct hdr_static_metadata hdr_smetada;
- struct afbc_header afbc_head;
- };
- #endif /* #ifndef __SUNXI_METADATA_H__ */
|