Yes, you are right.
When a display connects the following info can be intercepted from `AppleDCPDPTXController` (this is an example for a TV connecting at 4K@120Hz).
Code:
AppleDCPDPTXController::validateVideo Validating link @ 4 lanes and 8100000000Gbps
AppleDCPDPTXController::validateVideo Color: depth=10bpc encoding=3 [YCbCr 4:4:4] range=1 [Limited] colorimetry=1 [BT.709]
AppleDCPDPTXController::validateVideo Horizontal: total=4400 frontPorch=176 syncWidth=88 backPorch=296 active=3840
AppleDCPDPTXController::validateVideo Vertical: total=2250 frontPorch=8 syncWidth=10 backPorch=72 active=2160 syncRate=60.0000Hz
AppleDCPDPTXController::validateVideo Timing: pixelClock=594000000 interlaced=0 split=0
AppleDCPDPTXController::validateVideo Link: usableLinkBandwidth=25312113767bps < totalLinkBandwidth=25920000000bps
AppleDCPDPTXController::validateVideo Link: dsc=NO dsc.bpp=0.0000 videoBandwidth=17820000000bps usableBandwidth=25312113767bps
AppleDCPDPTXController::getBandwidthRatio videoBandwidth=17820000000bps linkBandwidth=25920000000bps bandwidthRatio=0.6875
Notice the connection level mode info, DSC use and DSC BPP (it should be specified there if DSC is in use, in this example it is not), the usable and bandwidth required bandwidth (`videBandwidth`) and the resulting bandwidth ratio for this video mode.
Also various other details can be intercepted from the negatioation process and even link training details.