stm32-data/data/registers/hsem_v1.yaml
Michael Zill e029a55f7a Arrayfied v2, v3, v4 - removed enums, aligned yaml structure
The following list shows the different hsem yaml versions and the coresponding chips.

    wba is on purpose not included at is complex and very different from the others which will
    also make the HSEM implementation in the HAL more complex. I leave this out for another PR.

    h747
    wb55

    h735
    h7b3
    h753v
    h753
    h743
    h743v

    wl5x_cm0p
    wl5x_cm4

    wle5
2024-04-08 13:36:40 +02:00

151 lines
3.3 KiB
YAML

block/HSEM:
description: Hardware semaphore (HSEM).
items:
- name: R
description: HSEM register HSEM_R%s HSEM_R31.
array:
len: 32
stride: 4
byte_offset: 0
fieldset: R
- name: RLR
description: HSEM Read lock register.
array:
len: 32
stride: 4
byte_offset: 128
access: Read
fieldset: RLR
- name: C1IER
description: HSEM Interrupt enable register.
byte_offset: 256
fieldset: IER
- name: C1ICR
description: HSEM Interrupt clear register.
byte_offset: 260
fieldset: ICR
- name: C1ISR
description: HSEM Interrupt status register.
byte_offset: 264
access: Read
fieldset: ISR
- name: C1MISR
description: HSEM Masked interrupt status register.
byte_offset: 268
access: Read
fieldset: MISR
- name: C2IER
description: HSEM Interrupt enable register.
byte_offset: 272
fieldset: IER
- name: C2ICR
description: HSEM Interrupt clear register.
byte_offset: 276
fieldset: ICR
- name: C2ISR
description: HSEM Interrupt status register.
byte_offset: 280
access: Read
fieldset: ISR
- name: C2MISR
description: HSEM Masked interrupt status register.
byte_offset: 284
access: Read
fieldset: MISR
- name: CR
description: HSEM Clear register.
byte_offset: 320
fieldset: CR
- name: KEYR
description: HSEM Interrupt clear register.
byte_offset: 324
fieldset: KEYR
fieldset/CR:
description: HSEM Clear register.
fields:
- name: COREID
description: COREID of semaphores to be cleared.
bit_offset: 8
bit_size: 8
- name: KEY
description: Semaphore clear Key.
bit_offset: 16
bit_size: 16
fieldset/KEYR:
description: HSEM Interrupt clear register.
fields:
- name: KEY
description: Semaphore Clear Key.
bit_offset: 16
bit_size: 16
fieldset/R:
description: HSEM register HSEM_R%s HSEM_R31.
fields:
- name: PROCID
description: Semaphore ProcessID.
bit_offset: 0
bit_size: 8
- name: COREID
description: Semaphore COREID.
bit_offset: 8
bit_size: 8
- name: LOCK
description: Lock indication.
bit_offset: 31
bit_size: 1
fieldset/RLR:
description: HSEM Read lock register.
fields:
- name: PROCID
description: Semaphore ProcessID.
bit_offset: 0
bit_size: 8
- name: COREID
description: Semaphore COREID.
bit_offset: 8
bit_size: 8
- name: LOCK
description: Lock indication.
bit_offset: 31
bit_size: 1
fieldset/IER:
description: HSEM Interrupt enable register.
fields:
- name: ISE
description: Interrupt semaphore x enable bit.
bit_offset: 0
bit_size: 1
array:
len: 32
stride: 1
fieldset/ICR:
description: HSEM Interrupt clear register.
fields:
- name: ISC
description: Interrupt semaphore x clear bit.
bit_offset: 0
bit_size: 1
array:
len: 32
stride: 1
fieldset/ISR:
description: HSEM Interrupt status register.
fields:
- name: ISF
description: Interrupt semaphore x status bit before enable (mask).
bit_offset: 0
bit_size: 1
array:
len: 32
stride: 1
fieldset/MISR:
description: HSEM Masked interrupt status register.
fields:
- name: MISF
description: masked interrupt semaphore x status bit after enable (mask).
bit_offset: 0
bit_size: 1
array:
len: 32
stride: 1