Re: [PATCH/RFC] clk: gate: Add some kunit test suites

From: Brendan Higgins
Date: Thu Apr 09 2020 - 16:09:17 EST


On Tue, Apr 7, 2020 at 8:56 PM Stephen Boyd <sboyd@xxxxxxxxxx> wrote:
>
> Test various parts of the clk gate implementation with the kunit testing
> framework.
>
> Cc: Brendan Higgins <brendanhiggins@xxxxxxxxxx>
> Cc: <kunit-dev@xxxxxxxxxxxxxxxx>
> Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxx>

One very minor nit below, other than that this looks great! I couldn't
have done a better job myself.

Reviewed-by: Brendan Higgins <brendanhiggins@xxxxxxxxxx>

> ---
>
> This patch is on top of this series[1] that allows the clk
> framework to be selected by Kconfig language.
>
> [1] https://lore.kernel.org/r/20200405025123.154688-1-sboyd@xxxxxxxxxx
>
> drivers/clk/Kconfig | 8 +
> drivers/clk/Makefile | 1 +
> drivers/clk/clk-gate-test.c | 481 ++++++++++++++++++++++++++++++++++++
> 3 files changed, 490 insertions(+)
> create mode 100644 drivers/clk/clk-gate-test.c
>
> diff --git a/drivers/clk/Kconfig b/drivers/clk/Kconfig
> index 6ea0631e3956..66193673bcdf 100644
> --- a/drivers/clk/Kconfig
> +++ b/drivers/clk/Kconfig
> @@ -377,4 +377,12 @@ source "drivers/clk/ti/Kconfig"
> source "drivers/clk/uniphier/Kconfig"
> source "drivers/clk/zynqmp/Kconfig"
>
> +# Kunit test cases

Minor nit: Elsewhere you use KUnit.

I wasn't going to say anything because so many people go with the
"Kunit" capitalization (and actually I kind of prefer it), but you
should at least be consistent within your patch.

> +config CLK_GATE_TEST
> + tristate "Basic gate type Kunit test"
> + depends on KUNIT
> + default KUNIT
> + help
> + Kunit test for the basic clk gate type.
> +
> endif
> diff --git a/drivers/clk/Makefile b/drivers/clk/Makefile
> index f4169cc2fd31..0785092880fd 100644
> --- a/drivers/clk/Makefile
> +++ b/drivers/clk/Makefile
> @@ -7,6 +7,7 @@ obj-$(CONFIG_COMMON_CLK) += clk-divider.o
> obj-$(CONFIG_COMMON_CLK) += clk-fixed-factor.o
> obj-$(CONFIG_COMMON_CLK) += clk-fixed-rate.o
> obj-$(CONFIG_COMMON_CLK) += clk-gate.o
> +obj-$(CONFIG_CLK_GATE_TEST) += clk-gate-test.o
> obj-$(CONFIG_COMMON_CLK) += clk-multiplier.o
> obj-$(CONFIG_COMMON_CLK) += clk-mux.o
> obj-$(CONFIG_COMMON_CLK) += clk-composite.o
> diff --git a/drivers/clk/clk-gate-test.c b/drivers/clk/clk-gate-test.c
> new file mode 100644
> index 000000000000..b1d6c21e9698
> --- /dev/null
> +++ b/drivers/clk/clk-gate-test.c
> @@ -0,0 +1,481 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * KUnit test for clk gate basic type

Here is the other capitalization.

> + */
> +#include <linux/clk.h>
> +#include <linux/clk-provider.h>
> +#include <linux/platform_device.h>
> +
> +#include <kunit/test.h>

[...]

Cheers!