lkml.org 
[lkml]   [2020]   [Apr]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH v6 00/12] ARM/MIPS: DTS: add child nodes describing the PVRSGX GPU present in some OMAP SoC and JZ4780 (and many more)
    From
    Date
    Hi all,

    On 15.04.20 15:04, H. Nikolaus Schaller wrote:
    >
    >> Am 15.04.2020 um 15:02 schrieb Maxime Ripard <maxime@cerno.tech>:
    >>
    >> On Wed, Apr 15, 2020 at 02:41:52PM +0200, H. Nikolaus Schaller wrote:
    >>>>> 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.
    >>>>
    >>>> If it's not been tested on any Allwinner board yet, I'll leave it
    >>>> aside until it's been properly shown to work.
    >>>
    >>> Phillip has tested something on a83.
    >>
    Yes I'm currently working on the a83t demo. The kernel module is loading
    correctly and the clocks, interrupts and resets seems to be working
    correctly.

    I'm currently working on getting the users space driver working with the
    kernel driver. This is hopefully done soon.

    >> I'm a bit skeptical on that one since it doesn't even list the
    >> interrupts connected to the GPU that the binding mandates.
    >
    > I think he left it out for a future update.
    > But best he comments himself.

    I'm currently working on those bindings. They are now 90% done, but they
    are not finished till now. Currently there is some mainline support
    missing to add the full binding. The A83T and also the A31/A31s have a
    GPU Power Off Gating Register in the R_PRCM module, that is not
    supported right now in Mainline. The Register need to be written when
    the GPU is powered on and off.

    @Maxime: I totally agree on your point that a demo needs to be provided
    before the related DTS patches should be provided. That's the reason why
    I added the gpu placeholder patches.
    Do you have an idea how a driver for the R_PRCM stuff can look like? I'm
    not that experienced with the clock driver framework.

    The big question is right now how to proceed with the A83T and A31s
    patches. I see there three options, which one do you prefer?:

    1. Provide now placeholder patches and send new patches, if everything
    is clear and other things are mainlined
    2. Provide now patches as complete as possible and provide later patches
    to complete them when the R_PRCM things are mainlined
    3. Leave them out, till the related work is mainlined and the bindings
    are final.


    Since this GPU IP core is very flexible and the SOC manufactures can
    configure it on their needs, I think the binding will extend in the
    future. For example the SGX544 GPU is available in different
    configurations: there is a SGX544 core and SGX544MPx core. The x stands
    for the count of the USSE (Universal Scalable Shader Engine) cores. For
    example the GPU in the A83T is a MP1 and the A31/A31s a MP2.
    In addition to that some of the GPU's have also a 2D engine.
    There might be even more differences in the GPU's that we don't know
    right now and should be described in the Devicetree, but that's a
    different topic that we should keep in mind.

    Cheers
    Philipp

    \
     
     \ /
      Last update: 2020-04-17 14:11    [W:2.926 / U:0.348 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site