Thierry Reding
dc618db75d
drm/tegra: Fix return value
...
Return NULL instead of 0 in host1x_bo_lookup().
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2013-06-22 12:43:51 +02:00
Wei Yongjun
2639f2bf68
drm/tegra: fix error return code in gr2d_submit()
...
Fix to return -ENOENT in the host1x_bo lookup error handling
case instead of 0, as done elsewhere in this function.
Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn >
Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de >
2013-05-25 12:32:51 +02:00
Wei Yongjun
b6f2056f3b
drm/tegra: fix missing unlock on error
...
Add the missing unlock before return from function host1x_drm_init() and
host1x_drm_exit() in the error handling case.
Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn >
Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de >
2013-05-25 12:32:50 +02:00
Thierry Reding
ed683aead1
drm/tegra: Honor pixel-format changes
...
When using a base mode-set, honor changes in pixel-format since the core
doesn't explicitly check for them as long as they use the same depth.
Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de >
2013-05-25 12:32:50 +02:00
Thierry Reding
603f0cc948
drm/tegra: Explicitly set irq_enabled
...
Since the Tegra DRM driver doesn't use the drm_irq_install() helper, the
irq_enabled flag needs to be set manually in order to make functionality
such as the DRM_IOCTL_WAIT_VBLANK work properly.
Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de >
2013-05-25 12:32:49 +02:00
Thierry Reding
2678aeba5f
drm/tegra: Don't disable unused planes
...
When a plane isn't in use it isn't attached to a CRTC and therefore the
DC registers aren't available for programming.
Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de >
2013-05-25 12:32:48 +02:00
Wolfram Sang
849d34571f
drivers/gpu/host1x/drm: don't check resource with devm_ioremap_resource
...
devm_ioremap_resource does sanity checks on the given resource. No need to
duplicate this in the driver.
Signed-off-by: Wolfram Sang <wsa@the-dreams.de >
2013-05-18 11:55:30 +02:00
Stephen Warren
e1041ca416
drm/tegra: don't depend on OF
...
ARCH_TEGRA always enabled OF, so there's no need for any driver to
depend on it.
Signed-off-by: Stephen Warren <swarren@nvidia.com >
Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de >
2013-04-22 12:40:56 +02:00
Thierry Reding
dbe4d9a799
drm/tegra: Support the XBGR8888 pixelformat
...
While at it, also include the RGB565 pixelformat in the list of formats
supported by overlays.
Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de >
Tested-by: Erik Faye-Lund <kusmabite@gmail.com >
2013-04-22 12:40:05 +02:00
Terje Bergstrom
d43f81cbaf
drm/tegra: Add gr2d device
...
Add client driver for 2D device, and IOCTLs to pass work to host1x
channel for 2D.
Also adds functions that can be called to access sync points from
DRM.
Signed-off-by: Arto Merilainen <amerilainen@nvidia.com >
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com >
Reviewed-by: Thierry Reding <thierry.reding@avionic-design.de >
Tested-by: Thierry Reding <thierry.reding@avionic-design.de >
Tested-by: Erik Faye-Lund <kusmabite@gmail.com >
Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de >
2013-04-22 12:40:04 +02:00
Arto Merilainen
de2ba664c3
gpu: host1x: drm: Add memory manager and fb
...
This patch introduces a memory manager for tegra drm and moves
existing parts to use it. As cma framebuffer helpers can no more
be used, this patch adds also a separate framebuffer driver for
tegra.
Signed-off-by: Arto Merilainen <amerilainen@nvidia.com >
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com >
Reviewed-by: Thierry Reding <thierry.reding@avionic-design.de >
Tested-by: Thierry Reding <thierry.reding@avionic-design.de >
Tested-by: Erik Faye-Lund <kusmabite@gmail.com >
Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de >
2013-04-22 12:40:04 +02:00
Terje Bergstrom
692e6d7be8
gpu: host1x: Remove second host1x driver
...
Remove second host1x driver, and bind tegra-drm to the new host1x
driver. The logic to parse device tree and track clients is moved
to drm.c.
Signed-off-by: Arto Merilainen <amerilainen@nvidia.com >
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com >
Reviewed-by: Thierry Reding <thierry.reding@avionic-design.de >
Tested-by: Thierry Reding <thierry.reding@avionic-design.de >
Tested-by: Erik Faye-Lund <kusmabite@gmail.com >
Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de >
2013-04-22 12:39:59 +02:00
Arto Merilainen
c89c0ea63f
gpu: host1x: drm: Rename host1x to host1x_drm
...
Both host1x and drm drivers have host1x structures. This patch
renames the host1x structure under drm to follow name host1x_drm.
Signed-off-by: Arto Merilainen <amerilainen@nvidia.com >
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com >
Reviewed-by: Thierry Reding <thierry.reding@avionic-design.de >
Tested-by: Thierry Reding <thierry.reding@avionic-design.de >
Tested-by: Erik Faye-Lund <kusmabite@gmail.com >
Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de >
2013-04-22 12:39:13 +02:00
Terje Bergstrom
4231c6b01a
drm/tegra: Move drm to live under host1x
...
Make drm part of host1x driver.
Signed-off-by: Arto Merilainen <amerilainen@nvidia.com >
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com >
Reviewed-by: Thierry Reding <thierry.reding@avionic-design.de >
Tested-by: Thierry Reding <thierry.reding@avionic-design.de >
Tested-by: Erik Faye-Lund <kusmabite@gmail.com >
Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de >
2013-04-22 12:39:11 +02:00
Terje Bergstrom
6236451d83
gpu: host1x: Add debug support
...
Add support for host1x debugging. Adds debugfs entries, and dumps
channel state to UART in case of stuck job.
Signed-off-by: Arto Merilainen <amerilainen@nvidia.com >
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com >
Reviewed-by: Thierry Reding <thierry.reding@avionic-design.de >
Tested-by: Thierry Reding <thierry.reding@avionic-design.de >
Tested-by: Erik Faye-Lund <kusmabite@gmail.com >
Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de >
2013-04-22 12:32:46 +02:00
Terje Bergstrom
6579324a41
gpu: host1x: Add channel support
...
Add support for host1x client modules, and host1x channels to submit
work to the clients.
Signed-off-by: Arto Merilainen <amerilainen@nvidia.com >
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com >
Reviewed-by: Thierry Reding <thierry.reding@avionic-design.de >
Tested-by: Thierry Reding <thierry.reding@avionic-design.de >
Tested-by: Erik Faye-Lund <kusmabite@gmail.com >
Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de >
2013-04-22 12:32:43 +02:00
Terje Bergstrom
7ede0b0bf3
gpu: host1x: Add syncpoint wait and interrupts
...
Add support for sync point interrupts, and sync point wait. Sync
point wait used interrupts for unblocking wait.
Signed-off-by: Arto Merilainen <amerilainen@nvidia.com >
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com >
Reviewed-by: Thierry Reding <thierry.reding@avionic-design.de >
Tested-by: Thierry Reding <thierry.reding@avionic-design.de >
Tested-by: Erik Faye-Lund <kusmabite@gmail.com >
Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de >
2013-04-22 12:32:42 +02:00
Terje Bergstrom
7547168743
gpu: host1x: Add host1x driver
...
Add host1x, the driver for host1x and its client unit 2D. The Tegra
host1x module is the DMA engine for register access to Tegra's
graphics- and multimedia-related modules. The modules served by
host1x are referred to as clients. host1x includes some other
functionality, such as synchronization.
Signed-off-by: Arto Merilainen <amerilainen@nvidia.com >
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com >
Reviewed-by: Thierry Reding <thierry.reding@avionic-design.de >
Tested-by: Thierry Reding <thierry.reding@avionic-design.de >
Tested-by: Erik Faye-Lund <kusmabite@gmail.com >
Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de >
2013-04-22 12:32:40 +02:00