.../clock/mediatek,mt8173-mfgtop.yaml | 70 +++++ .../bindings/gpu/img,powervr-rogue.yaml | 1 + arch/arm64/boot/dts/mediatek/mt8173.dtsi | 33 ++- drivers/clk/mediatek/Kconfig | 9 + drivers/clk/mediatek/Makefile | 1 + drivers/clk/mediatek/clk-mt8173-mfgtop.c | 243 ++++++++++++++++++ include/dt-bindings/clock/mt8173-clk.h | 7 + 7 files changed, 363 insertions(+), 1 deletion(-) create mode 100644 Documentation/devicetree/bindings/clock/mediatek,mt8173-mfgtop.yaml create mode 100644 drivers/clk/mediatek/clk-mt8173-mfgtop.c
Hi everyone,
This is v2 of my MT8173 PowerVR GPU support series.
Changes since v1:
- Adapted to changed DT bindings
- Dropped driver change
- Use same power domain for "a" and "b" GPU power domains
This update was requested by Icenowy.
This series enables the PowerVR GPU found in the MT8173 SoC, found in
some Chromebooks.
This version is different from the initial powervr driver submission [1]
in that it splits out the GPU glue layer support out of the powervr
driver and into a separate clock and power domain driver. The glue code
is otherwise the same, and also the same as found in the ChromeOS
kernels, with some extra comments and macro names added where possible.
Patch 1 adds a binding for the glue layer, called mfgtop. The glue layer
contains clock and power controls for the GPU.
Patch 2 adds a driver for the glue layer.
Patch 3 adds an entry for the MT8173 GPU and 6XT series to the PowerVR
binding.
Patch 4 adds an entry for the PowerVR 6XT series GPU to the driver.
Patch 5 corrects the clock for the GPU (called MFG) power domain.
Patch 6 adds device nodes for the GPU and glue layer to the MT8173 dtsi
file.
Patch 2 and 6 depend on patch 1 to build. I suppose some common
immutable tree would be needed from the MediaTek maintainers.
The kernel driver successfully probes the hardware and loads the
"rogue_4.40.2.51_v1.fw" firmware provided by Imagination Technologies [2].
Userspace was tested with Mesa 24.0.8 from Debian Trixie rebuilt with
the powervr vulkan driver enabled. `vulkaninfo` gives some information
about the GPU (attached at the end), but running the `triangle` example
from the Sascha Willems demos [3] with -DUSE_D2D_WSI=ON as recommended [4]
failed with:
Can't find a display and a display mode!
Same program worked correctly on a BeaglePlay and displayed a color
gradient triangle. Not sure what went wrong here.
Anyway, please have a look and test.
Thanks
ChenYu
[1] https://lore.kernel.org/dri-devel/20220815165156.118212-2-sarah.walker@imgtec.com/
[2] https://gitlab.freedesktop.org/imagination/linux-firmware/-/tree/powervr
[3] https://github.com/SaschaWillems/Vulkan
[4] https://lore.kernel.org/dri-devel/f2b2671e-5acc-4dec-9c2e-3c9cd2e1f19e@imgtec.com/
Chen-Yu Tsai (5):
dt-bindings: clock: mediatek: Add mt8173 mfgtop
clk: mediatek: Add mt8173-mfgtop driver
dt-bindings: gpu: powervr-rogue: Add MediaTek MT8173 GPU
arm64: dts: mediatek: mt8173: Fix MFG_ASYNC power domain clock
arm64: dts: mediatek: mt8173: Add GPU device nodes
.../clock/mediatek,mt8173-mfgtop.yaml | 70 +++++
.../bindings/gpu/img,powervr-rogue.yaml | 1 +
arch/arm64/boot/dts/mediatek/mt8173.dtsi | 33 ++-
drivers/clk/mediatek/Kconfig | 9 +
drivers/clk/mediatek/Makefile | 1 +
drivers/clk/mediatek/clk-mt8173-mfgtop.c | 243 ++++++++++++++++++
include/dt-bindings/clock/mt8173-clk.h | 7 +
7 files changed, 363 insertions(+), 1 deletion(-)
create mode 100644 Documentation/devicetree/bindings/clock/mediatek,mt8173-mfgtop.yaml
create mode 100644 drivers/clk/mediatek/clk-mt8173-mfgtop.c
--
2.53.0.1018.g2bb0e51243-goog
在 2026-03-25三的 15:19 +0800,Chen-Yu Tsai写道: > Hi everyone, > > This is v2 of my MT8173 PowerVR GPU support series. > > Changes since v1: > - Adapted to changed DT bindings > - Dropped driver change > - Use same power domain for "a" and "b" GPU power domains > > This update was requested by Icenowy. > > > This series enables the PowerVR GPU found in the MT8173 SoC, found in > some Chromebooks. > > This version is different from the initial powervr driver submission > [1] > in that it splits out the GPU glue layer support out of the powervr > driver and into a separate clock and power domain driver. The glue > code > is otherwise the same, and also the same as found in the ChromeOS > kernels, with some extra comments and macro names added where > possible. > > Patch 1 adds a binding for the glue layer, called mfgtop. The glue > layer > contains clock and power controls for the GPU. > > Patch 2 adds a driver for the glue layer. > > Patch 3 adds an entry for the MT8173 GPU and 6XT series to the > PowerVR > binding. > > Patch 4 adds an entry for the PowerVR 6XT series GPU to the driver. > > Patch 5 corrects the clock for the GPU (called MFG) power domain. > > Patch 6 adds device nodes for the GPU and glue layer to the MT8173 > dtsi > file. > > Patch 2 and 6 depend on patch 1 to build. I suppose some common > immutable tree would be needed from the MediaTek maintainers. > > The kernel driver successfully probes the hardware and loads the > "rogue_4.40.2.51_v1.fw" firmware provided by Imagination Technologies > [2]. > Userspace was tested with Mesa 24.0.8 from Debian Trixie rebuilt with > the powervr vulkan driver enabled. `vulkaninfo` gives some > information > about the GPU (attached at the end), but running the `triangle` > example > from the Sascha Willems demos [3] with -DUSE_D2D_WSI=ON as > recommended [4] > failed with: > > Can't find a display and a display mode! I think when using D2D the demos want width and height to be explicitly specified, otherwise it seems to hardcode 1280x720. If you're using an elm, could you try to add `-w 1920 -h 1080` or for hana `-w 1366 -h 768` ? Thanks Icenowy > > Same program worked correctly on a BeaglePlay and displayed a color > gradient triangle. Not sure what went wrong here. > > Anyway, please have a look and test. > > > Thanks > ChenYu > > [1] > https://lore.kernel.org/dri-devel/20220815165156.118212-2-sarah.walker@imgtec.com/ > [2] > https://gitlab.freedesktop.org/imagination/linux-firmware/-/tree/powervr > [3] https://github.com/SaschaWillems/Vulkan > [4] > https://lore.kernel.org/dri-devel/f2b2671e-5acc-4dec-9c2e-3c9cd2e1f19e@imgtec.com/ > > Chen-Yu Tsai (5): > dt-bindings: clock: mediatek: Add mt8173 mfgtop > clk: mediatek: Add mt8173-mfgtop driver > dt-bindings: gpu: powervr-rogue: Add MediaTek MT8173 GPU > arm64: dts: mediatek: mt8173: Fix MFG_ASYNC power domain clock > arm64: dts: mediatek: mt8173: Add GPU device nodes > > .../clock/mediatek,mt8173-mfgtop.yaml | 70 +++++ > .../bindings/gpu/img,powervr-rogue.yaml | 1 + > arch/arm64/boot/dts/mediatek/mt8173.dtsi | 33 ++- > drivers/clk/mediatek/Kconfig | 9 + > drivers/clk/mediatek/Makefile | 1 + > drivers/clk/mediatek/clk-mt8173-mfgtop.c | 243 > ++++++++++++++++++ > include/dt-bindings/clock/mt8173-clk.h | 7 + > 7 files changed, 363 insertions(+), 1 deletion(-) > create mode 100644 > Documentation/devicetree/bindings/clock/mediatek,mt8173-mfgtop.yaml > create mode 100644 drivers/clk/mediatek/clk-mt8173-mfgtop.c
On Wed, Mar 25, 2026 at 4:04 PM Icenowy Zheng <uwu@icenowy.me> wrote:
>
> 在 2026-03-25三的 15:19 +0800,Chen-Yu Tsai写道:
> > Hi everyone,
> >
> > This is v2 of my MT8173 PowerVR GPU support series.
> >
> > Changes since v1:
> > - Adapted to changed DT bindings
> > - Dropped driver change
> > - Use same power domain for "a" and "b" GPU power domains
> >
> > This update was requested by Icenowy.
> >
> >
> > This series enables the PowerVR GPU found in the MT8173 SoC, found in
> > some Chromebooks.
> >
> > This version is different from the initial powervr driver submission
> > [1]
> > in that it splits out the GPU glue layer support out of the powervr
> > driver and into a separate clock and power domain driver. The glue
> > code
> > is otherwise the same, and also the same as found in the ChromeOS
> > kernels, with some extra comments and macro names added where
> > possible.
> >
> > Patch 1 adds a binding for the glue layer, called mfgtop. The glue
> > layer
> > contains clock and power controls for the GPU.
> >
> > Patch 2 adds a driver for the glue layer.
> >
> > Patch 3 adds an entry for the MT8173 GPU and 6XT series to the
> > PowerVR
> > binding.
> >
> > Patch 4 adds an entry for the PowerVR 6XT series GPU to the driver.
> >
> > Patch 5 corrects the clock for the GPU (called MFG) power domain.
> >
> > Patch 6 adds device nodes for the GPU and glue layer to the MT8173
> > dtsi
> > file.
> >
> > Patch 2 and 6 depend on patch 1 to build. I suppose some common
> > immutable tree would be needed from the MediaTek maintainers.
> >
> > The kernel driver successfully probes the hardware and loads the
> > "rogue_4.40.2.51_v1.fw" firmware provided by Imagination Technologies
> > [2].
> > Userspace was tested with Mesa 24.0.8 from Debian Trixie rebuilt with
> > the powervr vulkan driver enabled. `vulkaninfo` gives some
> > information
> > about the GPU (attached at the end), but running the `triangle`
> > example
> > from the Sascha Willems demos [3] with -DUSE_D2D_WSI=ON as
> > recommended [4]
> > failed with:
> >
> > Can't find a display and a display mode!
>
> I think when using D2D the demos want width and height to be explicitly
> specified, otherwise it seems to hardcode 1280x720.
>
> If you're using an elm, could you try to add `-w 1920 -h 1080` or for
> hana `-w 1366 -h 768` ?
I only did the basic `vulkaninfo` test this time around. To do anything
interesting probably requires the Mesa 26.1 release.
PVR_I_WANT_A_BROKEN_VULKAN_DRIVER=1 \
vkmark --winsys kms -D b81f54f8568deb0fb70a6a1ed845b65d
just reports "Error: Device specified by uuid is not available"
This is with Mesa 26.0.2 packages from Debian testing. At least now
have the powervr vulkan driver enabled by default, so I don't have
to rebuild the packages again.
ChenYu
> Thanks
> Icenowy
>
> >
> > Same program worked correctly on a BeaglePlay and displayed a color
> > gradient triangle. Not sure what went wrong here.
> >
> > Anyway, please have a look and test.
> >
> >
> > Thanks
> > ChenYu
> >
> > [1]
> > https://lore.kernel.org/dri-devel/20220815165156.118212-2-sarah.walker@imgtec.com/
> > [2]
> > https://gitlab.freedesktop.org/imagination/linux-firmware/-/tree/powervr
> > [3] https://github.com/SaschaWillems/Vulkan
> > [4]
> > https://lore.kernel.org/dri-devel/f2b2671e-5acc-4dec-9c2e-3c9cd2e1f19e@imgtec.com/
> >
> > Chen-Yu Tsai (5):
> > dt-bindings: clock: mediatek: Add mt8173 mfgtop
> > clk: mediatek: Add mt8173-mfgtop driver
> > dt-bindings: gpu: powervr-rogue: Add MediaTek MT8173 GPU
> > arm64: dts: mediatek: mt8173: Fix MFG_ASYNC power domain clock
> > arm64: dts: mediatek: mt8173: Add GPU device nodes
> >
> > .../clock/mediatek,mt8173-mfgtop.yaml | 70 +++++
> > .../bindings/gpu/img,powervr-rogue.yaml | 1 +
> > arch/arm64/boot/dts/mediatek/mt8173.dtsi | 33 ++-
> > drivers/clk/mediatek/Kconfig | 9 +
> > drivers/clk/mediatek/Makefile | 1 +
> > drivers/clk/mediatek/clk-mt8173-mfgtop.c | 243
> > ++++++++++++++++++
> > include/dt-bindings/clock/mt8173-clk.h | 7 +
> > 7 files changed, 363 insertions(+), 1 deletion(-)
> > create mode 100644
> > Documentation/devicetree/bindings/clock/mediatek,mt8173-mfgtop.yaml
> > create mode 100644 drivers/clk/mediatek/clk-mt8173-mfgtop.c
在 2026-03-25三的 16:08 +0800,Chen-Yu Tsai写道: > On Wed, Mar 25, 2026 at 4:04 PM Icenowy Zheng <uwu@icenowy.me> wrote: > > > > 在 2026-03-25三的 15:19 +0800,Chen-Yu Tsai写道: > > > Hi everyone, > > > > > > This is v2 of my MT8173 PowerVR GPU support series. > > > > > > Changes since v1: > > > - Adapted to changed DT bindings > > > - Dropped driver change > > > - Use same power domain for "a" and "b" GPU power domains > > > > > > This update was requested by Icenowy. > > > > > > > > > This series enables the PowerVR GPU found in the MT8173 SoC, > > > found in > > > some Chromebooks. > > > > > > This version is different from the initial powervr driver > > > submission > > > [1] > > > in that it splits out the GPU glue layer support out of the > > > powervr > > > driver and into a separate clock and power domain driver. The > > > glue > > > code > > > is otherwise the same, and also the same as found in the ChromeOS > > > kernels, with some extra comments and macro names added where > > > possible. > > > > > > Patch 1 adds a binding for the glue layer, called mfgtop. The > > > glue > > > layer > > > contains clock and power controls for the GPU. > > > > > > Patch 2 adds a driver for the glue layer. > > > > > > Patch 3 adds an entry for the MT8173 GPU and 6XT series to the > > > PowerVR > > > binding. > > > > > > Patch 4 adds an entry for the PowerVR 6XT series GPU to the > > > driver. > > > > > > Patch 5 corrects the clock for the GPU (called MFG) power domain. > > > > > > Patch 6 adds device nodes for the GPU and glue layer to the > > > MT8173 > > > dtsi > > > file. > > > > > > Patch 2 and 6 depend on patch 1 to build. I suppose some common > > > immutable tree would be needed from the MediaTek maintainers. > > > > > > The kernel driver successfully probes the hardware and loads the > > > "rogue_4.40.2.51_v1.fw" firmware provided by Imagination > > > Technologies > > > [2]. > > > Userspace was tested with Mesa 24.0.8 from Debian Trixie rebuilt > > > with > > > the powervr vulkan driver enabled. `vulkaninfo` gives some > > > information > > > about the GPU (attached at the end), but running the `triangle` > > > example > > > from the Sascha Willems demos [3] with -DUSE_D2D_WSI=ON as > > > recommended [4] > > > failed with: > > > > > > Can't find a display and a display mode! > > > > I think when using D2D the demos want width and height to be > > explicitly > > specified, otherwise it seems to hardcode 1280x720. > > > > If you're using an elm, could you try to add `-w 1920 -h 1080` or > > for > > hana `-w 1366 -h 768` ? > > I only did the basic `vulkaninfo` test this time around. To do > anything > interesting probably requires the Mesa 26.1 release. > > PVR_I_WANT_A_BROKEN_VULKAN_DRIVER=1 \ > vkmark --winsys kms -D b81f54f8568deb0fb70a6a1ed845b65d > > just reports "Error: Device specified by uuid is not available" I am very sorry to tell you that, when I run Sascha's demo with Mesa main, I got GPU lost immediately... ``` [ 441.509433] powervr 13000000.gpu: [drm] *ERROR* GPU device lost ``` Icenowy > > This is with Mesa 26.0.2 packages from Debian testing. At least now > have the powervr vulkan driver enabled by default, so I don't have > to rebuild the packages again. > > > ChenYu > > > Thanks > > Icenowy > > > > > > > > Same program worked correctly on a BeaglePlay and displayed a > > > color > > > gradient triangle. Not sure what went wrong here. > > > > > > Anyway, please have a look and test. > > > > > > > > > Thanks > > > ChenYu > > > > > > [1] > > > https://lore.kernel.org/dri-devel/20220815165156.118212-2-sarah.walker@imgtec.com/ > > > [2] > > > https://gitlab.freedesktop.org/imagination/linux-firmware/-/tree/powervr > > > [3] https://github.com/SaschaWillems/Vulkan > > > [4] > > > https://lore.kernel.org/dri-devel/f2b2671e-5acc-4dec-9c2e-3c9cd2e1f19e@imgtec.com/ > > > > > > Chen-Yu Tsai (5): > > > dt-bindings: clock: mediatek: Add mt8173 mfgtop > > > clk: mediatek: Add mt8173-mfgtop driver > > > dt-bindings: gpu: powervr-rogue: Add MediaTek MT8173 GPU > > > arm64: dts: mediatek: mt8173: Fix MFG_ASYNC power domain clock > > > arm64: dts: mediatek: mt8173: Add GPU device nodes > > > > > > .../clock/mediatek,mt8173-mfgtop.yaml | 70 +++++ > > > .../bindings/gpu/img,powervr-rogue.yaml | 1 + > > > arch/arm64/boot/dts/mediatek/mt8173.dtsi | 33 ++- > > > drivers/clk/mediatek/Kconfig | 9 + > > > drivers/clk/mediatek/Makefile | 1 + > > > drivers/clk/mediatek/clk-mt8173-mfgtop.c | 243 > > > ++++++++++++++++++ > > > include/dt-bindings/clock/mt8173-clk.h | 7 + > > > 7 files changed, 363 insertions(+), 1 deletion(-) > > > create mode 100644 > > > Documentation/devicetree/bindings/clock/mediatek,mt8173- > > > mfgtop.yaml > > > create mode 100644 drivers/clk/mediatek/clk-mt8173-mfgtop.c
在 2026-03-25三的 16:30 +0800,Icenowy Zheng写道: > 在 2026-03-25三的 16:08 +0800,Chen-Yu Tsai写道: > > On Wed, Mar 25, 2026 at 4:04 PM Icenowy Zheng <uwu@icenowy.me> > > wrote: > > > > > > 在 2026-03-25三的 15:19 +0800,Chen-Yu Tsai写道: > > > > Hi everyone, > > > > > > > > This is v2 of my MT8173 PowerVR GPU support series. > > > > > > > > Changes since v1: > > > > - Adapted to changed DT bindings > > > > - Dropped driver change > > > > - Use same power domain for "a" and "b" GPU power domains > > > > > > > > This update was requested by Icenowy. > > > > > > > > > > > > This series enables the PowerVR GPU found in the MT8173 SoC, > > > > found in > > > > some Chromebooks. > > > > > > > > This version is different from the initial powervr driver > > > > submission > > > > [1] > > > > in that it splits out the GPU glue layer support out of the > > > > powervr > > > > driver and into a separate clock and power domain driver. The > > > > glue > > > > code > > > > is otherwise the same, and also the same as found in the > > > > ChromeOS > > > > kernels, with some extra comments and macro names added where > > > > possible. > > > > > > > > Patch 1 adds a binding for the glue layer, called mfgtop. The > > > > glue > > > > layer > > > > contains clock and power controls for the GPU. > > > > > > > > Patch 2 adds a driver for the glue layer. > > > > > > > > Patch 3 adds an entry for the MT8173 GPU and 6XT series to the > > > > PowerVR > > > > binding. > > > > > > > > Patch 4 adds an entry for the PowerVR 6XT series GPU to the > > > > driver. > > > > > > > > Patch 5 corrects the clock for the GPU (called MFG) power > > > > domain. > > > > > > > > Patch 6 adds device nodes for the GPU and glue layer to the > > > > MT8173 > > > > dtsi > > > > file. > > > > > > > > Patch 2 and 6 depend on patch 1 to build. I suppose some common > > > > immutable tree would be needed from the MediaTek maintainers. > > > > > > > > The kernel driver successfully probes the hardware and loads > > > > the > > > > "rogue_4.40.2.51_v1.fw" firmware provided by Imagination > > > > Technologies > > > > [2]. > > > > Userspace was tested with Mesa 24.0.8 from Debian Trixie > > > > rebuilt > > > > with > > > > the powervr vulkan driver enabled. `vulkaninfo` gives some > > > > information > > > > about the GPU (attached at the end), but running the `triangle` > > > > example > > > > from the Sascha Willems demos [3] with -DUSE_D2D_WSI=ON as > > > > recommended [4] > > > > failed with: > > > > > > > > Can't find a display and a display mode! > > > > > > I think when using D2D the demos want width and height to be > > > explicitly > > > specified, otherwise it seems to hardcode 1280x720. > > > > > > If you're using an elm, could you try to add `-w 1920 -h 1080` or > > > for > > > hana `-w 1366 -h 768` ? > > > > I only did the basic `vulkaninfo` test this time around. To do > > anything > > interesting probably requires the Mesa 26.1 release. > > > > PVR_I_WANT_A_BROKEN_VULKAN_DRIVER=1 \ > > vkmark --winsys kms -D b81f54f8568deb0fb70a6a1ed845b65d > > > > just reports "Error: Device specified by uuid is not available" > > I am very sorry to tell you that, when I run Sascha's demo with Mesa > main, I got GPU lost immediately... > > ``` > [ 441.509433] powervr 13000000.gpu: [drm] *ERROR* GPU device lost > ``` However, Zink on PowerVR works, and on Lichee Pi 4A I also got `VK_ERROR_DEVICE_LOST` when running Sascha's demos (although the kernel does not report device lost). I bet it's a regression on the VK_KHR_display code. Thanks, Icenowy > > Icenowy > > > > > This is with Mesa 26.0.2 packages from Debian testing. At least now > > have the powervr vulkan driver enabled by default, so I don't have > > to rebuild the packages again. > > > > > > ChenYu > > > > > Thanks > > > Icenowy > > > > > > > > > > > Same program worked correctly on a BeaglePlay and displayed a > > > > color > > > > gradient triangle. Not sure what went wrong here. > > > > > > > > Anyway, please have a look and test. > > > > > > > > > > > > Thanks > > > > ChenYu > > > > > > > > [1] > > > > https://lore.kernel.org/dri-devel/20220815165156.118212-2-sarah.walker@imgtec.com/ > > > > [2] > > > > https://gitlab.freedesktop.org/imagination/linux-firmware/-/tree/powervr > > > > [3] https://github.com/SaschaWillems/Vulkan > > > > [4] > > > > https://lore.kernel.org/dri-devel/f2b2671e-5acc-4dec-9c2e-3c9cd2e1f19e@imgtec.com/ > > > > > > > > Chen-Yu Tsai (5): > > > > dt-bindings: clock: mediatek: Add mt8173 mfgtop > > > > clk: mediatek: Add mt8173-mfgtop driver > > > > dt-bindings: gpu: powervr-rogue: Add MediaTek MT8173 GPU > > > > arm64: dts: mediatek: mt8173: Fix MFG_ASYNC power domain > > > > clock > > > > arm64: dts: mediatek: mt8173: Add GPU device nodes > > > > > > > > .../clock/mediatek,mt8173-mfgtop.yaml | 70 +++++ > > > > .../bindings/gpu/img,powervr-rogue.yaml | 1 + > > > > arch/arm64/boot/dts/mediatek/mt8173.dtsi | 33 ++- > > > > drivers/clk/mediatek/Kconfig | 9 + > > > > drivers/clk/mediatek/Makefile | 1 + > > > > drivers/clk/mediatek/clk-mt8173-mfgtop.c | 243 > > > > ++++++++++++++++++ > > > > include/dt-bindings/clock/mt8173-clk.h | 7 + > > > > 7 files changed, 363 insertions(+), 1 deletion(-) > > > > create mode 100644 > > > > Documentation/devicetree/bindings/clock/mediatek,mt8173- > > > > mfgtop.yaml > > > > create mode 100644 drivers/clk/mediatek/clk-mt8173-mfgtop.c
在 2026-03-25三的 17:11 +0800,Icenowy Zheng写道: > 在 2026-03-25三的 16:30 +0800,Icenowy Zheng写道: > > 在 2026-03-25三的 16:08 +0800,Chen-Yu Tsai写道: > > > On Wed, Mar 25, 2026 at 4:04 PM Icenowy Zheng <uwu@icenowy.me> > > > wrote: > > > > > > > > 在 2026-03-25三的 15:19 +0800,Chen-Yu Tsai写道: > > > > > Hi everyone, > > > > > > > > > > This is v2 of my MT8173 PowerVR GPU support series. > > > > > > > > > > Changes since v1: > > > > > - Adapted to changed DT bindings > > > > > - Dropped driver change > > > > > - Use same power domain for "a" and "b" GPU power domains > > > > > > > > > > This update was requested by Icenowy. > > > > > > > > > > > > > > > This series enables the PowerVR GPU found in the MT8173 SoC, > > > > > found in > > > > > some Chromebooks. > > > > > > > > > > This version is different from the initial powervr driver > > > > > submission > > > > > [1] > > > > > in that it splits out the GPU glue layer support out of the > > > > > powervr > > > > > driver and into a separate clock and power domain driver. The > > > > > glue > > > > > code > > > > > is otherwise the same, and also the same as found in the > > > > > ChromeOS > > > > > kernels, with some extra comments and macro names added where > > > > > possible. > > > > > > > > > > Patch 1 adds a binding for the glue layer, called mfgtop. The > > > > > glue > > > > > layer > > > > > contains clock and power controls for the GPU. > > > > > > > > > > Patch 2 adds a driver for the glue layer. > > > > > > > > > > Patch 3 adds an entry for the MT8173 GPU and 6XT series to > > > > > the > > > > > PowerVR > > > > > binding. > > > > > > > > > > Patch 4 adds an entry for the PowerVR 6XT series GPU to the > > > > > driver. > > > > > > > > > > Patch 5 corrects the clock for the GPU (called MFG) power > > > > > domain. > > > > > > > > > > Patch 6 adds device nodes for the GPU and glue layer to the > > > > > MT8173 > > > > > dtsi > > > > > file. > > > > > > > > > > Patch 2 and 6 depend on patch 1 to build. I suppose some > > > > > common > > > > > immutable tree would be needed from the MediaTek maintainers. > > > > > > > > > > The kernel driver successfully probes the hardware and loads > > > > > the > > > > > "rogue_4.40.2.51_v1.fw" firmware provided by Imagination > > > > > Technologies > > > > > [2]. > > > > > Userspace was tested with Mesa 24.0.8 from Debian Trixie > > > > > rebuilt > > > > > with > > > > > the powervr vulkan driver enabled. `vulkaninfo` gives some > > > > > information > > > > > about the GPU (attached at the end), but running the > > > > > `triangle` > > > > > example > > > > > from the Sascha Willems demos [3] with -DUSE_D2D_WSI=ON as > > > > > recommended [4] > > > > > failed with: > > > > > > > > > > Can't find a display and a display mode! > > > > > > > > I think when using D2D the demos want width and height to be > > > > explicitly > > > > specified, otherwise it seems to hardcode 1280x720. > > > > > > > > If you're using an elm, could you try to add `-w 1920 -h 1080` > > > > or > > > > for > > > > hana `-w 1366 -h 768` ? > > > > > > I only did the basic `vulkaninfo` test this time around. To do > > > anything > > > interesting probably requires the Mesa 26.1 release. > > > > > > PVR_I_WANT_A_BROKEN_VULKAN_DRIVER=1 \ > > > vkmark --winsys kms -D b81f54f8568deb0fb70a6a1ed845b65d > > > > > > just reports "Error: Device specified by uuid is not available" > > > > I am very sorry to tell you that, when I run Sascha's demo with > > Mesa > > main, I got GPU lost immediately... > > > > ``` > > [ 441.509433] powervr 13000000.gpu: [drm] *ERROR* GPU device lost > > ``` The device lost message seems to be some bug of the open source KMD or the firmware. When I disable runtime power management of the 13000000.gpu device, this message does not appear, instead the following message appears and the GPU can continue to accept jobs: ``` powervr 13000000.gpu: [drm] Received unknown FWCCB command 2abc0070 ``` > > However, Zink on PowerVR works, and on Lichee Pi 4A I also got > `VK_ERROR_DEVICE_LOST` when running Sascha's demos (although the > kernel > does not report device lost). > > I bet it's a regression on the VK_KHR_display code. I'm now sure that it's a regression, it's now tracked at [1]. [1] https://gitlab.freedesktop.org/mesa/mesa/-/issues/15161 > > Thanks, > Icenowy > > > > > Icenowy > > > > > > > > This is with Mesa 26.0.2 packages from Debian testing. At least > > > now > > > have the powervr vulkan driver enabled by default, so I don't > > > have > > > to rebuild the packages again. > > > > > > > > > ChenYu > > > > > > > Thanks > > > > Icenowy > > > > > > > > > > > > > > Same program worked correctly on a BeaglePlay and displayed a > > > > > color > > > > > gradient triangle. Not sure what went wrong here. > > > > > > > > > > Anyway, please have a look and test. > > > > > > > > > > > > > > > Thanks > > > > > ChenYu > > > > > > > > > > [1] > > > > > https://lore.kernel.org/dri-devel/20220815165156.118212-2-sarah.walker@imgtec.com/ > > > > > [2] > > > > > https://gitlab.freedesktop.org/imagination/linux-firmware/-/tree/powervr > > > > > [3] https://github.com/SaschaWillems/Vulkan > > > > > [4] > > > > > https://lore.kernel.org/dri-devel/f2b2671e-5acc-4dec-9c2e-3c9cd2e1f19e@imgtec.com/ > > > > > > > > > > Chen-Yu Tsai (5): > > > > > dt-bindings: clock: mediatek: Add mt8173 mfgtop > > > > > clk: mediatek: Add mt8173-mfgtop driver > > > > > dt-bindings: gpu: powervr-rogue: Add MediaTek MT8173 GPU > > > > > arm64: dts: mediatek: mt8173: Fix MFG_ASYNC power domain > > > > > clock > > > > > arm64: dts: mediatek: mt8173: Add GPU device nodes > > > > > > > > > > .../clock/mediatek,mt8173-mfgtop.yaml | 70 +++++ > > > > > .../bindings/gpu/img,powervr-rogue.yaml | 1 + > > > > > arch/arm64/boot/dts/mediatek/mt8173.dtsi | 33 ++- > > > > > drivers/clk/mediatek/Kconfig | 9 + > > > > > drivers/clk/mediatek/Makefile | 1 + > > > > > drivers/clk/mediatek/clk-mt8173-mfgtop.c | 243 > > > > > ++++++++++++++++++ > > > > > include/dt-bindings/clock/mt8173-clk.h | 7 + > > > > > 7 files changed, 363 insertions(+), 1 deletion(-) > > > > > create mode 100644 > > > > > Documentation/devicetree/bindings/clock/mediatek,mt8173- > > > > > mfgtop.yaml > > > > > create mode 100644 drivers/clk/mediatek/clk-mt8173-mfgtop.c
在 2026-03-26四的 13:56 +0800,Icenowy Zheng写道: > 在 2026-03-25三的 17:11 +0800,Icenowy Zheng写道: > > 在 2026-03-25三的 16:30 +0800,Icenowy Zheng写道: > > > 在 2026-03-25三的 16:08 +0800,Chen-Yu Tsai写道: > > > > On Wed, Mar 25, 2026 at 4:04 PM Icenowy Zheng <uwu@icenowy.me> > > > > wrote: > > > > > > > > > > 在 2026-03-25三的 15:19 +0800,Chen-Yu Tsai写道: > > > > > > Hi everyone, > > > > > > > > > > > > This is v2 of my MT8173 PowerVR GPU support series. > > > > > > > > > > > > Changes since v1: > > > > > > - Adapted to changed DT bindings > > > > > > - Dropped driver change > > > > > > - Use same power domain for "a" and "b" GPU power domains > > > > > > > > > > > > This update was requested by Icenowy. > > > > > > > > > > > > > > > > > > This series enables the PowerVR GPU found in the MT8173 > > > > > > SoC, > > > > > > found in > > > > > > some Chromebooks. > > > > > > > > > > > > This version is different from the initial powervr driver > > > > > > submission > > > > > > [1] > > > > > > in that it splits out the GPU glue layer support out of the > > > > > > powervr > > > > > > driver and into a separate clock and power domain driver. > > > > > > The > > > > > > glue > > > > > > code > > > > > > is otherwise the same, and also the same as found in the > > > > > > ChromeOS > > > > > > kernels, with some extra comments and macro names added > > > > > > where > > > > > > possible. > > > > > > > > > > > > Patch 1 adds a binding for the glue layer, called mfgtop. > > > > > > The > > > > > > glue > > > > > > layer > > > > > > contains clock and power controls for the GPU. > > > > > > > > > > > > Patch 2 adds a driver for the glue layer. > > > > > > > > > > > > Patch 3 adds an entry for the MT8173 GPU and 6XT series to > > > > > > the > > > > > > PowerVR > > > > > > binding. > > > > > > > > > > > > Patch 4 adds an entry for the PowerVR 6XT series GPU to the > > > > > > driver. > > > > > > > > > > > > Patch 5 corrects the clock for the GPU (called MFG) power > > > > > > domain. > > > > > > > > > > > > Patch 6 adds device nodes for the GPU and glue layer to the > > > > > > MT8173 > > > > > > dtsi > > > > > > file. > > > > > > > > > > > > Patch 2 and 6 depend on patch 1 to build. I suppose some > > > > > > common > > > > > > immutable tree would be needed from the MediaTek > > > > > > maintainers. > > > > > > > > > > > > The kernel driver successfully probes the hardware and > > > > > > loads > > > > > > the > > > > > > "rogue_4.40.2.51_v1.fw" firmware provided by Imagination > > > > > > Technologies > > > > > > [2]. > > > > > > Userspace was tested with Mesa 24.0.8 from Debian Trixie > > > > > > rebuilt > > > > > > with > > > > > > the powervr vulkan driver enabled. `vulkaninfo` gives some > > > > > > information > > > > > > about the GPU (attached at the end), but running the > > > > > > `triangle` > > > > > > example > > > > > > from the Sascha Willems demos [3] with -DUSE_D2D_WSI=ON as > > > > > > recommended [4] > > > > > > failed with: > > > > > > > > > > > > Can't find a display and a display mode! > > > > > > > > > > I think when using D2D the demos want width and height to be > > > > > explicitly > > > > > specified, otherwise it seems to hardcode 1280x720. > > > > > > > > > > If you're using an elm, could you try to add `-w 1920 -h > > > > > 1080` > > > > > or > > > > > for > > > > > hana `-w 1366 -h 768` ? > > > > > > > > I only did the basic `vulkaninfo` test this time around. To do > > > > anything > > > > interesting probably requires the Mesa 26.1 release. > > > > > > > > PVR_I_WANT_A_BROKEN_VULKAN_DRIVER=1 \ > > > > vkmark --winsys kms -D b81f54f8568deb0fb70a6a1ed845b65d > > > > > > > > just reports "Error: Device specified by uuid is not available" > > > > > > I am very sorry to tell you that, when I run Sascha's demo with > > > Mesa > > > main, I got GPU lost immediately... > > > > > > ``` > > > [ 441.509433] powervr 13000000.gpu: [drm] *ERROR* GPU device > > > lost > > > ``` > > The device lost message seems to be some bug of the open source KMD > or > the firmware. > > When I disable runtime power management of the 13000000.gpu device, > this message does not appear, instead the following message appears > and > the GPU can continue to accept jobs: > > ``` > powervr 13000000.gpu: [drm] Received unknown FWCCB command 2abc0070 > ``` Both the device lost behavior and this message are suspicious, but at least they shouldn't be this patchset's fault. So, for patches 2, 4, 5 in this patchset: `Tested-by: Icenowy Zheng <zhengxingda@iscas.ac.cn>` (DT binding maintainers suggest not to give binding patches t-b tags) > > > > > However, Zink on PowerVR works, and on Lichee Pi 4A I also got > > `VK_ERROR_DEVICE_LOST` when running Sascha's demos (although the > > kernel > > does not report device lost). > > > > I bet it's a regression on the VK_KHR_display code. > > I'm now sure that it's a regression, it's now tracked at [1]. It's now getting fixed (Mesa MR !40640, already being processed by Marge Bot). Thanks, Icenowy > > [1] https://gitlab.freedesktop.org/mesa/mesa/-/issues/15161 > > > > > Thanks, > > Icenowy > > > > > > > > Icenowy > > > > > > > > > > > This is with Mesa 26.0.2 packages from Debian testing. At least > > > > now > > > > have the powervr vulkan driver enabled by default, so I don't > > > > have > > > > to rebuild the packages again. > > > > > > > > > > > > ChenYu > > > > > > > > > Thanks > > > > > Icenowy > > > > > > > > > > > > > > > > > Same program worked correctly on a BeaglePlay and displayed > > > > > > a > > > > > > color > > > > > > gradient triangle. Not sure what went wrong here. > > > > > > > > > > > > Anyway, please have a look and test. > > > > > > > > > > > > > > > > > > Thanks > > > > > > ChenYu > > > > > > > > > > > > [1] > > > > > > https://lore.kernel.org/dri-devel/20220815165156.118212-2-sarah.walker@imgtec.com/ > > > > > > [2] > > > > > > https://gitlab.freedesktop.org/imagination/linux-firmware/-/tree/powervr > > > > > > [3] https://github.com/SaschaWillems/Vulkan > > > > > > [4] > > > > > > https://lore.kernel.org/dri-devel/f2b2671e-5acc-4dec-9c2e-3c9cd2e1f19e@imgtec.com/ > > > > > > > > > > > > Chen-Yu Tsai (5): > > > > > > dt-bindings: clock: mediatek: Add mt8173 mfgtop > > > > > > clk: mediatek: Add mt8173-mfgtop driver > > > > > > dt-bindings: gpu: powervr-rogue: Add MediaTek MT8173 GPU > > > > > > arm64: dts: mediatek: mt8173: Fix MFG_ASYNC power domain > > > > > > clock > > > > > > arm64: dts: mediatek: mt8173: Add GPU device nodes > > > > > > > > > > > > .../clock/mediatek,mt8173-mfgtop.yaml | 70 +++++ > > > > > > .../bindings/gpu/img,powervr-rogue.yaml | 1 + > > > > > > arch/arm64/boot/dts/mediatek/mt8173.dtsi | 33 ++- > > > > > > drivers/clk/mediatek/Kconfig | 9 + > > > > > > drivers/clk/mediatek/Makefile | 1 + > > > > > > drivers/clk/mediatek/clk-mt8173-mfgtop.c | 243 > > > > > > ++++++++++++++++++ > > > > > > include/dt-bindings/clock/mt8173-clk.h | 7 + > > > > > > 7 files changed, 363 insertions(+), 1 deletion(-) > > > > > > create mode 100644 > > > > > > Documentation/devicetree/bindings/clock/mediatek,mt8173- > > > > > > mfgtop.yaml > > > > > > create mode 100644 drivers/clk/mediatek/clk-mt8173- > > > > > > mfgtop.c
在 2026-03-25三的 16:30 +0800,Icenowy Zheng写道: > 在 2026-03-25三的 16:08 +0800,Chen-Yu Tsai写道: > > On Wed, Mar 25, 2026 at 4:04 PM Icenowy Zheng <uwu@icenowy.me> > > wrote: > > > > > > 在 2026-03-25三的 15:19 +0800,Chen-Yu Tsai写道: > > > > Hi everyone, > > > > > > > > This is v2 of my MT8173 PowerVR GPU support series. > > > > > > > > Changes since v1: > > > > - Adapted to changed DT bindings > > > > - Dropped driver change > > > > - Use same power domain for "a" and "b" GPU power domains > > > > > > > > This update was requested by Icenowy. > > > > > > > > > > > > This series enables the PowerVR GPU found in the MT8173 SoC, > > > > found in > > > > some Chromebooks. > > > > > > > > This version is different from the initial powervr driver > > > > submission > > > > [1] > > > > in that it splits out the GPU glue layer support out of the > > > > powervr > > > > driver and into a separate clock and power domain driver. The > > > > glue > > > > code > > > > is otherwise the same, and also the same as found in the > > > > ChromeOS > > > > kernels, with some extra comments and macro names added where > > > > possible. > > > > > > > > Patch 1 adds a binding for the glue layer, called mfgtop. The > > > > glue > > > > layer > > > > contains clock and power controls for the GPU. > > > > > > > > Patch 2 adds a driver for the glue layer. > > > > > > > > Patch 3 adds an entry for the MT8173 GPU and 6XT series to the > > > > PowerVR > > > > binding. > > > > > > > > Patch 4 adds an entry for the PowerVR 6XT series GPU to the > > > > driver. > > > > > > > > Patch 5 corrects the clock for the GPU (called MFG) power > > > > domain. > > > > > > > > Patch 6 adds device nodes for the GPU and glue layer to the > > > > MT8173 > > > > dtsi > > > > file. > > > > > > > > Patch 2 and 6 depend on patch 1 to build. I suppose some common > > > > immutable tree would be needed from the MediaTek maintainers. > > > > > > > > The kernel driver successfully probes the hardware and loads > > > > the > > > > "rogue_4.40.2.51_v1.fw" firmware provided by Imagination > > > > Technologies > > > > [2]. > > > > Userspace was tested with Mesa 24.0.8 from Debian Trixie > > > > rebuilt > > > > with > > > > the powervr vulkan driver enabled. `vulkaninfo` gives some > > > > information > > > > about the GPU (attached at the end), but running the `triangle` > > > > example > > > > from the Sascha Willems demos [3] with -DUSE_D2D_WSI=ON as > > > > recommended [4] > > > > failed with: > > > > > > > > Can't find a display and a display mode! > > > > > > I think when using D2D the demos want width and height to be > > > explicitly > > > specified, otherwise it seems to hardcode 1280x720. > > > > > > If you're using an elm, could you try to add `-w 1920 -h 1080` or > > > for > > > hana `-w 1366 -h 768` ? > > > > I only did the basic `vulkaninfo` test this time around. To do > > anything > > interesting probably requires the Mesa 26.1 release. > > > > PVR_I_WANT_A_BROKEN_VULKAN_DRIVER=1 \ > > vkmark --winsys kms -D b81f54f8568deb0fb70a6a1ed845b65d > > > > just reports "Error: Device specified by uuid is not available" > > I am very sorry to tell you that, when I run Sascha's demo with Mesa > main, I got GPU lost immediately... > > ``` > [ 441.509433] powervr 13000000.gpu: [drm] *ERROR* GPU device lost > ``` Sidenote: I think this is some power domain management issue, because I saw the kernel saying `vgpu: disabling` , which shouldn't happen if the GPU is active? > > Icenowy > > > > > This is with Mesa 26.0.2 packages from Debian testing. At least now > > have the powervr vulkan driver enabled by default, so I don't have > > to rebuild the packages again. > > > > > > ChenYu > > > > > Thanks > > > Icenowy > > > > > > > > > > > Same program worked correctly on a BeaglePlay and displayed a > > > > color > > > > gradient triangle. Not sure what went wrong here. > > > > > > > > Anyway, please have a look and test. > > > > > > > > > > > > Thanks > > > > ChenYu > > > > > > > > [1] > > > > https://lore.kernel.org/dri-devel/20220815165156.118212-2-sarah.walker@imgtec.com/ > > > > [2] > > > > https://gitlab.freedesktop.org/imagination/linux-firmware/-/tree/powervr > > > > [3] https://github.com/SaschaWillems/Vulkan > > > > [4] > > > > https://lore.kernel.org/dri-devel/f2b2671e-5acc-4dec-9c2e-3c9cd2e1f19e@imgtec.com/ > > > > > > > > Chen-Yu Tsai (5): > > > > dt-bindings: clock: mediatek: Add mt8173 mfgtop > > > > clk: mediatek: Add mt8173-mfgtop driver > > > > dt-bindings: gpu: powervr-rogue: Add MediaTek MT8173 GPU > > > > arm64: dts: mediatek: mt8173: Fix MFG_ASYNC power domain > > > > clock > > > > arm64: dts: mediatek: mt8173: Add GPU device nodes > > > > > > > > .../clock/mediatek,mt8173-mfgtop.yaml | 70 +++++ > > > > .../bindings/gpu/img,powervr-rogue.yaml | 1 + > > > > arch/arm64/boot/dts/mediatek/mt8173.dtsi | 33 ++- > > > > drivers/clk/mediatek/Kconfig | 9 + > > > > drivers/clk/mediatek/Makefile | 1 + > > > > drivers/clk/mediatek/clk-mt8173-mfgtop.c | 243 > > > > ++++++++++++++++++ > > > > include/dt-bindings/clock/mt8173-clk.h | 7 + > > > > 7 files changed, 363 insertions(+), 1 deletion(-) > > > > create mode 100644 > > > > Documentation/devicetree/bindings/clock/mediatek,mt8173- > > > > mfgtop.yaml > > > > create mode 100644 drivers/clk/mediatek/clk-mt8173-mfgtop.c
On Wed, Mar 25, 2026 at 4:42 PM Icenowy Zheng <uwu@icenowy.me> wrote: > > 在 2026-03-25三的 16:30 +0800,Icenowy Zheng写道: > > 在 2026-03-25三的 16:08 +0800,Chen-Yu Tsai写道: > > > On Wed, Mar 25, 2026 at 4:04 PM Icenowy Zheng <uwu@icenowy.me> > > > wrote: > > > > > > > > 在 2026-03-25三的 15:19 +0800,Chen-Yu Tsai写道: > > > > > Hi everyone, > > > > > > > > > > This is v2 of my MT8173 PowerVR GPU support series. > > > > > > > > > > Changes since v1: > > > > > - Adapted to changed DT bindings > > > > > - Dropped driver change > > > > > - Use same power domain for "a" and "b" GPU power domains > > > > > > > > > > This update was requested by Icenowy. > > > > > > > > > > > > > > > This series enables the PowerVR GPU found in the MT8173 SoC, > > > > > found in > > > > > some Chromebooks. > > > > > > > > > > This version is different from the initial powervr driver > > > > > submission > > > > > [1] > > > > > in that it splits out the GPU glue layer support out of the > > > > > powervr > > > > > driver and into a separate clock and power domain driver. The > > > > > glue > > > > > code > > > > > is otherwise the same, and also the same as found in the > > > > > ChromeOS > > > > > kernels, with some extra comments and macro names added where > > > > > possible. > > > > > > > > > > Patch 1 adds a binding for the glue layer, called mfgtop. The > > > > > glue > > > > > layer > > > > > contains clock and power controls for the GPU. > > > > > > > > > > Patch 2 adds a driver for the glue layer. > > > > > > > > > > Patch 3 adds an entry for the MT8173 GPU and 6XT series to the > > > > > PowerVR > > > > > binding. > > > > > > > > > > Patch 4 adds an entry for the PowerVR 6XT series GPU to the > > > > > driver. > > > > > > > > > > Patch 5 corrects the clock for the GPU (called MFG) power > > > > > domain. > > > > > > > > > > Patch 6 adds device nodes for the GPU and glue layer to the > > > > > MT8173 > > > > > dtsi > > > > > file. > > > > > > > > > > Patch 2 and 6 depend on patch 1 to build. I suppose some common > > > > > immutable tree would be needed from the MediaTek maintainers. > > > > > > > > > > The kernel driver successfully probes the hardware and loads > > > > > the > > > > > "rogue_4.40.2.51_v1.fw" firmware provided by Imagination > > > > > Technologies > > > > > [2]. > > > > > Userspace was tested with Mesa 24.0.8 from Debian Trixie > > > > > rebuilt > > > > > with > > > > > the powervr vulkan driver enabled. `vulkaninfo` gives some > > > > > information > > > > > about the GPU (attached at the end), but running the `triangle` > > > > > example > > > > > from the Sascha Willems demos [3] with -DUSE_D2D_WSI=ON as > > > > > recommended [4] > > > > > failed with: > > > > > > > > > > Can't find a display and a display mode! > > > > > > > > I think when using D2D the demos want width and height to be > > > > explicitly > > > > specified, otherwise it seems to hardcode 1280x720. > > > > > > > > If you're using an elm, could you try to add `-w 1920 -h 1080` or > > > > for > > > > hana `-w 1366 -h 768` ? > > > > > > I only did the basic `vulkaninfo` test this time around. To do > > > anything > > > interesting probably requires the Mesa 26.1 release. > > > > > > PVR_I_WANT_A_BROKEN_VULKAN_DRIVER=1 \ > > > vkmark --winsys kms -D b81f54f8568deb0fb70a6a1ed845b65d > > > > > > just reports "Error: Device specified by uuid is not available" > > > > I am very sorry to tell you that, when I run Sascha's demo with Mesa > > main, I got GPU lost immediately... > > > > ``` > > [ 441.509433] powervr 13000000.gpu: [drm] *ERROR* GPU device lost > > ``` > > Sidenote: I think this is some power domain management issue, because I > saw the kernel saying `vgpu: disabling` , which shouldn't happen if the > GPU is active? AFAICT "vgpu" is the vgpu output from the primary PMIC. This one is unused. The actual regulator supplying the GPU is from the secondary PMIC. The rail is called VBUCKB... ChenYu > > > > Icenowy > > > > > > > > This is with Mesa 26.0.2 packages from Debian testing. At least now > > > have the powervr vulkan driver enabled by default, so I don't have > > > to rebuild the packages again. > > > > > > > > > ChenYu > > > > > > > Thanks > > > > Icenowy > > > > > > > > > > > > > > Same program worked correctly on a BeaglePlay and displayed a > > > > > color > > > > > gradient triangle. Not sure what went wrong here. > > > > > > > > > > Anyway, please have a look and test. > > > > > > > > > > > > > > > Thanks > > > > > ChenYu > > > > > > > > > > [1] > > > > > https://lore.kernel.org/dri-devel/20220815165156.118212-2-sarah.walker@imgtec.com/ > > > > > [2] > > > > > https://gitlab.freedesktop.org/imagination/linux-firmware/-/tree/powervr > > > > > [3] https://github.com/SaschaWillems/Vulkan > > > > > [4] > > > > > https://lore.kernel.org/dri-devel/f2b2671e-5acc-4dec-9c2e-3c9cd2e1f19e@imgtec.com/ > > > > > > > > > > Chen-Yu Tsai (5): > > > > > dt-bindings: clock: mediatek: Add mt8173 mfgtop > > > > > clk: mediatek: Add mt8173-mfgtop driver > > > > > dt-bindings: gpu: powervr-rogue: Add MediaTek MT8173 GPU > > > > > arm64: dts: mediatek: mt8173: Fix MFG_ASYNC power domain > > > > > clock > > > > > arm64: dts: mediatek: mt8173: Add GPU device nodes > > > > > > > > > > .../clock/mediatek,mt8173-mfgtop.yaml | 70 +++++ > > > > > .../bindings/gpu/img,powervr-rogue.yaml | 1 + > > > > > arch/arm64/boot/dts/mediatek/mt8173.dtsi | 33 ++- > > > > > drivers/clk/mediatek/Kconfig | 9 + > > > > > drivers/clk/mediatek/Makefile | 1 + > > > > > drivers/clk/mediatek/clk-mt8173-mfgtop.c | 243 > > > > > ++++++++++++++++++ > > > > > include/dt-bindings/clock/mt8173-clk.h | 7 + > > > > > 7 files changed, 363 insertions(+), 1 deletion(-) > > > > > create mode 100644 > > > > > Documentation/devicetree/bindings/clock/mediatek,mt8173- > > > > > mfgtop.yaml > > > > > create mode 100644 drivers/clk/mediatek/clk-mt8173-mfgtop.c
© 2016 - 2026 Red Hat, Inc.