diff options
author | Jon Mayo <jmayo@nvidia.com> | 2011-07-14 17:33:02 -0700 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2011-11-30 21:47:44 -0800 |
commit | 46edc337dad164d91d230480b38c304544683ae5 (patch) | |
tree | 9be17e0f2053abf017359e4952f6b9b9dd9cab3a /drivers/video/tegra/dc | |
parent | ac275b7fcd4e959b6d1cb772869e76ea3993a449 (diff) |
tegra: video: dc: prevent division by zero
Do not pass 0 to PICOS2KHZ() macro, as it causes Division by zero in kernel.
Bug 850852
Original-Change-Id: Ice913aaf756719aaf49bf6fab54b5f1618fb07d5
Reviewed-on: http://git-master/r/41116
Reviewed-by: Varun Colbert <vcolbert@nvidia.com>
Tested-by: Varun Colbert <vcolbert@nvidia.com>
Rebase-Id: Rc77772df52dfd42db53be2c8cb4281a04262ad69
Diffstat (limited to 'drivers/video/tegra/dc')
-rw-r--r-- | drivers/video/tegra/dc/dc.c | 3 | ||||
-rw-r--r-- | drivers/video/tegra/dc/hdmi.c | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/drivers/video/tegra/dc/dc.c b/drivers/video/tegra/dc/dc.c index 102aba2f38a4..e1fd13fcbee3 100644 --- a/drivers/video/tegra/dc/dc.c +++ b/drivers/video/tegra/dc/dc.c @@ -1334,6 +1334,9 @@ int tegra_dc_set_fb_mode(struct tegra_dc *dc, { struct tegra_dc_mode mode; + if (!fbmode->pixclock) + return -EINVAL; + mode.pclk = PICOS2KHZ(fbmode->pixclock) * 1000; mode.h_sync_width = fbmode->hsync_len; mode.v_sync_width = fbmode->vsync_len; diff --git a/drivers/video/tegra/dc/hdmi.c b/drivers/video/tegra/dc/hdmi.c index ff02d442e8c7..7c146585bd74 100644 --- a/drivers/video/tegra/dc/hdmi.c +++ b/drivers/video/tegra/dc/hdmi.c @@ -677,6 +677,9 @@ static bool tegra_dc_hdmi_mode_filter(const struct tegra_dc *dc, int i; int clock_per_frame; + if (!mode->pixclock) + return false; + for (i = 0; i < ARRAY_SIZE(tegra_dc_hdmi_supported_modes); i++) { const struct fb_videomode *supported_mode = &tegra_dc_hdmi_supported_modes[i]; |