[v5,00/12] Panfrost: Improve and add MediaTek SoCs support

Message ID 20230316102041.210269-1-angelogioacchino.delregno@collabora.com
Headers
Series Panfrost: Improve and add MediaTek SoCs support |

Message

AngeloGioacchino Del Regno March 16, 2023, 10:20 a.m. UTC
  Changes in v5:
 - Changed minItems for power-domain-names in base schema as
   suggested by Rob

Changes in v4:
 - Refactored power-domains and power-domain-names exclusions as
   suggested by Krzysztof
 - Small changes in MT8192 bindings addition

Changes in v3:
 - Changed MT8186 bindings to declare only two power domains
 - Added a commit introducing MT8186 specific platform data to
   panfrost_drv

Changes in v2:
 - Add power-domain-names commit from Chen-Yu to the series
 - Kept sram-supply in base schema, overridden for non-MediaTek
 - Added Reviewed-by tags from Steven Price to the driver commits
   (as released in reply to v1's cover letter - thanks!)

This series adds support for new MediaTek SoCs (MT8186/MT8192/MT8195)
and improves MT8183 support: since the mtk-regulator-coupler driver
was picked, it is now useless for Panfrost to look for, and manage,
two regulators (GPU Vcore and GPU SRAM) on MediaTek;

The aforementioned driver will take care of keeping the voltage
relation (/constraints) of the two regulators on its own when a
voltage change request is sent to the Vcore, solving the old time
issue with not working DVFS on Panfrost+MediaTek (due to devfreq
supporting only single regulator).

In the specific case of MT8183, in order to not break the ABI, it
was necessary to add a new compatible for enabling DVFS.

Alyssa Rosenzweig (3):
  drm/panfrost: Increase MAX_PM_DOMAINS to 5
  drm/panfrost: Add the MT8192 GPU ID
  drm/panfrost: Add mediatek,mt8192-mali compatible

AngeloGioacchino Del Regno (9):
  dt-bindings: gpu: mali-bifrost: Split out MediaTek power-domains
    variation
  dt-bindings: gpu: mali-bifrost: Set power-domains maxItems to 5
  dt-bindings: gpu: mali-bifrost: Fix power-domain-names validation
  dt-bindings: gpu: mali-bifrost: Add sub-schema for MT8192's power
    domains
  dt-bindings: gpu: mali-bifrost: Add new MT8183 compatible
  dt-bindings: gpu: mali-bifrost: Add support for MediaTek MT8186
  dt-bindings: gpu: mali-bifrost: Add compatible for MT8195 SoC
  drm/panfrost: Add new compatible for Mali on the MT8183 SoC
  drm/panfrost: Add support for Mali on the MT8186 SoC

 .../bindings/gpu/arm,mali-bifrost.yaml        | 80 ++++++++++++++++++-
 drivers/gpu/drm/panfrost/panfrost_device.h    |  2 +-
 drivers/gpu/drm/panfrost/panfrost_drv.c       | 37 +++++++++
 drivers/gpu/drm/panfrost/panfrost_gpu.c       |  8 ++
 4 files changed, 123 insertions(+), 4 deletions(-)
  

Comments

AngeloGioacchino Del Regno March 23, 2023, 8:24 a.m. UTC | #1
Il 16/03/23 11:20, AngeloGioacchino Del Regno ha scritto:
> Changes in v5:
>   - Changed minItems for power-domain-names in base schema as
>     suggested by Rob
> 
> Changes in v4:
>   - Refactored power-domains and power-domain-names exclusions as
>     suggested by Krzysztof
>   - Small changes in MT8192 bindings addition
> 
> Changes in v3:
>   - Changed MT8186 bindings to declare only two power domains
>   - Added a commit introducing MT8186 specific platform data to
>     panfrost_drv
> 
> Changes in v2:
>   - Add power-domain-names commit from Chen-Yu to the series
>   - Kept sram-supply in base schema, overridden for non-MediaTek
>   - Added Reviewed-by tags from Steven Price to the driver commits
>     (as released in reply to v1's cover letter - thanks!)
> 
> This series adds support for new MediaTek SoCs (MT8186/MT8192/MT8195)
> and improves MT8183 support: since the mtk-regulator-coupler driver
> was picked, it is now useless for Panfrost to look for, and manage,
> two regulators (GPU Vcore and GPU SRAM) on MediaTek;
> 
> The aforementioned driver will take care of keeping the voltage
> relation (/constraints) of the two regulators on its own when a
> voltage change request is sent to the Vcore, solving the old time
> issue with not working DVFS on Panfrost+MediaTek (due to devfreq
> supporting only single regulator).
> 
> In the specific case of MT8183, in order to not break the ABI, it
> was necessary to add a new compatible for enabling DVFS.
> 
> Alyssa Rosenzweig (3):
>    drm/panfrost: Increase MAX_PM_DOMAINS to 5
>    drm/panfrost: Add the MT8192 GPU ID
>    drm/panfrost: Add mediatek,mt8192-mali compatible
> 
> AngeloGioacchino Del Regno (9):
>    dt-bindings: gpu: mali-bifrost: Split out MediaTek power-domains
>      variation
>    dt-bindings: gpu: mali-bifrost: Set power-domains maxItems to 5
>    dt-bindings: gpu: mali-bifrost: Fix power-domain-names validation
>    dt-bindings: gpu: mali-bifrost: Add sub-schema for MT8192's power
>      domains
>    dt-bindings: gpu: mali-bifrost: Add new MT8183 compatible
>    dt-bindings: gpu: mali-bifrost: Add support for MediaTek MT8186
>    dt-bindings: gpu: mali-bifrost: Add compatible for MT8195 SoC
>    drm/panfrost: Add new compatible for Mali on the MT8183 SoC
>    drm/panfrost: Add support for Mali on the MT8186 SoC
> 
>   .../bindings/gpu/arm,mali-bifrost.yaml        | 80 ++++++++++++++++++-
>   drivers/gpu/drm/panfrost/panfrost_device.h    |  2 +-
>   drivers/gpu/drm/panfrost/panfrost_drv.c       | 37 +++++++++
>   drivers/gpu/drm/panfrost/panfrost_gpu.c       |  8 ++
>   4 files changed, 123 insertions(+), 4 deletions(-)
> 

Hello maintainers,

this series is fully tested, fully reviewed and fully ready.

Can anyone please pick it ASAP, so that we can finally get GPU support
on MediaTek SoCs (including lots of Chromebooks)?

Many thanks!
Angelo
  
Boris Brezillon March 23, 2023, 10:31 a.m. UTC | #2
On Thu, 23 Mar 2023 09:24:06 +0100
AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
wrote:

> Il 16/03/23 11:20, AngeloGioacchino Del Regno ha scritto:
> > Changes in v5:
> >   - Changed minItems for power-domain-names in base schema as
> >     suggested by Rob
> > 
> > Changes in v4:
> >   - Refactored power-domains and power-domain-names exclusions as
> >     suggested by Krzysztof
> >   - Small changes in MT8192 bindings addition
> > 
> > Changes in v3:
> >   - Changed MT8186 bindings to declare only two power domains
> >   - Added a commit introducing MT8186 specific platform data to
> >     panfrost_drv
> > 
> > Changes in v2:
> >   - Add power-domain-names commit from Chen-Yu to the series
> >   - Kept sram-supply in base schema, overridden for non-MediaTek
> >   - Added Reviewed-by tags from Steven Price to the driver commits
> >     (as released in reply to v1's cover letter - thanks!)
> > 
> > This series adds support for new MediaTek SoCs (MT8186/MT8192/MT8195)
> > and improves MT8183 support: since the mtk-regulator-coupler driver
> > was picked, it is now useless for Panfrost to look for, and manage,
> > two regulators (GPU Vcore and GPU SRAM) on MediaTek;
> > 
> > The aforementioned driver will take care of keeping the voltage
> > relation (/constraints) of the two regulators on its own when a
> > voltage change request is sent to the Vcore, solving the old time
> > issue with not working DVFS on Panfrost+MediaTek (due to devfreq
> > supporting only single regulator).
> > 
> > In the specific case of MT8183, in order to not break the ABI, it
> > was necessary to add a new compatible for enabling DVFS.
> > 
> > Alyssa Rosenzweig (3):
> >    drm/panfrost: Increase MAX_PM_DOMAINS to 5
> >    drm/panfrost: Add the MT8192 GPU ID
> >    drm/panfrost: Add mediatek,mt8192-mali compatible
> > 
> > AngeloGioacchino Del Regno (9):
> >    dt-bindings: gpu: mali-bifrost: Split out MediaTek power-domains
> >      variation
> >    dt-bindings: gpu: mali-bifrost: Set power-domains maxItems to 5
> >    dt-bindings: gpu: mali-bifrost: Fix power-domain-names validation
> >    dt-bindings: gpu: mali-bifrost: Add sub-schema for MT8192's power
> >      domains
> >    dt-bindings: gpu: mali-bifrost: Add new MT8183 compatible
> >    dt-bindings: gpu: mali-bifrost: Add support for MediaTek MT8186
> >    dt-bindings: gpu: mali-bifrost: Add compatible for MT8195 SoC
> >    drm/panfrost: Add new compatible for Mali on the MT8183 SoC
> >    drm/panfrost: Add support for Mali on the MT8186 SoC
> > 
> >   .../bindings/gpu/arm,mali-bifrost.yaml        | 80 ++++++++++++++++++-
> >   drivers/gpu/drm/panfrost/panfrost_device.h    |  2 +-
> >   drivers/gpu/drm/panfrost/panfrost_drv.c       | 37 +++++++++
> >   drivers/gpu/drm/panfrost/panfrost_gpu.c       |  8 ++
> >   4 files changed, 123 insertions(+), 4 deletions(-)
> >   
> 
> Hello maintainers,
> 
> this series is fully tested, fully reviewed and fully ready.
> 
> Can anyone please pick it ASAP, so that we can finally get GPU support
> on MediaTek SoCs (including lots of Chromebooks)?

Queued to drm-misc-next.

Thanks,

Boris