aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilipp Zabel <p.zabel@pengutronix.de>2015-01-08 00:04:04 +0100
committerPhilipp Zabel <p.zabel@pengutronix.de>2015-02-23 17:18:59 +0100
commit89ce4b0f4e7adda75ac7eec6aaa9b3516390cef2 (patch)
treec0e2cabe2de7afdc79eecbc21ed7d1c0a804a363
parentLinux 4.0-rc1 (diff)
downloadlinux-89ce4b0f4e7adda75ac7eec6aaa9b3516390cef2.tar.gz
linux-89ce4b0f4e7adda75ac7eec6aaa9b3516390cef2.zip
gpu: ipu-v3: do not divide by zero if the pixel clock is too large
Even if an unsupported mode with a pixel clock larger than two times the 264 MHz IPU HSP clock is set, don't divide by zero. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
-rw-r--r--drivers/gpu/ipu-v3/ipu-di.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/ipu-v3/ipu-di.c b/drivers/gpu/ipu-v3/ipu-di.c
index b61d6be97602..3ddfb3d0b64d 100644
--- a/drivers/gpu/ipu-v3/ipu-di.c
+++ b/drivers/gpu/ipu-v3/ipu-di.c
@@ -459,6 +459,8 @@ static void ipu_di_config_clock(struct ipu_di *di,
clkrate = clk_get_rate(di->clk_ipu);
div = DIV_ROUND_CLOSEST(clkrate, sig->mode.pixelclock);
+ if (div == 0)
+ div = 1;
rate = clkrate / div;
error = rate / (sig->mode.pixelclock / 1000);
td>1-2/+2 2018-09-28Revert "xen/blkfront: When purging persistent grants, keep them in the buffer"Jens Axboe1-1/+3 2018-09-28selftests/powerpc: Fix Makefiles for headers_install changeMichael Ellerman17-0/+17 2018-09-27blk-mq: I/O and timer unplugs are inverted in blktraceIlya Dryomov1-2/+2 2018-09-27dax: Fix deadlock in dax_lock_mapping_entry()Jan Kara1-0/+1 2018-09-27x86/boot: Fix kexec booting failure in the SEV bit detection codeKairui Song1-19/+0 2018-09-27bcache: add separate workqueue for journal_write to avoid deadlockGuoju Fang3-3/+12 2018-09-27drm/amd/display: Fix Edid emulation for linuxBhawanpreet Lakha3-7/+137 2018-09-27drm/amd/display: Fix Vega10 lightup on S3 resumeRoman Li3-18/+1 2018-09-27drm/amdgpu: Fix vce work queue was not cancelled when suspendRex Zhu2-3/+4 2018-09-27Revert "drm/panel: Add device_link from panel device to DRM device"Linus Walleij2-11/+0 2018-09-27xen/blkfront: When purging persistent grants, keep them in the bufferBoris Ostrovsky1-3/+1 2018-09-27clocksource/drivers/timer-atmel-pit: Properly handle error casesAlexandre Belloni1-6/+14 2018-09-26block: fix deadline elevator drain for zoned block devicesDamien Le Moal1-1/+1 2018-09-26ACPI / hotplug / PCI: Don't scan for non-hotplug bridges if slot is not bridgeMika Westerberg1-5/+6 2018-09-26drm/syncobj: Don't leak fences when WAIT_FOR_SUBMIT is setJason Ekstrand1-0/+5 2018-09-26iommu/amd: Return devid as alias for ACPI HID devicesArindam Nath1-0/+6 2018-09-25blk-mq: Allow blocking queue tag iter callbacksKeith Busch1-9/+4 2018-09-25nvme: properly propagate errors in nvme_mpath_initSusobhan Dey1-2/+4 2018-09-25dma-mapping: add the missing ARCH_HAS_SYNC_DMA_FOR_CPU_ALL declarationChristoph Hellwig1-0/+3 2018-09-25RDMA/core: Set right entry state before releasing referenceParav Pandit1-34/+34 2018-09-25IB/mlx5: Destroy the DEVX object upon error flowYishai Hadas1-1/+4 2018-09-25IB/uverbs: Free uapi on destroyMark Bloch1-0/+1 2018-09-25powerpc/numa: Use associativity if VPHN hcall is successfulSrikar Dronamraju1-1/+3 2018-09-25powerpc/tm: Avoid possible userspace r1 corruption on reclaimMichael Neuling1-1/+8 2018-09-25powerpc/tm: Fix userspace r13 corruptionMichael Neuling1-2/+9 2018-09-25iommu/vt-d: Handle memory shortage on pasid table allocationLu Baolu2-4/+4 2018-09-25Revert "uapi/linux/keyctl.h: don't use C++ reserved keyword as a struct membe...Lubomir Rintel2-2/+2 2018-09-25Revert "pinctrl: intel: Do pin translation when lock IRQ"Mika Westerberg1-32/+0 2018-09-25pinctrl: cannonlake: Fix HOSTSW_OWN register offset of H variantMika Westerberg1-13/+20 2018-09-25pinctrl/amd: poll InterruptEnable bits in amd_gpio_irq_set_typeDaniel Kurtz1-10/+23 2018-09-25iommu/rockchip: Free irqs in shutdown handlerHeiko Stuebner1-0/+6