]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
drm/i915: Expose the legacy LUT via the GAMMA_LUT/GAMMA_LUT_SIZE props on gen2/3
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Mon, 1 Apr 2019 20:02:30 +0000 (23:02 +0300)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Wed, 3 Apr 2019 19:26:13 +0000 (22:26 +0300)
Just so we don't leave gen2/3 out in the cold let's advertize the
legacy LUT via the GAMMA_LUT/GAMMA_LUT_SIZE props. Without the
GAMMA_LUT prop we can't actually load a LUT using the atomic ioctl
(in preparation for the day of 100% atomic driver).

Supposedly some gen2/3 platforms have an interpolated 10bit gamma mode
as well. It's slightly funkier than the i965+ mode since you have to
specify the slope for the interpolation by hand. But when I tried it
I couldn't get it to work, the hardware just insisted on using the
8bit more regardless of the state of the relevant PIPECONF bit.

Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190401200231.2333-7-ville.syrjala@linux.intel.com
Reviewed-by: Uma Shankar <uma.shankar@intel.com>
drivers/gpu/drm/i915/i915_pci.c

index 84078fbdb2d8d6b18b06a39ae8de8624f94f11d8..81d14dc2fa61274b24250585c309f85062ae4b2c 100644 (file)
                [PIPE_C] = IVB_CURSOR_C_OFFSET, \
        }
 
+#define I9XX_COLORS \
+       .color = { .gamma_lut_size = 256 }
 #define I965_COLORS \
        .color = { .gamma_lut_size = 129, \
                   .gamma_lut_tests = DRM_COLOR_LUT_NON_DECREASING, \
        .has_coherent_ggtt = false, \
        I9XX_PIPE_OFFSETS, \
        I9XX_CURSOR_OFFSETS, \
+       I9XX_COLORS, \
        GEN_DEFAULT_PAGE_SIZES
 
 #define I845_FEATURES \
        .has_coherent_ggtt = false, \
        I845_PIPE_OFFSETS, \
        I845_CURSOR_OFFSETS, \
+       I9XX_COLORS, \
        GEN_DEFAULT_PAGE_SIZES
 
 static const struct intel_device_info intel_i830_info = {
@@ -205,6 +209,7 @@ static const struct intel_device_info intel_i865g_info = {
        .has_coherent_ggtt = true, \
        I9XX_PIPE_OFFSETS, \
        I9XX_CURSOR_OFFSETS, \
+       I9XX_COLORS, \
        GEN_DEFAULT_PAGE_SIZES
 
 static const struct intel_device_info intel_i915g_info = {