full, the job is enqueued.
The API contract which states that a CRYPTO_TFM_REQ_MAY_BACKLOG
transformation must be able to enqueue at least 1 entry is
assured by allowing only a number of transformations to be
affined to one JR, equal to half the number of JR slots minus
one.
Signed-off-by: Ale
the processing thread will sleep once -EBUSY is
received.
Signed-off-by: Alex Porosanu
---
v3:
- as per Herbert's observation, allow only # of backlogging slots
transformations w/MAY_BACKLOG flag set to be affined to a JR;
the total # of transformations that can be thus allocated is equal
t
full, the job is enqueued.
Caveat: if the users of the driver don't obey the API contract which
states that once -EBUSY is received, no more requests are to be
sent, eventually the driver will reject the enqueues.
Signed-off-by: Alex Porosanu
---
v2:
- added backlogging support for hash as
full, the job is enqueued.
Caveat: if the users of the driver don't obey the API contract which
states that once -EBUSY is received, no more requests are to be
sent, eventually the driver will reject the enqueues.
Signed-off-by: Alex Porosanu
---
drivers/crypto/caam/
d
as being out of bounds.
This patch effectively disables the maximum frequency check, by setting a
high enough maximum allowable frequency for the oscillator. The reasoning
behind this is that usually a broken oscillator will run too slow
(i.e. not run at all) rather than run too fast.
Signed-off-by:
The sampling of the oscillator can be done in multiple modes for
generating the entropy value. By default, this is set to von
Neumann. This patch changes the sampling to raw data, since it
has been discovered that the generated entropy has a better
'quality'.
Signed-off-by: Ale
adverse cases,
the CPU isn't hogged by the instantiation loop.
Signed-off-by: Alex Porosanu
---
drivers/crypto/caam/ctrl.c | 9 +
drivers/crypto/caam/regs.h | 2 +-
2 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/drivers/crypto/caam/ctrl.c b/drivers/crypto/caam/ctrl.c
This series of patches target the RNG4 block of CAAM and fix an
issue identified on new platforms using this IP.
Two of the patches, change the way the entropy is being taken
from the internal oscillator and adjust the delay accordingly.
Alex Porosanu (3):
crypto: caam - disable RNG oscillator
SEC ERA has to be retrieved by reading the "fsl,sec-era" property
from the device tree. This property is updated/filled in by
u-boot.
Change-Id: Ie1620354a0cf2cac5cd2c72bd5f2449f55858378
Signed-off-by: Alex Porosanu
---
drivers/crypto/caam/c
If the CAAM driver initialization failed (due to various reasons, e.g. RNG4
initialization failed), then the registration of hash/algorithms/rng shouldn't
take place. This patch adds the necessary code to prevent this registration.
Signed-off-by: Alex Porosanu
---
drivers/crypto/caam/caam
the maximum number of samples taken
until the state handle can be properly initialized; o there are two
state handles present in the RNG4 block and only one
is initialized; patch 5 in the patch-set fixes this issue, also
adding the necessary code for deinstantiation only the handles that were
If the caam driver module instantiates the RNG state handle 0, then
upon the removal of the module, the RNG state handle is left
initialized. This patch takes care of reverting the state of the
handle back to its previous uninstantatied state.
Signed-off-by: Alex Porosanu
---
drivers/crypto
adds a halt command at the
end of the descriptor to ensure the DECO halts when it reaches
the end of the descriptor buffer.
Signed-off-by: Alex Porosanu
---
drivers/crypto/caam/ctrl.c |4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/drivers/crypto/caam/ctrl.c b/drivers
RNG4 defines in desc.h were incomplete (bits AI & PS were missing),
while SK was set as an ALG related bit. This patchs adds the
missing bits and corrects the SK bit.
Signed-off-by: Alex Porosanu
---
drivers/crypto/caam/ctrl.c |2 +-
drivers/crypto/caam/desc.h | 17 +---
state handle(s)
instantiated by this driver will be deinstantiated when removing
the module.
Signed-off-by: Alex Porosanu
---
drivers/crypto/caam/ctrl.c | 206 --
drivers/crypto/caam/intern.h |8 +-
drivers/crypto/caam/regs.h |7 ++-
3 files
mechanism.
Signed-off-by: Alex Porosanu
---
drivers/crypto/caam/ctrl.c | 140 +---
1 files changed, 92 insertions(+), 48 deletions(-)
diff --git a/drivers/crypto/caam/ctrl.c b/drivers/crypto/caam/ctrl.c
index d5fe5f5..3ad032f 100644
--- a/drivers/crypto/caam
le, by checking the DECO state field
of the said register.
Signed-off-by: Alex Porosanu
---
drivers/crypto/caam/ctrl.c | 63 ---
drivers/crypto/caam/regs.h |7 +++-
2 files changed, 52 insertions(+), 18 deletions(-)
diff --git a/drivers/crypto/caa
This patch adds an option to the Kconfig file for
SEC which enables the user to see the debug messages
that are printed inside the SEC driver.
Signed-off-by: Alex Porosanu
---
drivers/crypto/caam/Kconfig |8
drivers/crypto/caam/Makefile |3 +++
2 files changed, 11 insertions
CAAM driver contains one macro (xstr) used for printing
the line location in a file where a memdump is done. This patch
replaces the xstr macro with the already existing __stringify
macro that performs the same function.
Signed-off-by: Alex Porosanu
---
drivers/crypto/caam/caamalg.c | 78
This patch adds support for retrieving the version of the RNG
block inside the SEC. This is done by retrieving the corresponding
value from the the CHAVID register.
Signed-off-by: Alex Porosanu
---
drivers/crypto/caam/ctrl.c | 11 +++
drivers/crypto/caam/regs.h | 37
or not is not always correct. This set of patches
should fix this by adding support for retrieving the version of the
RNG block and executing the intialization of it depending if
it is greater or equal than 4.
Alex Porosanu (2):
crypto: caam - support for RNG version retrieval
crypto: caam -
have SEC v4.4 but RNG 4
Signed-off-by: Alex Porosanu
---
drivers/crypto/caam/ctrl.c |4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/crypto/caam/ctrl.c b/drivers/crypto/caam/ctrl.c
index d5e6837..132b98a 100644
--- a/drivers/crypto/caam/ctrl.c
+++ b/drivers/crypto
This patch adds support for retrieving and printing of
SEC ERA information. It is useful for knowing beforehand
what features exist from the SEC point of view on a
certain SoC. Only era-s 1 to 4 are currently supported;
other eras will appear as unknown.
Signed-off-by: Alex Porosanu
---
drivers
23 matches
Mail list logo