Display resolution only outputs 640x480 via HDMI (but not VGA) and some other issues

Seems like the last update has been causing a few issues, for me the most noticeable effect was that my monitor could only display a resolution of 640x480 (4:3) via HDMI. I did find a workaround for this which was to use a VGA cable instead and that works (although the image quality isn’t as good).

I’ve also noticed that the fans on my GPU (ASUS RX580) aren’t spinning and as a consequence it’s running a little hot (~45-50deg C, typically it sits around 20-30deg C).

Anyway here is my system information:
$ inxi -Fazy

System:
  Kernel: 5.13.11-1-MANJARO x86_64 bits: 64 compiler: gcc v: 11.1.0 
  parameters: BOOT_IMAGE=/boot/vmlinuz-5.13-x86_64 
  root=UUID=f87062e2-aa8c-4ec6-8077-c2dffff34e46 rw quiet apparmor=1 
  security=apparmor resume=UUID=a08e007c-810f-4741-9f6c-4ff9b6657510 
  udev.log_priority=3 
  Desktop: KDE Plasma 5.22.4 tk: Qt 5.15.2 wm: kwin_x11 vt: 1 dm: SDDM 
  Distro: Manjaro Linux base: Arch Linux 
Machine:
  Type: Desktop Mobo: ASUSTeK model: ROG STRIX X470-F GAMING v: Rev X.0x 
  serial: <filter> UEFI: American Megatrends v: 5809 date: 12/03/2020 
CPU:
  Info: 8-Core model: AMD Ryzen 7 2700 bits: 64 type: MT MCP arch: Zen+ 
  family: 17 (23) model-id: 8 stepping: 2 microcode: 800820D cache: L2: 4 MiB 
  flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm 
  bogomips: 102243 
  Speed: 1419 MHz min/max: 1550/3200 MHz boost: enabled Core speeds (MHz): 
  1: 1419 2: 1380 3: 1378 4: 1361 5: 1378 6: 1374 7: 1373 8: 1377 9: 1357 
  10: 1336 11: 1374 12: 1375 13: 1378 14: 1374 15: 2561 16: 1354 
  Vulnerabilities: Type: itlb_multihit status: Not affected 
  Type: l1tf status: Not affected 
  Type: mds status: Not affected 
  Type: meltdown status: Not affected 
  Type: spec_store_bypass 
  mitigation: Speculative Store Bypass disabled via prctl and seccomp 
  Type: spectre_v1 
  mitigation: usercopy/swapgs barriers and __user pointer sanitization 
  Type: spectre_v2 mitigation: Full AMD retpoline, IBPB: conditional, STIBP: 
  disabled, RSB filling 
  Type: srbds status: Not affected 
  Type: tsx_async_abort status: Not affected 
Graphics:
  Device-1: AMD Ellesmere [Radeon RX 470/480/570/570X/580/580X/590] 
  vendor: ASUSTeK driver: amdgpu v: kernel bus-ID: 09:00.0 chip-ID: 1002:67df 
  class-ID: 0300 
  Display: x11 server: X.Org 1.20.13 compositor: kwin_x11 driver: 
  loaded: amdgpu,ati unloaded: modesetting alternate: fbdev,vesa 
  display-ID: :0 screens: 1 
  Screen-1: 0 s-res: 2560x1080 s-dpi: 96 s-size: 677x285mm (26.7x11.2") 
  s-diag: 735mm (28.9") 
  Monitor-1: HDMI-A-0 res: 640x480 hz: 60 
  Monitor-2: DVI-D-0 res: 1920x1080 hz: 60 dpi: 94 
  size: 521x293mm (20.5x11.5") diag: 598mm (23.5") 
  OpenGL: renderer: Radeon RX 580 Series (POLARIS10 DRM 3.41.0 
  5.13.11-1-MANJARO LLVM 12.0.1) 
  v: 4.6 Mesa 21.1.6 direct render: Yes 
Audio:
  Device-1: AMD Ellesmere HDMI Audio [Radeon RX 470/480 / 570/580/590] 
  vendor: ASUSTeK driver: snd_hda_intel v: kernel bus-ID: 09:00.1 
  chip-ID: 1002:aaf0 class-ID: 0403 
  Device-2: AMD Family 17h HD Audio vendor: ASUSTeK driver: snd_hda_intel 
  v: kernel bus-ID: 0b:00.3 chip-ID: 1022:1457 class-ID: 0403 
  Sound Server-1: ALSA v: k5.13.11-1-MANJARO running: yes 
  Sound Server-2: sndio v: N/A running: no 
  Sound Server-3: JACK v: 1.9.19 running: no 
  Sound Server-4: PulseAudio v: 15.0 running: yes 
  Sound Server-5: PipeWire v: 0.3.33 running: no 
Network:
  Device-1: Intel I211 Gigabit Network vendor: ASUSTeK driver: igb v: kernel 
  port: e000 bus-ID: 07:00.0 chip-ID: 8086:1539 class-ID: 0200 
  IF: enp7s0 state: up speed: 100 Mbps duplex: full mac: <filter> 
Drives:
  Local Storage: total: 4.31 TiB used: 1.07 TiB (24.8%) 
  SMART Message: Required tool smartctl not installed. Check --recommends 
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung 
  model: SSD 970 EVO Plus 500GB size: 465.76 GiB block-size: physical: 512 B 
  logical: 512 B speed: 31.6 Gb/s lanes: 4 type: SSD serial: <filter> 
  rev: 1B2QEXM7 temp: 35.9 C scheme: MBR 
  ID-2: /dev/sda maj-min: 8:0 vendor: SanDisk model: SSD PLUS 240GB 
  size: 223.58 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s 
  type: SSD serial: <filter> rev: 00RL scheme: GPT 
  ID-3: /dev/sdb maj-min: 8:16 vendor: Western Digital model: WD40EZRZ-00GXCB0 
  size: 3.64 TiB block-size: physical: 4096 B logical: 512 B speed: 6.0 Gb/s 
  type: HDD rpm: 5400 serial: <filter> rev: 0A80 scheme: GPT 
Partition:
  ID-1: / raw-size: 449.55 GiB size: 441.49 GiB (98.21%) 
  used: 341.7 GiB (77.4%) fs: ext4 dev: /dev/nvme0n1p3 maj-min: 259:3 
  ID-2: /boot/efi raw-size: 512 MiB size: 511 MiB (99.80%) 
  used: 272 KiB (0.1%) fs: vfat dev: /dev/nvme0n1p2 maj-min: 259:2 
Swap:
  Kernel: swappiness: 17 (default 60) cache-pressure: 100 (default) 
  ID-1: swap-1 type: partition size: 15.71 GiB used: 0 KiB (0.0%) priority: -2 
  dev: /dev/nvme0n1p1 maj-min: 259:1 
Sensors:
  System Temperatures: cpu: 29.0 C mobo: N/A gpu: amdgpu temp: 49.0 C 
  Fan Speeds (RPM): N/A gpu: amdgpu fan: 1502 
Info:
  Processes: 316 Uptime: 3h 50m wakeups: 24 Memory: 15.54 GiB 
  used: 3.99 GiB (25.7%) Init: systemd v: 248 tool: systemctl Compilers: 
  gcc: 11.1.0 clang: 12.0.1 Packages: pacman: 1480 lib: 410 flatpak: 0 
  Shell: Bash v: 5.1.8 running-in: konsole inxi: 3.3.06

Also the output from /var/log/Xorg.0.log can be found on pastebin at:

low_res_display - Pastebin.com

I also noticed the following errors in the output of dmesg:
[ 6.082295] kvm: disabled by bios
and also
[ 6.222007] [drm:dc_link_detect_helper [amdgpu]] *ERROR* EDID checksum invalid.
As well as the following error when I reboot:
Aug 19 10:29:19 01 kernel: __common_interrupt: 10.55 No irq handler for vector

Any help is appreciated. Let me know if there are any more details that I should add.

thanks