mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 14:07:46 +00:00
Kernel/Graphics: Override first byte of the EDID in Intel Native driver
This commit is contained in:
parent
7aa63ddd00
commit
ed5623f40f
1 changed files with 4 additions and 0 deletions
|
@ -378,6 +378,10 @@ void IntelNativeGraphicsAdapter::gmbus_read_edid()
|
||||||
SpinlockLocker control_lock(m_control_lock);
|
SpinlockLocker control_lock(m_control_lock);
|
||||||
gmbus_write(DDC2_I2C_ADDRESS, 0);
|
gmbus_write(DDC2_I2C_ADDRESS, 0);
|
||||||
gmbus_read(DDC2_I2C_ADDRESS, (u8*)&m_crt_edid_bytes, sizeof(m_crt_edid_bytes));
|
gmbus_read(DDC2_I2C_ADDRESS, (u8*)&m_crt_edid_bytes, sizeof(m_crt_edid_bytes));
|
||||||
|
// FIXME: It seems like the returned EDID is almost correct,
|
||||||
|
// but the first byte is set to 0xD0 instead of 0x00.
|
||||||
|
// For now, this "hack" works well enough.
|
||||||
|
m_crt_edid_bytes[0] = 0x0;
|
||||||
}
|
}
|
||||||
if (auto parsed_edid = EDID::Parser::from_bytes({ m_crt_edid_bytes, sizeof(m_crt_edid_bytes) }); !parsed_edid.is_error()) {
|
if (auto parsed_edid = EDID::Parser::from_bytes({ m_crt_edid_bytes, sizeof(m_crt_edid_bytes) }); !parsed_edid.is_error()) {
|
||||||
m_crt_edid = parsed_edid.release_value();
|
m_crt_edid = parsed_edid.release_value();
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue