Skip to content

Commit 6fb8488

Browse files
degjorvanordicjm
authored andcommitted
nrf_security: CRACEN: Update PK hardware acquire
Update and rename sx_pk_acquire_req to sx_pk_acquire_hw. Remove the now unused sx_pk_acq_req. sx_pk_acquire_hw no longer sets the command and this is instead handled through a set_ command. With the removal of sx_pk_acq_req some functions now return the status instead of the struct and there is no longer any need to read pkreq.status. This pattern aligns closer with what happens in the rest of the driver. Update to follow this new pattern in all files in CRACEN. Signed-off-by: Dag Erik Gjørvad <dag.erik.gjorvad@nordicsemi.no>
1 parent b1cc770 commit 6fb8488

40 files changed

Lines changed: 1618 additions & 1617 deletions

subsys/nrf_security/src/drivers/cracen/cracen_sw/src/cracen_sw_aead.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -402,12 +402,12 @@ static psa_status_t hw_finalize_aead_encryption(cracen_aead_operation_t *operati
402402
}
403403

404404
sx_status = sx_aead_produce_tag(&operation->ctx, tag);
405-
if (sx_status) {
405+
if (sx_status != SX_OK) {
406406
return silex_statuscodes_to_psa(sx_status);
407407
}
408408

409409
sx_status = sx_aead_wait(&operation->ctx);
410-
if (sx_status) {
410+
if (sx_status != SX_OK) {
411411
return silex_statuscodes_to_psa(sx_status);
412412
}
413413

@@ -423,12 +423,12 @@ static psa_status_t hw_finalize_aead_decryption(cracen_aead_operation_t *operati
423423
int sx_status;
424424

425425
sx_status = sx_aead_verify_tag(&operation->ctx, tag);
426-
if (sx_status) {
426+
if (sx_status != SX_OK) {
427427
return silex_statuscodes_to_psa(sx_status);
428428
}
429429

430430
sx_status = sx_aead_wait(&operation->ctx);
431-
if (sx_status) {
431+
if (sx_status != SX_OK) {
432432
return silex_statuscodes_to_psa(sx_status);
433433
}
434434

subsys/nrf_security/src/drivers/cracen/cracen_sw/src/cracen_sw_cipher.c

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -557,7 +557,7 @@ psa_status_t cracen_cipher_update(cracen_cipher_operation_t *operation, const ui
557557
} else {
558558
if (operation->initialized) {
559559
sx_status = sx_blkcipher_resume_state(&operation->cipher);
560-
if (sx_status) {
560+
if (sx_status != SX_OK) {
561561
return silex_statuscodes_to_psa(sx_status);
562562
}
563563
} else {
@@ -574,7 +574,7 @@ psa_status_t cracen_cipher_update(cracen_cipher_operation_t *operation, const ui
574574
sx_status = sx_blkcipher_crypt(
575575
&operation->cipher, operation->unprocessed_input,
576576
operation->unprocessed_input_bytes, output);
577-
if (sx_status) {
577+
if (sx_status != SX_OK) {
578578
return silex_statuscodes_to_psa(sx_status);
579579
}
580580

@@ -586,18 +586,18 @@ psa_status_t cracen_cipher_update(cracen_cipher_operation_t *operation, const ui
586586
if (block_bytes) {
587587
sx_status = sx_blkcipher_crypt(&operation->cipher, input,
588588
block_bytes, output);
589-
if (sx_status) {
589+
if (sx_status != SX_OK) {
590590
return silex_statuscodes_to_psa(sx_status);
591591
}
592592
}
593593

594594
sx_status = sx_blkcipher_save_state(&operation->cipher);
595-
if (sx_status) {
595+
if (sx_status != SX_OK) {
596596
return silex_statuscodes_to_psa(sx_status);
597597
}
598598

599599
sx_status = sx_blkcipher_wait(&operation->cipher);
600-
if (sx_status) {
600+
if (sx_status != SX_OK) {
601601
return silex_statuscodes_to_psa(sx_status);
602602
}
603603

@@ -681,7 +681,7 @@ psa_status_t cracen_cipher_finish(cracen_cipher_operation_t *operation, uint8_t
681681
}
682682
if (operation->initialized) {
683683
sx_status = sx_blkcipher_resume_state(&operation->cipher);
684-
if (sx_status) {
684+
if (sx_status != SX_OK) {
685685
return silex_statuscodes_to_psa(sx_status);
686686
}
687687
} else {
@@ -700,17 +700,17 @@ psa_status_t cracen_cipher_finish(cracen_cipher_operation_t *operation, uint8_t
700700

701701
sx_status = sx_blkcipher_crypt(&operation->cipher, operation->unprocessed_input,
702702
operation->unprocessed_input_bytes, output);
703-
if (sx_status) {
703+
if (sx_status != SX_OK) {
704704
return silex_statuscodes_to_psa(sx_status);
705705
}
706706

707707
sx_status = sx_blkcipher_run(&operation->cipher);
708-
if (sx_status) {
708+
if (sx_status != SX_OK) {
709709
return silex_statuscodes_to_psa(sx_status);
710710
}
711711

712712
sx_status = sx_blkcipher_wait(&operation->cipher);
713-
if (sx_status) {
713+
if (sx_status != SX_OK) {
714714
return silex_statuscodes_to_psa(sx_status);
715715
}
716716

subsys/nrf_security/src/drivers/cracen/cracenpsa/src/cracen_psa_aead.c

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -113,12 +113,12 @@ static psa_status_t process_on_hw(cracen_aead_operation_t *operation)
113113
{
114114
int sx_status = sx_aead_save_state(&operation->ctx);
115115

116-
if (sx_status) {
116+
if (sx_status != SX_OK) {
117117
return silex_statuscodes_to_psa(sx_status);
118118
}
119119

120120
sx_status = sx_aead_wait(&operation->ctx);
121-
if (sx_status) {
121+
if (sx_status != SX_OK) {
122122
return silex_statuscodes_to_psa(sx_status);
123123
}
124124
operation->context_state = CRACEN_CONTEXT_INITIALIZED;
@@ -618,12 +618,12 @@ static psa_status_t finalize_aead_encryption(cracen_aead_operation_t *operation,
618618
}
619619

620620
sx_status = sx_aead_produce_tag(&operation->ctx, tag);
621-
if (sx_status) {
621+
if (sx_status != SX_OK) {
622622
return silex_statuscodes_to_psa(sx_status);
623623
}
624624

625625
sx_status = sx_aead_wait(&operation->ctx);
626-
if (sx_status) {
626+
if (sx_status != SX_OK) {
627627
return silex_statuscodes_to_psa(sx_status);
628628
}
629629

@@ -675,12 +675,12 @@ static psa_status_t finalize_aead_decryption(cracen_aead_operation_t *operation,
675675
int sx_status;
676676

677677
sx_status = sx_aead_verify_tag(&operation->ctx, tag);
678-
if (sx_status) {
678+
if (sx_status != SX_OK) {
679679
return silex_statuscodes_to_psa(sx_status);
680680
}
681681

682682
sx_status = sx_aead_wait(&operation->ctx);
683-
if (sx_status) {
683+
if (sx_status != SX_OK) {
684684
return silex_statuscodes_to_psa(sx_status);
685685
}
686686

subsys/nrf_security/src/drivers/cracen/cracenpsa/src/cracen_psa_cipher.c

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -523,7 +523,7 @@ psa_status_t cracen_cipher_update(cracen_cipher_operation_t *operation, const ui
523523
} else {
524524
if (operation->initialized) {
525525
sx_status = sx_blkcipher_resume_state(&operation->cipher);
526-
if (sx_status) {
526+
if (sx_status != SX_OK) {
527527
return silex_statuscodes_to_psa(sx_status);
528528
}
529529
} else {
@@ -540,7 +540,7 @@ psa_status_t cracen_cipher_update(cracen_cipher_operation_t *operation, const ui
540540
sx_status = sx_blkcipher_crypt(
541541
&operation->cipher, operation->unprocessed_input,
542542
operation->unprocessed_input_bytes, output);
543-
if (sx_status) {
543+
if (sx_status != SX_OK) {
544544
return silex_statuscodes_to_psa(sx_status);
545545
}
546546

@@ -552,18 +552,18 @@ psa_status_t cracen_cipher_update(cracen_cipher_operation_t *operation, const ui
552552
if (block_bytes) {
553553
sx_status = sx_blkcipher_crypt(&operation->cipher, input,
554554
block_bytes, output);
555-
if (sx_status) {
555+
if (sx_status != SX_OK) {
556556
return silex_statuscodes_to_psa(sx_status);
557557
}
558558
}
559559

560560
sx_status = sx_blkcipher_save_state(&operation->cipher);
561-
if (sx_status) {
561+
if (sx_status != SX_OK) {
562562
return silex_statuscodes_to_psa(sx_status);
563563
}
564564

565565
sx_status = sx_blkcipher_wait(&operation->cipher);
566-
if (sx_status) {
566+
if (sx_status != SX_OK) {
567567
return silex_statuscodes_to_psa(sx_status);
568568
}
569569

@@ -624,7 +624,7 @@ psa_status_t cracen_cipher_finish(cracen_cipher_operation_t *operation, uint8_t
624624

625625
if (operation->initialized) {
626626
sx_status = sx_blkcipher_resume_state(&operation->cipher);
627-
if (sx_status) {
627+
if (sx_status != SX_OK) {
628628
return silex_statuscodes_to_psa(sx_status);
629629
}
630630
} else {
@@ -715,17 +715,17 @@ psa_status_t cracen_cipher_finish(cracen_cipher_operation_t *operation, uint8_t
715715

716716
sx_status = sx_blkcipher_crypt(&operation->cipher, operation->unprocessed_input,
717717
operation->unprocessed_input_bytes, output);
718-
if (sx_status) {
718+
if (sx_status != SX_OK) {
719719
return silex_statuscodes_to_psa(sx_status);
720720
}
721721

722722
sx_status = sx_blkcipher_run(&operation->cipher);
723-
if (sx_status) {
723+
if (sx_status != SX_OK) {
724724
return silex_statuscodes_to_psa(sx_status);
725725
}
726726

727727
sx_status = sx_blkcipher_wait(&operation->cipher);
728-
if (sx_status) {
728+
if (sx_status != SX_OK) {
729729
return silex_statuscodes_to_psa(sx_status);
730730
}
731731

subsys/nrf_security/src/drivers/cracen/cracenpsa/src/cracen_psa_hash.c

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -44,17 +44,17 @@ psa_status_t cracen_hash_compute(psa_algorithm_t alg, const uint8_t *input, size
4444
*hash_length = sx_hash_get_alg_digestsz(sx_hash_algo);
4545

4646
sx_status = sx_hash_create(&c, sx_hash_algo, sizeof(c));
47-
if (sx_status) {
47+
if (sx_status != SX_OK) {
4848
return silex_statuscodes_to_psa(sx_status);
4949
}
5050

5151
sx_status = sx_hash_feed(&c, input, input_length);
52-
if (sx_status) {
52+
if (sx_status != SX_OK) {
5353
return silex_statuscodes_to_psa(sx_status);
5454
}
5555

5656
sx_status = sx_hash_digest(&c, hash);
57-
if (sx_status) {
57+
if (sx_status != SX_OK) {
5858
return silex_statuscodes_to_psa(sx_status);
5959
}
6060

@@ -68,7 +68,7 @@ psa_status_t cracen_hash_setup(cracen_hash_operation_t *operation, psa_algorithm
6868
int status;
6969

7070
status = hash_get_algo(alg, &operation->sx_hash_algo);
71-
if (status) {
71+
if (status != SX_OK) {
7272
return status;
7373
}
7474
operation->is_first_block = true;
@@ -90,15 +90,15 @@ static int init_or_resume_context(cracen_hash_operation_t *operation)
9090
if (operation->is_first_block == true) {
9191
sx_status = sx_hash_create(&operation->sx_ctx, operation->sx_hash_algo,
9292
sizeof(operation->sx_ctx));
93-
if (sx_status) {
93+
if (sx_status != SX_OK) {
9494
return sx_status;
9595
}
9696
operation->is_first_block = false;
9797

9898
} else {
9999
/* Get back the old state if previous operation had been done */
100100
sx_status = sx_hash_resume_state(&operation->sx_ctx);
101-
if (sx_status) {
101+
if (sx_status != SX_OK) {
102102
return sx_status;
103103
}
104104
}
@@ -138,15 +138,15 @@ psa_status_t cracen_hash_update(cracen_hash_operation_t *operation, const uint8_
138138

139139
/* Initialize or resume an already initialized context. */
140140
sx_status = init_or_resume_context(operation);
141-
if (sx_status) {
141+
if (sx_status != SX_OK) {
142142
return silex_statuscodes_to_psa(sx_status);
143143
}
144144

145145
/* Feed the data that are currently in the input buffer to the driver. */
146146
sx_status = sx_hash_feed(&operation->sx_ctx, operation->input_buffer,
147147
sx_hash_get_alg_blocksz(operation->sx_hash_algo) -
148148
operation->bytes_left_for_next_block);
149-
if (sx_status) {
149+
if (sx_status != SX_OK) {
150150
return silex_statuscodes_to_psa(sx_status);
151151
}
152152

@@ -160,17 +160,17 @@ psa_status_t cracen_hash_update(cracen_hash_operation_t *operation, const uint8_
160160

161161
/* forward the data to the driver and process the data */
162162
sx_status = sx_hash_feed(&operation->sx_ctx, input, input_chunk_length);
163-
if (sx_status) {
163+
if (sx_status != SX_OK) {
164164
return silex_statuscodes_to_psa(sx_status);
165165
}
166166
sx_status = sx_hash_save_state(&operation->sx_ctx);
167-
if (sx_status) {
167+
if (sx_status != SX_OK) {
168168
return silex_statuscodes_to_psa(sx_status);
169169
}
170170

171171
/* Wait until partial processing is done */
172172
sx_status = sx_hash_wait(&operation->sx_ctx);
173-
if (sx_status) {
173+
if (sx_status != SX_OK) {
174174
return silex_statuscodes_to_psa(sx_status);
175175
}
176176

@@ -201,23 +201,23 @@ psa_status_t cracen_hash_finish(cracen_hash_operation_t *operation, uint8_t *has
201201
}
202202

203203
sx_status = init_or_resume_context(operation);
204-
if (sx_status) {
204+
if (sx_status != SX_OK) {
205205
return silex_statuscodes_to_psa(sx_status);
206206
}
207207

208208
sx_status = sx_hash_feed(&operation->sx_ctx, operation->input_buffer,
209209
sx_hash_get_alg_blocksz(operation->sx_hash_algo) -
210210
operation->bytes_left_for_next_block);
211-
if (sx_status) {
211+
if (sx_status != SX_OK) {
212212
return silex_statuscodes_to_psa(sx_status);
213213
}
214214

215215
sx_status = sx_hash_digest(&operation->sx_ctx, hash);
216-
if (sx_status) {
216+
if (sx_status != SX_OK) {
217217
return silex_statuscodes_to_psa(sx_status);
218218
}
219219
sx_status = sx_hash_wait(&operation->sx_ctx);
220-
if (sx_status) {
220+
if (sx_status != SX_OK) {
221221
return silex_statuscodes_to_psa(sx_status);
222222
}
223223

0 commit comments

Comments
 (0)