[][src]Struct cc13x2_cc26x2_hal::pka::function::W

pub struct W { /* fields omitted */ }

Value to write to the register

Methods

impl W[src]

pub fn reset_value() -> W[src]

Reset value of the register

pub unsafe fn bits(&mut self, bits: u32) -> &mut Self[src]

Writes raw bits to the register

pub fn reserved25(&mut self) -> _RESERVED25W[src]

Bits 25:31 - 31:25] Set to zero on write, ignore on read

pub fn stall_result(&mut self) -> _STALL_RESULTW[src]

Bit 24 - 24:24] When written with a 1b, updating of the COMPARE bit, MSW and DIVMSW registers, as well as resetting the run bit is stalled beyond the point that a running operation is actually finished. Use this to allow software enough time to read results from a previous operation when the newly started operation is known to take only a short amount of time. If a result is waiting, the result registers is updated and the run bit is reset in the clock cycle following writing the stall result bit back to 0b. The Stall result function may only be used for basic PKCP operations.

pub fn reserved16(&mut self) -> _RESERVED16W[src]

Bits 16:23 - 23:16] Set to zero on write, ignore on read

pub fn run(&mut self) -> _RUNW[src]

Bit 15 - 15:15] The host sets this bit to instruct the PKA module to begin processing the basic PKCP or complex sequencer operation. This bit is reset low automatically when the operation is complete. After a reset, the run bit is always set to 1b. Depending on the option, program ROM or program RAM, the following applies: Program ROM - The first sequencer instruction sets the bit to 0b. This is done immediately after the hardware reset is released. Program RAM - The sequencer must set the bit to 0b. As a valid firmware may not have been loaded, the sequencer is held in software reset after the hardware reset is released (the SEQCTRL.RESET bit is set to 1b). After the FW image is loaded and the Reset bit is cleared, the sequencer starts to execute the FW. The first instruction clears the run bit. In both cases a few clock cycles are needed before the first instruction is executed and the run bit state has been propagated.

pub fn sequencer_operations(&mut self) -> _SEQUENCER_OPERATIONSW[src]

Bits 12:14 - 14:12] These bits select the complex sequencer operation to perform: 0x0: None 0x1: ExpMod-CRT 0x2: ECmontMUL 0x3: ECC-ADD (if available in firmware, otherwise reserved) 0x4: ExpMod-ACT2 0x5: ECC-MUL (if available in firmware, otherwise reserved) 0x6: ExpMod-variable 0x7: ModInv (if available in firmware, otherwise reserved) The encoding of these operations is determined by sequencer firmware.

pub fn copy(&mut self) -> _COPYW[src]

Bit 11 - 11:11] Perform copy operation

pub fn compare(&mut self) -> _COMPAREW[src]

Bit 10 - 10:10] Perform compare operation

pub fn modulo(&mut self) -> _MODULOW[src]

Bit 9 - 9:9] Perform modulo operation

pub fn divide(&mut self) -> _DIVIDEW[src]

Bit 8 - 8:8] Perform divide operation

pub fn lshift(&mut self) -> _LSHIFTW[src]

Bit 7 - 7:7] Perform left shift operation

pub fn rshift(&mut self) -> _RSHIFTW[src]

Bit 6 - 6:6] Perform right shift operation

pub fn subtract(&mut self) -> _SUBTRACTW[src]

Bit 5 - 5:5] Perform subtract operation

pub fn add(&mut self) -> _ADDW[src]

Bit 4 - 4:4] Perform add operation

pub fn ms_one(&mut self) -> _MS_ONEW[src]

Bit 3 - 3:3] Loads the location of the Most Significant one bit within the result word indicated in the MSW register into bits [4:0] of the DIVMSW.MSW_ADDRESS register - can only be used with basic PKCP operations, except for Divide, Modulo and Compare.

pub fn reserved2(&mut self) -> _RESERVED2W[src]

Bit 2 - 2:2] Set to zero on write, ignore on read

pub fn addsub(&mut self) -> _ADDSUBW[src]

Bit 1 - 1:1] Perform combined add/subtract operation

pub fn multiply(&mut self) -> _MULTIPLYW[src]

Bit 0 - 0:0] Perform multiply operation

Auto Trait Implementations

impl Send for W

impl Sync for W

Blanket Implementations

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Same for T

type Output = T

Should always be Self