1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 15:27:35 +00:00

Kernel: Add ioctl to get the EDID from a framebuffer

This commit is contained in:
Tom 2021-12-31 22:02:55 -07:00 committed by Linus Groh
parent 8184870f93
commit 03c45b1865
20 changed files with 265 additions and 84 deletions

View file

@ -32,54 +32,4 @@ struct Modesetting {
Timings vertical;
};
struct [[gnu::packed]] StandardTimings {
u8 resolution;
u8 frequency;
};
struct [[gnu::packed]] DetailTimings {
u16 pixel_clock;
u8 horizontal_active;
u8 horizontal_blank;
u8 horizontal_active_blank_msb;
u8 vertical_active;
u8 vertical_blank;
u8 vertical_active_blank_msb;
u8 horizontal_sync_offset;
u8 horizontal_sync_pulse;
u8 vertical_sync;
u8 sync_msb;
u8 dimension_width;
u8 dimension_height;
u8 dimension_msb;
u8 horizontal_border;
u8 vertical_border;
u8 features;
};
struct [[gnu::packed]] VideoInfoBlock {
u64 padding;
u16 manufacture_id;
u16 product_id;
u32 serial_number;
u8 manufacture_week;
u8 manufacture_year;
u8 edid_version;
u8 edid_revision;
u8 video_input_type;
u8 max_horizontal_size;
u8 max_vertical_size;
u8 gama_factor;
u8 dpms_flags;
u8 chroma_info[10];
u8 established_timing[2];
u8 manufacture_reserved_timings;
StandardTimings timings[8];
DetailTimings details[4];
u8 unused;
u8 checksum;
};
static_assert(AssertSize<VideoInfoBlock, 128>());
}