diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2011-01-26 04:49:47 -0500 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2011-02-22 20:13:11 -0500 |
commit | b1f559ecdc6026ef783ccadc62a61e7da906fcb4 (patch) | |
tree | 0191b560a045c6490c326ef0c027797ba9886ffa /drivers/gpu/drm/drm_edid.c | |
parent | 60b212f8ddcdbbfa8595f40300756b9ea8dd387e (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.c | 19 |
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, | |||
449 | struct drm_display_mode *drm_mode_find_dmt(struct drm_device *dev, | 449 | struct 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 | ||
887 | static bool | 886 | static bool |
888 | mode_is_rb(struct drm_display_mode *mode) | 887 | mode_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 | ||
896 | static bool | 895 | static bool |
897 | mode_in_hsync_range(struct drm_display_mode *mode, struct edid *edid, u8 *t) | 896 | mode_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 | ||
912 | static bool | 912 | static bool |
913 | mode_in_vsync_range(struct drm_display_mode *mode, struct edid *edid, u8 *t) | 913 | mode_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 | ||
943 | static bool | 944 | static bool |
944 | mode_in_range(struct drm_display_mode *mode, struct edid *edid, | 945 | mode_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 |