drm/edid: constify struct detailed_timing in lower level parsing
authorJani Nikula <jani.nikula@intel.com>
Mon, 28 Mar 2022 14:34:28 +0000 (17:34 +0300)
committerJani Nikula <jani.nikula@intel.com>
Tue, 29 Mar 2022 11:51:30 +0000 (14:51 +0300)
Start constifying the struct detailed_timing pointers being passed
around from bottom up.

Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
Link: https://patchwork.freedesktop.org/patch/msgid/0b7fafcc7784db0003e454544916c273a9eb1250.1648477901.git.jani.nikula@intel.com
drivers/gpu/drm/drm_edid.c

index d188ac8..0d34d99 100644 (file)
@@ -2560,7 +2560,7 @@ static int drm_mode_hsync(const struct drm_display_mode *mode)
  */
 static struct drm_display_mode *
 drm_mode_std(struct drm_connector *connector, struct edid *edid,
-            struct std_timing *t)
+            const struct std_timing *t)
 {
        struct drm_device *dev = connector->dev;
        struct drm_display_mode *m, *mode = NULL;
@@ -2678,7 +2678,7 @@ drm_mode_std(struct drm_connector *connector, struct edid *edid,
  */
 static void
 drm_mode_do_interlace_quirk(struct drm_display_mode *mode,
-                           struct detailed_pixel_timing *pt)
+                           const struct detailed_pixel_timing *pt)
 {
        int i;
        static const struct {
@@ -2722,11 +2722,11 @@ drm_mode_do_interlace_quirk(struct drm_display_mode *mode,
  */
 static struct drm_display_mode *drm_mode_detailed(struct drm_device *dev,
                                                  struct edid *edid,
-                                                 struct detailed_timing *timing,
+                                                 const struct detailed_timing *timing,
                                                  u32 quirks)
 {
        struct drm_display_mode *mode;
-       struct detailed_pixel_timing *pt = &timing->data.pixel_data;
+       const struct detailed_pixel_timing *pt = &timing->data.pixel_data;
        unsigned hactive = (pt->hactive_hblank_hi & 0xf0) << 4 | pt->hactive_lo;
        unsigned vactive = (pt->vactive_vblank_hi & 0xf0) << 4 | pt->vactive_lo;
        unsigned hblank = (pt->hactive_hblank_hi & 0xf) << 8 | pt->hblank_lo;
@@ -2821,7 +2821,7 @@ set_size:
 
 static bool
 mode_in_hsync_range(const struct drm_display_mode *mode,
-                   struct edid *edid, u8 *t)
+                   struct edid *edid, const u8 *t)
 {
        int hsync, hmin, hmax;
 
@@ -2838,7 +2838,7 @@ mode_in_hsync_range(const struct drm_display_mode *mode,
 
 static bool
 mode_in_vsync_range(const struct drm_display_mode *mode,
-                   struct edid *edid, u8 *t)
+                   struct edid *edid, const u8 *t)
 {
        int vsync, vmin, vmax;
 
@@ -2854,7 +2854,7 @@ mode_in_vsync_range(const struct drm_display_mode *mode,
 }
 
 static u32
-range_pixel_clock(struct edid *edid, u8 *t)
+range_pixel_clock(struct edid *edid, const u8 *t)
 {
        /* unspecified */
        if (t[9] == 0 || t[9] == 255)
@@ -2870,10 +2870,10 @@ range_pixel_clock(struct edid *edid, u8 *t)
 
 static bool
 mode_in_range(const struct drm_display_mode *mode, struct edid *edid,
-             struct detailed_timing *timing)
+             const struct detailed_timing *timing)
 {
        u32 max_clock;
-       u8 *t = (u8 *)timing;
+       const u8 *t = (const u8 *)timing;
 
        if (!mode_in_hsync_range(mode, edid, t))
                return false;
@@ -2916,7 +2916,7 @@ static bool valid_inferred_mode(const struct drm_connector *connector,
 
 static int
 drm_dmt_modes_for_range(struct drm_connector *connector, struct edid *edid,
-                       struct detailed_timing *timing)
+                       const struct detailed_timing *timing)
 {
        int i, modes = 0;
        struct drm_display_mode *newmode;
@@ -2951,7 +2951,7 @@ void drm_mode_fixup_1366x768(struct drm_display_mode *mode)
 
 static int
 drm_gtf_modes_for_range(struct drm_connector *connector, struct edid *edid,
-                       struct detailed_timing *timing)
+                       const struct detailed_timing *timing)
 {
        int i, modes = 0;
        struct drm_display_mode *newmode;
@@ -2980,7 +2980,7 @@ drm_gtf_modes_for_range(struct drm_connector *connector, struct edid *edid,
 
 static int
 drm_cvt_modes_for_range(struct drm_connector *connector, struct edid *edid,
-                       struct detailed_timing *timing)
+                       const struct detailed_timing *timing)
 {
        int i, modes = 0;
        struct drm_display_mode *newmode;
@@ -3012,8 +3012,8 @@ static void
 do_inferred_modes(struct detailed_timing *timing, void *c)
 {
        struct detailed_mode_closure *closure = c;
-       struct detailed_non_pixel *data = &timing->data.other_data;
-       struct detailed_data_monitor_range *range = &data->data.range;
+       const struct detailed_non_pixel *data = &timing->data.other_data;
+       const struct detailed_data_monitor_range *range = &data->data.range;
 
        if (!is_display_descriptor(timing, EDID_DETAIL_MONITOR_RANGE))
                return;
@@ -3062,11 +3062,11 @@ add_inferred_modes(struct drm_connector *connector, struct edid *edid)
 }
 
 static int
-drm_est3_modes(struct drm_connector *connector, struct detailed_timing *timing)
+drm_est3_modes(struct drm_connector *connector, const struct detailed_timing *timing)
 {
        int i, j, m, modes = 0;
        struct drm_display_mode *mode;
-       u8 *est = ((u8 *)timing) + 6;
+       const u8 *est = ((const u8 *)timing) + 6;
 
        for (i = 0; i < 6; i++) {
                for (j = 7; j >= 0; j--) {
@@ -3145,7 +3145,7 @@ static void
 do_standard_modes(struct detailed_timing *timing, void *c)
 {
        struct detailed_mode_closure *closure = c;
-       struct detailed_non_pixel *data = &timing->data.other_data;
+       const struct detailed_non_pixel *data = &timing->data.other_data;
        struct drm_connector *connector = closure->connector;
        struct edid *edid = closure->edid;
        int i;
@@ -3154,7 +3154,7 @@ do_standard_modes(struct detailed_timing *timing, void *c)
                return;
 
        for (i = 0; i < 6; i++) {
-               struct std_timing *std = &data->data.timings[i];
+               const struct std_timing *std = &data->data.timings[i];
                struct drm_display_mode *newmode;
 
                newmode = drm_mode_std(connector, edid, std);
@@ -3203,12 +3203,12 @@ add_standard_modes(struct drm_connector *connector, struct edid *edid)
 }
 
 static int drm_cvt_modes(struct drm_connector *connector,
-                        struct detailed_timing *timing)
+                        const struct detailed_timing *timing)
 {
        int i, j, modes = 0;
        struct drm_display_mode *newmode;
        struct drm_device *dev = connector->dev;
-       struct cvt_timing *cvt;
+       const struct cvt_timing *cvt;
        const int rates[] = { 60, 85, 75, 60, 50 };
        const u8 empty[3] = { 0, 0, 0 };