atsamd_hal::pukcc::c_abi

Trait Service

Source
pub trait Service: Sealed {
    const SERVICE_NUM: u8;
    const FUNCTION_ADDRESS: usize;

    // Provided method
    unsafe fn call(pukcl_params: &mut PukclParams) { ... }
}

Required Associated Constants§

Provided Methods§

Source

unsafe fn call(pukcl_params: &mut PukclParams)

Call to PUKCC functions

§Safety

User must ensure that PukclParams is correctly initialised according to the service being called

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl Service for CRT

Source§

const SERVICE_NUM: u8 = 88u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_525usize

Source§

impl Service for ClearFlags

Source§

const SERVICE_NUM: u8 = 95u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_449usize

Source§

impl Service for Comp

Source§

const SERVICE_NUM: u8 = 107u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_469usize

Source§

impl Service for CondCopy

Source§

const SERVICE_NUM: u8 = 81u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_445usize

Source§

impl Service for Div

Source§

const SERVICE_NUM: u8 = 82u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_513usize

Source§

impl Service for ExpMod

Source§

const SERVICE_NUM: u8 = 108u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_561usize

Source§

impl Service for FastCopy

Source§

const SERVICE_NUM: u8 = 92u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_529usize

Source§

impl Service for Fill

Source§

const SERVICE_NUM: u8 = 111u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_493usize

Source§

impl Service for Fmult

Source§

const SERVICE_NUM: u8 = 113u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_457usize

Source§

impl Service for GCD

Source§

const SERVICE_NUM: u8 = 93u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_461usize

Source§

impl Service for GF2NEcConvAffineToProjective

Source§

const SERVICE_NUM: u8 = 115u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_557usize

Source§

impl Service for GF2NEcConvProjToAffine

Source§

const SERVICE_NUM: u8 = 114u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_569usize

Source§

impl Service for GF2NEcDsaGenerateFast

Source§

const SERVICE_NUM: u8 = 112u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_533usize

Source§

impl Service for GF2NEcDsaVerifyFast

Source§

const SERVICE_NUM: u8 = 116u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_501usize

Source§

impl Service for GF2NEcPointIsOnCurve

Source§

const SERVICE_NUM: u8 = 87u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_541usize

Source§

impl Service for GF2NEcRandomiseCoordinate

Source§

const SERVICE_NUM: u8 = 84u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_437usize

Source§

impl Service for GF2NEccAddFast

Source§

const SERVICE_NUM: u8 = 89u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_481usize

Source§

impl Service for GF2NEccDblFast

Source§

const SERVICE_NUM: u8 = 105u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_453usize

Source§

impl Service for GF2NEccMulFast

Source§

const SERVICE_NUM: u8 = 100u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_465usize

Source§

impl Service for PrimeGen

Source§

const SERVICE_NUM: u8 = 110u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_521usize

Source§

impl Service for RedMod

Source§

const SERVICE_NUM: u8 = 80u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_441usize

Source§

impl Service for Rng

Source§

const SERVICE_NUM: u8 = 98u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_545usize

Source§

impl Service for SelfTest

Source§

const SERVICE_NUM: u8 = 91u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_517usize

Source§

impl Service for Smult

Source§

const SERVICE_NUM: u8 = 103u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_505usize

Source§

impl Service for Square

Source§

const SERVICE_NUM: u8 = 109u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_509usize

Source§

impl Service for Swap

Source§

const SERVICE_NUM: u8 = 99u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_549usize

Source§

impl Service for ZpEcConvAffineToProjective

Source§

const SERVICE_NUM: u8 = 97u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_537usize

Source§

impl Service for ZpEcConvProjToAffine

Source§

const SERVICE_NUM: u8 = 86u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_565usize

Source§

impl Service for ZpEcDsaGenerateFast

Source§

const SERVICE_NUM: u8 = 83u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_473usize

Source§

impl Service for ZpEcDsaQuickVerify

Source§

const SERVICE_NUM: u8 = 119u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_589usize

Source§

impl Service for ZpEcDsaVerifyFast

Source§

const SERVICE_NUM: u8 = 85u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_477usize

Source§

impl Service for ZpEcPointIsOnCurve

Source§

const SERVICE_NUM: u8 = 104u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_573usize

Source§

impl Service for ZpEcRandomiseCoordinate

Source§

const SERVICE_NUM: u8 = 94u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_553usize

Source§

impl Service for ZpEccAddFast

Source§

const SERVICE_NUM: u8 = 102u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_489usize

Source§

impl Service for ZpEccAddSubFast

Source§

const SERVICE_NUM: u8 = 117u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_581usize

Source§

impl Service for ZpEccDblFast

Source§

const SERVICE_NUM: u8 = 96u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_485usize

Source§

impl Service for ZpEccMulFast

Source§

const SERVICE_NUM: u8 = 101u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_497usize

Source§

impl Service for ZpEccQuickDualMulFast

Source§

const SERVICE_NUM: u8 = 118u8

Source§

const FUNCTION_ADDRESS: usize = 33_554_585usize