[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20211120075926.2671-1-15330273260@189.cn>
Date: Sat, 20 Nov 2021 15:59:22 +0800
From: Sui Jingfeng <15330273260@....cn>
To: Lucas Stach <l.stach@...gutronix.de>,
Russell King <linux+etnaviv@...linux.org.uk>,
Christian Gmeiner <christian.gmeiner@...il.com>,
David Airlie <airlied@...ux.ie>,
Daniel Vetter <daniel@...ll.ch>,
Rob Herring <robh+dt@...nel.org>,
Thomas Bogendoerfer <tsbogend@...ha.franken.de>,
Krzysztof Kozlowski <krzk@...nel.org>,
Andrey Zhizhikin <andrey.zhizhikin@...ca-geosystems.com>,
Sam Ravnborg <sam@...nborg.org>,
Tiezhu Yang <yangtiezhu@...ngson.cn>,
Qing Zhang <zhangqing@...ngson.cn>,
Jinyang He <hejinyang@...ngson.cn>,
Jiaxun Yang <jiaxun.yang@...goat.com>,
Xiaochuan Mao <maoxiaochuan@...ngson.cn>,
zhaoxiao <zhaoxiao@...ontech.com>,
suijingfeng <suijingfeng@...ngson.cn>
Cc: linux-mips@...r.kernel.org, linux-kernel@...r.kernel.org,
etnaviv@...ts.freedesktop.org, dri-devel@...ts.freedesktop.org,
devicetree@...r.kernel.org
Subject: drm/etnaviv: add pci device driver support for gpu in LS7A1000 and LS2K1000
There is a Vivante GC1000 V5037 in LS2K1000 and LS7A1000,
the gpu is a PCI device and it have 2D and 3D in the same core.
Therefore, this patch try to provide PCI device driver wrapper
for it by mimic the platform counterpart.
LS7A1000 is a bridge chip, this bridge chip typically use
with LS3A4000 (4 core 1.8gHz, Mips64r5) and LS3A5000 (4 core
loongarch 2.5Ghz). While LS2K1000 is a double core 1.0Ghz
Mips64r2 SoC.
loongson CPU's cache coherency is maintained by the hardware.
Both LS7A1000 and LS2K1000 have a display controller integrated,
named lsdc. The drm driver of this display controller is not
upstream yet, but we have a demo version and it works.
By using KMS-RO framework, lsdc and gc1000 made a compatible pair.
suijingfeng (4):
dt-bindings: ls2k1000: add gpu device node
drm/etnaviv: add pci device driver support
loongson3_defconfig: enable etnaviv drm driver on default
loongson2_defconfig: enable etnaviv drm driver on default
.../boot/dts/loongson/loongson64-2k1000.dtsi | 11 +
arch/mips/configs/loongson2k_defconfig | 1 +
arch/mips/configs/loongson3_defconfig | 1 +
drivers/gpu/drm/etnaviv/Kconfig | 12 ++
drivers/gpu/drm/etnaviv/Makefile | 2 +
drivers/gpu/drm/etnaviv/etnaviv_drv.c | 113 +++++++---
drivers/gpu/drm/etnaviv/etnaviv_drv.h | 8 +
drivers/gpu/drm/etnaviv/etnaviv_gem.c | 28 ++-
drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 94 +++++---
drivers/gpu/drm/etnaviv/etnaviv_gpu.h | 6 +
drivers/gpu/drm/etnaviv/etnaviv_pci_drv.c | 203 ++++++++++++++++++
include/uapi/drm/etnaviv_drm.h | 11 +-
12 files changed, 422 insertions(+), 68 deletions(-)
create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_pci_drv.c
--
2.20.1
Powered by blists - more mailing lists