mirror of
https://github.com/switchbrew/libnx.git
synced 2025-08-07 00:29:23 +02:00
Update SetSysEdid to include different types of Extension blocks
This commit is contained in:
parent
de7cfeb3d9
commit
e6830abc40
@ -487,6 +487,30 @@ typedef struct {
|
|||||||
u8 padding[2];
|
u8 padding[2];
|
||||||
} SetSysDataBlock;
|
} SetSysDataBlock;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
u8 extension_tag; ///< 2 = CEA EDID timing extension, 0x70 = DisplayID Extension Block, 0xF0 = EDID Extension Block Map
|
||||||
|
union {
|
||||||
|
struct {
|
||||||
|
u8 revision;
|
||||||
|
u8 dtd_start;
|
||||||
|
u8 native_dtd_count : 4;
|
||||||
|
u8 native_dtd_feature_bitmap : 4;
|
||||||
|
SetSysDataBlock data_block;
|
||||||
|
SetSysModeLine extended_timing_descriptor[5];
|
||||||
|
u8 padding[5];
|
||||||
|
} NX_PACKED cea; ///< CEA EDID timing extension
|
||||||
|
struct {
|
||||||
|
u8 data[0x7E];
|
||||||
|
} NX_PACKED display_id; ///< [13.0.0+] DisplayID Extension Block
|
||||||
|
struct {
|
||||||
|
u8 second_block_extension_tag;
|
||||||
|
u8 third_block_extension_tag;
|
||||||
|
u8 padding[0x7C];
|
||||||
|
} NX_PACKED block_map; ///< [13.0.0+] EDID Extension Block Map
|
||||||
|
} extension_block;
|
||||||
|
u8 extended_checksum; ///< Sum of 128 extended bytes should equal 0 mod 256.
|
||||||
|
} SetSysExtensionBlock;
|
||||||
|
|
||||||
/// Edid
|
/// Edid
|
||||||
typedef struct {
|
typedef struct {
|
||||||
u8 pattern[8]; ///< Fixed pattern 00 FF FF FF FF FF FF 00.
|
u8 pattern[8]; ///< Fixed pattern 00 FF FF FF FF FF FF 00.
|
||||||
@ -548,17 +572,9 @@ typedef struct {
|
|||||||
u8 extension_count; ///< Always 1.
|
u8 extension_count; ///< Always 1.
|
||||||
u8 checksum; ///< Sum of all 128 bytes should equal 0 mod 256.
|
u8 checksum; ///< Sum of all 128 bytes should equal 0 mod 256.
|
||||||
///< Extended data.
|
///< Extended data.
|
||||||
u8 extension_tag; ///< Always 2 = CEA EDID timing extension.
|
SetSysExtensionBlock data1;
|
||||||
u8 revision;
|
SetSysExtensionBlock data2; ///< [13.0.0+]
|
||||||
u8 dtd_start;
|
SetSysExtensionBlock data3; ///< [13.0.0+]
|
||||||
u8 native_dtd_count : 4;
|
|
||||||
u8 native_dtd_feature_bitmap : 4;
|
|
||||||
SetSysDataBlock data_block;
|
|
||||||
SetSysModeLine extended_timing_descriptor[5];
|
|
||||||
u8 padding[5];
|
|
||||||
u8 extended_checksum; ///< Sum of 128 extended bytes should equal 0 mod 256.
|
|
||||||
u8 data2[0x80]; ///< [13.0.0+]
|
|
||||||
u8 data3[0x80]; ///< [13.0.0+]
|
|
||||||
} SetSysEdid;
|
} SetSysEdid;
|
||||||
|
|
||||||
/// DataDeletionSettings
|
/// DataDeletionSettings
|
||||||
|
Loading…
Reference in New Issue
Block a user