New ryzen 7600x build with igpu has green or purple screen issues

Hi,

Just build a new system with a 7600x and trying to use the igpu with kde. The problem is that the screen is greenish. Setting it to a proper resolution, 1920x1080, makes it a bit better but purple ish. Have tried the latest iso release with newer 6.0 kernel. Did a full system update and installed kernel 6.1.0-1. Problem still persists. In bios the colours are normal. During boot when al the services are starting I have noticed that about half way through a ‘‘flikkering’’ on screen happens for a brief moment and after that the problem starts with the weird colour behaviour. Wayland same problem. Any idea’s?

Thank you.

update:
Latest fedora ws kde build same problem.
Manjaro gnome latest release same problem. Messing around with ‘‘color profile’’ did not do anything.

Hello @Magician1981 :wink:

My research gave me that it is a color format problem. RGB or YCbCr in combination with your monitor. On Windows you can switch that easily, but on Linux one assume that the EDID of the monitor is correct. So in your situation the given EDID seems to be wrong.

A hack for customizing of EDID: Setting the amdgpu HDMI Pixel Format on Linux - Wesley Moore
Also here the issue: https://gitlab.freedesktop.org/drm/amd/-/issues/476

Maybe that helps as well:

xrandr --output <connection_name> --set "pixel encoding" "rgb"

Thanx for the advice megavolt.

I am using a projector btw. Never had issues before. Here is some more info:

Have tried the edid mod but that didn’t help. In the link the user has a systemd boot rather than grub. So I have added the line to the grub config file and updated it via the terminal.

That command that you have posted gave me all kinds of errors. Can you show me how to do it exacly in my case?

Greetings

Well I have no amdgpu at my hand, so i can only research and give you some ideas to try and never experienced such a problem.

The icc profile is calculated from the EDID, but as you see the result is garbage.

Try another connection… VGA, DVI, HDMI, DP , since other connections have another EDID.

Sorry, but I am out of idea her right now.

Due to the fysical location of the projector only hdmi is an option (long hdmi cable). The motherboard has an dp output also. Perhaps a adapter dp>hdmi will do the trick?

Maybe, but note that the input of monitor/beamer matters, not the output of the gpu. In any case it would be worth a try.

Just for comparison for you (txt output of wxedid):
:notebook: But note that I have a nvidia gpu here.

wxEDID v0.0.27
EDID structure and data:
Source file: "card0-DP-1.bin"

----| EDID block [0] |----

offs=0 (0x0000): Basic EDID data
  header          0x00FFFFFFFFFFFF00 
  mfc_id          ACI   
  prod_id         0x24AB
  serial          16843009 
  prodweek        35    
  year            2016  
  edid_ver        1     
  edid_rev        4     
  num_extblk      1     
  checksum        0x35  

offs=20 (0x0014): Video Input Descriptor
  Input Type      1     Digital
  VESA compat     1     
  IF Type         0b0101
  Color Depth     0b010 

offs=21 (0x0015): Basic Display Descriptor
  max_hsize       52    cm
  max_vsize       32    cm
  gamma           2.20  

offs=24 (0x0018): Supported features
  gtf_support     0     
  dtd0_native     1     
  std_srbg        0     
  vsig_format     0b11  
  dpms_off        1     
  dpms_susp       0     
  dpms_stby       0     

offs=25 (0x0019): Chromacity Coords
  red_x           0.645 
  red_y           0.336 
  green_x         0.327 
  green_y         0.614 
  blue_x          0.146 
  blue_y          0.055 
  white_x         0.313 
  white_y         0.329 

offs=35 (0x0023): Established Timings Map
  800x600x60      1     
  800x600x56      1     
  640x480x75      0     
  640x480x72      0     
  640x480x67      0     
  640x480x60      1     
  720x400x88      0     
  720x400x70      0     
  1280x1024x75    0     
  1024x768x75     0     
  1024x768x72     0     
  1024x768x60     1     
  1024x768x87i    0     
  832x624x75      0     
  800x600x75      0     
  800x600x72      0     
  reserved0       0     
  reserved1       0     
  reserved2       0     
  reserved3       0     
  reserved4       0     
  reserved5       0     
  reserved6       0     
  1152x870x75     0     

offs=38 (0x0026): Standard Timing Information
  X-res8          1280  pix
  V-freq          60    Hz
  pix_ratio       0b10  

offs=40 (0x0028): Standard Timing Information
  X-res8          1280  pix
  V-freq          60    Hz
  pix_ratio       0b01  

offs=42 (0x002A): Standard Timing Information
  X-res8          1440  pix
  V-freq          60    Hz
  pix_ratio       0b00  

offs=44 (0x002C): Standard Timing Information
  X-res8          1600  pix
  V-freq          60    Hz
  pix_ratio       0b01  

offs=46 (0x002E): Standard Timing Information
  X-res8          1680  pix
  V-freq          60    Hz
  pix_ratio       0b00  

offs=48 (0x0030): Standard Timing Information
  X-res8          1920  pix
  V-freq          60    Hz
  pix_ratio       0b11  

offs=50 (0x0032): Standard Timing Information
  X-res8          256   pix	<unused>
  V-freq          61    Hz	<unused>
  pix_ratio       0b00  

offs=52 (0x0034): Standard Timing Information
  X-res8          256   pix	<unused>
  V-freq          61    Hz	<unused>
  pix_ratio       0b00  

offs=54 (0x0036): Detailed Timing Descriptor
  Pixel clock     154.00MHz
  H-Active pix    1920  pix
  H-Blank pix     160   pix
  V-Active lines  1200  pix
  V-Blank lines   35    pix
  H-Sync offs     48    pix
  H-Sync width    32    pix
  V-Sync offs     3     pix
  V-Sync width    6     pix
  H-Size          518   mm
  V-Size          324   mm
  H-Border pix    0     pix
  V-Border lines  0     pix
  sync_type       0b11  
  Hsync_type      1     
  Vsync_type      0     
  il2w_stereo     0     
  stereo_mode     0b00  
  interlace       0     

offs=72 (0x0048): Monitor Range Limits
  zero_hdr        0x000000 
  desc_type       0xFD  
  zero_req        0     
  min_Vfreq       50    Hz
  max_Vfreq       61    Hz
  min_Hfreq       30    kHz
  max_Hfreq       83    kHz
  max_pixclk      170   MHz
  extd_timg       0x00  
  resvd           10    	<unused>
  sfreq_sec       32    	<unused>
  gtf_c           32    	<unused>
  gtf_m           8224  	<unused>
  gtf_k           32    	<unused>
  gtf_j           32    	<unused>

offs=90 (0x005A): Monitor Name Descriptor
  zero_hdr        0x000000 
  desc_type       0xFC  
  zero_req        0     
  Monitor name    BE24A
        

offs=108 (0x006C): Monitor Serial Number
  zero_hdr        0x000000 
  desc_type       0xFF  
  zero_req        0     
  Monitor SN      G8LMQS116296
 


----| EDID block [1] |----

offs=128 (0x0080): CEA-861 header
  Extension tag   0x02  
  Revision        3     
  DTD offset      0x18  
  num_dtd         1     
  YCbCr 4:2:2     1     
  YCbCr 4:4:4     1     
  Basic Audio     1     
  Underscan       1     
  checksum        0x88  

offs=132 (0x0084): Video Data Block

  offs=133 (0x0085): Short Video Descriptor
    VIC             16    1080p    16:9  1920x1080p@59.94/60Hz
    Native          1

  offs=134 (0x0086): Short Video Descriptor
    VIC             5     1080i    16:9  1920x1080i@59.94/60Hz
    Native          0

  offs=135 (0x0087): Short Video Descriptor
    VIC             4     720p     16:9  1280x720p@59.94/60Hz
    Native          0

  offs=136 (0x0088): Short Video Descriptor
    VIC             3     480pH    16:9  720x480p@59.94/60Hz
    Native          0

  offs=137 (0x0089): Short Video Descriptor
    VIC             2     480p      4:3  720x480p@59.94/60Hz
    Native          0

  offs=138 (0x008A): Short Video Descriptor
    VIC             1     DMT0659   4:3  640x480p@59.94/60Hz
    Native          0

  offs=139 (0x008B): Short Video Descriptor
    VIC             17    576p      4:3  720x576p@50Hz
    Native          0

  offs=140 (0x008C): Short Video Descriptor
    VIC             18    576pH    16:9  720x576p@50Hz
    Native          0

  offs=141 (0x008D): Short Video Descriptor
    VIC             19    720p50   16:9  1280x720p@50Hz
    Native          0

  offs=142 (0x008E): Short Video Descriptor
    VIC             20    1080i25  16:9  1920x1080i(1125 Vtotal)@50Hz
    Native          0

  offs=143 (0x008F): Short Video Descriptor
    VIC             31    1080p50  16:9  1920x1080p@50Hz
    Native          0

offs=144 (0x0090): Audio Data Block
  Blk length      3     
  Tag Code        1     ADB: Audio Data Block

  offs=145 (0x0091): Short Audio Descriptor
    num_chn         1     
    AFC             1     LPCM
    reserved        0     
    sf_32kHz        1     
    sf_44.1kHz      1     
    sf_48kHz        1     
    sf_88.2kHz      0     
    sf_96kHz        0     
    sf_176.4kHz     0     
    sf_192kHz       0     
    reserved        0     
    sample16b       1     
    sample20b       1     
    sample24b       1     
    reserved        0b00000 

offs=148 (0x0094): Speaker Allocation Block
  Blk length      3     
  Tag Code        4     SAB: Speaker Allocation Data Block
  FL_FR           1     
  LFE1            0     
  FC              0     
  BL_BR           0     
  BC              0     
  FLC_FRC         0     
  RLC_RRC         0     
  FLW_FRW         0     
  TpFL_TpFR       0     
  TpC             0     
  TpFC            0     
  LS_RS           0     
  LFE2            0     
  TpBC            0     
  SiL_SiR         0     
  TpSiL_TpSiR     0     
  TpBL_TpBR       0     
  BtFC            0     
  BtFL_BtFR       0     
  TpLS_TpRS       0     
  resvd4          0     
  resvd5          0     
  resvd6          0     
  resvd7          0     

offs=152 (0x0098): Detailed Timing Descriptor
  Pixel clock     138.50MHz
  H-Active pix    1920  pix
  H-Blank pix     160   pix
  V-Active lines  1080  pix
  V-Blank lines   30    pix
  H-Sync offs     48    pix
  H-Sync width    32    pix
  V-Sync offs     3     pix
  V-Sync width    5     pix
  H-Size          518   mm
  V-Size          324   mm
  H-Border pix    0     pix
  V-Border lines  0     pix
  sync_type       0b11  
  Hsync_type      1     
  Vsync_type      0     
  il2w_stereo     0     
  stereo_mode     0b00  
  interlace       0     

offs=170 (0x00AA): Detailed Timing Descriptor
  Pixel clock     85.50 MHz
  H-Active pix    1366  pix
  H-Blank pix     426   pix
  V-Active lines  768   pix
  V-Blank lines   30    pix
  H-Sync offs     70    pix
  H-Sync width    143   pix
  V-Sync offs     3     pix
  V-Sync width    3     pix
  H-Size          518   mm
  V-Size          324   mm
  H-Border pix    0     pix
  V-Border lines  0     pix
  sync_type       0b11  
  Hsync_type      1     
  Vsync_type      1     
  il2w_stereo     0     
  stereo_mode     0b00  
  interlace       0     

offs=188 (0x00BC): Detailed Timing Descriptor
  Pixel clock     74.25 MHz
  H-Active pix    1280  pix
  H-Blank pix     370   pix
  V-Active lines  720   pix
  V-Blank lines   30    pix
  H-Sync offs     110   pix
  H-Sync width    40    pix
  V-Sync offs     5     pix
  V-Sync width    5     pix
  H-Size          518   mm
  V-Size          324   mm
  H-Border pix    0     pix
  V-Border lines  0     pix
  sync_type       0b11  
  Hsync_type      1     
  Vsync_type      1     
  il2w_stereo     0     
  stereo_mode     0b00  
  interlace       0     

offs=206 (0x00CE): Detailed Timing Descriptor
  Pixel clock     27.00 MHz
  H-Active pix    720   pix
  H-Blank pix     138   pix
  V-Active lines  480   pix
  V-Blank lines   45    pix
  H-Sync offs     16    pix
  H-Sync width    62    pix
  V-Sync offs     9     pix
  V-Sync width    6     pix
  H-Size          518   mm
  V-Size          324   mm
  H-Border pix    0     pix
  V-Border lines  0     pix
  sync_type       0b11  
  Hsync_type      0     
  Vsync_type      0     
  il2w_stereo     0     
  stereo_mode     0b00  
  interlace       0     

offs=224 (0x00E0): Detailed Timing Descriptor
  Pixel clock     74.25 MHz
  H-Active pix    1920  pix
  H-Blank pix     280   pix
  V-Active lines  540   pix
  V-Blank lines   22    pix
  H-Sync offs     88    pix
  H-Sync width    44    pix
  V-Sync offs     2     pix
  V-Sync width    5     pix
  H-Size          518   mm
  V-Size          324   mm
  H-Border pix    0     pix
  V-Border lines  0     pix
  sync_type       0b11  
  Hsync_type      1     
  Vsync_type      1     
  il2w_stereo     0     
  stereo_mode     0b00  
  interlace       1     


----| END |----

Thanx anyway.

Got it working. Had to edit the edid file on a different pc because the changes wouldn’t be saved by wxedid locally. Not even with sudo. Opening the file from another location on the disk after making a copy did not work either. Basically it comes down to this:

  • locate the edid file on the machine. (somewhere in subdir of /sys/devices/pci0000:00)
  • make a copy and edit it with wxedit (aur), apply Ignore EDID Errors under options…
  • in my case it involved the file under card0-HDMI-A-1. (use search function in file manager to make it easier)
  • Find SPF: Supported features → vsig_format → replace 0b01 wih 0b00
  • options> assemble EDID. Save binary and overwrite.
  • Find CHD: CEA-861 header → change the value of YCbCr420 and YCbCr444 to 0
  • options> assemble EDID. Save binary and overwrite.
  • place file in usr/lib/firmware/edid, create a dir when absent:
sudo mkdir /lib/firmware/edid
  • modify grub file by adding to GRUB_CMDLINE_LINUX_DEFAULT :
drm.edid_firmware=HDMI-A-1:edid/XB270HU.bin video=HDMI-A-1
  • save grub file.

Note: Replace DP-3:e with your system specific setup.

And finally update grub:

sudo update-grub

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.