[PATCH 0/5] drm/microchip: add GFX2D support for SAM9X60 and SAM9X75

Cyrille Pitchen posted 5 patches 3 weeks ago
There is a newer version of this series
.../devicetree/bindings/gpu/microchip,gfx2d.yaml   |   53 +
MAINTAINERS                                        |   10 +
arch/arm/boot/dts/microchip/sam9x60.dtsi           |    9 +
arch/arm/boot/dts/microchip/sam9x7.dtsi            |    9 +
arch/arm/configs/at91_dt_defconfig                 |    1 +
drivers/gpu/drm/Kconfig                            |    2 +
drivers/gpu/drm/Makefile                           |    1 +
drivers/gpu/drm/microchip/Kconfig                  |   21 +
drivers/gpu/drm/microchip/Makefile                 |    8 +
drivers/gpu/drm/microchip/mchp_gfx2d_cmd.c         | 1808 ++++++++++++++++++++
drivers/gpu/drm/microchip/mchp_gfx2d_cmd.h         |  169 ++
drivers/gpu/drm/microchip/mchp_gfx2d_drv.c         |  350 ++++
drivers/gpu/drm/microchip/mchp_gfx2d_drv.h         |  132 ++
drivers/gpu/drm/microchip/mchp_gfx2d_gem.c         |  263 +++
drivers/gpu/drm/microchip/mchp_gfx2d_gem.h         |   90 +
drivers/gpu/drm/microchip/mchp_gfx2d_ioctl.c       |  274 +++
drivers/gpu/drm/microchip/mchp_gfx2d_ioctl.h       |   17 +
include/uapi/drm/microchip_drm.h                   |  286 ++++
18 files changed, 3503 insertions(+)
[PATCH 0/5] drm/microchip: add GFX2D support for SAM9X60 and SAM9X75
Posted by Cyrille Pitchen 3 weeks ago
Hi all,

This series of patches adds GFX2D support.
The GFX2D is a 2D GPU embedded in some Microchip SoCs such as the
SAM9X60 and SAM9X75.

Patches have been developped on top the 'linux-6.12-mchp' branch of the
https://github.com/linux4microchip/linux.git repository and tested on
mainly on a sam9x75-curiosity board and also on a sam9x60-ek board.

Then patches have been rebased on top of the 'drm-misc-next' branch
of the https://gitlab.freedesktop.org/drm/misc/kernel.git repository
for mainlining.

About the tests, the GFX2D driver was used with the M2D (Multi 2D)
library: https://github.com/linux4sam/libm2d

This is an open source library that abstracts 2D GPUs like the Microchip
GFX2D (and later the Vivante GC520UL), providing graphics applications
of libraries with a unified API, inspired from OpenGL but focused on 2D
GPUs. The libm2d library itself relies on the libdrm library to send
commands to the relevant DRM driver in the Linux kernel.

M2D comes with a m2d_test program to run basic unitary tests.
In addition, libm2d has been integrated to two graphics frameworks:
- EGT: https://github.com/linux4sam/egt
- LVGL: https://github.com/lvgl/lvgl/pull/8729

BR,

Cyrille

Signed-off-by: Cyrille Pitchen <cyrille.pitchen@microchip.com>
---
Cyrille Pitchen (5):
      dt-bindings: gpu: add bindings for the Microchip GFX2D GPU
      drm/microchip: add a driver for the Microchip GFX2D GPU
      ARM: dts: microchip: sam9x60: Add GFX2D GPU
      ARM: dts: microchip: sam9x7: Add GFX2D GPU
      ARM: configs: at91_dt_defconfig: enable GFX2D driver

 .../devicetree/bindings/gpu/microchip,gfx2d.yaml   |   53 +
 MAINTAINERS                                        |   10 +
 arch/arm/boot/dts/microchip/sam9x60.dtsi           |    9 +
 arch/arm/boot/dts/microchip/sam9x7.dtsi            |    9 +
 arch/arm/configs/at91_dt_defconfig                 |    1 +
 drivers/gpu/drm/Kconfig                            |    2 +
 drivers/gpu/drm/Makefile                           |    1 +
 drivers/gpu/drm/microchip/Kconfig                  |   21 +
 drivers/gpu/drm/microchip/Makefile                 |    8 +
 drivers/gpu/drm/microchip/mchp_gfx2d_cmd.c         | 1808 ++++++++++++++++++++
 drivers/gpu/drm/microchip/mchp_gfx2d_cmd.h         |  169 ++
 drivers/gpu/drm/microchip/mchp_gfx2d_drv.c         |  350 ++++
 drivers/gpu/drm/microchip/mchp_gfx2d_drv.h         |  132 ++
 drivers/gpu/drm/microchip/mchp_gfx2d_gem.c         |  263 +++
 drivers/gpu/drm/microchip/mchp_gfx2d_gem.h         |   90 +
 drivers/gpu/drm/microchip/mchp_gfx2d_ioctl.c       |  274 +++
 drivers/gpu/drm/microchip/mchp_gfx2d_ioctl.h       |   17 +
 include/uapi/drm/microchip_drm.h                   |  286 ++++
 18 files changed, 3503 insertions(+)
---
base-commit: d2624d90a0b776db468e889cb079ff1d3edaccf3
change-id: 20250911-cpitchen-mainline_gfx2d-6631e9352af7

Best regards,
-- 
Cyrille Pitchen <cyrille.pitchen@microchip.com>