Main > Linux

linux_kernel_15khz: 640x480i via AMD APU

(1/2) > >>

fdaniels:
Hey all, I have been struggling to get a 15kHz signal from my AMD APU (AMD A808600B with an AMD Radeon R6 APU). I previously attempted to use CRT Emudriver on Windows but ran into issues get EDID to work due my graphics card being an APU.

I installed Ubuntu 20.04, and updated its kernel to 5.15.79 compiled with linux_kernel_15khz. After updating GRUB, I configured the GRUB_CMDLINE_LINUX_DEFAULT="quiet splash video=VGA-1:640x480ieS". The machine boots without error, but the PVM attached to my VGA port via RGB seems to be display 640x480p, since the image is wavy and horizontally duplicated.

Am I doing something dumb, or it my hardware configuration not supported?

fdaniels:
Here are my modelines for anyone interested.

https://justpaste.it/d33qr

Looks like I have to use DP-3 or something instead of VGA-1? Likely because I am running on an APU?


--- Code: ---fdaniels@HTPC:~$ ls /sys/class/drm
card0  card0-DP-1  card0-DP-2  card0-DP-3  renderD128  version
--- End code ---

I confirmed that this is true, my VGA shows up as DP-3

--- Code: ---fdaniels@HTPC:~$ for p in /sys/class/drm/*/status; do con=${p%/status}; echo -n "${con#*/card?-}: "; cat $p; done
DP-1: connected
DP-2: disconnected
DP-3: connected
--- End code ---

When I set my resolution in GRUB the PC boots with an error and my VGA port is no longer visible in Ubuntu Display Settings


--- Code: ---Nov 22 21:39:40 HTPC kernel: Kernel command line: BOOT_IMAGE=/boot/vmlinuz-5.15.79 root=UUID=b7604868-08b8-403d-85a6-41fb73826c45 ro quiet splash video=DP-3:640x480ieS vt.handoff=7
Nov 22 21:39:42 HTPC kernel: [drm] forcing DP-3 connector on
Nov 22 21:39:42 HTPC kernel: [drm:dc_link_detect_helper [amdgpu]] *ERROR* No EDID read.
--- End code ---

If I try to force an EDID (that was generated using switchres, I tried both generic_15 and arcade_15, not sure what the difference is but neither worked).


--- Code: ---Nov 22 21:28:22 HTPC kernel: Kernel command line: BOOT_IMAGE=/boot/vmlinuz-5.15.79 root=UUID=b7604868-08b8-403d-85a6-41fb73826c45 ro quiet splash video=DP-3:e drm.edid_firmware=DP-3:edid/arcade_15.bin vt.handoff=7
Nov 22 21:28:24 HTPC kernel: [drm] forcing DP-3 connector on
Nov 22 21:28:24 HTPC kernel: [drm] Got external EDID base block and 0 extensions from "edid/arcade_15.bin" for connector "DP-3"
--- End code ---

I don't see any display related errors, but when I boot into Linux only my 4k monitor is visible in Ubuntu Display Settings, and there is no signal to my PVM.

If I remove the kernel video setting my VGA port is visible but appears to be outputting a 480p signal.




fdaniels:
Okay, I've made progress. I disabled the Wayland server in favor of Xorg.

I then used xrandr to set 480i on my PVM (Sony Trinitron PVM-1342Q) using these commands.

--- Code: ---xrandr --newmode "720x480_60 15,7KHz 60,0Hz" 15.100 720 776 840 960 480 488 494 524 interlace -hsync -vsync
xrandr --addmode DisplayPort-2 "720x480_60 15,7KHz 60,0Hz"
xrandr --output DisplayPort-2 --mode "720x480_60 15,7KHz 60,0Hz"
--- End code ---

It works buuuuut, the image is super skinny (only about 30% of middle width of the screen is displayed, the height is 100%). So likely I just need to tweak some settings to get a fullscreen image.

Using something like the settings below widens the image to fill about half of the screen.

--- Code: ---fdaniels@HTPC:~$ xrandr --newmode "640x480@60i" 11.32 640 672 712 744 480 491 494 505 interlace -hsync -vsync
fdaniels@HTPC:~$ xrandr --addmode DisplayPort-2 "640x480@60i"
fdaniels@HTPC:~$ xrandr --output DisplayPort-2 --mode "640x480@60i"
--- End code ---


Any help will be appreciated  :lol

fdaniels:
When I set the resolution to 240p the entire screen fills out with no vertical bars.


--- Code: ---fdaniels@HTPC:~$ xrandr --newmode "320x240@60" 6.08 320 352 368 400 240 245 248 253
fdaniels@HTPC:~$ xrandr --addmode DisplayPort-2 "320x240@60"
fdaniels@HTPC:~$ xrandr --output DisplayPort-2 --mode "320x240@60"
--- End code ---

The desktop is full screen
https://ibb.co/fCXhHNw


It looks like videos are being truncated, on the top left quartile is being rendered. Could be that YouTube has a minimum resolution of 480p or something.
https://ibb.co/ZdMS44s

fdaniels:
While 240p works great, it is not suitable for my use-case. I am still stumped on getting a fully working Modeline for 480i. Below is an example of what 640x480i looks like.

--- Code: ---fdaniels@HTPC:~/code/switchres-master$ xrandr --newmode "v06 640x480" 11.12 640 672 712 744 480 491 494 505 interlace
fdaniels@HTPC:~/code/switchres-master$ xrandr --addmode DisplayPort-2 "v06 640x480"
fdaniels@HTPC:~/code/switchres-master$ xrandr --output DisplayPort-2 --mode "v06 640x480"
--- End code ---

https://ibb.co/nLr9R7f

Navigation

[0] Message Index

[#] Next page

Go to full version