[PATCH v3 7/8] test: rng: Add basic test for random number generator(rng) uclass

Sughosh Ganu
2019-12-16T19:01:34Z

hi Patrick,

On Mon, 16 Dec 2019 at 18:12, Patrick DELAUNAY <patrick.delaunay@st.com>
wrote:

> Hi,
>
> > -----Original Message-----
> > From: U-Boot <u-boot-bounces@lists.denx.de> On Behalf Of Sughosh Ganu
> > Sent: vendredi 13 dÃ©cembre 2019 08:14
> > To: u-boot at lists.denx.de
> > Subject: [PATCH v3 7/8] test: rng: Add basic test for random number
> > generator(rng) uclass
> >
> > Add a unit test for testing the rng uclass functionality using the
> sandbox rng
> > driver.
> >
> > Signed-off-by: Sughosh Ganu <sughosh.ganu@linaro.org>
> > Reviewed-by: Patrice Chotard <patrice.chotard@st.com>
> > ---
> > test/dm/Makefile | 1 +
> > test/dm/rng.c | 26 ++++++++++++++++++++++++++
> > 2 files changed, 27 insertions(+)
> > create mode 100644 test/dm/rng.c
>

<snip>

> >
> > diff --git a/test/dm/Makefile b/test/dm/Makefile index 0c2fd5c..f61bf65
> 100644
> > --- a/test/dm/Makefile
> > +++ b/test/dm/Makefile
> > @@ -65,4 +65,5 @@ obj-$(CONFIG_VIRTIO_SANDBOX) += virtio.o
> > obj-$(CONFIG_DMA) += dma.o
> > obj-$(CONFIG_DM_MDIO) += mdio.o
> > obj-$(CONFIG_DM_MDIO_MUX) += mdio_mux.o
> > +obj-$(CONFIG_DM_RNG) += rng.o
> > endif
> > diff --git a/test/dm/rng.c b/test/dm/rng.c new file mode 100644 index
> > 0000000..879e80a
> > --- /dev/null
> > +++ b/test/dm/rng.c
> > @@ -0,0 +1,26 @@
> > +// SPDX-License-Identifier: GPL-2.0-or-later
> > +/*
> > + * Copyright (c) 2019, Linaro Limited
> > + */
> > +
> > +#include <common.h>
> > +#include <dm.h>
> > +#include <rng.h>
> > +#include <dm/test.h>
> > +#include <test/ut.h>
> > +
> > +/* Basic test of the rng uclass */
> > +static int dm_test_rng_read(struct unit_test_state *uts) {
> > + unsigned long val1 = 0, val2 = 0;
> > + struct udevice *dev;
> > +
> > + ut_assertok(uclass_get_device(UCLASS_RNG, 0, &dev));
> > + ut_assertnonnull(dev);
> > + dm_rng_read(dev, &val1, sizeof(val1));
> > + dm_rng_read(dev, &val2, sizeof(val2));
>
> Test return:
>
> ut_assertok(dm_rng_read(dev, &val1, sizeof(val1)));
> ut_assertok(dm_rng_read(dev, &val2, sizeof(val2)))
>

Ok. Will add.

>
> > + ut_assert(val1 != val2);
>
> You can also check the values as the sandbox driver use only the 2 next
> values :
>
> ut_asserteq(0x21524110, val1);
> ut_asserteq(0xDEADBEEF, val2);
>

Ok. Will add.

-sughosh