Re: [PATCH v8 0/5] TH1520 SoC: Add AON firmware & power-domain support
From: Ulf Hansson
Date: Thu Mar 13 2025 - 09:46:48 EST
On Thu, 13 Mar 2025 at 08:56, Drew Fustini <drew@xxxxxxxx> wrote:
>
> On Tue, Mar 11, 2025 at 06:18:55PM +0100, Michal Wilczynski wrote:
> > This patch series introduces and documents power management (PM) support and
> > the AON firmware driver for the T-Head TH1520 SoC, as used on the LicheePi 4A
> > board. While part of a larger effort to enable the Imagination BXM-4-64 GPU
> > upstream, these patches can merge independently.
> >
> > Bigger series cover letter:
> > https://lore.kernel.org/all/20250219140239.1378758-1-m.wilczynski@xxxxxxxxxxx/
> >
> > This series is versioned to maintain continuity with the bigger patchset it is
> > a subseries of. Please find below a changelog for the AON & power-domain:
> >
> > v8:
> > - add proper cleanup in the th1520_pd_probe()
> > - add "suppress_bind_attrs = true", since there is no need to unbound the driver
> > during runtime. This simplifies the code by eliminating the remove function
> >
> > v7:
> > - add '#include <linux/slab.h", due to kernel robot issue
> >
> > v6:
> > - split the firmware & power-domain patches into a separate series
> >
> > v5:
> > - changed the AON driver to be a set of library functions rather than a
> > standalone driver
> >
> > v4:
> > - added workaround to disable AUDIO power domain to prevent firmware crashes
> >
> > v3:
> > - consolidated device tree representation by merging aon and power-domain nodes
> > while maintaining separate drivers internally
> > - power-domain driver is now instantiated from within the aon driver
> > - fixed optional module dependencies in Kconfig
> > - added kernel-doc comments for all exported functions
> > - implemented th1520_aon_remove() to properly clean up mailbox channel
> > resources
> >
> > v2:
> > - introduced a new firmware driver to manage power-related operations.
> > - rewrote the power-domain driver to function alongside the firmware driver.
> > These nodes in the device tree lack direct address spaces, despite
> > representing HW blocks. Control is achieved via firmware protocol messages
> > transmitted through a mailbox to the E902 core.
> > - added new dt-bindings for power and firmware nodes.
> > - ran dtbs_check and dt_binding_check to ensure compliance.
> >
> > Michal Wilczynski (5):
> > dt-bindings: firmware: thead,th1520: Add support for firmware node
> > firmware: thead: Add AON firmware protocol driver
> > dt-bindings: power: Add TH1520 SoC power domains
> > pmdomain: thead: Add power-domain driver for TH1520
> > riscv: Enable PM_GENERIC_DOMAINS for T-Head SoCs
> >
> > .../bindings/firmware/thead,th1520-aon.yaml | 53 ++++
> > MAINTAINERS | 5 +
> > arch/riscv/Kconfig.socs | 1 +
> > drivers/firmware/Kconfig | 9 +
> > drivers/firmware/Makefile | 1 +
> > drivers/firmware/thead,th1520-aon.c | 248 ++++++++++++++++++
> > drivers/pmdomain/Kconfig | 1 +
> > drivers/pmdomain/Makefile | 1 +
> > drivers/pmdomain/thead/Kconfig | 12 +
> > drivers/pmdomain/thead/Makefile | 2 +
> > drivers/pmdomain/thead/th1520-pm-domains.c | 218 +++++++++++++++
> > .../dt-bindings/power/thead,th1520-power.h | 19 ++
> > .../linux/firmware/thead/thead,th1520-aon.h | 200 ++++++++++++++
> > 13 files changed, 770 insertions(+)
> > create mode 100644 Documentation/devicetree/bindings/firmware/thead,th1520-aon.yaml
> > create mode 100644 drivers/firmware/thead,th1520-aon.c
> > create mode 100644 drivers/pmdomain/thead/Kconfig
> > create mode 100644 drivers/pmdomain/thead/Makefile
> > create mode 100644 drivers/pmdomain/thead/th1520-pm-domains.c
> > create mode 100644 include/dt-bindings/power/thead,th1520-power.h
> > create mode 100644 include/linux/firmware/thead/thead,th1520-aon.h
> >
> > --
> > 2.34.1
>
> For the series:
>
> Acked-by: Drew Fustini <drew@xxxxxxxx>
Okay, patch 1 -> patch 4 applied for next, thanks!
I am leaving patch5 for now.
Kind regards
Uffe