public inbox for devicetree@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/3] add AES support for Exynos5433
       [not found] <CGME20190124154538eucas1p17664bc2380e0d458b9ab33f79e55e810@eucas1p1.samsung.com>
@ 2019-01-24 15:45 ` Kamil Konieczny
  2019-01-24 15:45   ` [PATCH v3 1/3] arm64: dts: exynos: add SlimSSS " Kamil Konieczny
  2019-01-24 15:45   ` [PATCH v3 2/3] dt-bindings: crypto: document Exynos5433 SlimSSS Kamil Konieczny
  0 siblings, 2 replies; 6+ messages in thread
From: Kamil Konieczny @ 2019-01-24 15:45 UTC (permalink / raw)
  To: k.konieczny
  Cc: Mark Rutland, devicetree, linux-samsung-soc, Herbert Xu,
	Bartlomiej Zolnierkiewicz, linux-kernel, Krzysztof Kozlowski,
	Vladimir Zapolskiy, Rob Herring, Kukjin Kim, linux-crypto,
	David S. Miller, linux-arm-kernel, Marek Szyprowski

Add slimSSS node to DT and crypto AES support for Exynos5433. Tested on
Exynos5433 board with crypto run-time self tests and with tcrypt with
command insmod tcrypt.ko mode=500 sec=1

Changes since v2:
- address Corentine Labbe note: add "const" to char* in declaration of
  struct samsung_aes_variant

Changes since v1:
- address Krzysztof Kozlowski review: add missing comma in struct
  definition, add goto for error code path, correct indentation,
  in documentation add that Exynos5433 has both slimSSS and SSS IPs.

Kamil Konieczny (3):
  arm64: dts: exynos: add SlimSSS for Exynos5433
  dt-bindings: crypto: document Exynos5433 SlimSSS
  crypto: s5p: add AES support for Exynos5433

 .../bindings/crypto/samsung-sss.txt           | 14 ++++--
 arch/arm64/boot/dts/exynos/exynos5433.dtsi    |  9 ++++
 drivers/crypto/s5p-sss.c                      | 50 +++++++++++++++++--
 3 files changed, 66 insertions(+), 7 deletions(-)

-- 
2.20.0

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v3 1/3] arm64: dts: exynos: add SlimSSS for Exynos5433
  2019-01-24 15:45 ` [PATCH v3 0/3] add AES support for Exynos5433 Kamil Konieczny
@ 2019-01-24 15:45   ` Kamil Konieczny
  2019-02-05 11:23     ` Krzysztof Kozlowski
  2019-01-24 15:45   ` [PATCH v3 2/3] dt-bindings: crypto: document Exynos5433 SlimSSS Kamil Konieczny
  1 sibling, 1 reply; 6+ messages in thread
From: Kamil Konieczny @ 2019-01-24 15:45 UTC (permalink / raw)
  To: k.konieczny
  Cc: Rob Herring, Mark Rutland, Kukjin Kim, Krzysztof Kozlowski,
	devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel,
	Bartlomiej Zolnierkiewicz, Marek Szyprowski

Add DT node for SlimSSS (aka Slim SecuritySubSystem) in Exynos5433 SoC.
The users can use compatibility "samsung,exynos5433-slim-sss".

Signed-off-by: Kamil Konieczny <k.konieczny@partner.samsung.com>
---
 arch/arm64/boot/dts/exynos/exynos5433.dtsi | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/arch/arm64/boot/dts/exynos/exynos5433.dtsi b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
index e7cd3b67d818..9e5fcb6c7776 100644
--- a/arch/arm64/boot/dts/exynos/exynos5433.dtsi
+++ b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
@@ -559,6 +559,15 @@
 				<&cmu_top CLK_DIV_ACLK_IMEM_200>;
 		};
 
+		slim_sss: slim-sss@11140000 {
+			compatible = "samsung,exynos5433-slim-sss";
+			reg = <0x11140000 0x1000>;
+			interrupts = <GIC_SPI 312 IRQ_TYPE_LEVEL_HIGH>;
+			clock-names = "aclk", "pclk";
+			clocks = <&cmu_imem CLK_ACLK_SLIMSSS>,
+				 <&cmu_imem CLK_PCLK_SLIMSSS>;
+		};
+
 		pd_gscl: power-domain@105c4000 {
 			compatible = "samsung,exynos5433-pd";
 			reg = <0x105c4000 0x20>;
-- 
2.20.0

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH v3 2/3] dt-bindings: crypto: document Exynos5433 SlimSSS
  2019-01-24 15:45 ` [PATCH v3 0/3] add AES support for Exynos5433 Kamil Konieczny
  2019-01-24 15:45   ` [PATCH v3 1/3] arm64: dts: exynos: add SlimSSS " Kamil Konieczny
@ 2019-01-24 15:45   ` Kamil Konieczny
  2019-01-30 16:51     ` Rob Herring
  1 sibling, 1 reply; 6+ messages in thread
From: Kamil Konieczny @ 2019-01-24 15:45 UTC (permalink / raw)
  To: k.konieczny
  Cc: Herbert Xu, David S. Miller, Rob Herring, Mark Rutland,
	linux-crypto, devicetree, linux-kernel, Krzysztof Kozlowski,
	Bartlomiej Zolnierkiewicz, Marek Szyprowski

Document DT bindings for crypto Samsung Exynos5433 SlimSSS (Slim Security
SubSystem) IP.

Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>
Signed-off-by: Kamil Konieczny <k.konieczny@partner.samsung.com>
---
 .../devicetree/bindings/crypto/samsung-sss.txt     | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/Documentation/devicetree/bindings/crypto/samsung-sss.txt b/Documentation/devicetree/bindings/crypto/samsung-sss.txt
index 7a5ca56683cc..d9af679d38ab 100644
--- a/Documentation/devicetree/bindings/crypto/samsung-sss.txt
+++ b/Documentation/devicetree/bindings/crypto/samsung-sss.txt
@@ -1,4 +1,4 @@
-Samsung SoC SSS (Security SubSystem) module
+Samsung SoC SSS (Security SubSystem) and SlimSSS module
 
 The SSS module in S5PV210 SoC supports the following:
 -- Feeder (FeedCtrl)
@@ -15,6 +15,12 @@ supports the following also:
 -- True Random Number Generator (TRNG)
 -- Secure Key Manager
 
+Exynos5433 has both SSS and SlimSSS module.
+SlimSSS in Exynos5433 supports:
+-- Feeder (FeedCtrl)
+-- Advanced Encryption Standard (AES)
+-- SHA-1/SHA-256/HMAC (SHA-1/SHA-256)
+
 Required properties:
 
 - compatible : Should contain entries for this and backward compatible
@@ -22,11 +28,13 @@ Required properties:
   - "samsung,s5pv210-secss" for S5PV210 SoC.
   - "samsung,exynos4210-secss" for Exynos4210, Exynos4212, Exynos4412, Exynos5250,
 		Exynos5260 and Exynos5420 SoCs.
+  - "samsung,exynos5433-slim-sss" for Exynos5433 SoCs.
 - reg : Offset and length of the register set for the module
 - interrupts : interrupt specifiers of SSS module interrupts (one feed
 		control interrupt).
 
 - clocks : list of clock phandle and specifier pairs for all clocks  listed in
 		clock-names property.
-- clock-names : list of device clock input names; should contain one entry
-		"secss".
+- clock-names : list of device clock input names; should contain "pclk" and
+		"aclk" for slim-sss in Exynos5433, and one entry "secss" for
+		other compatibles.
-- 
2.20.0

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH v3 2/3] dt-bindings: crypto: document Exynos5433 SlimSSS
  2019-01-24 15:45   ` [PATCH v3 2/3] dt-bindings: crypto: document Exynos5433 SlimSSS Kamil Konieczny
@ 2019-01-30 16:51     ` Rob Herring
  2019-01-31 16:45       ` Kamil Konieczny
  0 siblings, 1 reply; 6+ messages in thread
From: Rob Herring @ 2019-01-30 16:51 UTC (permalink / raw)
  To: Kamil Konieczny
  Cc: Herbert Xu, David S. Miller, Mark Rutland, linux-crypto,
	devicetree, linux-kernel, Krzysztof Kozlowski,
	Bartlomiej Zolnierkiewicz, Marek Szyprowski

On Thu, Jan 24, 2019 at 04:45:20PM +0100, Kamil Konieczny wrote:
> Document DT bindings for crypto Samsung Exynos5433 SlimSSS (Slim Security
> SubSystem) IP.
> 
> Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>
> Signed-off-by: Kamil Konieczny <k.konieczny@partner.samsung.com>
> ---
>  .../devicetree/bindings/crypto/samsung-sss.txt     | 14 +++++++++++---
>  1 file changed, 11 insertions(+), 3 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/crypto/samsung-sss.txt b/Documentation/devicetree/bindings/crypto/samsung-sss.txt
> index 7a5ca56683cc..d9af679d38ab 100644
> --- a/Documentation/devicetree/bindings/crypto/samsung-sss.txt
> +++ b/Documentation/devicetree/bindings/crypto/samsung-sss.txt
> @@ -1,4 +1,4 @@
> -Samsung SoC SSS (Security SubSystem) module
> +Samsung SoC SSS (Security SubSystem) and SlimSSS module
>  
>  The SSS module in S5PV210 SoC supports the following:
>  -- Feeder (FeedCtrl)
> @@ -15,6 +15,12 @@ supports the following also:
>  -- True Random Number Generator (TRNG)
>  -- Secure Key Manager
>  
> +Exynos5433 has both SSS and SlimSSS module.

That's not really relevant to the binding.

What do the SSS and SlimSSS share? Only that both have a single reg and 
interrupt based on the binding? This should probably be just 2 
documents. If not now, it will have to be when converted to a DT schema.

> +SlimSSS in Exynos5433 supports:
> +-- Feeder (FeedCtrl)
> +-- Advanced Encryption Standard (AES)
> +-- SHA-1/SHA-256/HMAC (SHA-1/SHA-256)
> +
>  Required properties:
>  
>  - compatible : Should contain entries for this and backward compatible
> @@ -22,11 +28,13 @@ Required properties:
>    - "samsung,s5pv210-secss" for S5PV210 SoC.
>    - "samsung,exynos4210-secss" for Exynos4210, Exynos4212, Exynos4412, Exynos5250,
>  		Exynos5260 and Exynos5420 SoCs.
> +  - "samsung,exynos5433-slim-sss" for Exynos5433 SoCs.
>  - reg : Offset and length of the register set for the module
>  - interrupts : interrupt specifiers of SSS module interrupts (one feed
>  		control interrupt).
>  
>  - clocks : list of clock phandle and specifier pairs for all clocks  listed in
>  		clock-names property.
> -- clock-names : list of device clock input names; should contain one entry
> -		"secss".
> +- clock-names : list of device clock input names; should contain "pclk" and
> +		"aclk" for slim-sss in Exynos5433, and one entry "secss" for
> +		other compatibles.
> -- 
> 2.20.0
> 

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v3 2/3] dt-bindings: crypto: document Exynos5433 SlimSSS
  2019-01-30 16:51     ` Rob Herring
@ 2019-01-31 16:45       ` Kamil Konieczny
  0 siblings, 0 replies; 6+ messages in thread
From: Kamil Konieczny @ 2019-01-31 16:45 UTC (permalink / raw)
  To: Rob Herring
  Cc: Herbert Xu, David S. Miller, Mark Rutland, linux-crypto,
	devicetree, linux-kernel, Krzysztof Kozlowski,
	Bartlomiej Zolnierkiewicz, Marek Szyprowski

Hi,

On 30.01.2019 17:51, Rob Herring wrote:
> On Thu, Jan 24, 2019 at 04:45:20PM +0100, Kamil Konieczny wrote:
>> Document DT bindings for crypto Samsung Exynos5433 SlimSSS (Slim Security
>> SubSystem) IP.
>>
>> Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>
>> Signed-off-by: Kamil Konieczny <k.konieczny@partner.samsung.com>
>> ---
>>  .../devicetree/bindings/crypto/samsung-sss.txt     | 14 +++++++++++---
>>  1 file changed, 11 insertions(+), 3 deletions(-)
>>
>> diff --git a/Documentation/devicetree/bindings/crypto/samsung-sss.txt b/Documentation/devicetree/bindings/crypto/samsung-sss.txt
>> index 7a5ca56683cc..d9af679d38ab 100644
>> --- a/Documentation/devicetree/bindings/crypto/samsung-sss.txt
>> +++ b/Documentation/devicetree/bindings/crypto/samsung-sss.txt
>> @@ -1,4 +1,4 @@
>> -Samsung SoC SSS (Security SubSystem) module
>> +Samsung SoC SSS (Security SubSystem) and SlimSSS module
>>  
>>  The SSS module in S5PV210 SoC supports the following:
>>  -- Feeder (FeedCtrl)
>> @@ -15,6 +15,12 @@ supports the following also:
>>  -- True Random Number Generator (TRNG)
>>  -- Secure Key Manager
>>  
>> +Exynos5433 has both SSS and SlimSSS module.
> 
> That's not really relevant to the binding.
> 
> What do the SSS and SlimSSS share? Only that both have a single reg and 
> interrupt based on the binding? This should probably be just 2 
> documents. If not now, it will have to be when converted to a DT schema.

They share hardware design, slimSSS is stripped-down SSS version,
and can be handled by the same crypto s5p-sss driver. The register
layout is the same for FeedControl (DMA) and AES crypt function.

Do you prefer to put this description in new file samsung-slimsss.txt ?
If yes, I can send v4, so it can be done right from beginning.

>> +SlimSSS in Exynos5433 supports:
>> +-- Feeder (FeedCtrl)
>> +-- Advanced Encryption Standard (AES)
>> +-- SHA-1/SHA-256/HMAC (SHA-1/SHA-256)
>> +
>>  Required properties:
>>  
>>  - compatible : Should contain entries for this and backward compatible
>> @@ -22,11 +28,13 @@ Required properties:
>>    - "samsung,s5pv210-secss" for S5PV210 SoC.
>>    - "samsung,exynos4210-secss" for Exynos4210, Exynos4212, Exynos4412, Exynos5250,
>>  		Exynos5260 and Exynos5420 SoCs.
>> +  - "samsung,exynos5433-slim-sss" for Exynos5433 SoCs.
>>  - reg : Offset and length of the register set for the module
>>  - interrupts : interrupt specifiers of SSS module interrupts (one feed
>>  		control interrupt).
>>  
>>  - clocks : list of clock phandle and specifier pairs for all clocks  listed in
>>  		clock-names property.
>> -- clock-names : list of device clock input names; should contain one entry
>> -		"secss".
>> +- clock-names : list of device clock input names; should contain "pclk" and
>> +		"aclk" for slim-sss in Exynos5433, and one entry "secss" for
>> +		other compatibles.
>> -- 
>> 2.20.0

-- 
Best regards,
Kamil Konieczny
Samsung R&D Institute Poland

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v3 1/3] arm64: dts: exynos: add SlimSSS for Exynos5433
  2019-01-24 15:45   ` [PATCH v3 1/3] arm64: dts: exynos: add SlimSSS " Kamil Konieczny
@ 2019-02-05 11:23     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 6+ messages in thread
From: Krzysztof Kozlowski @ 2019-02-05 11:23 UTC (permalink / raw)
  To: Kamil Konieczny
  Cc: Rob Herring, Mark Rutland, Kukjin Kim, devicetree,
	linux-arm-kernel, linux-samsung-soc@vger.kernel.org, linux-kernel,
	Bartlomiej Zolnierkiewicz, Marek Szyprowski

On Thu, 24 Jan 2019 at 16:45, Kamil Konieczny
<k.konieczny@partner.samsung.com> wrote:
>
> Add DT node for SlimSSS (aka Slim SecuritySubSystem) in Exynos5433 SoC.
> The users can use compatibility "samsung,exynos5433-slim-sss".
>
> Signed-off-by: Kamil Konieczny <k.konieczny@partner.samsung.com>
> ---
>  arch/arm64/boot/dts/exynos/exynos5433.dtsi | 9 +++++++++
>  1 file changed, 9 insertions(+)

Before picking this up, bindings have to be accepted and I see
discussion is still ongoing (no Ack from Rob yet). Anyway this depends
on header file with clock ID, so it will have to wait for next cycle.

I will pick it up for v5.2, after v5.1 merge window.

Best regards,
Krzysztof
>
> diff --git a/arch/arm64/boot/dts/exynos/exynos5433.dtsi b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
> index e7cd3b67d818..9e5fcb6c7776 100644
> --- a/arch/arm64/boot/dts/exynos/exynos5433.dtsi
> +++ b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
> @@ -559,6 +559,15 @@
>                                 <&cmu_top CLK_DIV_ACLK_IMEM_200>;
>                 };
>
> +               slim_sss: slim-sss@11140000 {
> +                       compatible = "samsung,exynos5433-slim-sss";
> +                       reg = <0x11140000 0x1000>;
> +                       interrupts = <GIC_SPI 312 IRQ_TYPE_LEVEL_HIGH>;
> +                       clock-names = "aclk", "pclk";
> +                       clocks = <&cmu_imem CLK_ACLK_SLIMSSS>,
> +                                <&cmu_imem CLK_PCLK_SLIMSSS>;
> +               };
> +
>                 pd_gscl: power-domain@105c4000 {
>                         compatible = "samsung,exynos5433-pd";
>                         reg = <0x105c4000 0x20>;
> --
> 2.20.0
>

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2019-02-05 11:23 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <CGME20190124154538eucas1p17664bc2380e0d458b9ab33f79e55e810@eucas1p1.samsung.com>
2019-01-24 15:45 ` [PATCH v3 0/3] add AES support for Exynos5433 Kamil Konieczny
2019-01-24 15:45   ` [PATCH v3 1/3] arm64: dts: exynos: add SlimSSS " Kamil Konieczny
2019-02-05 11:23     ` Krzysztof Kozlowski
2019-01-24 15:45   ` [PATCH v3 2/3] dt-bindings: crypto: document Exynos5433 SlimSSS Kamil Konieczny
2019-01-30 16:51     ` Rob Herring
2019-01-31 16:45       ` Kamil Konieczny

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox