Douglas Anderson
1d133532ee
drm/rockchip: Properly adjust to a true clock in adjusted_mode
...
[ Upstream commit 99b9683f2142b20bad78e61f7f829e8714e45685 ]
When fixing up the clock in vop_crtc_mode_fixup() we're not doing it
quite correctly. Specifically if we've got the true clock 266666667 Hz,
we'll perform this calculation:
266666667 / 1000 => 266666
Later when we try to set the clock we'll do clk_set_rate(266666 *
1000). The common clock framework won't actually pick the proper clock
in this case since it always wants clocks <= the specified one.
Let's solve this by using DIV_ROUND_UP.
Fixes: b59b8de314 ("drm/rockchip: return a true clock rate to adjusted_mode")
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Reviewed-by: Yakir Yang <ykk@rock-chips.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20190614224730.98622-1-dianders@chromium.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-08-04 09:33:38 +02:00
..
amd
drm/amdgpu: Fix SDMA HQD destroy error on gfx_v7
2018-10-18 09:13:20 +02:00
arc
drm/arcpgu: Accommodate adv7511 switch to DRM bridge
2016-11-11 04:31:35 +03:00
arm
drm/arm/hdlcd: Allow a bit of clock tolerance
2019-07-10 09:55:30 +02:00
armada
drm/armada: fix colorkey mode property
2018-08-24 13:12:37 +02:00
ast
drm/ast: Fix connector leak during driver unload
2018-12-21 14:11:39 +01:00
atmel-hlcdc
Linux 4.8-rc8
2016-09-28 12:08:49 +10:00
bochs
drm: bochs: Don't remove uninitialized fbdev framebuffer
2018-11-10 07:42:53 -08:00
bridge
drm/bridge: sii902x: pixel clock unit is 10kHz instead of 1kHz
2019-08-04 09:33:37 +02:00
cirrus
drm/drivers: add support for using the arch wc mapping API.
2016-10-26 16:48:01 +10:00
etnaviv
etnaviv: fix gem object list corruption
2017-10-05 09:44:03 +02:00
exynos
drm/exynos: decon5433: Fix WINCONx reset value
2018-08-24 13:12:34 +02:00
fsl-dcu
drm/fsl-dcu: enable IRQ before drm_atomic_helper_resume()
2017-12-09 22:01:46 +01:00
gma500
drm/gma500/cdv: Check vbt config bits when detecting lvds panels
2019-06-11 12:22:48 +02:00
hisilicon
drm/hisilicon: Ensure LDI regs are properly configured.
2017-12-05 11:24:35 +01:00
i2c
Revert "drm/i2c: tda998x: don't register the connector"
2016-09-23 03:29:50 -07:00
i810
drm: Mark up legacy/dri1 drivers with DRM_LEGACY
2016-08-08 10:05:22 +02:00
i915
drm/i915/dmc: protect against reading random memory
2019-07-10 09:55:45 +02:00
imx
drm/imx: only send event on crtc disable if kept disabled
2019-07-10 09:55:46 +02:00
mediatek
drm/mediatek: fix unbind functions
2019-07-10 09:55:43 +02:00
mga
drm/mga: remove device_is_agp callback
2017-04-12 12:41:20 +02:00
mgag200
gpu: drm: mgag200: mgag200_main:- Handle error from pci_iomap
2017-11-21 09:23:26 +01:00
msm
drm/msm: Unblock writer if reader closes file
2019-03-05 17:57:03 +01:00
nouveau
drm/nouveau/i2c: Enable i2c pads & busses during preinit
2019-08-04 09:33:28 +02:00
omapdrm
drm/omap: fix memory barrier bug in DMM driver
2018-11-21 09:25:56 +01:00
panel
drm/panel: simple: Fix panel_simple_dsi_probe
2019-08-04 09:33:36 +02:00
qxl
drm: qxl: Don't alloc fbdev if emulation is not supported
2018-03-22 09:17:36 +01:00
r128
drm: Mark up legacy/dri1 drivers with DRM_LEGACY
2016-08-08 10:05:22 +02:00
radeon
drm/radeon: prefer lower reference dividers
2019-06-11 12:22:48 +02:00
rcar-du
drm: rcar-du: Handle event when disabling CRTCs
2018-03-22 09:17:47 +01:00
rockchip
drm/rockchip: Properly adjust to a true clock in adjusted_mode
2019-08-04 09:33:38 +02:00
savage
drm/savage: dereferencing an error pointer
2017-01-19 20:17:58 +01:00
shmobile
sis
drm: Mark up legacy/dri1 drivers with DRM_LEGACY
2016-08-08 10:05:22 +02:00
sti
drm/sti: sti_vtg: Handle return NULL error from devm_ioremap_nocache
2017-11-21 09:23:23 +01:00
sun4i
drm/sun4i: Set device driver data at bind time for use in unbind
2019-05-16 19:43:43 +02:00
tdfx
drm: Mark up legacy/dri1 drivers with DRM_LEGACY
2016-08-08 10:05:22 +02:00
tegra
drm/tegra: dpaux: Fix error handling
2017-01-19 20:17:58 +01:00
tilcdc
drm/tilcdc: ensure nonatomic iowrite64 is not used
2018-03-24 11:00:24 +01:00
ttm
drm/ttm: never add BO that failed to validate to the LRU list
2018-03-22 09:17:45 +01:00
udl
udl-kms: fix crash due to uninitialized memory
2018-09-05 09:20:09 +02:00
vc4
drm/vc4: Fix compilation error reported by kbuild test bot
2019-05-02 09:32:02 +02:00
vgem
drm: Don't swallow error codes in drm_dev_alloc()
2016-09-22 04:03:48 -07:00
via
mm: replace get_user_pages() write/force parameters with gup_flags
2016-10-19 08:11:43 -07:00
virtio
drm/virtio: Add memory barriers for capset cache.
2019-08-04 09:33:37 +02:00
vmwgfx
drm/vmwgfx: NULL pointer dereference from vmw_cmd_dx_view_define()
2019-06-22 08:17:20 +02:00
ati_pcigart.c
drm_agpsupport.c
drm: Used DRM_LEGACY for all legacy functions
2016-08-08 10:05:23 +02:00
drm_atomic.c
drm/atomic: Handling the case when setting old crtc for plane
2018-08-03 07:55:23 +02:00
drm_atomic_helper.c
drm: reference count event->completion
2017-03-30 09:41:28 +02:00
drm_auth.c
drm: set is_master to 0 upon drm_new_set_master() failure
2018-12-08 13:05:06 +01:00
drm_blend.c
drm/doc: Polish plane composition property docs
2016-09-22 00:04:02 -07:00
drm_bridge.c
drm: Extract drm_bridge.h
2016-09-19 15:04:15 +02:00
drm_bufs.c
drm/bufs: Fix Spectre v1 vulnerability
2019-02-12 19:44:50 +01:00
drm_cache.c
drm_color_mgmt.c
drm/doc: Document color space handling
2016-09-22 00:04:03 -07:00
drm_connector.c
drm: Don't race connector registration
2017-06-17 06:41:53 +02:00
drm_context.c
drm: Used DRM_LEGACY for all legacy functions
2016-08-08 10:05:23 +02:00
drm_crtc.c
drm: Extract drm_color_mgmt.[hc]
2016-09-22 00:04:02 -07:00
drm_crtc_helper.c
drm/kms-helpers: Extract drm_modeset_helper.[hc]
2016-08-16 16:10:19 +02:00
drm_crtc_helper_internal.h
drm/fb-helper: Fix sparse warnings
2016-09-19 16:45:15 +02:00
drm_crtc_internal.h
drm: Extract drm_color_mgmt.[hc]
2016-09-22 00:04:02 -07:00
drm_debugfs.c
gpu: use %pd
2016-08-07 23:38:48 -04:00
drm_dma.c
drm: Used DRM_LEGACY for all legacy functions
2016-08-08 10:05:23 +02:00
drm_dp_aux_dev.c
drm: Don't export dp-aux devnode functions
2016-08-16 18:49:26 +02:00
drm_dp_dual_mode_helper.c
drm/i915: Fix LSPCON TMDS output buffer enabling from low-power state
2018-04-29 11:31:56 +02:00
drm_dp_helper.c
drm/psr: Fix missed entry in PSR setup time table.
2018-06-06 16:44:38 +02:00
drm_dp_mst_topology.c
drm/dp/mst: Configure no_stop_bit correctly for remote i2c xfers
2019-04-05 22:29:15 +02:00
drm_drv.c
drm: drm_minor_register(): Clean up debugfs on failure
2017-11-15 15:53:12 +01:00
drm_edid.c
drm/edid: Add 6 bpc quirk for BOE panel.
2018-11-27 16:09:38 +01:00
drm_edid_load.c
drm_encoder.c
drm: Fix typo in encoder docs
2016-09-21 13:33:50 +02:00
drm_encoder_slave.c
drm_fb_cma_helper.c
drm_fb_helper.c
drm/fb-helper: Ignore the value of fb_var_screeninfo.pixclock
2019-01-23 08:10:57 +01:00
drm_flip_work.c
drm_fops.c
drm: Wake up next in drm_read() chain if we are forced to putback the event
2019-05-31 06:48:31 -07:00
drm_fourcc.c
drm: move drm_mode_legacy_fb_format to drm_fourcc.c
2016-08-29 15:37:28 +02:00
drm_framebuffer.c
drm: Extract drm_plane.[hc]
2016-09-22 00:01:56 -07:00
drm_gem.c
drm: Release driver tracking before making the object available again
2017-08-30 10:21:47 +02:00
drm_gem_cma_helper.c
drm_global.c
drm: modify drm_global_item_ref to avoid two times of writing ref->object
2016-09-14 15:10:29 -04:00
drm_hashtab.c
drm: fix signed integer overflow
2016-09-06 13:56:41 -04:00
drm_info.c
drm: Print device information again in debugfs
2016-10-17 16:20:53 +10:00
drm_internal.h
drm: drop obsolete drm_core.h
2016-09-19 13:57:38 +02:00
drm_ioc32.c
drm: drop obsolete drm_core.h
2016-09-19 13:57:38 +02:00
drm_ioctl.c
drm/ioctl: Fix Spectre v1 vulnerabilities
2018-12-29 13:40:16 +01:00
drm_irq.c
drm: Defer disabling the vblank IRQ until the next interrupt (for instant-off)
2018-03-22 09:17:39 +01:00
drm_kms_helper_common.c
drm: Don't export dp-aux devnode functions
2016-08-16 18:49:26 +02:00
drm_legacy.h
drm_lock.c
drm: Used DRM_LEGACY for all legacy functions
2016-08-08 10:05:23 +02:00
drm_memory.c
drm_mipi_dsi.c
drm/dsi: Implement DCS set/get display brightness
2016-08-24 13:34:00 +02:00
drm_mm.c
drm: Apply range restriction after color adjustment when allocation
2017-11-30 08:39:13 +00:00
drm_mode_object.c
drm: Move property validation to a helper, v2.
2016-09-12 10:32:49 -04:00
drm_modes.c
drm/modes: Prevent division by zero htotal
2019-02-15 08:07:38 +01:00
drm_modeset_helper.c
drm/kms-helpers: Extract drm_modeset_helper.[hc]
2016-08-16 16:10:19 +02:00
drm_modeset_lock.c
drm: Require __GFP_NOFAIL for the legacy drm_modeset_lock_all
2018-02-25 11:05:41 +01:00
drm_of.c
drm_panel.c
drm_pci.c
drm: Don't swallow error codes in drm_dev_alloc()
2016-09-22 04:03:48 -07:00
drm_plane.c
drm: Undo damage to page_flip_ioctl
2016-10-04 12:53:12 +10:00
drm_plane_helper.c
drm: Fix kerneldoc in drm_plane_helper.c
2016-08-16 18:50:04 +02:00
drm_platform.c
drm: Don't swallow error codes in drm_dev_alloc()
2016-09-22 04:03:48 -07:00
drm_prime.c
drm: Fix up kerneldoc for new drm_gem_dmabuf_export()
2016-10-10 11:19:42 +02:00
drm_probe_helper.c
drm: Allow determining if current task is output poll worker
2018-03-18 11:18:48 +01:00
drm_property.c
Revert "drm: Unify handling of blob and object properties"
2016-09-07 13:24:22 +03:00
drm_rect.c
drm: Warn about negative sizes when calculating scale factor
2016-08-08 14:17:56 -04:00
drm_scatter.c
drm: Used DRM_LEGACY for all legacy functions
2016-08-08 10:05:23 +02:00
drm_simple_kms_helper.c
drm: simple_kms_helper: Add prepare_fb and cleanup_fb hooks
2016-10-05 15:18:02 +02:00
drm_sysfs.c
drm: drop obsolete drm_core.h
2016-09-19 13:57:38 +02:00
drm_trace.h
drm_trace_points.c
drm_vm.c
drm_vma_manager.c
drm: use drm_file to tag vm-bos
2016-09-19 11:22:08 +02:00
Kconfig
Revert "drm: make DRI1 drivers depend on BROKEN"
2016-09-01 06:16:12 +10:00
Makefile
drm: Extract drm_color_mgmt.[hc]
2016-09-22 00:04:02 -07:00