name: MSPM0GX51X Series
manufacturer:
  id: 0x17
  cc: 0x0
generated_from_pack: true
pack_file_release: 1.0.0
variants:
- name: MSPM0G1518
  cores:
  - name: main
    type: armv6m
    core_access_options: !Arm
      ap: !v1 0
  memory_map:
  - !Nvm
    name: IROM1
    range:
      start: 0x0
      end: 0x40000
    cores:
    - main
    access:
      write: false
      boot: true
  - !Generic
    name: IROM2
    range:
      start: 0x400000
      end: 0x440000
    cores:
    - main
    access:
      write: false
  - !Generic
    name: IRAM1
    range:
      start: 0x20000000
      end: 0x20010000
    cores:
    - main
  - !Generic
    name: IRAM_Parity
    range:
      start: 0x20100000
      end: 0x20110000
    cores:
    - main
  - !Ram
    name: IRAM_No_Parity
    range:
      start: 0x20200000
      end: 0x20220000
    cores:
    - main
  - !Generic
    name: IRAM_Parity_Code
    range:
      start: 0x20300000
      end: 0x20310000
    cores:
    - main
  - !Generic
    name: NonMain_ECC
    range:
      start: 0x41c00000
      end: 0x41c00800
    cores:
    - main
    access:
      write: false
      execute: false
  - !Generic
    name: Factory_ECC
    range:
      start: 0x41c40000
      end: 0x41c40200
    cores:
    - main
    access:
      write: false
      execute: false
  - !Generic
    name: Data
    range:
      start: 0x41d00000
      end: 0x41d04000
    cores:
    - main
    access:
      write: false
      execute: false
  flash_algorithms:
  - mspm0gx51x_main_512kb
  - mspm0gx51x_nonmain
  - mspm0gx51x_data_16kb
- name: MSPM0G1519
  cores:
  - name: main
    type: armv6m
    core_access_options: !Arm
      ap: !v1 0
  memory_map:
  - !Nvm
    name: IROM1
    range:
      start: 0x0
      end: 0x80000
    cores:
    - main
    access:
      write: false
      boot: true
  - !Generic
    name: IROM2
    range:
      start: 0x400000
      end: 0x480000
    cores:
    - main
    access:
      write: false
  - !Generic
    name: IRAM1
    range:
      start: 0x20000000
      end: 0x20010000
    cores:
    - main
  - !Generic
    name: IRAM_Parity
    range:
      start: 0x20100000
      end: 0x20110000
    cores:
    - main
  - !Ram
    name: IRAM_No_Parity
    range:
      start: 0x20200000
      end: 0x20220000
    cores:
    - main
  - !Generic
    name: IRAM_Parity_Code
    range:
      start: 0x20300000
      end: 0x20310000
    cores:
    - main
  - !Generic
    name: NonMain_ECC
    range:
      start: 0x41c00000
      end: 0x41c00800
    cores:
    - main
    access:
      write: false
      execute: false
  - !Generic
    name: Factory_ECC
    range:
      start: 0x41c40000
      end: 0x41c40200
    cores:
    - main
    access:
      write: false
      execute: false
  - !Generic
    name: Data
    range:
      start: 0x41d00000
      end: 0x41d04000
    cores:
    - main
    access:
      write: false
      execute: false
  flash_algorithms:
  - mspm0gx51x_main_512kb
  - mspm0gx51x_nonmain
  - mspm0gx51x_data_16kb
- name: MSPM0G3518
  cores:
  - name: main
    type: armv6m
    core_access_options: !Arm
      ap: !v1 0
  memory_map:
  - !Nvm
    name: IROM1
    range:
      start: 0x0
      end: 0x40000
    cores:
    - main
    access:
      write: false
      boot: true
  - !Generic
    name: IROM2
    range:
      start: 0x400000
      end: 0x440000
    cores:
    - main
    access:
      write: false
  - !Generic
    name: IRAM1
    range:
      start: 0x20000000
      end: 0x20010000
    cores:
    - main
  - !Generic
    name: IRAM_Parity
    range:
      start: 0x20100000
      end: 0x20110000
    cores:
    - main
  - !Ram
    name: IRAM_No_Parity
    range:
      start: 0x20200000
      end: 0x20220000
    cores:
    - main
  - !Generic
    name: IRAM_Parity_Code
    range:
      start: 0x20300000
      end: 0x20310000
    cores:
    - main
  - !Generic
    name: NonMain_ECC
    range:
      start: 0x41c00000
      end: 0x41c00800
    cores:
    - main
    access:
      write: false
      execute: false
  - !Generic
    name: Factory_ECC
    range:
      start: 0x41c40000
      end: 0x41c40200
    cores:
    - main
    access:
      write: false
      execute: false
  - !Generic
    name: Data
    range:
      start: 0x41d00000
      end: 0x41d04000
    cores:
    - main
    access:
      write: false
      execute: false
  flash_algorithms:
  - mspm0gx51x_main_512kb
  - mspm0gx51x_nonmain
  - mspm0gx51x_data_16kb
- name: MSPM0G3519
  cores:
  - name: main
    type: armv6m
    core_access_options: !Arm
      ap: !v1 0
  memory_map:
  - !Nvm
    name: IROM1
    range:
      start: 0x0
      end: 0x80000
    cores:
    - main
    access:
      write: false
      boot: true
  - !Generic
    name: IROM2
    range:
      start: 0x400000
      end: 0x480000
    cores:
    - main
    access:
      write: false
  - !Generic
    name: IRAM1
    range:
      start: 0x20000000
      end: 0x20010000
    cores:
    - main
  - !Generic
    name: IRAM_Parity
    range:
      start: 0x20100000
      end: 0x20110000
    cores:
    - main
  - !Ram
    name: IRAM_No_Parity
    range:
      start: 0x20200000
      end: 0x20220000
    cores:
    - main
  - !Generic
    name: IRAM_Parity_Code
    range:
      start: 0x20300000
      end: 0x20310000
    cores:
    - main
  - !Generic
    name: NonMain_ECC
    range:
      start: 0x41c00000
      end: 0x41c00800
    cores:
    - main
    access:
      write: false
      execute: false
  - !Generic
    name: Factory_ECC
    range:
      start: 0x41c40000
      end: 0x41c40200
    cores:
    - main
    access:
      write: false
      execute: false
  - !Generic
    name: Data
    range:
      start: 0x41d00000
      end: 0x41d04000
    cores:
    - main
    access:
      write: false
      execute: false
  flash_algorithms:
  - mspm0gx51x_main_512kb
  - mspm0gx51x_nonmain
  - mspm0gx51x_data_16kb
flash_algorithms:
- name: mspm0gx51x_main_512kb
  description: MSPM0GX51X MAIN 512KB
  default: true
  instructions: [encoded data, 7820 characters]
  load_address: 0x20200008
  pc_init: 0x1d
  pc_uninit: 0x99
  pc_program_page: 0x19d
  pc_erase_sector: 0xcd
  pc_erase_all: 0x9d
  data_section_offset: 0x16e4
  flash_properties:
    address_range:
      start: 0x0
      end: 0x80000
    page_size: 0x400
    erased_byte_value: 0xff
    program_page_timeout: 500
    erase_sector_timeout: 3000
    sectors:
    - size: 0x400
      address: 0x0
- name: mspm0gx51x_nonmain
  description: MSPM0GX51X NON-MAIN
  instructions: [encoded data, 9400 characters]
  load_address: 0x20200008
  pc_init: 0x1d
  pc_uninit: 0xb5
  pc_program_page: 0x1a9
  pc_erase_sector: 0x159
  pc_erase_all: 0x211
  data_section_offset: 0x1b84
  flash_properties:
    address_range:
      start: 0x41c00000
      end: 0x41c00400
    page_size: 0x40
    erased_byte_value: 0xff
    program_page_timeout: 500
    erase_sector_timeout: 3000
    sectors:
    - size: 0x400
      address: 0x0
- name: mspm0gx51x_data_16kb
  description: MSPM0GX51X DATA 16KB
  instructions: [encoded data, 7820 characters]
  load_address: 0x20200008
  pc_init: 0x1d
  pc_uninit: 0x99
  pc_program_page: 0x19d
  pc_erase_sector: 0xcd
  pc_erase_all: 0x9d
  data_section_offset: 0x16e4
  flash_properties:
    address_range:
      start: 0x0
      end: 0x4000
    page_size: 0x400
    erased_byte_value: 0xff
    program_page_timeout: 500
    erase_sector_timeout: 3000
    sectors:
    - size: 0x400
      address: 0x0
