I stole title from the post on Reddit
The solution is to disable CABC (Content-Aware Dynamic Brightness) in i916 module parameters, but it seems only available in ChromeOS. We don’t have it in mainline kernel.
I wonder if I could simply just copy some files from cros recovery image to get this parameter, or try to port it to mainline kernel?