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
signature.asc
Description: PGP signature

