[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <fd50b23b-d801-a98a-6a85-0b3e4fbb401e@linaro.org>
Date: Tue, 26 Jul 2022 10:00:42 +0200
From: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
To: dj76.yang@...sung.com,
"jesper.nilsson@...s.com" <jesper.nilsson@...s.com>,
"lars.persson@...s.com" <lars.persson@...s.com>,
"robh+dt@...nel.org" <robh+dt@...nel.org>,
"krzk+dt@...nel.org" <krzk+dt@...nel.org>,
"lee.jones@...aro.org" <lee.jones@...aro.org>
Cc: "javierm@...hat.com" <javierm@...hat.com>,
"bjorn.andersson@...aro.org" <bjorn.andersson@...aro.org>,
"linux-arm-kernel@...s.com" <linux-arm-kernel@...s.com>,
"devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Moon-Ki Jun <moonki.jun@...sung.com>,
Sang Min Kim <hypmean.kim@...sung.com>,
Wangseok Lee <wangseok.lee@...sung.com>
Subject: Re: [PATCH 4/4] mfd: Samsung: Add Samsung sysmgr driver
On 26/07/2022 09:51, Dongjin Yang wrote:
> On 14/07/2022 04:28, Krzysztof Kozlowski wrote:
>> On 13/07/2022 06:57, Dongjin Yang wrote:
>>> This driver is used for SoCs produced by Samsung Foundry to provide
>>> Samsung sysmgr API. The read/write request of sysmgr is delivered to
>>> Samsung secure monitor call.
>>>
>>> Signed-off-by: Dongjin Yang <dj76.yang@...sung.com>
>>> ---
>>> MAINTAINERS | 2 +
>>> drivers/mfd/Kconfig | 11 +++
>>> drivers/mfd/Makefile | 1 +
>>> drivers/mfd/samsung-sysmgr.c | 167 +++++++++++++++++++++++++++++++++++++
>>> include/linux/mfd/samsung-sysmgr.h | 30 +++++++
>>> 5 files changed, 211 insertions(+)
>>> create mode 100644 drivers/mfd/samsung-sysmgr.c
>>> create mode 100644 include/linux/mfd/samsung-sysmgr.h
>>>
>>> diff --git a/MAINTAINERS b/MAINTAINERS
>>> index 55cb8901ccdc..44ad4bd406a9 100644
>>> --- a/MAINTAINERS
>>> +++ b/MAINTAINERS
>>> @@ -1870,9 +1870,11 @@ F: arch/arm/mach-artpec
>>> F: drivers/clk/axis
>>> F: drivers/crypto/axis
>>> F: drivers/firmware/samsung-smc-svc.c
>>> +F: drivers/mfd/samsung-sysmgr.c
>>> F: drivers/mmc/host/usdhi6rol0.c
>>> F: drivers/pinctrl/pinctrl-artpec*
>>> F: include/linux/firmware/samsung-smc-svc.h
>>> +F: include/linux/mfd/samsung-sysmgr.h
>>
>> Not related to Axis/Artpec SoC.
>>
>
> It is Artpec8 SoC.
>
>>>
>>> ARM/ASPEED I2C DRIVER
>>> M: Brendan Higgins <brendanhiggins@...gle.com>
>>> diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
>>> index 3b59456f5545..ce6ab5842bf0 100644
>>> --- a/drivers/mfd/Kconfig
>>> +++ b/drivers/mfd/Kconfig
>>> @@ -51,6 +51,17 @@ config MFD_ACT8945A
>>> linear regulators, along with a complete ActivePath battery
>>> charger.
>>>
>>> +config MFD_SAMSUNG_SYSMGR
>>> + bool "System Manager for Samsung Foundry platforms"
>>> + depends on ARCH_ARTPEC && OF
>>
>> Samsung Foundry does not match ARTPEC... Artpec 6 is not Samsung Foundry
>> SoC, is it?
>>
>
> This is for Artpec8.
>
>> Missing compile test.
>>
>
> Sorry, I will run it.
>
>>> + select MFD_SYSCON
>>> + select SAMSUNG_SECURE_SERVICE
>>> + help
>>> + Select this to get System Manager support for SoCs which use
>>> + Samsung Foundry platforms.
>>> + This System Manager has depedency on Samsung Secure Service
>>> + for providing secure service call.
>>
>> Looking at the driver, it does literally nothing. Looks like workaround
>> for incomplete bindings and DTS. It's a no-go.
>>
>
> This driver is for providing secure smc read/write to other IP driver in Artpec8 SoC.
There are no users of it and as I said - it looks like a workaround for
incomplete bindings. You do not justify here chosen design.
(...)
>>> +EXPORT_SYMBOL_GPL(samsung_sysmgr_regmap_lookup_by_phandle);
>>
>> This breaks layers/encapsulation and looks like a hack for incomplete
>> bindings/DTS. No, no exporting regmaps.
>>
>
> Similar with syscon (syscon_regmap_lookup_by_phandle), but needed additional secure smc call.
That's not what the code is doing.
Best regards,
Krzysztof
Powered by blists - more mailing lists