Lucas Stach
45d16a6d94
drm/etnaviv: fix memory leak in IOMMU init path
...
Plug in error handling to free any allocated ressources in the
IOMMU init path.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
2016-01-26 18:53:59 +01:00
Russell King
602eb48966
drm/etnaviv: add further minor features and varyings count
...
Export further minor feature bitmasks and the varyings count from
the GPU specifications registers to userspace.
Acked-by: Christian Gmeiner <christian.gmeiner@gmail.com >
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk >
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
2016-01-26 18:53:58 +01:00
Russell King
472f79dcf2
drm/etnaviv: add helper for comparing model/revision IDs
...
Add and use a helper for comparing the model and revision IDs.
Acked-by: Christian Gmeiner <christian.gmeiner@gmail.com >
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk >
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
2016-01-26 18:53:58 +01:00
Russell King
52f36ba1d6
drm/etnaviv: add helper to extract bitfields
...
Add a helper to extract etnaviv bitfields from register values.
Acked-by: Christian Gmeiner <christian.gmeiner@gmail.com >
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk >
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
2016-01-26 18:53:57 +01:00
Russell King
507f899137
drm/etnaviv: use defined constants for the chip model
...
Use the defined constants in common.xml.h for the chip model rather
than coding these as hex numbers.
Acked-by: Christian Gmeiner <christian.gmeiner@gmail.com >
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk >
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
2016-01-26 18:53:56 +01:00
Russell King
e2a2e263e0
drm/etnaviv: update common and state_hi xml.h files
...
Update the common and state_hi xml.h header files from the etnaviv
repository.
Acked-by: Christian Gmeiner <christian.gmeiner@gmail.com >
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk >
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
2016-01-26 18:53:55 +01:00
Russell King
b98c66887e
drm/etnaviv: ignore VG GPUs with FE2.0
...
Ignore GPUs with a 2.0 front end. These have a different register
layout for the front end, which provokes imprecise aborts from the
register accesses in the 'gpu' debugfs file.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk >
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
2016-01-26 18:53:27 +01:00
Russell King
f6427760a2
drm/etnaviv: fix failure path if model is zero
...
Fix the failure path to call pm_runtime_mark_last_busy() when failing
due to the model field being zero.
Acked-by: Christian Gmeiner <christian.gmeiner@gmail.com >
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk >
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
2016-01-25 14:23:51 +01:00
Lucas Stach
339073ef77
drm/etnaviv: hold object lock while getting pages for coredump
...
While all objects that get coredumped have an active IOVA and thus
pages already populated, etnaviv_gem_get_pages() still requires the
object lock to be held.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
2016-01-25 14:23:49 +01:00
Fabio Estevam
23a9d5dcb6
drm/etnaviv: remove owner assignment from platform_driver
...
This platform_driver does not need to set an owner as it will be
populated by the driver core.
Generated by scripts/coccinelle/api/platform_no_drv_owner.cocci.
Signed-off-by: Fabio Estevam <festevam@gmail.com >
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
2016-01-25 14:23:46 +01:00
Lucas Stach
c33246d793
drm/etnaviv: fix workaround for GC500
...
The hardware description macros define the mask and shifts the wrong
way around for the intended use, leading to the condition never being
true and the chip revision ending up with the wrong value.
Reported-by: Dan Carpenter <dan.carpenter@oracle.com >
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Acked-by: Christian Gmeiner <christian.gmeiner@gmail.com >
2016-01-07 11:57:57 +01:00
Dan Carpenter
ed94add00e
drm/etnaviv: unlock on error in etnaviv_gem_get_iova()
...
We have to drop a lock before returning -ENOMEM here.
Fixes: a8c21a5451 ('drm/etnaviv: add initial etnaviv DRM driver')
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com >
Acked-by: Russell King <rmk+kernel@arm.linux.org.uk >
2016-01-06 12:13:45 +01:00
The etnaviv authors
a8c21a5451
drm/etnaviv: add initial etnaviv DRM driver
...
This adds the etnaviv DRM driver and hooks it up in Makefiles
and Kconfig.
Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com >
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk >
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch >
2015-12-15 14:48:02 +01:00