aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-07-01drm/nva3/clk: minor improvements to fractional N calculationBen Skeggs1-3/+11
Helps us to get identical numbers to the binary driver for (at least) Kepler memory PLLs, and fixes a rounding error. Signed-off-by: Ben Skeggs <[email protected]>
2013-07-01drm/nouveau/fb: initialise vram controller as pfb sub-objectBen Skeggs45-733/+1313
Signed-off-by: Ben Skeggs <[email protected]>
2013-07-01drm/nouveau/clk: change init ordering, no longer needed by devinitBen Skeggs1-2/+2
And, will depend on FB/VOLT/DAEMON being ready when it gets initialised so that it can set/restore clocks. Signed-off-by: Ben Skeggs <[email protected]>
2013-07-01drm/nouveau/devinit: move simple pll setting routines to devinitBen Skeggs24-487/+628
These are pretty much useless for reclocking purposes. Lets make it clearer what they're for and move them to DEVINIT to signify they're for the very simple PLL setting requirements of running the init tables. Signed-off-by: Ben Skeggs <[email protected]>
2013-07-01drm/nouveau: pass generic subdev to calculation routinesBen Skeggs7-18/+17
Signed-off-by: Ben Skeggs <[email protected]>
2013-07-01drm/nve0/ce: stub interrupt handlerBen Skeggs2-0/+17
Signed-off-by: Ben Skeggs <[email protected]>
2013-07-01drm/nve0/ce: link ce2 to its engine, rather than from graphicsBen Skeggs2-2/+2
Signed-off-by: Ben Skeggs <[email protected]>
2013-07-01drm/nve0/fifo: copy engine context stored in ramfc, not externallyBen Skeggs1-8/+14
Signed-off-by: Ben Skeggs <[email protected]>
2013-07-01drm/nve0/ce: create engine object for ce2Ben Skeggs4-0/+36
Signed-off-by: Ben Skeggs <[email protected]>
2013-07-01drm/nouveau: pull in latest ucode builds from external treeBen Skeggs5-48/+51
Signed-off-by: Ben Skeggs <[email protected]>
2013-07-01Merge branch 'exynos-drm-next' of ↵Dave Airlie32-838/+450
git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos into drm-next Feature summary: Add S3C64XX SoC series support - S3C64XX SoC series are previous version chips of Exynos SoC series. With this patch set, KMS driver of Exynos drm supports those chips also. Update device tree support - This patch set corrects compatible strings, and adds Exynos5420 SoC support for hdmi subsystem. Consider CCF (Common Clock Framework) support - With reference to CCF support, it uses clock_prepare_enable/clock_disable_unprepare instead of clk_enable/clk_disable for hdmi subsystem. Big cleanups - This patch just removes unnecessary all debug logs. * 'exynos-drm-next' of git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos: (22 commits) ARM: dts: change compatible strings for EXYNOS5250 hdmi subsystem drm/exynos: add support for exynos5420 mixer drm/exynos: add new compatible strings for hdmi subsystem drm/exynos: fix interlace resolutions for exynos5420 drm/exynos: use of_get_named_gpio to get hdmi hpd gpio drm/exynos: make sure to handle an error case to vm_mmap call drm/exynos: exynos_drm_ipp: Remove redundant break statement drm/exynos: add mout_hdmi clock in hdmi driver to change parent drm/exynos: Prepare/Unprepare HDMI subsystem clocks drm/exynos: Clean up logs for DRM_ERROR / DRM_DEBUG_KMS drm/exynos: Remove tracking log functions drm/exynos: hdmi: use drm_display_mode to check the supported modes drm/exynos: fimd: Add support for S3C64xx SoCs drm/exynos: fimd: Add support for FIMD variants with clock selection drm/exynos: fimd: Add support for FIMD versions without SHADOWCON register drm/exynos: fimd: Hold pointer to driver data in context struct drm/exynos: do not use mode_set_base function directly drm/exynos: Remove redundant use of of_match_ptr macro drm/exynos: remove ignoring return value warning in hdmi drm/exynos: fix WINDOWS_NR checking to vidi driver ...
2013-06-28ARM: dts: change compatible strings for EXYNOS5250 hdmi subsystemRahul Sharma3-6/+6
This patch renames the combatible strings for hdmi, mixer, ddc and hdmiphy. It follows the convention of using compatible string which represent the SoC in which the IP was added for the first time. Signed-off-by: Rahul Sharma <[email protected]> Acked-by: Kukjin Kim <[email protected]> Reviewed-by: Tomasz Figa <[email protected]> Signed-off-by: Inki Dae <[email protected]>
2013-06-28drm/exynos: add support for exynos5420 mixerRahul Sharma3-12/+45
Add support for exynos5420 mixer IP in the drm mixer driver. Signed-off-by: Rahul Sharma <[email protected]> Acked-by: Seung-Woo Kim <[email protected]> Reviewed-by: Tomasz Figa <[email protected]> Signed-off-by: Inki Dae <[email protected]>
2013-06-28drm/exynos: add new compatible strings for hdmi subsystemRahul Sharma8-13/+38
This patch adds new combatible strings for hdmi, mixer, ddc and hdmiphy. It follows the convention of using compatible string which represent the SoC in which the IP was added for the first time. Drivers continue to support the previous compatible strings but further addition of these compatible strings in device tree is deprecated. Signed-off-by: Rahul Sharma <[email protected]> Reviewed-by: Tomasz Figa <[email protected]> Signed-off-by: Inki Dae <[email protected]>
2013-06-28drm/exynos: fix interlace resolutions for exynos5420Rahul Sharma1-6/+8
Modified code for calculating hdmi IP register values from drm timing values. The modification is based on the inputs from hw team and specifically proposed for 1440x576i and 1440x480i. But same changes holds good for other interlaced resolutions also. Signed-off-by: Rahul Sharma <[email protected]> Acked-by: Seung-Woo Kim <[email protected]> Signed-off-by: Inki Dae <[email protected]>
2013-06-28drm/exynos: use of_get_named_gpio to get hdmi hpd gpioRahul Sharma1-2/+1
Cleanup by removing flags variable from drm_hdmi_dt_parse_pdata which is not used anywhere. Swtiching to of_get_named_gpio instead of of_get_named_gpio_flags solved this. Signed-off-by: Rahul Sharma <[email protected]> Acked-by: Seung-Woo Kim <[email protected]> Signed-off-by: Inki Dae <[email protected]>
2013-06-28drm/exynos: make sure to handle an error case to vm_mmap callInki Dae1-3/+3
vm_mmap function returns unsigned long so addr type should be unsigned long. a pointer or address variable is required to use unsigned long or uint64_t type for 64bits address support. So this patch makes sure that addr has unsigned long type and also exynos_drm_gem_mmap_ioctl returns correct error type. Signed-off-by: Inki Dae <[email protected]> Signed-off-by: Kyungmin Park <[email protected]>
2013-06-28drm/exynos: exynos_drm_ipp: Remove redundant break statementSachin Kamat1-1/+0
'break' after goto statement is redundant. Silences the following message: drivers/gpu/drm/exynos/exynos_drm_ipp.c:1067 exynos_drm_ipp_check_valid() info: ignoring unreachable code. Signed-off-by: Sachin Kamat <[email protected]> Signed-off-by: Inki Dae <[email protected]>
2013-06-28drm/exynos: add mout_hdmi clock in hdmi driver to change parentRahul Sharma1-4/+10
HDMI driver needs to configure the mout_hdmi mux clock to change the parent between sclk_hdmiphy and sclk_pixel. Signed-off-by: Rahul Sharma <[email protected]> Signed-off-by: Inki Dae <[email protected]>
2013-06-28drm/exynos: Prepare/Unprepare HDMI subsystem clocksSean Paul2-18/+18
Change the clk_enable/clk_disable calls in mixer and hdmi drivers into clk_prepare_enable/clk_disable_unprepare, respectively. Signed-off-by: Sean Paul <[email protected]> Signed-off-by: Rahul Sharma <[email protected]> Signed-off-by: Inki Dae <[email protected]>
2013-06-28drm/exynos: Clean up logs for DRM_ERROR / DRM_DEBUG_KMSYoungJun Cho6-224/+187
This patch cleans up logs for DRM_ERROR / DRM_DEBUG_KMS to avoid logging duplicated function name because the macros already contain __func__. Signed-off-by: YoungJun Cho <[email protected]> Signed-off-by: Seung-Woo Kim <[email protected]> Signed-off-by: Inki Dae <[email protected]>
2013-06-28drm/exynos: Remove tracking log functionsYoungJun Cho20-437/+4
This patch removes tracking log functions which were used to debug in the early development stage and are not so important as were. So remove them for code clean up. Signed-off-by: YoungJun Cho <[email protected]> Signed-off-by: Seung-Woo Kim <[email protected]> Signed-off-by: Inki Dae <[email protected]>
2013-06-28drm/exynos: hdmi: use drm_display_mode to check the supported modesRahul Sharma8-76/+41
This patch renames check_timing to check_mode and removes the unnecessary conversion of drm_display_mode to/from fb_videomode in the hdmi driver. v4: 1) Changed the commit message to add information related to renaming the callbacks to check_mode. 2) Changed debug message to print 1/0 for interlace mode. v3: 1) Replaced check_timing callbacks with check_mode. 2) Change the type of second parameter of check_mode callback from void pointer paramenter to struct drm_display_mode pointer. v2: 1) Removed convert_to_video_timing(). 2) Corrected DRM_DEBUG_KMS to print the resolution properly. Signed-off-by: Rahul Sharma <[email protected]> Signed-off-by: Inki Dae <[email protected]>
2013-06-28drm/exynos: fimd: Add support for S3C64xx SoCsTomasz Figa1-0/+10
The FIMD block present on S3C6400/S3C6410 SoCs is compatible with this driver, so it can be supported by it as well. This patch adds appropriate device IDs and driver data to enable this driver for S3C64xx SoCs. Signed-off-by: Tomasz Figa <[email protected]> Acked-by: Joonyoung Shim <[email protected]> Signed-off-by: Inki Dae <[email protected]>
2013-06-28drm/exynos: fimd: Add support for FIMD variants with clock selectionTomasz Figa1-0/+6
Some platforms that can be supported this driver has additional clock source selection bits in VIDCON0 register that allows to select which clock should be used to drive the pixel clock: bus clock or special clock. Since this driver assumes that special clock always drives the pixel clock, this patch sets the selection bitfield to use the special clock. Signed-off-by: Tomasz Figa <[email protected]> Acked-by: Joonyoung Shim <[email protected]> Signed-off-by: Inki Dae <[email protected]>
2013-06-28drm/exynos: fimd: Add support for FIMD versions without SHADOWCON registerTomasz Figa1-20/+49
Some platforms that can be supported with this driver have PRTCON register instead of SHADOWCON, which requires slightly different handling. This patch factors out all register shadow control code from the driver and adds a function to control register shadowing appropriately, depending on driver data. Signed-off-by: Tomasz Figa <[email protected]> Acked-by: Joonyoung Shim <[email protected]> Signed-off-by: Inki Dae <[email protected]>
2013-06-28drm/exynos: fimd: Hold pointer to driver data in context structTomasz Figa1-2/+3
This patch adds pointer to driver data to fimd_context structure, to remove the need to call drm_fimd_get_driver_data() each time access to driver data is necessary. Signed-off-by: Tomasz Figa <[email protected]> Acked-by: Joonyoung Shim <[email protected]> Signed-off-by: Inki Dae <[email protected]>
2013-06-28drm/exynos: do not use mode_set_base function directlyInki Dae1-2/+8
This patch adds exynos_drm_crtc_mode_set_commit function to update mode data and it makes page flip call this function instead of calling exynos_drm_crtc_mode_set_base function directly. exynos_drm_crtc_mode_set_base function is called by drm subsystem as a callback so we don't have to call this function directly. Signed-off-by: Inki Dae <[email protected]> Signed-off-by: Kyungmin Park <[email protected]>
2013-06-28drm/exynos: Remove redundant use of of_match_ptr macroSachin Kamat1-2/+1
'mixer_match_types' is always compiled in. Hence of_match_ptr is not necessary. Signed-off-by: Sachin Kamat <[email protected]> Signed-off-by: Inki Dae <[email protected]>
2013-06-28drm/exynos: remove ignoring return value warning in hdmiSeung-Woo Kim1-1/+3
The definition of regulator_bulk_enable is fixed with __must_check and this causes following build warning. warning: ignoring return value of 'regulator_bulk_enable', declared with attribute warn_unused_result This patch fixes to check return value of the function. Signed-off-by: Seung-Woo Kim <[email protected]> Signed-off-by: Inki Dae <[email protected]>
2013-06-28drm/exynos: fix WINDOWS_NR checking to vidi driverInki Dae1-3/+3
This patch just checks if win_data array range is valid or not correctly. Signed-off-by: Inki Dae <[email protected]> Signed-off-by: Kyungmin Park <[email protected]>
2013-06-28drm/exynos: fix tests for valid FIMD window numberKrzysztof Kozlowski1-3/+3
Valid values for FIMD windows are from 0 to WINDOWS_NR-1 inclusive (5 windows in total). The WINDOWS_NR is also a size of fimd_context.win_data array. However, early-return tests for wrong values of windows accepted a value of WINDOWS_NR which is out of bound for fimd_context.win_data. Signed-off-by: Krzysztof Kozlowski <[email protected]> Signed-off-by: Inki Dae <[email protected]>
2013-06-28drm/exynos: fix checks for valid mixer windowKrzysztof Kozlowski2-3/+3
Valid values for mixer window are from 0 to MIXER_WIN_NR-1 inclusive. Arrays in structures (e.g. mixer_context.win_data) have size of MIXER_WIN_NR so checks for wrong mixer window must be greater-equal. Signed-off-by: Krzysztof Kozlowski <[email protected]> Signed-off-by: Hyunhee Kim <[email protected]> Signed-off-by: Seung-Woo Kim <[email protected]> Signed-off-by: Inki Dae <[email protected]>
2013-06-28Revert "drm: kms_helper: don't lose hotplug event"Dave Airlie2-32/+1
This reverts commit 160954b7bca43da7cd3cfbce310e6df919a8216e. This was rearming the workqueue with a 0 timeout, causing a WARN_ON, and possible loop. Daniel writes: "I've looked a bit into this and I think we need to have a separate work struct for recovering these lost hotplug events since the continuous self-rearming case is a real risk (e.g. if a connector flip-flops all the time). At least I don't see a sane way to block out re-arming with the current code in a simple way. So reverting the offender seems like the right thing and I'll go back to the drawing board for 3.12." Signed-off-by: Dave Airlie <[email protected]>
2013-06-28drm/doc: Document the KMS property APILaurent Pinchart1-0/+143
Signed-off-by: Laurent Pinchart <[email protected]> Reviewed-by: Alex Deucher <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-06-28drm/doc: Remove outdated note about i915 driver not behaving properlyLaurent Pinchart1-4/+0
The i915 driver has been fixed not to modify the mode argument of the encoder mode_fixup operation. Remove the related comment from the documentation. Signed-off-by: Laurent Pinchart <[email protected]> Reviewed-by: Alex Deucher <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-06-28drm: Improve manual IRQ installation documentationLaurent Pinchart1-48/+70
Define the rules for using irqs from drm drivers. Signed-off-by: Laurent Pinchart <[email protected]> Reviewed-by: Daniel Vetter <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-06-28drm/prime: add return check for dma_buf_fdYoungJun Cho1-11/+28
The dma_buf_fd() can return error when it fails to prepare fd, so the dma_buf needs to be put. Signed-off-by: YoungJun Cho <[email protected]> Signed-off-by: Seung-Woo Kim <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-06-28drm/prime: reorder drm_prime_add_buf_handle and remove prototypeSeung-Woo Kim1-16/+14
Signed-off-by: Seung-Woo Kim <[email protected]> Signed-off-by: YoungJun Cho <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-06-28drm/prime: fix to put an exported dma_buf for adding handle failureYoungJun Cho1-1/+7
When drm_prime_add_buf_handle() returns failure for an exported dma_buf, the dma_buf was already allocated and its refcount was increased, so it needs to be put. Signed-off-by: YoungJun Cho <[email protected]> Signed-off-by: Seung-Woo Kim <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-06-28drm/prime: support to cache mappingJoonyoung Shim1-3/+49
The drm prime also can support it like GEM CMA supports to cache mapping. It doesn't allow multiple mappings for one attachment. [airlied: rebased on top of other prime changes] Signed-off-by: Joonyoung Shim <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-06-28drm/prime: replace NULL with error value in drm_prime_pages_to_sgYoungJun Cho1-3/+5
Instead of NULL, error value is casted with ERR_PTR() for drm_prime_pages_to_sg() and IS_ERR_OR_NULL() macro is replaced with IS_ERR() macro for drm_gem_map_dma_buf(). Signed-off-by: YoungJun Cho <[email protected]> Signed-off-by: Seung-Woo Kim <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-06-28drm/prime: fix to check return of dma_map_sg in prime helperYoungJun Cho1-2/+7
The dma_map_sg(), in map_dma_buf callback operation of prime helper, can return 0 when it fails to map, so it needs to release related resources. Signed-off-by: YoungJun Cho <[email protected]> Signed-off-by: Seung-Woo Kim <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-06-28drm/gem: fix not to assign error value to gem nameYoungJun Cho1-11/+7
If idr_alloc() is failed, obj->name can be error value. Also it cleans up duplicated flink processing code. This regression has been introduced in commit 2e928815c1886fe628ed54623aa98d0889cf5509 Author: Tejun Heo <[email protected]> Date: Wed Feb 27 17:04:08 2013 -0800 drm: convert to idr_alloc() Signed-off-by: YoungJun Cho <[email protected]> Signed-off-by: Seung-Woo Kim <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Cc: [email protected] Reviewed-by: Chris Wilson <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-06-28drm/gem: add mutex lock when using drm_gem_mmap_objYoungJun Cho3-0/+10
The drm_gem_mmap_obj() has to be protected with dev->struct_mutex, but some caller functions do not. So it adds mutex lock to missing callers and adds assertion to check whether drm_gem_mmap_obj() is called with mutex lock or not. Signed-off-by: YoungJun Cho <[email protected]> Signed-off-by: Seung-Woo Kim <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Reviewed-by: Maarten Lankhorst <[email protected]> Reviewed-by: Laurent Pinchart <[email protected]> Reviewed-by: Rob Clark <[email protected]> Reviewed-by: Maarten Lankhorst <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-06-28drm/omap: drop the !FB_OMAP2 depDave Airlie1-1/+1
This ends up causing circularity and really let people shoot themselves in the foot. Acked-by: Rob Clark <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-06-28drm/ttm: get rid of ttm_bo_is_reservedMaarten Lankhorst1-14/+0
Signed-off-by: Maarten Lankhorst <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-06-28drm/vmwgfx: get rid of ttm_bo_is_reserved usageMaarten Lankhorst2-3/+3
Use lockdep_assert_held instead. Signed-off-by: Maarten Lankhorst <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-06-28drm/radeon: get rid of ttm_bo_is_reserved usageMaarten Lankhorst3-45/+43
Try to use lockdep_assert_held or other alternatives where possible. Signed-off-by: Maarten Lankhorst <[email protected]> Reviewed-by: Jerome Glisse <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-06-28drm/ttm: get rid of ttm_bo_is_reserved usageMaarten Lankhorst1-4/+4
Use lockdep_assert_held instead. Signed-off-by: Maarten Lankhorst <[email protected]> Signed-off-by: Dave Airlie <[email protected]>