Re: [PATCH v2 0/5] Amlogic Meson Always-On ARC remote-processor support

Kevin Hilman
2021-01-25T17:53:36Z

Martin Blumenstingl <martin.blumenstingl@googlemail.com> writes:

> Amlogic Meson6/8/8b/8m2 come with an ARC core in the Always-On (AO)
> power-domain. This is typically used for waking up the ARM CPU after
> powering it down for system suspend.
>
> The exact ARC core used on Meson6 and earlier is not known. I believe
> it is an ARC625, but I am not sure about this. Meson8/8b/8m2 uses an
> ARC EM4 core.
> They all have in common that they use a section of the SoCs SRAM for
> running code on the ARC core.
>
> Unfortunately there's no information about the remote-processor control
> registers in the public Meson8b (S805) datasheet. All information is
> either taken from Amlogic's 3.10 kernel and 2011-03 u-boot or found by
> testing (for example the clock input is not mentioned anywhere in the
> reference code, but disabling it stops the AO ARC core from working).
>
> This series consists of five patches:
> 1: dt-bindings for the SRAM section
> 2: dt-bindings for the SECBUS2 syscon region which contains a few
> bits for controlling this remote processor
> 3: dt-bindings for the AO ARC remote processor
> 4: the driver for booting code on the AO ARC remote processor
> 5: (only included for documentation purposes) dts changes (these will
> be re-sent separately)
>
> Patches #3 and #4 should go through the remoteproc tree. Patches #1
> and #2 may go through Rob's (devicetree) tree, Kevin's linux-amlogic
> tree or through the remoteproc tree. Personally I have no preference
> here.
>
> To test this series I ported the Amlogic serial driver and added the
> board files for the Amlogic AO ARC EM4 to the Zephyr RTOS. The code can
> be found here: [0] (the resulting zephyr.elf can then be loaded as
> remote-processor firmware from Linux).
>
>
> Changes since v1 at [1]:
> - fixed yamllint warnings (after installing the package these now also
> show up on my build machine) in patches #2 and #3. Thanks for the
> hint Rob
> - dropped the explicit "select" statement from the dt-bindings in patch
> #2 as suggested by Rob (thanks)
>
>
> [0] https://github.com/xdarklight/zephyr-rtos/commits/amlogic_ao_em4-20201229
> [1] https://patchwork.kernel.org/project/linux-amlogic/list/?series=407349
>
>
> Martin Blumenstingl (5):
> dt-bindings: sram: Add compatible strings for the Meson AO ARC SRAM
> dt-bindings: Amlogic: add the documentation for the SECBUS2 registers
> dt-bindings: remoteproc: Add the documentation for Meson AO ARC rproc
> remoteproc: meson-mx-ao-arc: Add a driver for the AO ARC remote
> procesor
> ARM: dts: meson: add the AO ARC remote processor

Patches 1-2, 5 queued for v5.12 via the amlogic tree.

Kevin