On Mon, Sep 01, 2025 at 06:25:01AM +0800, briansune wrote:

> Add dmareset command to release PL330 DMA channel resets.
> 
> Signed-off-by: briansune <[email protected]>
> ---
>  cmd/Kconfig  |  7 +++++++
>  cmd/Makefile |  1 +
>  cmd/dma.c    | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++
>  3 files changed, 60 insertions(+)
>  create mode 100644 cmd/dma.c
> 
> diff --git a/cmd/Kconfig b/cmd/Kconfig
> index e55a48a49af..720e3121018 100644
> --- a/cmd/Kconfig
> +++ b/cmd/Kconfig
> @@ -1149,6 +1149,13 @@ config CMD_DM
>         can be useful to see the state of driver model for debugging or
>         interest.
>  
> +config CMD_DMA
> +     bool "dma - Release Reset DMA Channels for PL330 Handshake"
> +     default y

New commands should not be "default y" and this likely doesn't build in
a whole lot of cases. If this is indeed PL330 specific, it should have a
less-generic name.

> +     help
> +       Provides access to Reset Manager Per2ModRst. Enables DMA
> +       channels for ARM PrimeCell PL330 via reset release.
> +
>  config CMD_FASTBOOT
>       bool "fastboot - Android fastboot support"
>       depends on FASTBOOT
> diff --git a/cmd/Makefile b/cmd/Makefile
> index 082470fa104..748c53767b8 100644
> --- a/cmd/Makefile
> +++ b/cmd/Makefile
> @@ -54,6 +54,7 @@ obj-$(CONFIG_CMD_CPU) += cpu.o
>  obj-$(CONFIG_CMD_DATE) += date.o
>  obj-$(CONFIG_CMD_DEMO) += demo.o
>  obj-$(CONFIG_CMD_DM) += dm.o
> +obj-$(CONFIG_CMD_DMA) += dma.o
>  obj-$(CONFIG_CMD_UFETCH) += ufetch.o
>  obj-$(CONFIG_CMD_SOUND) += sound.o
>  ifdef CONFIG_POST
> diff --git a/cmd/dma.c b/cmd/dma.c
> new file mode 100644
> index 00000000000..b35c2f32fcc
> --- /dev/null
> +++ b/cmd/dma.c
> @@ -0,0 +1,52 @@
> +// SPDX-License-Identifier: GPL-2.0+
> +/*
> + * Brian Sune <[email protected]>
> + */
> +
> +#include <vsprintf.h>
> +#include <command.h>
> +#include <asm/io.h>
> +
> +#ifdef CONFIG_TARGET_SOCFPGA_GEN5
> +#include <asm/arch/base_addr_ac5.h>
> +#endif

If this can't be done generally for ARM then we shouldn't guard the
include, it needs to be part of the Kconfig dependencies.

> +#define RSTMGR_PERMODRST 0x18   /* PERMODRST register offset */
> +
> +static int do_dmareset(struct cmd_tbl *cmdtp, int flag, int argc,
> +     char * const argv[])

Incorrect spacing, please use checkpatch.pl to find and correct issues
like this. Thanks.

-- 
Tom

Attachment: signature.asc
Description: PGP signature

Reply via email to