Datasheet

Table Of Contents
...........continued
Parameter Type Direction Location Data Length Before Executing the
Service
After Executing the
Service
u2Status (see
43.3.3.6 Return
Codes)
u2 I/O Output Status
Reserved u2
Reserved u4
The Specific field in the PUKCL_HEADER structure is another structure named PUKCL_STATUS. The
following table describes this structure. The details of the use of these bits are provided in the individual
service descriptions.
43.3.3.2.2 PUKCL_STATUS Structure
Members of the PUKCL_STATUS structure are shown in the following table.
Table 43-2. PUKCL_STATUS Structure
Parameter
Type Direction Location Data Length Before Executing the Service After Executing the Service
CarryIn (see Note 1) bit I CarryIn
CarryOut bit O CarryOut
Zero bit O
1: Result is zero
0: Result is not zero
Gf2n (see Note 1) bit I
Mathematical field 0: Integers
(Z
p
)
1: Field GF(2
n
)
Violation bit O Indicates a violation
Note: 
1. Two of these fields must be filled in to avoid problems during computations. If the Gf2n and CarryIn
fields are not reset or initialized properly, problems may be encountered during computations. For
instance, not initializing the Gf2n field may result in getting a correct mathematical result, but
computed over GF(2
n
) instead of Z
p
.
43.3.3.2.3 PUKCL Service Specific Header
Details about each service specific header are provided with service descriptions in a subsequent
section. Such structures may contain input or output parameters. A parameter is considered as an input
parameter when it used for passing information to the PUKCL, and it is considered as an output
parameter when the PUKCL uses it to pass a result back to the application code.
The following code provides the service specific header example for the SelfTest service.
typedef struct _PUKCL_selftest {
u4 u4Version;
u4 u4PUKCCVersion;
u4 u4CheckNum1;
u4 u4CheckNum2;
u1 u1Step;
} _PUKCL_SELFTEST;
After the SelfTest service is invoked (with vPUKCL_Process(SelfTest, pvPUKCLParam)), the service
specific return values can be checked using pvPUKCLParam.
SAM D5x/E5x Family Data Sheet
Public Key Cryptography Controller (PUKCC)
© 2019 Microchip Technology Inc.
Datasheet
DS60001507E-page 1447