[PATCH v6 00/12] ARM/MIPS: DTS: add child nodes describing the PVRSGX GPU present in some OMAP SoC and JZ4780 (and many more)

H. Nikolaus Schaller
2020-04-15T08:36:07Z

* rebased to v5.7-rc1
* added DTS for for a31, a31s, a83t - by Philipp Rossak <embed3d@gmail.com>
* added DTS for "samsung,s5pv210-sgx540-120" - by Jonathan Bakker <xc-racer2@live.ca>
* bindings.yaml fixes:
- added a31, a31
- fixes for omap4470
- jz4780 contains an sgx540-130 and not -120
- a83t contains an sgx544-115 and not -116
- removed "additionalProperties: false" because some SoC may need additional properties

PATCH V5 2020-03-29 19:38:32:
* reworked YAML bindings to pass dt_binding_check and be better grouped
* rename all nodes to "gpu: gpu@ "
* removed "img,sgx5" from example - suggested by Rob Herring <robh+dt@kernel.org>

PATCH V4 2019-12-17 19:02:11:
* MIPS: DTS: jz4780: removed "img,sgx5" from bindings
* YAML bindings: updated according to suggestions by Rob Herring
* MIPS: DTS: jz4780: insert-sorted gpu node by register address - suggested by Paul Cercueil

PATCH V3 2019-11-24 12:40:33:
* reworked YAML format with help by Rob Herring
* removed .txt binding document
* change compatible "ti,am335x-sgx" to "ti,am3352-sgx" - suggested by Tony Lindgren

PATCH V2 2019-11-07 12:06:17:
* tried to convert bindings to YAML format - suggested by Rob Herring
* added JZ4780 DTS node (proven to load the driver)
* removed timer and img,cores properties until we know we really need them - suggested by Rob Herring

PATCH V1 2019-10-18 20:46:35:

This patch series defines child nodes for the SGX5xx interface inside
different SoC so that a driver can be found and probed by the
compatible strings and can retrieve information about the SGX revision
that is included in a specific SoC. It also defines the interrupt number
to be used by the SGX driver.

There is currently no mainline driver for these GPUs, but a project [1]
is ongoing with the goal to get the open-source part as provided by TI/IMG
and others into drivers/gpu/drm/pvrsgx.

The kernel modules built from this project have successfully demonstrated
to work with the DTS definitions from this patch set on AM335x BeagleBone
Black, DM3730 and OMAP5 Pyra and Droid 4. They partially work on OMAP3530 and
PandaBoard ES but that is likely a problem in the kernel driver or the
(non-free) user-space libraries and binaries.

Wotk for JZ4780 (CI20 board) is in progress and there is potential to extend
this work to e.g. BananaPi-M3 (A83) and some Intel Poulsbo and CedarView
devices.

[1]: https://github.com/openpvrsgx-devgroup

H. Nikolaus Schaller (8):
dt-bindings: add img,pvrsgx.yaml for Imagination GPUs
ARM: DTS: am33xx: add sgx gpu child node
ARM: DTS: am3517: add sgx gpu child node
ARM: DTS: omap34xx: add sgx gpu child node
ARM: DTS: omap36xx: add sgx gpu child node
ARM: DTS: omap4: add sgx gpu child node
ARM: DTS: omap5: add sgx gpu child node
MIPS: DTS: jz4780: add sgx gpu node

Jonathan Bakker (1):
arm: dts: s5pv210: Add G3D node

Philipp Rossak (3):
ARM: dts: sun6i: a31: add sgx gpu child node
ARM: dts: sun6i: a31s: add sgx gpu child node
ARM: dts: sun8i: a83t: add sgx gpu child node

.../devicetree/bindings/gpu/img,pvrsgx.yaml | 122 ++++++++++++++++++
arch/arm/boot/dts/am33xx.dtsi | 11 +-
arch/arm/boot/dts/am3517.dtsi | 9 +-
arch/arm/boot/dts/omap34xx.dtsi | 11 +-
arch/arm/boot/dts/omap36xx.dtsi | 9 +-
arch/arm/boot/dts/omap4.dtsi | 11 +-
arch/arm/boot/dts/omap4470.dts | 15 +++
arch/arm/boot/dts/omap5.dtsi | 11 +-
arch/arm/boot/dts/s5pv210.dtsi | 15 +++
arch/arm/boot/dts/sun6i-a31.dtsi | 11 ++
arch/arm/boot/dts/sun6i-a31s.dtsi | 10 ++
arch/arm/boot/dts/sun8i-a83t.dtsi | 11 ++
arch/mips/boot/dts/ingenic/jz4780.dtsi | 11 ++
13 files changed, 229 insertions(+), 28 deletions(-)
create mode 100644 Documentation/devicetree/bindings/gpu/img,pvrsgx.yaml
create mode 100644 arch/arm/boot/dts/omap4470.dts

--
2.25.1