name: SF32LB58 Series
variants:
- name: SF32LB58
  cores:
  - name: hcpu
    type: armv8m
    core_access_options: !Arm
      ap: !v1 0
  - name: acpu
    type: armv8m
    core_access_options: !Arm
      ap: !v1 1
  memory_map:
  - !Nvm
    name: Flash3
    range:
      start: 0x64000000
      end: 0x68000000
    cores:
    - hcpu
    - acpu
  - !Nvm
    name: Flash4
    range:
      start: 0x68000000
      end: 0xA0000000
    cores:
    - hcpu
    - acpu
  - !Ram
    name: SRAM
    range:
      start: 0x20000000
      end: 0x20200000
    cores:
    - hcpu
    - acpu
    access:
      boot: true
  - !Ram
    name: ACPU SRAM
    range:
      start: 0x20200000
      end: 0x20280000
    cores:
    - hcpu
    - acpu
  - !Ram
    name: Retention SRAM
    range:
      start: 0x20000
      end: 0x30000
    cores:
    - hcpu
  flash_algorithms:
  - sf32lb58x
flash_algorithms:
- name: sf32lb58x
  description: SF32LB58X UNI_FLASH
  default: true
  instructions: [encoded data, 67088 characters]
  pc_init: 0x820d
  pc_uninit: 0x8753
  pc_program_page: 0x86d5
  pc_erase_sector: 0x8169
  data_section_offset: 0xa314
  flash_properties:
    address_range:
      start: 0x10000000
      end: 0x70000000
    page_size: 0x2000
    erased_byte_value: 0xff
    program_page_timeout: 6000
    erase_sector_timeout: 3000
    sectors:
    - size: 0x10000
      address: 0x0
  cores:
  - hcpu
