aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/drm/drm_edid.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index 38ee2f22304c..bad2f11aa224 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -779,6 +779,8 @@ drm_mode_std(struct drm_connector *connector, struct edid *edid,
779 * secondary GTF curve. Please don't do that. 779 * secondary GTF curve. Please don't do that.
780 */ 780 */
781 mode = drm_gtf_mode(dev, hsize, vsize, vrefresh_rate, 0, 0); 781 mode = drm_gtf_mode(dev, hsize, vsize, vrefresh_rate, 0, 0);
782 if (!mode)
783 return NULL;
782 if (drm_mode_hsync(mode) > drm_gtf2_hbreak(edid)) { 784 if (drm_mode_hsync(mode) > drm_gtf2_hbreak(edid)) {
783 drm_mode_destroy(dev, mode); 785 drm_mode_destroy(dev, mode);
784 mode = drm_gtf_mode_complex(dev, hsize, vsize, 786 mode = drm_gtf_mode_complex(dev, hsize, vsize,
@@ -1048,6 +1050,8 @@ drm_gtf_modes_for_range(struct drm_connector *connector, struct edid *edid,
1048 for (i = 0; i < num_extra_modes; i++) { 1050 for (i = 0; i < num_extra_modes; i++) {
1049 const struct minimode *m = &extra_modes[i]; 1051 const struct minimode *m = &extra_modes[i];
1050 newmode = drm_gtf_mode(dev, m->w, m->h, m->r, 0, 0); 1052 newmode = drm_gtf_mode(dev, m->w, m->h, m->r, 0, 0);
1053 if (!newmode)
1054 return modes;
1051 1055
1052 if (!mode_in_range(newmode, edid, timing)) { 1056 if (!mode_in_range(newmode, edid, timing)) {
1053 drm_mode_destroy(dev, newmode); 1057 drm_mode_destroy(dev, newmode);
@@ -1073,6 +1077,8 @@ drm_cvt_modes_for_range(struct drm_connector *connector, struct edid *edid,
1073 for (i = 0; i < num_extra_modes; i++) { 1077 for (i = 0; i < num_extra_modes; i++) {
1074 const struct minimode *m = &extra_modes[i]; 1078 const struct minimode *m = &extra_modes[i];
1075 newmode = drm_cvt_mode(dev, m->w, m->h, m->r, rb, 0, 0); 1079 newmode = drm_cvt_mode(dev, m->w, m->h, m->r, rb, 0, 0);
1080 if (!newmode)
1081 return modes;
1076 1082
1077 if (!mode_in_range(newmode, edid, timing)) { 1083 if (!mode_in_range(newmode, edid, timing)) {
1078 drm_mode_destroy(dev, newmode); 1084 drm_mode_destroy(dev, newmode);