On Sat, 05 Jul 2025, Qunqin Zhao wrote: > Loongson's Random Number Generator is found inside Loongson Security > Engine chip. > > Co-developed-by: Yinggang Gu <guyingg...@loongson.cn> > Signed-off-by: Yinggang Gu <guyingg...@loongson.cn> > Signed-off-by: Qunqin Zhao <zhaoqun...@loongson.cn> > Reviewed-by: Huacai Chen <chenhua...@loongson.cn> > --- > drivers/crypto/Kconfig | 1 + > drivers/crypto/Makefile | 1 + > drivers/crypto/loongson/Kconfig | 5 + > drivers/crypto/loongson/Makefile | 1 + > drivers/crypto/loongson/loongson-rng.c | 209 +++++++++++++++++++++++++ > 5 files changed, 217 insertions(+) > create mode 100644 drivers/crypto/loongson/Kconfig > create mode 100644 drivers/crypto/loongson/Makefile > create mode 100644 drivers/crypto/loongson/loongson-rng.c > > diff --git a/drivers/crypto/Kconfig b/drivers/crypto/Kconfig > index 9f8a3a5be..f6117bc77 100644 > --- a/drivers/crypto/Kconfig > +++ b/drivers/crypto/Kconfig > @@ -827,6 +827,7 @@ config CRYPTO_DEV_CCREE > If unsure say Y. > > source "drivers/crypto/hisilicon/Kconfig" > +source "drivers/crypto/loongson/Kconfig" > > source "drivers/crypto/amlogic/Kconfig" > > diff --git a/drivers/crypto/Makefile b/drivers/crypto/Makefile > index 22eadcc8f..125b99b24 100644 > --- a/drivers/crypto/Makefile > +++ b/drivers/crypto/Makefile > @@ -44,6 +44,7 @@ obj-y += inside-secure/ > obj-$(CONFIG_CRYPTO_DEV_ARTPEC6) += axis/ > obj-y += xilinx/ > obj-y += hisilicon/ > +obj-y += loongson/ > obj-$(CONFIG_CRYPTO_DEV_AMLOGIC_GXL) += amlogic/ > obj-y += intel/ > obj-y += starfive/ > diff --git a/drivers/crypto/loongson/Kconfig b/drivers/crypto/loongson/Kconfig > new file mode 100644 > index 000000000..15475da8f > --- /dev/null > +++ b/drivers/crypto/loongson/Kconfig > @@ -0,0 +1,5 @@ > +config CRYPTO_DEV_LOONGSON_RNG > + tristate "Support for Loongson RNG Driver" > + depends on MFD_LOONGSON_SE > + help > + Support for Loongson RNG Driver. > diff --git a/drivers/crypto/loongson/Makefile > b/drivers/crypto/loongson/Makefile > new file mode 100644 > index 000000000..1ce5ec32b > --- /dev/null > +++ b/drivers/crypto/loongson/Makefile > @@ -0,0 +1 @@ > +obj-$(CONFIG_CRYPTO_DEV_LOONGSON_RNG) += loongson-rng.o > diff --git a/drivers/crypto/loongson/loongson-rng.c > b/drivers/crypto/loongson/loongson-rng.c > new file mode 100644 > index 000000000..3a4940260 > --- /dev/null > +++ b/drivers/crypto/loongson/loongson-rng.c > @@ -0,0 +1,209 @@ > +// SPDX-License-Identifier: GPL-2.0 > +/* Copyright (c) 2019 HiSilicon Limited. */ > +/* Copyright (c) 2025 Loongson Technology Corporation Limited. */ > + > +#include <linux/crypto.h> > +#include <linux/err.h> > +#include <linux/hw_random.h> > +#include <linux/io.h> > +#include <linux/iopoll.h> > +#include <linux/kernel.h> > +#include <linux/list.h> > +#include <linux/mfd/loongson-se.h>
This depends on the first patch in the series. Does this one have an Ack? -- Lee Jones [李琼斯]