Skip to content

Commit

Permalink
Add more connector flag definitions
Browse files Browse the repository at this point in the history
  • Loading branch information
vit9696 committed Oct 7, 2020
1 parent 562b591 commit 9dd0233
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 5 deletions.
8 changes: 6 additions & 2 deletions Manual/IntelFramebuffer.bt
Original file line number Diff line number Diff line change
Expand Up @@ -181,9 +181,13 @@ union ConnectorFlags {
/* Disable blit translation table? AppleIntelFramebufferController::ConfigureBufferTranslation */
uint8_t CNDisableBlitTranslationTable:1; /* 0x40 */
/* Used in AppleIntelFramebufferController::setPowerWellState */
uint8_t CNUnknownFlag_80 :1; /* 0x80 */
/* Activates MISC IO power well (SKL_DISP_PW_MISC_IO) */
/* May help with HDMI audio configuration issues */

This comment has been minimized.

Copy link
@black-dragon74

black-dragon74 Oct 7, 2020

I think this comment belongs to SKL_PW_CTL_IDX_PW_2 as the audio is defined in the SKL_DISPLAY_POWERWELL_2_POWER_DOMAINS. Adding the flag 0x100 is what actually enables the HDMI audio. SKL_PW_CTL_IDX_MISC_IO is present by default on most of the CFL ig-platform-id. From my testing both SKL_PW_CTL_IDX_PW_2 and SKL_PW_CTL_IDX_MISC_IO should be present for a working HDMI audio in cases where it didn't work with recommend patches.

/* REF: https://github.com/acidanthera/bugtracker/issues/1193 */
uint8_t CNUseMiscIoPowerWell :1; /* 0x80 */
/* Used in AppleIntelFramebufferController::setPowerWellState */
uint8_t CNUnknownFlag_100 :1; /* 0x100 */
/* Activates Power Well 2 usage (SKL_PW_CTL_IDX_PW_2) */
uint8_t CNUsePowerWell2 :1; /* 0x100 */
uint8_t CNUnknownFlag_200 :1; /* 0x200 */
uint8_t CNUnknownFlag_400 :1; /* 0x400 */
/* Sets fAvailableLaneCount to 30 instead of 20 when specified */
Expand Down
14 changes: 11 additions & 3 deletions WhateverGreen/kern_fb.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -127,15 +127,23 @@ union ConnectorFlags {
uint8_t CNUnknownFlag_4 :1; /* 0x4 */
/* Normally set for LVDS displays (i.e. built-in displays) */
uint8_t CNConnectorAlwaysConnected :1; /* 0x8 */
/* AppleIntelFramebuffer::maxSupportedDepths checks this and returns 2 IODisplayModeInformation::maxDepthIndex ?? */
uint8_t CNUnknownFlag_10 :1; /* 0x10 */
uint8_t CNUnknownFlag_20 :1; /* 0x20 */
/* Disable blit translation table? AppleIntelFramebufferController::ConfigureBufferTranslation */
uint8_t CNDisableBlitTranslationTable:1; /* 0x40 */
uint8_t CNUnknownFlag_80 :1; /* 0x80 */
uint8_t CNUnknownFlag_100 :1; /* 0x100 */
/* Used in AppleIntelFramebufferController::setPowerWellState */
/* Activates MISC IO power well (SKL_DISP_PW_MISC_IO) */
/* May help with HDMI audio configuration issues */
/* REF: https://github.com/acidanthera/bugtracker/issues/1193 */
uint8_t CNUseMiscIoPowerWell :1; /* 0x80 */
/* Used in AppleIntelFramebufferController::setPowerWellState */
/* Activates Power Well 2 usage (SKL_PW_CTL_IDX_PW_2) */
uint8_t CNUsePowerWell2 :1; /* 0x100 */
uint8_t CNUnknownFlag_200 :1; /* 0x200 */
uint8_t CNUnknownFlag_400 :1; /* 0x400 */
uint8_t CNUnknownFlag_800 :1; /* 0x800 */
/* Sets fAvailableLaneCount to 30 instead of 20 when specified */
uint8_t CNIncreaseLaneCount :1; /* 0x800 */
uint8_t CNUnknownFlag_1000 :1; /* 0x1000 */
uint8_t CNUnknownFlag_2000 :1; /* 0x2000 */
uint8_t CNUnknownFlag_4000 :1; /* 0x4000 */
Expand Down

0 comments on commit 9dd0233

Please sign in to comment.