[PATCH 2/7] phy: exynos5-usbdrd: use exynos_get_pmu_regmap_by_phandle() for PMU regs
Krzysztof Kozlowski
krzysztof.kozlowski at linaro.org
Thu Apr 25 00:47:23 PDT 2024
On 23/04/2024 19:06, André Draszik wrote:
> Some Exynos based SoCs like Tensor gs101 protect the PMU registers for
> security hardening reasons so that they are only write accessible in
> EL3 via an SMC call.
>
> The Exynos PMU driver handles this transparently when using
> exynos_get_pmu_regmap_by_phandle().
>
> Switch to using that API to support such SoCs. As this driver now no
> longer depends on mfd syscon remove that header and Kconfig dependency.
>
> Signed-off-by: André Draszik <andre.draszik at linaro.org>
> ---
> drivers/phy/samsung/Kconfig | 1 -
> drivers/phy/samsung/phy-exynos5-usbdrd.c | 4 ++--
> 2 files changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/phy/samsung/Kconfig b/drivers/phy/samsung/Kconfig
> index f10afa3d7ff5..bb63fa710803 100644
> --- a/drivers/phy/samsung/Kconfig
> +++ b/drivers/phy/samsung/Kconfig
> @@ -82,7 +82,6 @@ config PHY_EXYNOS5_USBDRD
> depends on HAS_IOMEM
> depends on USB_DWC3_EXYNOS
> select GENERIC_PHY
> - select MFD_SYSCON
> default y
> help
> Enable USB DRD PHY support for Exynos 5 SoC series.
> diff --git a/drivers/phy/samsung/phy-exynos5-usbdrd.c b/drivers/phy/samsung/phy-exynos5-usbdrd.c
> index 04171eed5b16..ac208b89f5a6 100644
> --- a/drivers/phy/samsung/phy-exynos5-usbdrd.c
> +++ b/drivers/phy/samsung/phy-exynos5-usbdrd.c
> @@ -18,9 +18,9 @@
> #include <linux/phy/phy.h>
> #include <linux/platform_device.h>
> #include <linux/mutex.h>
> -#include <linux/mfd/syscon.h>
> #include <linux/regmap.h>
> #include <linux/regulator/consumer.h>
> +#include <linux/soc/samsung/exynos-pmu.h>
> #include <linux/soc/samsung/exynos-regs-pmu.h>
This is getting out of hand: shall we expect to convert all the drivers
from generic syscon to Exynos-specific API? What if one driver is some
shared IP, like DWC USB3 controller?
I already commented on Google hwrng driver: I prefer to keep the syscon
API and change the syscon driver to expose proper regmap. IOW, use
generic API syscon_regmap_lookup_by_phandle() and the type of regmap
returned is defined by the provider (so node pointed by phandle).
Best regards,
Krzysztof
More information about the linux-arm-kernel
mailing list