# SAM3XA EFC0

## Embedded Flash Controller (EFC0) User Interface

### Registers

Register Mapping
Address | Register | Name | Access | Reset
--- | --- | --- | --- | ---
0x400E0A00 | EEFC Flash Mode Register | EFC0_FMR | read-write | 0x00000000
0x400E0A04 | EEFC Flash Command Register | EFC0_FCR | write-only | -
0x400E0A08 | EEFC Flash Status Register | EFC0_FSR | read-only | 0x00000001
0x400E0A0C | EEFC Flash Result Register | EFC0_FRR | read-only | 0x00000000

### Register Fields

#### EFC0 EEFC Flash Mode Register

Name: EFC0_FMR

Access: read-write

Address: 0x400E0A00

31 | 30 | 29 | 28 | 27 | 26 | 25 | 24
- | - | - | - | - | - | - | FAM
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16
- | - | - | - | - | - | - | SCOD
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8
- | - | - | - | FWS
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0
- | - | - | - | - | - | - | FRDY

- FRDY: Ready Interrupt Enable

  Value | Name | Description
  --- | --- | ---
  0 | - | Flash Ready does not generate an interrupt.
  1 | - | Flash Ready (to accept a new command) generates an interrupt.

- FWS: Flash Wait State

-

- SCOD: Sequential Code Optimization Disable

  Value | Name | Description
  --- | --- | ---
  0 | - | The sequential code optimization is enabled.
  1 | - | The sequential code optimization is disabled.

- FAM: Flash Access Mode

  Value | Name | Description
  --- | --- | ---
  0 | - | 128-bit access in read Mode only, to enhance access speed.
  1 | - | 64-bit access in read Mode only, to enhance power consumption.

#### EFC0 EEFC Flash Command Register

Name: EFC0_FCR

Access: write-only

Address: 0x400E0A04

31 | 30 | 29 | 28 | 27 | 26 | 25 | 24
FKEY
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16
FARG
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8
FARG
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0
FCMD

- FCMD: Flash Command

-

- FARG: Flash Command Argument

-

- FKEY: Flash Writing Protection Key

-

#### EFC0 EEFC Flash Status Register

Name: EFC0_FSR

Access: read-only

Address: 0x400E0A08

31 | 30 | 29 | 28 | 27 | 26 | 25 | 24
- | - | - | - | - | - | - | -
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16
- | - | - | - | - | - | - | -
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8
- | - | - | - | - | - | - | -
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0
- | - | - | - | - | FLOCKE | FCMDE | FRDY

- FRDY: Flash Ready Status

  Value | Name | Description
  --- | --- | ---
  0 | - | The Enhanced Embedded Flash Controller (EEFC) is busy.
  1 | - | The Enhanced Embedded Flash Controller (EEFC) is ready to start a new command.

- FCMDE: Flash Command Error Status

  Value | Name | Description
  --- | --- | ---
  0 | - | No invalid commands and no bad keywords were written in the Flash Mode Register EEFC_FMR.
  1 | - | An invalid command and/or a bad keyword was/were written in the Flash Mode Register EEFC_FMR.

- FLOCKE: Flash Lock Error Status

  Value | Name | Description
  --- | --- | ---
  0 | - | No programming/erase of at least one locked region has happened since the last read of EEFC_FSR.
  1 | - | Programming/erase of at least one locked region has happened since the last read of EEFC_FSR.

#### EFC0 EEFC Flash Result Register

Name: EFC0_FRR

Access: read-only

Address: 0x400E0A0C

31 | 30 | 29 | 28 | 27 | 26 | 25 | 24
FVALUE
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16
FVALUE
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8
FVALUE
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0
FVALUE

- FVALUE: Flash Result Value

-