From: Lucas Stach <l.stach-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
To: David Airlie <airlied-cv59FeDIM0c@public.gmane.org>,
Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
Shawn Guo <shawnguo-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
Cc: Russell King <rmk+kernel-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org>,
Christian Gmeiner
<christian.gmeiner-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org,
devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
kernel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org,
patchwork-lst-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org
Subject: [PATCH 00/12] etnaviv DRM driver
Date: Fri, 4 Dec 2015 14:59:52 +0100 [thread overview]
Message-ID: <1449237604-19064-1-git-send-email-l.stach@pengutronix.de> (raw)
Hi all,
this is the latest round of etnaviv DRM driver patches. Since RFCv2
we made some substantial changes and improvements. I'm confident
that the driver is in a state where it can go in now, so I removed
the RFC tag.
Most notable issues fixed:
- better input validation for all the ioctls in place
- basic command stream parsing and rejection of sensitive state loads
has been implemented by Russell
- cross GPU synchronization fixed by Russell, so the GPUs cores don't
trip over their feet when using 2D GPU for X.Xorg accel, while
doing OpenGL rendering on the 3D core
- removed usage of deprecated DRM features, like driver load and
unload callbacks, DRM_UNLOCKED
- reworked locking design to drop DRM struct_mutex usage in driver,
switch to more fine grained locking, allowing for a lot more
concurrency
- moved driver out of initial staging directory into proper
DRM directory
As the original patchstack is now over 190 patches, some of which
totally rework some aspects of the driver, we've opted to not submit
it this way. Instead all the driver patches are squashed and reorganized
to add individual, logical groups of files. This should make review a
lot easier. As the driver is a collaborative effort of Christian Gmeiner,
Russell King and myself all of those patches have a fictive author, but
our signoff. Only the last commit of those wires the driver up in Kconfig
and Makefiles, so there should be no intermediate breakage.
First 2 patches need an Ack from the DT maintainers. The last patch adds
the necessary DT integration for i.MX6 and should either get an Ack from
Shawn to merge along with the DRM changes, or he could pick it up as an
individual patch, whatever suits better.
After everyone is happy with the driver and if that's preferred I can
also provide a proper pull request.
Happy reviewing!
Lucas
Lucas Stach (3):
drm/etnaviv: add devicetree bindings
MAINTAINERS: add Lucas Stach as maintainer for the etnaviv DRM driver
ARM: dts: imx6: add Vivante GPU nodes
Philipp Zabel (1):
devicetree: add vendor prefix for Vivante Corporation
The etnaviv authors (8):
drm/etnaviv: add etnaviv UAPI header
drm/etnaviv: add generated hardware description headers
drm/etnaviv: add GPU core driver
drm/etnaviv: add GEM core functionality
drm/etnaviv: add GEM submit and cmdstream validation bits
drm/etnaviv: add GPU MMU handling functionality
drm/etnaviv: add GPU core dump functionality
drm/etnaviv: add master driver and hook up in Kconfig and Makefile
.../bindings/display/etnaviv/etnaviv-drm.txt | 46 +
.../devicetree/bindings/vendor-prefixes.txt | 1 +
MAINTAINERS | 7 +
arch/arm/boot/dts/imx6dl.dtsi | 5 +
arch/arm/boot/dts/imx6q.dtsi | 15 +
arch/arm/boot/dts/imx6qdl.dtsi | 22 +
drivers/gpu/drm/Kconfig | 2 +
drivers/gpu/drm/Makefile | 1 +
drivers/gpu/drm/etnaviv/Kconfig | 20 +
drivers/gpu/drm/etnaviv/Makefile | 14 +
drivers/gpu/drm/etnaviv/cmdstream.xml.h | 218 +++
drivers/gpu/drm/etnaviv/common.xml.h | 249 +++
drivers/gpu/drm/etnaviv/etnaviv_buffer.c | 268 ++++
drivers/gpu/drm/etnaviv/etnaviv_cmd_parser.c | 209 +++
drivers/gpu/drm/etnaviv/etnaviv_drv.c | 707 +++++++++
drivers/gpu/drm/etnaviv/etnaviv_drv.h | 161 ++
drivers/gpu/drm/etnaviv/etnaviv_dump.c | 227 +++
drivers/gpu/drm/etnaviv/etnaviv_dump.h | 54 +
drivers/gpu/drm/etnaviv/etnaviv_gem.c | 897 +++++++++++
drivers/gpu/drm/etnaviv/etnaviv_gem.h | 117 ++
drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c | 122 ++
drivers/gpu/drm/etnaviv/etnaviv_gem_submit.c | 438 ++++++
drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 1644 ++++++++++++++++++++
drivers/gpu/drm/etnaviv/etnaviv_gpu.h | 209 +++
drivers/gpu/drm/etnaviv/etnaviv_iommu.c | 240 +++
drivers/gpu/drm/etnaviv/etnaviv_iommu.h | 28 +
drivers/gpu/drm/etnaviv/etnaviv_iommu_v2.c | 33 +
drivers/gpu/drm/etnaviv/etnaviv_iommu_v2.h | 25 +
drivers/gpu/drm/etnaviv/etnaviv_mmu.c | 299 ++++
drivers/gpu/drm/etnaviv/etnaviv_mmu.h | 71 +
drivers/gpu/drm/etnaviv/state.xml.h | 351 +++++
drivers/gpu/drm/etnaviv/state_hi.xml.h | 407 +++++
include/uapi/drm/etnaviv_drm.h | 221 +++
33 files changed, 7328 insertions(+)
create mode 100644 Documentation/devicetree/bindings/display/etnaviv/etnaviv-drm.txt
create mode 100644 drivers/gpu/drm/etnaviv/Kconfig
create mode 100644 drivers/gpu/drm/etnaviv/Makefile
create mode 100644 drivers/gpu/drm/etnaviv/cmdstream.xml.h
create mode 100644 drivers/gpu/drm/etnaviv/common.xml.h
create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_buffer.c
create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_cmd_parser.c
create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_drv.c
create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_drv.h
create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_dump.c
create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_dump.h
create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_gem.c
create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_gem.h
create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c
create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_gem_submit.c
create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_gpu.c
create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_gpu.h
create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_iommu.c
create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_iommu.h
create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_iommu_v2.c
create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_iommu_v2.h
create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_mmu.c
create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_mmu.h
create mode 100644 drivers/gpu/drm/etnaviv/state.xml.h
create mode 100644 drivers/gpu/drm/etnaviv/state_hi.xml.h
create mode 100644 include/uapi/drm/etnaviv_drm.h
--
2.6.2
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next reply other threads:[~2015-12-04 13:59 UTC|newest]
Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-04 13:59 Lucas Stach [this message]
2015-12-04 13:59 ` [PATCH 03/12] drm/etnaviv: add etnaviv UAPI header Lucas Stach
[not found] ` <1449237604-19064-4-git-send-email-l.stach-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2015-12-04 14:24 ` Emil Velikov
2015-12-04 13:59 ` [PATCH 04/12] drm/etnaviv: add generated hardware description headers Lucas Stach
2015-12-04 13:59 ` [PATCH 05/12] drm/etnaviv: add GPU core driver Lucas Stach
2015-12-04 14:00 ` [PATCH 08/12] drm/etnaviv: add GPU MMU handling functionality Lucas Stach
[not found] ` <1449237604-19064-9-git-send-email-l.stach-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2015-12-04 14:59 ` Emil Velikov
[not found] ` <CACvgo50UW734S12xH=oszkNhgf53x5gbdeUxCdLZ0kGq1G=2Pg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-12-04 15:08 ` Lucas Stach
[not found] ` <1449237604-19064-1-git-send-email-l.stach-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2015-12-04 13:59 ` [PATCH 01/12] devicetree: add vendor prefix for Vivante Corporation Lucas Stach
[not found] ` <1449237604-19064-2-git-send-email-l.stach-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2015-12-04 16:23 ` Rob Herring
2015-12-04 13:59 ` [PATCH 02/12] drm/etnaviv: add devicetree bindings Lucas Stach
2015-12-04 16:29 ` Rob Herring
2015-12-04 16:41 ` Lucas Stach
2015-12-04 17:05 ` Russell King - ARM Linux
2015-12-04 17:33 ` Rob Herring
[not found] ` <CAL_JsqLcwk=h10zNvt1o=EKJZ58QvMyWnsTCNfkht-055X8Taw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-12-04 17:54 ` Russell King - ARM Linux
2015-12-04 17:56 ` Lucas Stach
[not found] ` <1449251760.8275.116.camel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2015-12-04 18:02 ` Jon Nettleton
2015-12-04 20:19 ` Rob Herring
2015-12-04 20:31 ` Russell King - ARM Linux
[not found] ` <20151204203101.GD8644-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2015-12-04 20:42 ` Ilia Mirkin
[not found] ` <CAKb7UviPhoiY-YP2aBHm0BHbeEjSF2wTguQScVXMBve-kZc16Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-12-04 22:05 ` Russell King - ARM Linux
2015-12-04 22:43 ` Ilia Mirkin
2015-12-05 10:12 ` Daniel Vetter
2015-12-05 11:02 ` Russell King - ARM Linux
2015-12-05 15:35 ` Daniel Vetter
2015-12-05 16:05 ` Russell King - ARM Linux
2015-12-07 8:41 ` Michel Dänzer
2015-12-08 9:12 ` Michel Dänzer
2015-12-08 13:15 ` Rob Herring
2015-12-04 20:43 ` Daniel Vetter
2015-12-05 11:26 ` Lucas Stach
[not found] ` <1449314779.2702.17.camel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2015-12-05 11:42 ` Russell King - ARM Linux
2015-12-05 23:22 ` Rob Herring
2015-12-05 12:17 ` Russell King - ARM Linux
2015-12-04 16:56 ` Russell King - ARM Linux
2015-12-04 13:59 ` [PATCH 06/12] drm/etnaviv: add GEM core functionality Lucas Stach
2015-12-04 13:59 ` [PATCH 07/12] drm/etnaviv: add GEM submit and cmdstream validation bits Lucas Stach
2015-12-04 14:00 ` [PATCH 09/12] drm/etnaviv: add GPU core dump functionality Lucas Stach
2015-12-04 14:00 ` [PATCH 11/12] MAINTAINERS: add Lucas Stach as maintainer for the etnaviv DRM driver Lucas Stach
2015-12-04 17:07 ` Russell King - ARM Linux
2015-12-04 17:08 ` Ilia Mirkin
[not found] ` <CAKb7Uvjh7B5ExWwRQNMhqDwTwPUsFKv4-jAszVp06qq2rGQFhg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-12-04 17:13 ` Russell King - ARM Linux
2015-12-04 17:17 ` Christian Gmeiner
[not found] ` <20151204171353.GA8644-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2015-12-04 17:18 ` Lucas Stach
[not found] ` <20151204170709.GY8644-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2015-12-04 17:26 ` Marc Kleine-Budde
2015-12-04 17:37 ` Russell King - ARM Linux
2015-12-05 15:17 ` Christian Gmeiner
2015-12-04 14:00 ` [PATCH 12/12] ARM: dts: imx6: add Vivante GPU nodes Lucas Stach
[not found] ` <1449237604-19064-13-git-send-email-l.stach-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2015-12-07 12:18 ` Russell King - ARM Linux
2015-12-07 12:18 ` Russell King - ARM Linux
2015-12-11 7:02 ` Shawn Guo
2015-12-14 9:52 ` Lucas Stach
[not found] ` <1450086745.3163.3.camel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2015-12-15 8:25 ` Shawn Guo
2015-12-15 10:18 ` Lucas Stach
2015-12-04 19:05 ` [PATCH 13/12] ARM: dts: dove: add DT GPU support Russell King
2015-12-04 19:05 ` Russell King
2015-12-04 19:48 ` [PATCH v2 " Russell King
2015-12-04 19:48 ` Russell King
[not found] ` <E1a4wLa-0004Vi-2t-eh5Bv4kxaXIANfyc6IWni62ZND6+EDdj@public.gmane.org>
2015-12-04 20:49 ` Andrew Lunn
2015-12-04 20:49 ` Andrew Lunn
[not found] ` <20151204204918.GB809-g2DYL2Zd6BY@public.gmane.org>
2015-12-04 22:07 ` Russell King - ARM Linux
2015-12-04 22:07 ` Russell King - ARM Linux
2015-12-04 19:48 ` [PATCH v2 14/12] ARM: dts: enable GPU for SolidRun's Cubox Russell King
2015-12-04 19:48 ` Russell King
2015-12-04 14:00 ` [PATCH 10/12] drm/etnaviv: add master driver and hook up in Kconfig and Makefile Lucas Stach
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1449237604-19064-1-git-send-email-l.stach@pengutronix.de \
--to=l.stach-bicnvbalz9megne8c9+irq@public.gmane.org \
--cc=airlied-cv59FeDIM0c@public.gmane.org \
--cc=christian.gmeiner-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
--cc=kernel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org \
--cc=patchwork-lst-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org \
--cc=rmk+kernel-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org \
--cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=shawnguo-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.