I just figured out why my 24" LG24UD58-B wasn't showing VRR on my M1 MacBook Air. Even though I was using Display Port from my Caldigit SOHO dock to the monitor it wasn't showing FreeSync as active. I just switched to directly using USB-C to DP and now I can see FreeSync and 40-60 Hz variable refresh rate. It doesn't flicker.
I don't think VRR works with any DisplayPort MST hub (at least for macOS). I tried a CalDigit SOHO, a Delock 87737, and a HP Thunderbolt Dock G2.
While VRR doesn't work from the MST hub DisplayPort ports of the HP Thunderbolt Dock G2, it does work from the downstream Thunderbolt port of the dock.
These were all tested with a Radeon Pro W5700. The Intel iGPU (UHD Graphics 630) does not support VRR. For the HP dock, a GC-ALPINE RIDGE in my MacPro3,1 is used to convert DisplayPort from the W5700 to Thunderbolt.
Club-3d says their MST hubs support FreeSync, G-Sync, and VRR but I don't know if that's true for macOS. Maybe macOS doesn't support VRR from an MST hub.
https://www.club-3d.com/en/detail/2...sport_(mst)hub_displayport1.4_triple_monitor/
All these MST hubs use chips from Synaptics so I assume if one can have support for FreeSync, G-Sync, and VRR, then they all can.
Then I tried Windows 10 from a PC using a Radeon RX 580. I used GPU-Z fullscreen renderer to make sure VRR is working (the XV273K has a frame rate overlay that rapidly changes when FreeSync is working). Using any of the MST hubs locks the frame rate at 144Hz. The Radeon Software shows AMD FreeSync "Not Supported" when the Delock MST hub is used. I also tested the CalDigit SOHO (using a GC-TITAN RIDGE since the RX 580 doesn't have a USB-C port). I couldn't seem to get an image from the HP dock while in Windows... I did not try Nvidia cards (I have a Titan X and a GTX 1070).
Also in Windows, FreeSync worked from the GC-ALPINE RIDGE even though GC-ALPINE RIDGE is limited to DisplayPort 1.2 HBR2 link rate. In this case, the FreeSync Range is 48-60Hz instead of 48-144Hz (but the display shows numbers like 90Hz when doing the GPU-Z renderer test).