[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <37742446.J2Yia2DhmK@diego>
Date: Mon, 15 Aug 2022 19:00:08 +0200
From: Heiko Stübner <heiko@...ech.de>
To: Liam Girdwood <lgirdwood@...il.com>,
Mark Brown <broonie@...nel.org>, Chen-Yu Tsai <wens@...e.org>,
Jernej Skrabec <jernej.skrabec@...il.com>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Rob Herring <robh+dt@...nel.org>,
linux-arm-kernel@...ts.infradead.org
Cc: Samuel Holland <samuel@...lland.org>,
Maxime Ripard <mripard@...nel.org>, devicetree@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
linux-sunxi@...ts.linux.dev, Samuel Holland <samuel@...lland.org>
Subject: Re: [PATCH v3 2/4] regulator: sun20i: Add support for Allwinner D1 LDOs
Am Montag, 15. August 2022, 06:34:33 CEST schrieb Samuel Holland:
> D1 contains two pairs of LDOs. Since they have similar bindings, and
> they always exist together, put them in a single driver.
>
> The analog LDOs are relatively boring, with a single linear range. Their
> one quirk is that a bandgap reference must be calibrated for them to
> produce the correct voltage.
>
> The system LDOs have the complication that their voltage step is not an
> integer, so a custom .list_voltage is needed to get the rounding right.
>
> Signed-off-by: Samuel Holland <samuel@...lland.org>
> ---
>
> Changes in v3:
> - Adjust control flow in sun20i_regulator_get_regmap() for clarity
>
> Changes in v2:
> - Use decimal numbers for .n_voltages instead of field widths
> - Get the regmap from the parent device instead of a property/phandle
>
> drivers/regulator/Kconfig | 8 +
> drivers/regulator/Makefile | 1 +
> drivers/regulator/sun20i-regulator.c | 232 +++++++++++++++++++++++++++
> 3 files changed, 241 insertions(+)
> create mode 100644 drivers/regulator/sun20i-regulator.c
>
> diff --git a/drivers/regulator/Kconfig b/drivers/regulator/Kconfig
> index 23e3e4a35cc9..0c5727173fa0 100644
> --- a/drivers/regulator/Kconfig
> +++ b/drivers/regulator/Kconfig
> @@ -1262,6 +1262,14 @@ config REGULATOR_STW481X_VMMC
> This driver supports the internal VMMC regulator in the STw481x
> PMIC chips.
>
> +config REGULATOR_SUN20I
> + tristate "Allwinner D1 internal LDOs"
> + depends on ARCH_SUNXI || COMPILE_TEST
> + depends on MFD_SYSCON && NVMEM
> + default ARCH_SUNXI
> + help
> + This driver supports the internal LDOs in the Allwinner D1 SoC.
> +
> config REGULATOR_SY7636A
> tristate "Silergy SY7636A voltage regulator"
> help
> diff --git a/drivers/regulator/Makefile b/drivers/regulator/Makefile
> index fa49bb6cc544..5dff112eb015 100644
> --- a/drivers/regulator/Makefile
> +++ b/drivers/regulator/Makefile
> @@ -148,6 +148,7 @@ obj-$(CONFIG_REGULATOR_STM32_VREFBUF) += stm32-vrefbuf.o
> obj-$(CONFIG_REGULATOR_STM32_PWR) += stm32-pwr.o
> obj-$(CONFIG_REGULATOR_STPMIC1) += stpmic1_regulator.o
> obj-$(CONFIG_REGULATOR_STW481X_VMMC) += stw481x-vmmc.o
> +obj-$(CONFIG_REGULATOR_SUN20I) += sun20i-regulator.o
> obj-$(CONFIG_REGULATOR_SY7636A) += sy7636a-regulator.o
> obj-$(CONFIG_REGULATOR_SY8106A) += sy8106a-regulator.o
> obj-$(CONFIG_REGULATOR_SY8824X) += sy8824x.o
> diff --git a/drivers/regulator/sun20i-regulator.c b/drivers/regulator/sun20i-regulator.c
> new file mode 100644
> index 000000000000..46f3927d7d10
> --- /dev/null
> +++ b/drivers/regulator/sun20i-regulator.c
> @@ -0,0 +1,232 @@
> +// SPDX-License-Identifier: GPL-2.0-only
> +//
> +// Copyright (c) 2021-2022 Samuel Holland <samuel@...lland.org>
> +//
nit: shouldn't the comment look like
/*
* Copyright (c) 2021-2022 Samuel Holland <samuel@...lland.org>
*/
otherwise looks great
Reviewed-by: Heiko Stuebner <heiko@...ech.de>
Tested-by: Heiko Stuebner <heiko@...ech.de>
Powered by blists - more mailing lists