I have a suspicion (that I'm currently working through) that our WM calculation is off by a factor of 10. That is I believe clock_in_khz is a misnomer as the clock is [elsewhere at least!] being passed around in 10 KHz units,
[cut-n-paste fail so manually typing]
intel_display.c::intel_calculate_wm()
change entries_required to be
I have a suspicion (that I'm currently working through) that our WM calculation is off by a factor of 10. That is I believe clock_in_khz is a misnomer as the clock is [elsewhere at least!] being passed around in 10 KHz units,
[cut-n-paste fail so manually typing] c::intel_ calculate_ wm()
intel_display.
change entries_required to be
entries_required = ((clock_in_khz / 1000) * pixel_size *latency_ns) / 10000;
That is change the final divide to be by ten thousand instead of one thousand.