[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1556895321.3046.3.camel@pengutronix.de>
Date: Fri, 03 May 2019 16:55:21 +0200
From: Philipp Zabel <p.zabel@...gutronix.de>
To: Manivannan Sadhasivam <manivannan.sadhasivam@...aro.org>,
robh+dt@...nel.org
Cc: linux-kernel@...r.kernel.org, devicetree@...r.kernel.org,
haitao.suo@...main.com, darren.tsao@...main.com
Subject: Re: [PATCH 3/3] reset: Add reset controller support for BM1880 SoC
Hi Manivannan,
thank you for the patch. A few issues below:
On Thu, 2019-04-25 at 18:25 +0530, Manivannan Sadhasivam wrote:
> Add reset controller support for Bitmain BM1880 SoC reusing the
> reset-simple driver. While we are at it, this driver has also been
> modified to make use of the SPDX license identifier.
>
> Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@...aro.org>
> ---
> drivers/reset/Kconfig | 3 ++-
> drivers/reset/Makefile | 1 +
> drivers/reset/reset-simple.c | 16 +++++++++++-----
> 3 files changed, 14 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/reset/Kconfig b/drivers/reset/Kconfig
> index 2c8c23db92fb..b25e8d139f0d 100644
> --- a/drivers/reset/Kconfig
> +++ b/drivers/reset/Kconfig
> @@ -117,7 +117,7 @@ config RESET_QCOM_PDC
>
> config RESET_SIMPLE
> bool "Simple Reset Controller Driver" if COMPILE_TEST
> - default ARCH_STM32 || ARCH_STRATIX10 || ARCH_SUNXI || ARCH_ZX || ARCH_ASPEED
> + default ARCH_STM32 || ARCH_STRATIX10 || ARCH_SUNXI || ARCH_ZX || ARCH_ASPEED || ARCH_BITMAIN
> help
> This enables a simple reset controller driver for reset lines that
> that can be asserted and deasserted by toggling bits in a contiguous,
> @@ -129,6 +129,7 @@ config RESET_SIMPLE
> - RCC reset controller in STM32 MCUs
> - Allwinner SoCs
> - ZTE's zx2967 family
> + - Bitmain BM1880 SoC
>
> config RESET_STM32MP157
> bool "STM32MP157 Reset Driver" if COMPILE_TEST
> diff --git a/drivers/reset/Makefile b/drivers/reset/Makefile
> index 61456b8f659c..b87968771166 100644
> --- a/drivers/reset/Makefile
> +++ b/drivers/reset/Makefile
> @@ -7,6 +7,7 @@ obj-$(CONFIG_RESET_A10SR) += reset-a10sr.o
> obj-$(CONFIG_RESET_ATH79) += reset-ath79.o
> obj-$(CONFIG_RESET_AXS10X) += reset-axs10x.o
> obj-$(CONFIG_RESET_BERLIN) += reset-berlin.o
> +#obj-$(CONFIG_RESET_BM1880) += reset-bm1880.o
Leftover from a previous patch version? You can remove this.
> obj-$(CONFIG_RESET_BRCMSTB) += reset-brcmstb.o
> obj-$(CONFIG_RESET_HSDK) += reset-hsdk.o
> obj-$(CONFIG_RESET_IMX7) += reset-imx7.o
> diff --git a/drivers/reset/reset-simple.c b/drivers/reset/reset-simple.c
> index 77fbba3100c8..fd1fa4984d76 100644
> --- a/drivers/reset/reset-simple.c
> +++ b/drivers/reset/reset-simple.c
> @@ -1,3 +1,4 @@
> +// SPDX-License-Identifier: GPL-2.0+
> /*
> * Simple Reset Controller Driver
> *
> @@ -8,11 +9,6 @@
> * Copyright 2013 Maxime Ripard
> *
> * Maxime Ripard <maxime.ripard@...e-electrons.com>
> - *
> - * This program is free software; you can redistribute it and/or modify
> - * it under the terms of the GNU General Public License as published by
> - * the Free Software Foundation; either version 2 of the License, or
> - * (at your option) any later version.
> */
Please split this change into a separate patch and add Maxime to Cc:
> #include <linux/device.h>
> @@ -119,6 +115,14 @@ static const struct reset_simple_devdata reset_simple_active_low = {
> .status_active_low = true,
> };
>
> +#define BM1880_NR_BANKS 2
> +
> +static const struct reset_simple_devdata reset_simple_bm1880 = {
> + .nr_resets = BM1880_NR_BANKS * 32,
This is not necessary, given your device tree changes, the
data->rcdev.nr_resets = resource_size(res) * BITS_PER_BYTE;
in reset_simple_probe should already do the right thing.
You can remove the .nr_resets from reset_simple_bm1880 and the
BM1880_NR_BANKS #define.
> + .active_low = true,
> + .status_active_low = true,
> +};
> +
> static const struct of_device_id reset_simple_dt_ids[] = {
> { .compatible = "altr,stratix10-rst-mgr",
> .data = &reset_simple_socfpga },
> @@ -129,6 +133,8 @@ static const struct of_device_id reset_simple_dt_ids[] = {
> .data = &reset_simple_active_low },
> { .compatible = "aspeed,ast2400-lpc-reset" },
> { .compatible = "aspeed,ast2500-lpc-reset" },
> + { .compatible = "bitmain,bm1880-reset",
> + .data = &reset_simple_bm1880 },
> { /* sentinel */ },
> };
With these changes,
Reviewed-by: Philipp Zabel <p.zabel@...gutronix.de>
for both parts.
regards
Philipp
Powered by blists - more mailing lists