Neil Armstrong <narmstrong@xxxxxxxxxxxx> writes: > On 08/12/2018 18:12, Martin Blumenstingl wrote: >> This series adds support for the Mali-450 GPU on Meson8 and Meson8b. >> Meson6 uses a Mali-400 GPU but since we don't have a clock driver (and >> I don't have a device for testing) Meson6 is left out in this series. >> >> Meson8 uses a Mali-450 MP6 with six pixel processors. Meson8b (as >> cost-reduced SoC) uses a Mali-450 MP2 with two pixel processors. >> I tested both using the open source lima driver and a patched mesa >> from the lima project as well. Since we don't have display support >> on the 32-bit SoCs I used off-screen rendering as described in [0]. >> The result is (for example): [1] >> >> The bootloader (at least on my boards) leaves the Mali clock disabled >> by default. The board crashes when trying to access the Mali registers >> with the "core" clock disabled. >> Thus this series also implements the required clock driver changes. The >> Mali clock tree on Meson8b and Meson8m2 is almost identical to the one >> on GXBB (see the description of patch #3 for more details). Only Meson8 >> is slightly different as it doesn't have a glitch-free mux. Patch #2 >> prepares the meson8b clock driver so we can have different clocks per >> SoC. >> >> Dependencies: >> - the .dts changes depend on my other series "ARM: dts: meson: add the >> APB/APB2 busses" from [2] >> - the .dts changes from this series have no compile-time dependency on >> the clock driver changes because CLKID_MALI was defined in the >> dt-bindings since the first version of the clock driver (but it was >> not used until now). >> - the .dts changes from this series have a runtime dependency on the >> clock driver changes (also from this series) if you have a kernel >> patched with the lima driver (without the lima driver there's no >> runtime dependency) >> >> Other notes: >> By default the GPU runs off the XTAL clock (24MHz). The lima driver >> currently does not update the GPU clock rate. Different frequencies >> have to be requested by adding the following properties to the Mali >> GPU node (to run it at 510MHz for example): >> assigned-clocks = <&clkc CLKID_MALI>; >> assigned-clock-rates = <510000000>; >> >> >> [0] https://gitlab.freedesktop.org/lima/web/wikis/home >> [1] https://abload.de/img/dump0myic0.png >> [2] https://patchwork.kernel.org/cover/10719445/ >> >> >> Martin Blumenstingl (5): >> dt-bindings: gpu: mali-utgard: add Amlogic Meson8 and Meson8b >> compatible >> clk: meson: meson8b: use a separate clock table for Meson8 >> clk: meson: meson8b: add the GPU clock tree >> ARM: dts: meson8: add the Mali-450 MP6 GPU >> ARM: dts: meson8b: add the Mali-450 MP2 GPU >> >> .../bindings/gpu/arm,mali-utgard.txt | 6 + >> arch/arm/boot/dts/meson8.dtsi | 58 +++ >> arch/arm/boot/dts/meson8b.dtsi | 46 +++ >> drivers/clk/meson/meson8b.c | 349 +++++++++++++++++- >> drivers/clk/meson/meson8b.h | 9 +- >> 5 files changed, 461 insertions(+), 7 deletions(-) >> > > Applied patches 2 & 3 to next/drivers for Linux 5.1 > > Kevin, have fun with the other patches ! Fun was had. Patches 1, 4, 5 queued for v5.1 (branch: v5.1/dt) Kevin