[PATCH RFCv2 0/4] Etnaviv DRM driver again
Lucas Stach
l.stach at pengutronix.de
Fri Sep 11 07:15:18 PDT 2015
Am Freitag, den 11.09.2015, 16:10 +0200 schrieb Lucas Stach:
> Hey all,
>
> this is a new posting of the Etnaviv DRM driver for Vivante embedded GPUs.
> This time I've squashed all patches to the DRM driver itself into a single commit
> to make it easier for people to look at and review this stuff.
>
Which seems to mean to that due to its size the most interesting patch
out of this series is now missing from the ML. I suppose it's held in
moderation, so if somebody could push it through I would be thankful.
Regards,
Lucas
> Aside from squashing of some of the trivial bugfixes I intend to keep all the
> individual commits around to retain the authorship of people working on this
> driver. If you want to look at the stream of commits please fetch
>
> git://git.pengutronix.de/git/lst/linux.git etnaviv-for-upstream
>
> I've kept things in staging for now, as that's the place where Christian started
> this driver, but would really like to move it to DRM proper _before_ merging. So
> please review stuff with that in mind.
>
> Since the last posting a lot of cleanups and bugfixes have landed, but also a major
> rewrite of the userspace interface. The UAPI is now considerably simpler as a lot
> of things that turned out to be not useful have been cut out. Also a pretty big
> security issue has been fixed where the userspace could abuse the still mapped
> command buffer to change the command stream after the kernel validated and patched
> it up, but before actual GPU execution.
>
> Thanks to Russell King GPU power management with proper state reinitialization is
> now in place, which allows the GPU to be completely power gated when not in use,
> but is also the foundation for GPU recovery after a hanging submit.
>
> A modified version of Russell Kings xf86-video-armada driver driver that works on
> top of the new UAPI is available at
>
> git://git.pengutronix.de/git/lst/xf86-video-armada.git for-rmk
>
> Regards,
> Lucas
>
> Christian Gmeiner (1):
> staging: etnaviv: add drm driver
>
> Lucas Stach (2):
> staging: etnaviv: add devicetree bindings
> ARM: imx6: add Vivante GPU nodes
>
> Philipp Zabel (1):
> of: Add vendor prefix for Vivante Corporation
>
> .../bindings/drm/etnaviv/etnaviv-drm.txt | 44 +
> .../devicetree/bindings/vendor-prefixes.txt | 1 +
> arch/arm/boot/dts/imx6dl.dtsi | 5 +
> arch/arm/boot/dts/imx6q.dtsi | 15 +
> arch/arm/boot/dts/imx6qdl.dtsi | 21 +
> drivers/staging/Kconfig | 2 +
> drivers/staging/Makefile | 1 +
> drivers/staging/etnaviv/Kconfig | 20 +
> drivers/staging/etnaviv/Makefile | 18 +
> drivers/staging/etnaviv/cmdstream.xml.h | 218 +++
> drivers/staging/etnaviv/common.xml.h | 249 ++++
> drivers/staging/etnaviv/etnaviv_buffer.c | 271 ++++
> drivers/staging/etnaviv/etnaviv_cmd_parser.c | 119 ++
> drivers/staging/etnaviv/etnaviv_drv.c | 705 ++++++++++
> drivers/staging/etnaviv/etnaviv_drv.h | 138 ++
> drivers/staging/etnaviv/etnaviv_gem.c | 887 ++++++++++++
> drivers/staging/etnaviv/etnaviv_gem.h | 141 ++
> drivers/staging/etnaviv/etnaviv_gem_prime.c | 121 ++
> drivers/staging/etnaviv/etnaviv_gem_submit.c | 421 ++++++
> drivers/staging/etnaviv/etnaviv_gpu.c | 1468 ++++++++++++++++++++
> drivers/staging/etnaviv/etnaviv_gpu.h | 198 +++
> drivers/staging/etnaviv/etnaviv_iommu.c | 221 +++
> drivers/staging/etnaviv/etnaviv_iommu.h | 28 +
> drivers/staging/etnaviv/etnaviv_iommu_v2.c | 33 +
> drivers/staging/etnaviv/etnaviv_iommu_v2.h | 25 +
> drivers/staging/etnaviv/etnaviv_mmu.c | 282 ++++
> drivers/staging/etnaviv/etnaviv_mmu.h | 58 +
> drivers/staging/etnaviv/state.xml.h | 351 +++++
> drivers/staging/etnaviv/state_hi.xml.h | 407 ++++++
> include/uapi/drm/etnaviv_drm.h | 215 +++
> 30 files changed, 6683 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/drm/etnaviv/etnaviv-drm.txt
> create mode 100644 drivers/staging/etnaviv/Kconfig
> create mode 100644 drivers/staging/etnaviv/Makefile
> create mode 100644 drivers/staging/etnaviv/cmdstream.xml.h
> create mode 100644 drivers/staging/etnaviv/common.xml.h
> create mode 100644 drivers/staging/etnaviv/etnaviv_buffer.c
> create mode 100644 drivers/staging/etnaviv/etnaviv_cmd_parser.c
> create mode 100644 drivers/staging/etnaviv/etnaviv_drv.c
> create mode 100644 drivers/staging/etnaviv/etnaviv_drv.h
> create mode 100644 drivers/staging/etnaviv/etnaviv_gem.c
> create mode 100644 drivers/staging/etnaviv/etnaviv_gem.h
> create mode 100644 drivers/staging/etnaviv/etnaviv_gem_prime.c
> create mode 100644 drivers/staging/etnaviv/etnaviv_gem_submit.c
> create mode 100644 drivers/staging/etnaviv/etnaviv_gpu.c
> create mode 100644 drivers/staging/etnaviv/etnaviv_gpu.h
> create mode 100644 drivers/staging/etnaviv/etnaviv_iommu.c
> create mode 100644 drivers/staging/etnaviv/etnaviv_iommu.h
> create mode 100644 drivers/staging/etnaviv/etnaviv_iommu_v2.c
> create mode 100644 drivers/staging/etnaviv/etnaviv_iommu_v2.h
> create mode 100644 drivers/staging/etnaviv/etnaviv_mmu.c
> create mode 100644 drivers/staging/etnaviv/etnaviv_mmu.h
> create mode 100644 drivers/staging/etnaviv/state.xml.h
> create mode 100644 drivers/staging/etnaviv/state_hi.xml.h
> create mode 100644 include/uapi/drm/etnaviv_drm.h
>
--
Pengutronix e.K. | Lucas Stach |
Industrial Linux Solutions | http://www.pengutronix.de/ |
More information about the dri-devel
mailing list