aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/drm_edid.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2011-01-26 04:49:47 -0500
committerDave Airlie <airlied@redhat.com>2011-02-22 20:13:11 -0500
commitb1f559ecdc6026ef783ccadc62a61e7da906fcb4 (patch)
tree0191b560a045c6490c326ef0c027797ba9886ffa /drivers/gpu/drm/drm_edid.c
parent60b212f8ddcdbbfa8595f40300756b9ea8dd387e (diff)
drm: Mark constant arrays of drm_display_mode const
... and fixup some methods to accept the constant argument. Now that constant module arrays are loaded into read-only memory, using const appropriately has some benefits beyond warning the programmer about likely mistakes. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/drm_edid.c')
-rw-r--r--drivers/gpu/drm/drm_edid.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index a245d17165ae..af60d9be9632 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -449,12 +449,11 @@ static void edid_fixup_preferred(struct drm_connector *connector,
449struct drm_display_mode *drm_mode_find_dmt(struct drm_device *dev, 449struct drm_display_mode *drm_mode_find_dmt(struct drm_device *dev,
450 int hsize, int vsize, int fresh) 450 int hsize, int vsize, int fresh)
451{ 451{
452 struct drm_display_mode *mode = NULL;
452 int i; 453 int i;
453 struct drm_display_mode *ptr, *mode;
454 454
455 mode = NULL;
456 for (i = 0; i < drm_num_dmt_modes; i++) { 455 for (i = 0; i < drm_num_dmt_modes; i++) {
457 ptr = &drm_dmt_modes[i]; 456 const struct drm_display_mode *ptr = &drm_dmt_modes[i];
458 if (hsize == ptr->hdisplay && 457 if (hsize == ptr->hdisplay &&
459 vsize == ptr->vdisplay && 458 vsize == ptr->vdisplay &&
460 fresh == drm_mode_vrefresh(ptr)) { 459 fresh == drm_mode_vrefresh(ptr)) {
@@ -885,7 +884,7 @@ static struct drm_display_mode *drm_mode_detailed(struct drm_device *dev,
885} 884}
886 885
887static bool 886static bool
888mode_is_rb(struct drm_display_mode *mode) 887mode_is_rb(const struct drm_display_mode *mode)
889{ 888{
890 return (mode->htotal - mode->hdisplay == 160) && 889 return (mode->htotal - mode->hdisplay == 160) &&
891 (mode->hsync_end - mode->hdisplay == 80) && 890 (mode->hsync_end - mode->hdisplay == 80) &&
@@ -894,7 +893,8 @@ mode_is_rb(struct drm_display_mode *mode)
894} 893}
895 894
896static bool 895static bool
897mode_in_hsync_range(struct drm_display_mode *mode, struct edid *edid, u8 *t) 896mode_in_hsync_range(const struct drm_display_mode *mode,
897 struct edid *edid, u8 *t)
898{ 898{
899 int hsync, hmin, hmax; 899 int hsync, hmin, hmax;
900 900
@@ -910,7 +910,8 @@ mode_in_hsync_range(struct drm_display_mode *mode, struct edid *edid, u8 *t)
910} 910}
911 911
912static bool 912static bool
913mode_in_vsync_range(struct drm_display_mode *mode, struct edid *edid, u8 *t) 913mode_in_vsync_range(const struct drm_display_mode *mode,
914 struct edid *edid, u8 *t)
914{ 915{
915 int vsync, vmin, vmax; 916 int vsync, vmin, vmax;
916 917
@@ -941,7 +942,7 @@ range_pixel_clock(struct edid *edid, u8 *t)
941} 942}
942 943
943static bool 944static bool
944mode_in_range(struct drm_display_mode *mode, struct edid *edid, 945mode_in_range(const struct drm_display_mode *mode, struct edid *edid,
945 struct detailed_timing *timing) 946 struct detailed_timing *timing)
946{ 947{
947 u32 max_clock; 948 u32 max_clock;
@@ -1472,7 +1473,7 @@ int drm_add_modes_noedid(struct drm_connector *connector,
1472 int hdisplay, int vdisplay) 1473 int hdisplay, int vdisplay)
1473{ 1474{
1474 int i, count, num_modes = 0; 1475 int i, count, num_modes = 0;
1475 struct drm_display_mode *mode, *ptr; 1476 struct drm_display_mode *mode;
1476 struct drm_device *dev = connector->dev; 1477 struct drm_device *dev = connector->dev;
1477 1478
1478 count = sizeof(drm_dmt_modes) / sizeof(struct drm_display_mode); 1479 count = sizeof(drm_dmt_modes) / sizeof(struct drm_display_mode);
@@ -1482,7 +1483,7 @@ int drm_add_modes_noedid(struct drm_connector *connector,
1482 vdisplay = 0; 1483 vdisplay = 0;
1483 1484
1484 for (i = 0; i < count; i++) { 1485 for (i = 0; i < count; i++) {
1485 ptr = &drm_dmt_modes[i]; 1486 const struct drm_display_mode *ptr = &drm_dmt_modes[i];
1486 if (hdisplay && vdisplay) { 1487 if (hdisplay && vdisplay) {
1487 /* 1488 /*
1488 * Only when two are valid, they will be used to check 1489 * Only when two are valid, they will be used to check