To be honest i went a much cruder way that is just
static int
intel_dp_link_required(struct intel_dp *intel_dp, int pixel_clock)
{
struct drm_crtc *crtc = intel_dp->base.base.crtc;
struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
int bpp = 24;
return (pixel_clock * bpp + 9) / 10;
}
Your patch seems to be better in the sense that it correctly calculates bpp but compared to what is in upstream it checks for
if (is_edp(intel_dp))
that upstream does not anymore. I have no knowldge of the code at all so can't comment if it is correct or not. You might want to drop by #intel-gfx in freenode and talk to them, they were quite responsive when i appeared there with my issue
I'm using a Dell XPS15 outputting at 1920x1080 (without the patch resolution is limited at something like 1200xsomething)
To be honest i went a much cruder way that is just
static int link_required( struct intel_dp *intel_dp, int pixel_clock) >base.base. crtc; crtc(crtc) ;
intel_dp_
{
struct drm_crtc *crtc = intel_dp-
struct intel_crtc *intel_crtc = to_intel_
int bpp = 24;
return (pixel_clock * bpp + 9) / 10;
}
Your patch seems to be better in the sense that it correctly calculates bpp but compared to what is in upstream it checks for
if (is_edp(intel_dp))
that upstream does not anymore. I have no knowldge of the code at all so can't comment if it is correct or not. You might want to drop by #intel-gfx in freenode and talk to them, they were quite responsive when i appeared there with my issue
I'm using a Dell XPS15 outputting at 1920x1080 (without the patch resolution is limited at something like 1200xsomething)