Initial add

This commit is contained in:
Michael Zill 2024-04-02 20:29:46 +02:00
parent 378deee68b
commit 44967f3776
11 changed files with 8479 additions and 1 deletions

1
.gitignore vendored
View File

@ -7,3 +7,4 @@
__pycache__ __pycache__
target/ target/
venv/

617
data/registers/hsem_v1.yaml Normal file
View File

@ -0,0 +1,617 @@
block/HSEM:
description: 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: IER
description: HSEM Interrupt enable register.
byte_offset: 256
fieldset: IER
- name: ICR
description: HSEM Interrupt clear register.
byte_offset: 260
access: Read
fieldset: ICR
- name: ISR
description: HSEM Interrupt status register.
byte_offset: 264
access: Read
fieldset: ISR
- name: MISR
description: HSEM Masked interrupt status register.
byte_offset: 268
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: MASTERID
description: MasterID of semaphores to be cleared.
bit_offset: 8
bit_size: 8
- name: KEY
description: Semaphore clear Key.
bit_offset: 16
bit_size: 16
fieldset/ICR:
description: HSEM Interrupt clear register.
fields:
- name: ISEM0
description: Interrupt(N) semaphore n clear bit.
bit_offset: 0
bit_size: 1
- name: ISEM1
description: Interrupt(N) semaphore n clear bit.
bit_offset: 1
bit_size: 1
- name: ISEM2
description: Interrupt(N) semaphore n clear bit.
bit_offset: 2
bit_size: 1
- name: ISEM3
description: Interrupt(N) semaphore n clear bit.
bit_offset: 3
bit_size: 1
- name: ISEM4
description: Interrupt(N) semaphore n clear bit.
bit_offset: 4
bit_size: 1
- name: ISEM5
description: Interrupt(N) semaphore n clear bit.
bit_offset: 5
bit_size: 1
- name: ISEM6
description: Interrupt(N) semaphore n clear bit.
bit_offset: 6
bit_size: 1
- name: ISEM7
description: Interrupt(N) semaphore n clear bit.
bit_offset: 7
bit_size: 1
- name: ISEM8
description: Interrupt(N) semaphore n clear bit.
bit_offset: 8
bit_size: 1
- name: ISEM9
description: Interrupt(N) semaphore n clear bit.
bit_offset: 9
bit_size: 1
- name: ISEM10
description: Interrupt(N) semaphore n clear bit.
bit_offset: 10
bit_size: 1
- name: ISEM11
description: Interrupt(N) semaphore n clear bit.
bit_offset: 11
bit_size: 1
- name: ISEM12
description: Interrupt(N) semaphore n clear bit.
bit_offset: 12
bit_size: 1
- name: ISEM13
description: Interrupt(N) semaphore n clear bit.
bit_offset: 13
bit_size: 1
- name: ISEM14
description: Interrupt(N) semaphore n clear bit.
bit_offset: 14
bit_size: 1
- name: ISEM15
description: Interrupt(N) semaphore n clear bit.
bit_offset: 15
bit_size: 1
- name: ISEM16
description: Interrupt(N) semaphore n clear bit.
bit_offset: 16
bit_size: 1
- name: ISEM17
description: Interrupt(N) semaphore n clear bit.
bit_offset: 17
bit_size: 1
- name: ISEM18
description: Interrupt(N) semaphore n clear bit.
bit_offset: 18
bit_size: 1
- name: ISEM19
description: Interrupt(N) semaphore n clear bit.
bit_offset: 19
bit_size: 1
- name: ISEM20
description: Interrupt(N) semaphore n clear bit.
bit_offset: 20
bit_size: 1
- name: ISEM21
description: Interrupt(N) semaphore n clear bit.
bit_offset: 21
bit_size: 1
- name: ISEM22
description: Interrupt(N) semaphore n clear bit.
bit_offset: 22
bit_size: 1
- name: ISEM23
description: Interrupt(N) semaphore n clear bit.
bit_offset: 23
bit_size: 1
- name: ISEM24
description: Interrupt(N) semaphore n clear bit.
bit_offset: 24
bit_size: 1
- name: ISEM25
description: Interrupt(N) semaphore n clear bit.
bit_offset: 25
bit_size: 1
- name: ISEM26
description: Interrupt(N) semaphore n clear bit.
bit_offset: 26
bit_size: 1
- name: ISEM27
description: Interrupt(N) semaphore n clear bit.
bit_offset: 27
bit_size: 1
- name: ISEM28
description: Interrupt(N) semaphore n clear bit.
bit_offset: 28
bit_size: 1
- name: ISEM29
description: Interrupt(N) semaphore n clear bit.
bit_offset: 29
bit_size: 1
- name: ISEM30
description: Interrupt(N) semaphore n clear bit.
bit_offset: 30
bit_size: 1
- name: ISEM31
description: Interrupt(N) semaphore n clear bit.
bit_offset: 31
bit_size: 1
fieldset/IER:
description: HSEM Interrupt enable register.
fields:
- name: ISEM0
description: Interrupt semaphore n enable bit.
bit_offset: 0
bit_size: 1
- name: ISEM1
description: Interrupt semaphore n enable bit.
bit_offset: 1
bit_size: 1
- name: ISEM2
description: Interrupt semaphore n enable bit.
bit_offset: 2
bit_size: 1
- name: ISEM3
description: Interrupt semaphore n enable bit.
bit_offset: 3
bit_size: 1
- name: ISEM4
description: Interrupt semaphore n enable bit.
bit_offset: 4
bit_size: 1
- name: ISEM5
description: Interrupt semaphore n enable bit.
bit_offset: 5
bit_size: 1
- name: ISEM6
description: Interrupt semaphore n enable bit.
bit_offset: 6
bit_size: 1
- name: ISEM7
description: Interrupt semaphore n enable bit.
bit_offset: 7
bit_size: 1
- name: ISEM8
description: Interrupt semaphore n enable bit.
bit_offset: 8
bit_size: 1
- name: ISEM9
description: Interrupt semaphore n enable bit.
bit_offset: 9
bit_size: 1
- name: ISEM10
description: Interrupt semaphore n enable bit.
bit_offset: 10
bit_size: 1
- name: ISEM11
description: Interrupt semaphore n enable bit.
bit_offset: 11
bit_size: 1
- name: ISEM12
description: Interrupt semaphore n enable bit.
bit_offset: 12
bit_size: 1
- name: ISEM13
description: Interrupt semaphore n enable bit.
bit_offset: 13
bit_size: 1
- name: ISEM14
description: Interrupt semaphore n enable bit.
bit_offset: 14
bit_size: 1
- name: ISEM15
description: Interrupt semaphore n enable bit.
bit_offset: 15
bit_size: 1
- name: ISEM16
description: Interrupt semaphore n enable bit.
bit_offset: 16
bit_size: 1
- name: ISEM17
description: Interrupt semaphore n enable bit.
bit_offset: 17
bit_size: 1
- name: ISEM18
description: Interrupt semaphore n enable bit.
bit_offset: 18
bit_size: 1
- name: ISEM19
description: Interrupt semaphore n enable bit.
bit_offset: 19
bit_size: 1
- name: ISEM20
description: Interrupt semaphore n enable bit.
bit_offset: 20
bit_size: 1
- name: ISEM21
description: Interrupt semaphore n enable bit.
bit_offset: 21
bit_size: 1
- name: ISEM22
description: Interrupt semaphore n enable bit.
bit_offset: 22
bit_size: 1
- name: ISEM23
description: Interrupt semaphore n enable bit.
bit_offset: 23
bit_size: 1
- name: ISEM24
description: Interrupt semaphore n enable bit.
bit_offset: 24
bit_size: 1
- name: ISEM25
description: Interrupt semaphore n enable bit.
bit_offset: 25
bit_size: 1
- name: ISEM26
description: Interrupt semaphore n enable bit.
bit_offset: 26
bit_size: 1
- name: ISEM27
description: Interrupt semaphore n enable bit.
bit_offset: 27
bit_size: 1
- name: ISEM28
description: Interrupt semaphore n enable bit.
bit_offset: 28
bit_size: 1
- name: ISEM29
description: Interrupt semaphore n enable bit.
bit_offset: 29
bit_size: 1
- name: ISEM30
description: Interrupt semaphore n enable bit.
bit_offset: 30
bit_size: 1
- name: ISEM31
description: Interrupt(N) semaphore n enable bit.
bit_offset: 31
bit_size: 1
fieldset/ISR:
description: HSEM Interrupt status register.
fields:
- name: ISEM0
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 0
bit_size: 1
- name: ISEM1
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 1
bit_size: 1
- name: ISEM2
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 2
bit_size: 1
- name: ISEM3
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 3
bit_size: 1
- name: ISEM4
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 4
bit_size: 1
- name: ISEM5
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 5
bit_size: 1
- name: ISEM6
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 6
bit_size: 1
- name: ISEM7
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 7
bit_size: 1
- name: ISEM8
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 8
bit_size: 1
- name: ISEM9
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 9
bit_size: 1
- name: ISEM10
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 10
bit_size: 1
- name: ISEM11
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 11
bit_size: 1
- name: ISEM12
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 12
bit_size: 1
- name: ISEM13
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 13
bit_size: 1
- name: ISEM14
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 14
bit_size: 1
- name: ISEM15
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 15
bit_size: 1
- name: ISEM16
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 16
bit_size: 1
- name: ISEM17
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 17
bit_size: 1
- name: ISEM18
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 18
bit_size: 1
- name: ISEM19
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 19
bit_size: 1
- name: ISEM20
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 20
bit_size: 1
- name: ISEM21
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 21
bit_size: 1
- name: ISEM22
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 22
bit_size: 1
- name: ISEM23
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 23
bit_size: 1
- name: ISEM24
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 24
bit_size: 1
- name: ISEM25
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 25
bit_size: 1
- name: ISEM26
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 26
bit_size: 1
- name: ISEM27
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 27
bit_size: 1
- name: ISEM28
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 28
bit_size: 1
- name: ISEM29
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 29
bit_size: 1
- name: ISEM30
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 30
bit_size: 1
- name: ISEM31
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 31
bit_size: 1
fieldset/KEYR:
description: HSEM Interrupt clear register.
fields:
- name: KEY
description: Semaphore Clear Key.
bit_offset: 16
bit_size: 16
fieldset/MISR:
description: HSEM Masked interrupt status register.
fields:
- name: ISEM0
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 0
bit_size: 1
- name: ISEM1
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 1
bit_size: 1
- name: ISEM2
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 2
bit_size: 1
- name: ISEM3
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 3
bit_size: 1
- name: ISEM4
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 4
bit_size: 1
- name: ISEM5
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 5
bit_size: 1
- name: ISEM6
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 6
bit_size: 1
- name: ISEM7
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 7
bit_size: 1
- name: ISEM8
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 8
bit_size: 1
- name: ISEM9
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 9
bit_size: 1
- name: ISEM10
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 10
bit_size: 1
- name: ISEM11
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 11
bit_size: 1
- name: ISEM12
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 12
bit_size: 1
- name: ISEM13
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 13
bit_size: 1
- name: ISEM14
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 14
bit_size: 1
- name: ISEM15
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 15
bit_size: 1
- name: ISEM16
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 16
bit_size: 1
- name: ISEM17
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 17
bit_size: 1
- name: ISEM18
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 18
bit_size: 1
- name: ISEM19
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 19
bit_size: 1
- name: ISEM20
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 20
bit_size: 1
- name: ISEM21
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 21
bit_size: 1
- name: ISEM22
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 22
bit_size: 1
- name: ISEM23
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 23
bit_size: 1
- name: ISEM24
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 24
bit_size: 1
- name: ISEM25
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 25
bit_size: 1
- name: ISEM26
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 26
bit_size: 1
- name: ISEM27
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 27
bit_size: 1
- name: ISEM28
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 28
bit_size: 1
- name: ISEM29
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 29
bit_size: 1
- name: ISEM30
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 30
bit_size: 1
- name: ISEM31
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 31
bit_size: 1
fieldset/R:
description: HSEM register HSEM_R%s HSEM_R31.
fields:
- name: PROCID
description: Semaphore ProcessID.
bit_offset: 0
bit_size: 8
- name: MASTERID
description: Semaphore MasterID.
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: MASTERID
description: Semaphore MasterID.
bit_offset: 8
bit_size: 8
- name: LOCK
description: Lock indication.
bit_offset: 31
bit_size: 1

617
data/registers/hsem_v2.yaml Normal file
View File

@ -0,0 +1,617 @@
block/HSEM:
description: 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: C1IER
- name: C1ICR
description: HSEM Interrupt clear register.
byte_offset: 260
access: Read
fieldset: C1ICR
- name: C1ISR
description: HSEM Interrupt status register.
byte_offset: 264
access: Read
fieldset: C1ISR
- name: C1MISR
description: HSEM Masked interrupt status register.
byte_offset: 268
access: Read
fieldset: C1MISR
- name: CR
description: HSEM Clear register.
byte_offset: 320
fieldset: CR
- name: KEYR
description: HSEM Interrupt clear register.
byte_offset: 324
fieldset: KEYR
fieldset/C1ICR:
description: HSEM Interrupt clear register.
fields:
- name: ISEM0
description: Interrupt(N) semaphore n clear bit.
bit_offset: 0
bit_size: 1
- name: ISEM1
description: Interrupt(N) semaphore n clear bit.
bit_offset: 1
bit_size: 1
- name: ISEM2
description: Interrupt(N) semaphore n clear bit.
bit_offset: 2
bit_size: 1
- name: ISEM3
description: Interrupt(N) semaphore n clear bit.
bit_offset: 3
bit_size: 1
- name: ISEM4
description: Interrupt(N) semaphore n clear bit.
bit_offset: 4
bit_size: 1
- name: ISEM5
description: Interrupt(N) semaphore n clear bit.
bit_offset: 5
bit_size: 1
- name: ISEM6
description: Interrupt(N) semaphore n clear bit.
bit_offset: 6
bit_size: 1
- name: ISEM7
description: Interrupt(N) semaphore n clear bit.
bit_offset: 7
bit_size: 1
- name: ISEM8
description: Interrupt(N) semaphore n clear bit.
bit_offset: 8
bit_size: 1
- name: ISEM9
description: Interrupt(N) semaphore n clear bit.
bit_offset: 9
bit_size: 1
- name: ISEM10
description: Interrupt(N) semaphore n clear bit.
bit_offset: 10
bit_size: 1
- name: ISEM11
description: Interrupt(N) semaphore n clear bit.
bit_offset: 11
bit_size: 1
- name: ISEM12
description: Interrupt(N) semaphore n clear bit.
bit_offset: 12
bit_size: 1
- name: ISEM13
description: Interrupt(N) semaphore n clear bit.
bit_offset: 13
bit_size: 1
- name: ISEM14
description: Interrupt(N) semaphore n clear bit.
bit_offset: 14
bit_size: 1
- name: ISEM15
description: Interrupt(N) semaphore n clear bit.
bit_offset: 15
bit_size: 1
- name: ISEM16
description: Interrupt(N) semaphore n clear bit.
bit_offset: 16
bit_size: 1
- name: ISEM17
description: Interrupt(N) semaphore n clear bit.
bit_offset: 17
bit_size: 1
- name: ISEM18
description: Interrupt(N) semaphore n clear bit.
bit_offset: 18
bit_size: 1
- name: ISEM19
description: Interrupt(N) semaphore n clear bit.
bit_offset: 19
bit_size: 1
- name: ISEM20
description: Interrupt(N) semaphore n clear bit.
bit_offset: 20
bit_size: 1
- name: ISEM21
description: Interrupt(N) semaphore n clear bit.
bit_offset: 21
bit_size: 1
- name: ISEM22
description: Interrupt(N) semaphore n clear bit.
bit_offset: 22
bit_size: 1
- name: ISEM23
description: Interrupt(N) semaphore n clear bit.
bit_offset: 23
bit_size: 1
- name: ISEM24
description: Interrupt(N) semaphore n clear bit.
bit_offset: 24
bit_size: 1
- name: ISEM25
description: Interrupt(N) semaphore n clear bit.
bit_offset: 25
bit_size: 1
- name: ISEM26
description: Interrupt(N) semaphore n clear bit.
bit_offset: 26
bit_size: 1
- name: ISEM27
description: Interrupt(N) semaphore n clear bit.
bit_offset: 27
bit_size: 1
- name: ISEM28
description: Interrupt(N) semaphore n clear bit.
bit_offset: 28
bit_size: 1
- name: ISEM29
description: Interrupt(N) semaphore n clear bit.
bit_offset: 29
bit_size: 1
- name: ISEM30
description: Interrupt(N) semaphore n clear bit.
bit_offset: 30
bit_size: 1
- name: ISEM31
description: Interrupt(N) semaphore n clear bit.
bit_offset: 31
bit_size: 1
fieldset/C1IER:
description: HSEM Interrupt enable register.
fields:
- name: ISEM0
description: Interrupt semaphore n enable bit.
bit_offset: 0
bit_size: 1
- name: ISEM1
description: Interrupt semaphore n enable bit.
bit_offset: 1
bit_size: 1
- name: ISEM2
description: Interrupt semaphore n enable bit.
bit_offset: 2
bit_size: 1
- name: ISEM3
description: Interrupt semaphore n enable bit.
bit_offset: 3
bit_size: 1
- name: ISEM4
description: Interrupt semaphore n enable bit.
bit_offset: 4
bit_size: 1
- name: ISEM5
description: Interrupt semaphore n enable bit.
bit_offset: 5
bit_size: 1
- name: ISEM6
description: Interrupt semaphore n enable bit.
bit_offset: 6
bit_size: 1
- name: ISEM7
description: Interrupt semaphore n enable bit.
bit_offset: 7
bit_size: 1
- name: ISEM8
description: Interrupt semaphore n enable bit.
bit_offset: 8
bit_size: 1
- name: ISEM9
description: Interrupt semaphore n enable bit.
bit_offset: 9
bit_size: 1
- name: ISEM10
description: Interrupt semaphore n enable bit.
bit_offset: 10
bit_size: 1
- name: ISEM11
description: Interrupt semaphore n enable bit.
bit_offset: 11
bit_size: 1
- name: ISEM12
description: Interrupt semaphore n enable bit.
bit_offset: 12
bit_size: 1
- name: ISEM13
description: Interrupt semaphore n enable bit.
bit_offset: 13
bit_size: 1
- name: ISEM14
description: Interrupt semaphore n enable bit.
bit_offset: 14
bit_size: 1
- name: ISEM15
description: Interrupt semaphore n enable bit.
bit_offset: 15
bit_size: 1
- name: ISEM16
description: Interrupt semaphore n enable bit.
bit_offset: 16
bit_size: 1
- name: ISEM17
description: Interrupt semaphore n enable bit.
bit_offset: 17
bit_size: 1
- name: ISEM18
description: Interrupt semaphore n enable bit.
bit_offset: 18
bit_size: 1
- name: ISEM19
description: Interrupt semaphore n enable bit.
bit_offset: 19
bit_size: 1
- name: ISEM20
description: Interrupt semaphore n enable bit.
bit_offset: 20
bit_size: 1
- name: ISEM21
description: Interrupt semaphore n enable bit.
bit_offset: 21
bit_size: 1
- name: ISEM22
description: Interrupt semaphore n enable bit.
bit_offset: 22
bit_size: 1
- name: ISEM23
description: Interrupt semaphore n enable bit.
bit_offset: 23
bit_size: 1
- name: ISEM24
description: Interrupt semaphore n enable bit.
bit_offset: 24
bit_size: 1
- name: ISEM25
description: Interrupt semaphore n enable bit.
bit_offset: 25
bit_size: 1
- name: ISEM26
description: Interrupt semaphore n enable bit.
bit_offset: 26
bit_size: 1
- name: ISEM27
description: Interrupt semaphore n enable bit.
bit_offset: 27
bit_size: 1
- name: ISEM28
description: Interrupt semaphore n enable bit.
bit_offset: 28
bit_size: 1
- name: ISEM29
description: Interrupt semaphore n enable bit.
bit_offset: 29
bit_size: 1
- name: ISEM30
description: Interrupt semaphore n enable bit.
bit_offset: 30
bit_size: 1
- name: ISEM31
description: Interrupt(N) semaphore n enable bit.
bit_offset: 31
bit_size: 1
fieldset/C1ISR:
description: HSEM Interrupt status register.
fields:
- name: ISEM0
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 0
bit_size: 1
- name: ISEM1
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 1
bit_size: 1
- name: ISEM2
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 2
bit_size: 1
- name: ISEM3
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 3
bit_size: 1
- name: ISEM4
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 4
bit_size: 1
- name: ISEM5
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 5
bit_size: 1
- name: ISEM6
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 6
bit_size: 1
- name: ISEM7
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 7
bit_size: 1
- name: ISEM8
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 8
bit_size: 1
- name: ISEM9
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 9
bit_size: 1
- name: ISEM10
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 10
bit_size: 1
- name: ISEM11
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 11
bit_size: 1
- name: ISEM12
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 12
bit_size: 1
- name: ISEM13
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 13
bit_size: 1
- name: ISEM14
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 14
bit_size: 1
- name: ISEM15
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 15
bit_size: 1
- name: ISEM16
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 16
bit_size: 1
- name: ISEM17
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 17
bit_size: 1
- name: ISEM18
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 18
bit_size: 1
- name: ISEM19
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 19
bit_size: 1
- name: ISEM20
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 20
bit_size: 1
- name: ISEM21
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 21
bit_size: 1
- name: ISEM22
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 22
bit_size: 1
- name: ISEM23
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 23
bit_size: 1
- name: ISEM24
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 24
bit_size: 1
- name: ISEM25
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 25
bit_size: 1
- name: ISEM26
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 26
bit_size: 1
- name: ISEM27
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 27
bit_size: 1
- name: ISEM28
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 28
bit_size: 1
- name: ISEM29
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 29
bit_size: 1
- name: ISEM30
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 30
bit_size: 1
- name: ISEM31
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 31
bit_size: 1
fieldset/C1MISR:
description: HSEM Masked interrupt status register.
fields:
- name: ISEM0
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 0
bit_size: 1
- name: ISEM1
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 1
bit_size: 1
- name: ISEM2
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 2
bit_size: 1
- name: ISEM3
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 3
bit_size: 1
- name: ISEM4
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 4
bit_size: 1
- name: ISEM5
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 5
bit_size: 1
- name: ISEM6
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 6
bit_size: 1
- name: ISEM7
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 7
bit_size: 1
- name: ISEM8
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 8
bit_size: 1
- name: ISEM9
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 9
bit_size: 1
- name: ISEM10
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 10
bit_size: 1
- name: ISEM11
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 11
bit_size: 1
- name: ISEM12
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 12
bit_size: 1
- name: ISEM13
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 13
bit_size: 1
- name: ISEM14
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 14
bit_size: 1
- name: ISEM15
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 15
bit_size: 1
- name: ISEM16
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 16
bit_size: 1
- name: ISEM17
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 17
bit_size: 1
- name: ISEM18
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 18
bit_size: 1
- name: ISEM19
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 19
bit_size: 1
- name: ISEM20
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 20
bit_size: 1
- name: ISEM21
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 21
bit_size: 1
- name: ISEM22
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 22
bit_size: 1
- name: ISEM23
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 23
bit_size: 1
- name: ISEM24
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 24
bit_size: 1
- name: ISEM25
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 25
bit_size: 1
- name: ISEM26
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 26
bit_size: 1
- name: ISEM27
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 27
bit_size: 1
- name: ISEM28
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 28
bit_size: 1
- name: ISEM29
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 29
bit_size: 1
- name: ISEM30
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 30
bit_size: 1
- name: ISEM31
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 31
bit_size: 1
fieldset/CR:
description: HSEM Clear register.
fields:
- name: COREID
description: MasterID of semaphores to be cleared.
bit_offset: 8
bit_size: 4
- 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: MASTERID
description: Semaphore MasterID.
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: MASTERID
description: Semaphore MasterID.
bit_offset: 8
bit_size: 8
- name: LOCK
description: Lock indication.
bit_offset: 31
bit_size: 1

617
data/registers/hsem_v3.yaml Normal file
View File

@ -0,0 +1,617 @@
block/HSEM:
description: 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: IER
description: HSEM Interrupt enable register.
byte_offset: 256
fieldset: IER
- name: ICR
description: HSEM Interrupt clear register.
byte_offset: 260
access: Read
fieldset: ICR
- name: ISR
description: HSEM Interrupt status register.
byte_offset: 264
access: Read
fieldset: ISR
- name: MISR
description: HSEM Masked interrupt status register.
byte_offset: 268
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: MASTERID
description: MasterID of semaphores to be cleared.
bit_offset: 8
bit_size: 8
- name: KEY
description: Semaphore clear Key.
bit_offset: 16
bit_size: 16
fieldset/ICR:
description: HSEM Interrupt clear register.
fields:
- name: ISEM0
description: Interrupt(N) semaphore n clear bit.
bit_offset: 0
bit_size: 1
- name: ISEM1
description: Interrupt(N) semaphore n clear bit.
bit_offset: 1
bit_size: 1
- name: ISEM2
description: Interrupt(N) semaphore n clear bit.
bit_offset: 2
bit_size: 1
- name: ISEM3
description: Interrupt(N) semaphore n clear bit.
bit_offset: 3
bit_size: 1
- name: ISEM4
description: Interrupt(N) semaphore n clear bit.
bit_offset: 4
bit_size: 1
- name: ISEM5
description: Interrupt(N) semaphore n clear bit.
bit_offset: 5
bit_size: 1
- name: ISEM6
description: Interrupt(N) semaphore n clear bit.
bit_offset: 6
bit_size: 1
- name: ISEM7
description: Interrupt(N) semaphore n clear bit.
bit_offset: 7
bit_size: 1
- name: ISEM8
description: Interrupt(N) semaphore n clear bit.
bit_offset: 8
bit_size: 1
- name: ISEM9
description: Interrupt(N) semaphore n clear bit.
bit_offset: 9
bit_size: 1
- name: ISEM10
description: Interrupt(N) semaphore n clear bit.
bit_offset: 10
bit_size: 1
- name: ISEM11
description: Interrupt(N) semaphore n clear bit.
bit_offset: 11
bit_size: 1
- name: ISEM12
description: Interrupt(N) semaphore n clear bit.
bit_offset: 12
bit_size: 1
- name: ISEM13
description: Interrupt(N) semaphore n clear bit.
bit_offset: 13
bit_size: 1
- name: ISEM14
description: Interrupt(N) semaphore n clear bit.
bit_offset: 14
bit_size: 1
- name: ISEM15
description: Interrupt(N) semaphore n clear bit.
bit_offset: 15
bit_size: 1
- name: ISEM16
description: Interrupt(N) semaphore n clear bit.
bit_offset: 16
bit_size: 1
- name: ISEM17
description: Interrupt(N) semaphore n clear bit.
bit_offset: 17
bit_size: 1
- name: ISEM18
description: Interrupt(N) semaphore n clear bit.
bit_offset: 18
bit_size: 1
- name: ISEM19
description: Interrupt(N) semaphore n clear bit.
bit_offset: 19
bit_size: 1
- name: ISEM20
description: Interrupt(N) semaphore n clear bit.
bit_offset: 20
bit_size: 1
- name: ISEM21
description: Interrupt(N) semaphore n clear bit.
bit_offset: 21
bit_size: 1
- name: ISEM22
description: Interrupt(N) semaphore n clear bit.
bit_offset: 22
bit_size: 1
- name: ISEM23
description: Interrupt(N) semaphore n clear bit.
bit_offset: 23
bit_size: 1
- name: ISEM24
description: Interrupt(N) semaphore n clear bit.
bit_offset: 24
bit_size: 1
- name: ISEM25
description: Interrupt(N) semaphore n clear bit.
bit_offset: 25
bit_size: 1
- name: ISEM26
description: Interrupt(N) semaphore n clear bit.
bit_offset: 26
bit_size: 1
- name: ISEM27
description: Interrupt(N) semaphore n clear bit.
bit_offset: 27
bit_size: 1
- name: ISEM28
description: Interrupt(N) semaphore n clear bit.
bit_offset: 28
bit_size: 1
- name: ISEM29
description: Interrupt(N) semaphore n clear bit.
bit_offset: 29
bit_size: 1
- name: ISEM30
description: Interrupt(N) semaphore n clear bit.
bit_offset: 30
bit_size: 1
- name: ISEM31
description: Interrupt(N) semaphore n clear bit.
bit_offset: 31
bit_size: 1
fieldset/IER:
description: HSEM Interrupt enable register.
fields:
- name: ISEM0
description: Interrupt semaphore n enable bit.
bit_offset: 0
bit_size: 1
- name: ISEM1
description: Interrupt semaphore n enable bit.
bit_offset: 1
bit_size: 1
- name: ISEM2
description: Interrupt semaphore n enable bit.
bit_offset: 2
bit_size: 1
- name: ISEM3
description: Interrupt semaphore n enable bit.
bit_offset: 3
bit_size: 1
- name: ISEM4
description: Interrupt semaphore n enable bit.
bit_offset: 4
bit_size: 1
- name: ISEM5
description: Interrupt semaphore n enable bit.
bit_offset: 5
bit_size: 1
- name: ISEM6
description: Interrupt semaphore n enable bit.
bit_offset: 6
bit_size: 1
- name: ISEM7
description: Interrupt semaphore n enable bit.
bit_offset: 7
bit_size: 1
- name: ISEM8
description: Interrupt semaphore n enable bit.
bit_offset: 8
bit_size: 1
- name: ISEM9
description: Interrupt semaphore n enable bit.
bit_offset: 9
bit_size: 1
- name: ISEM10
description: Interrupt semaphore n enable bit.
bit_offset: 10
bit_size: 1
- name: ISEM11
description: Interrupt semaphore n enable bit.
bit_offset: 11
bit_size: 1
- name: ISEM12
description: Interrupt semaphore n enable bit.
bit_offset: 12
bit_size: 1
- name: ISEM13
description: Interrupt semaphore n enable bit.
bit_offset: 13
bit_size: 1
- name: ISEM14
description: Interrupt semaphore n enable bit.
bit_offset: 14
bit_size: 1
- name: ISEM15
description: Interrupt semaphore n enable bit.
bit_offset: 15
bit_size: 1
- name: ISEM16
description: Interrupt semaphore n enable bit.
bit_offset: 16
bit_size: 1
- name: ISEM17
description: Interrupt semaphore n enable bit.
bit_offset: 17
bit_size: 1
- name: ISEM18
description: Interrupt semaphore n enable bit.
bit_offset: 18
bit_size: 1
- name: ISEM19
description: Interrupt semaphore n enable bit.
bit_offset: 19
bit_size: 1
- name: ISEM20
description: Interrupt semaphore n enable bit.
bit_offset: 20
bit_size: 1
- name: ISEM21
description: Interrupt semaphore n enable bit.
bit_offset: 21
bit_size: 1
- name: ISEM22
description: Interrupt semaphore n enable bit.
bit_offset: 22
bit_size: 1
- name: ISEM23
description: Interrupt semaphore n enable bit.
bit_offset: 23
bit_size: 1
- name: ISEM24
description: Interrupt semaphore n enable bit.
bit_offset: 24
bit_size: 1
- name: ISEM25
description: Interrupt semaphore n enable bit.
bit_offset: 25
bit_size: 1
- name: ISEM26
description: Interrupt semaphore n enable bit.
bit_offset: 26
bit_size: 1
- name: ISEM27
description: Interrupt semaphore n enable bit.
bit_offset: 27
bit_size: 1
- name: ISEM28
description: Interrupt semaphore n enable bit.
bit_offset: 28
bit_size: 1
- name: ISEM29
description: Interrupt semaphore n enable bit.
bit_offset: 29
bit_size: 1
- name: ISEM30
description: Interrupt semaphore n enable bit.
bit_offset: 30
bit_size: 1
- name: ISEM31
description: Interrupt(N) semaphore n enable bit.
bit_offset: 31
bit_size: 1
fieldset/ISR:
description: HSEM Interrupt status register.
fields:
- name: ISEM0
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 0
bit_size: 1
- name: ISEM1
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 1
bit_size: 1
- name: ISEM2
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 2
bit_size: 1
- name: ISEM3
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 3
bit_size: 1
- name: ISEM4
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 4
bit_size: 1
- name: ISEM5
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 5
bit_size: 1
- name: ISEM6
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 6
bit_size: 1
- name: ISEM7
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 7
bit_size: 1
- name: ISEM8
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 8
bit_size: 1
- name: ISEM9
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 9
bit_size: 1
- name: ISEM10
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 10
bit_size: 1
- name: ISEM11
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 11
bit_size: 1
- name: ISEM12
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 12
bit_size: 1
- name: ISEM13
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 13
bit_size: 1
- name: ISEM14
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 14
bit_size: 1
- name: ISEM15
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 15
bit_size: 1
- name: ISEM16
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 16
bit_size: 1
- name: ISEM17
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 17
bit_size: 1
- name: ISEM18
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 18
bit_size: 1
- name: ISEM19
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 19
bit_size: 1
- name: ISEM20
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 20
bit_size: 1
- name: ISEM21
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 21
bit_size: 1
- name: ISEM22
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 22
bit_size: 1
- name: ISEM23
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 23
bit_size: 1
- name: ISEM24
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 24
bit_size: 1
- name: ISEM25
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 25
bit_size: 1
- name: ISEM26
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 26
bit_size: 1
- name: ISEM27
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 27
bit_size: 1
- name: ISEM28
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 28
bit_size: 1
- name: ISEM29
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 29
bit_size: 1
- name: ISEM30
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 30
bit_size: 1
- name: ISEM31
description: Interrupt(N) semaphore n status bit before enable (mask).
bit_offset: 31
bit_size: 1
fieldset/KEYR:
description: HSEM Interrupt clear register.
fields:
- name: KEY
description: Semaphore Clear Key.
bit_offset: 16
bit_size: 16
fieldset/MISR:
description: HSEM Masked interrupt status register.
fields:
- name: ISEM0
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 0
bit_size: 1
- name: ISEM1
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 1
bit_size: 1
- name: ISEM2
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 2
bit_size: 1
- name: ISEM3
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 3
bit_size: 1
- name: ISEM4
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 4
bit_size: 1
- name: ISEM5
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 5
bit_size: 1
- name: ISEM6
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 6
bit_size: 1
- name: ISEM7
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 7
bit_size: 1
- name: ISEM8
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 8
bit_size: 1
- name: ISEM9
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 9
bit_size: 1
- name: ISEM10
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 10
bit_size: 1
- name: ISEM11
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 11
bit_size: 1
- name: ISEM12
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 12
bit_size: 1
- name: ISEM13
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 13
bit_size: 1
- name: ISEM14
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 14
bit_size: 1
- name: ISEM15
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 15
bit_size: 1
- name: ISEM16
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 16
bit_size: 1
- name: ISEM17
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 17
bit_size: 1
- name: ISEM18
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 18
bit_size: 1
- name: ISEM19
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 19
bit_size: 1
- name: ISEM20
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 20
bit_size: 1
- name: ISEM21
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 21
bit_size: 1
- name: ISEM22
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 22
bit_size: 1
- name: ISEM23
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 23
bit_size: 1
- name: ISEM24
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 24
bit_size: 1
- name: ISEM25
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 25
bit_size: 1
- name: ISEM26
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 26
bit_size: 1
- name: ISEM27
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 27
bit_size: 1
- name: ISEM28
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 28
bit_size: 1
- name: ISEM29
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 29
bit_size: 1
- name: ISEM30
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 30
bit_size: 1
- name: ISEM31
description: masked interrupt(N) semaphore n status bit after enable (mask).
bit_offset: 31
bit_size: 1
fieldset/R:
description: HSEM register HSEM_R%s HSEM_R31.
fields:
- name: PROCID
description: Semaphore ProcessID.
bit_offset: 0
bit_size: 8
- name: MASTERID
description: Semaphore MasterID.
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: MASTERID
description: Semaphore MasterID.
bit_offset: 8
bit_size: 8
- name: LOCK
description: Lock indication.
bit_offset: 31
bit_size: 1

1450
data/registers/hsem_v4.yaml Normal file

File diff suppressed because it is too large Load Diff

246
data/registers/hsem_v5.yaml Normal file
View File

@ -0,0 +1,246 @@
block/HSEM:
description: HSEM.
items:
- name: R
description: Semaphore %s register.
array:
len: 32
stride: 4
byte_offset: 0
fieldset: R
- name: RLR
description: Semaphore %s 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: C1IER
- name: C1ICR
description: HSEM Interrupt clear register.
byte_offset: 260
fieldset: C1ICR
- name: C1ISR
description: HSEM Interrupt status register.
byte_offset: 264
access: Read
fieldset: C1ISR
- name: C1MISR
description: HSEM Masked interrupt status register.
byte_offset: 268
access: Read
fieldset: C1MISR
- name: C2IER
description: HSEM Interrupt enable register.
byte_offset: 272
fieldset: C2IER
- name: C2ICR
description: HSEM Interrupt clear register.
byte_offset: 276
fieldset: C2ICR
- name: C2ISR
description: HSEM Interrupt status register.
byte_offset: 280
access: Read
fieldset: C2ISR
- name: C2MISR
description: HSEM Masked interrupt status register.
byte_offset: 284
access: Read
fieldset: C2MISR
- name: CR
description: Semaphore Clear register.
byte_offset: 320
fieldset: CR
- name: KEYR
description: Interrupt clear register.
byte_offset: 324
fieldset: KEYR
- name: HWCFGR2
description: Semaphore hardware configuration register 2.
byte_offset: 1004
access: Read
fieldset: HWCFGR2
- name: HWCFGR1
description: Semaphore hardware configuration register 1.
byte_offset: 1008
access: Read
fieldset: HWCFGR1
- name: VERR
description: HSEM version register.
byte_offset: 1012
access: Read
fieldset: VERR
- name: IPIDR
description: HSEM indentification register.
byte_offset: 1016
access: Read
fieldset: IPIDR
- name: SIDR
description: HSEM size indentification register.
byte_offset: 1020
access: Read
fieldset: SIDR
fieldset/C1ICR:
description: HSEM Interrupt clear register.
fields:
- name: ISCm
description: CPU(n) semaphore m clear bit.
bit_offset: 0
bit_size: 32
fieldset/C1IER:
description: HSEM Interrupt enable register.
fields:
- name: ISEm
description: CPU(n) semaphore m enable bit.
bit_offset: 0
bit_size: 32
fieldset/C1ISR:
description: HSEM Interrupt status register.
fields:
- name: ISFm
description: CPU(n) semaphore m status bit before enable (mask).
bit_offset: 0
bit_size: 32
fieldset/C1MISR:
description: HSEM Masked interrupt status register.
fields:
- name: MISFm
description: masked CPU(n) semaphore m status bit after enable (mask).
bit_offset: 0
bit_size: 32
fieldset/C2ICR:
description: HSEM Interrupt clear register.
fields:
- name: ISCm
description: CPU(2) semaphore m clear bit.
bit_offset: 0
bit_size: 32
fieldset/C2IER:
description: HSEM Interrupt enable register.
fields:
- name: ISEm
description: CPU(2) semaphore m enable bit.
bit_offset: 0
bit_size: 32
fieldset/C2ISR:
description: HSEM Interrupt status register.
fields:
- name: ISFm
description: CPU(2) semaphore m status bit before enable (mask).
bit_offset: 0
bit_size: 32
fieldset/C2MISR:
description: HSEM Masked interrupt status register.
fields:
- name: MISFm
description: masked CPU(2) semaphore m status bit after enable (mask).
bit_offset: 0
bit_size: 32
fieldset/CR:
description: Semaphore Clear register.
fields:
- name: COREID
description: CoreID of semaphore to be cleared.
bit_offset: 8
bit_size: 4
- name: KEY
description: Semaphore clear Key.
bit_offset: 16
bit_size: 16
fieldset/HWCFGR1:
description: Semaphore hardware configuration register 1.
fields:
- name: NBSEM
description: Hardware Configuration number of semaphores.
bit_offset: 0
bit_size: 8
- name: NBINT
description: Hardware Configuration number of interrupts supported number of master IDs.
bit_offset: 8
bit_size: 4
fieldset/HWCFGR2:
description: Semaphore hardware configuration register 2.
fields:
- name: MASTERID1
description: Hardware Configuration valid bus masters ID1.
bit_offset: 0
bit_size: 4
- name: MASTERID2
description: Hardware Configuration valid bus masters ID2.
bit_offset: 4
bit_size: 4
- name: MASTERID3
description: Hardware Configuration valid bus masters ID3.
bit_offset: 8
bit_size: 4
- name: MASTERID4
description: Hardware Configuration valid bus masters ID4.
bit_offset: 12
bit_size: 4
fieldset/IPIDR:
description: HSEM indentification register.
fields:
- name: ID
description: Identification Code.
bit_offset: 0
bit_size: 32
fieldset/KEYR:
description: Interrupt clear register.
fields:
- name: KEY
description: Semaphore Clear Key.
bit_offset: 16
bit_size: 16
fieldset/R:
description: Semaphore %s register.
fields:
- name: PROCID
description: Semaphore ProcessID.
bit_offset: 0
bit_size: 8
- name: COREID
description: Semaphore CoreID.
bit_offset: 8
bit_size: 4
- name: LOCK
description: lock indication.
bit_offset: 31
bit_size: 1
fieldset/RLR:
description: Semaphore %s 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: 4
- name: LOCK
description: lock indication.
bit_offset: 31
bit_size: 1
fieldset/SIDR:
description: HSEM size indentification register.
fields:
- name: SID
description: Size Identification Code.
bit_offset: 0
bit_size: 32
fieldset/VERR:
description: HSEM version register.
fields:
- name: MINREV
description: Minor Revision.
bit_offset: 0
bit_size: 4
- name: MAJREV
description: Major Revision.
bit_offset: 4
bit_size: 4

1911
data/registers/hsem_v6.yaml Normal file

File diff suppressed because it is too large Load Diff

1947
data/registers/hsem_v7.yaml Normal file

File diff suppressed because it is too large Load Diff

1021
data/registers/hsem_v8.yaml Normal file

File diff suppressed because it is too large Load Diff

40
patch-desc.md Normal file
View File

@ -0,0 +1,40 @@
# HSEM patch
## hsem_v1
h747
## hsem_v2
h735
## hsem_v3
h7b3
h753v
h753
h743
h743v
## hsem_v4
mp157
mp153
## hsem_v5
wb55
## hsem_v6
wba52
## hsem_v7
wl5x_cm0p
wl5x_cm4
## hsem_v8
wle5

View File

@ -535,6 +535,17 @@ impl PeriMatcher {
("STM32F1.*:GPIO.*", ("gpio", "v1", "GPIO")), ("STM32F1.*:GPIO.*", ("gpio", "v1", "GPIO")),
(".*:GPIO.*", ("gpio", "v2", "GPIO")), (".*:GPIO.*", ("gpio", "v2", "GPIO")),
(".*:IPCC:v1_0", ("ipcc", "v1", "IPCC")), (".*:IPCC:v1_0", ("ipcc", "v1", "IPCC")),
("STM32H747.*:HSEM:*", ("hsem", "v1", "HSEM")),
("STM32H7b3.*:HSEM:*", ("hsem", "v3", "HSEM")),
("STM32H753.*:HSEM:*", ("hsem", "v3", "HSEM")),
("STM32H753v.*:HSEM:*", ("hsem", "v3", "HSEM")),
("STM32H743.*:HSEM:*", ("hsem", "v3", "HSEM")),
("STM32H743v.*:HSEM:*", ("hsem", "v3", "HSEM")),
("STM32MP157.*:HSEM:*", ("hsem", "v4", "HSEM")),
("STM32MP153.*:HSEM:*", ("hsem", "v4", "HSEM")),
("STM32WA55.*:HSEM:*", ("hsem", "v6", "HSEM")),
("STM32WL5.*:HSEM:*", ("hsem", "v7", "HSEM")),
("STM32WLE.*:HSEM:*", ("hsem", "v8", "HSEM")),
(".*:DMAMUX.*", ("dmamux", "v1", "DMAMUX")), (".*:DMAMUX.*", ("dmamux", "v1", "DMAMUX")),
(r".*:GPDMA\d?:.*", ("gpdma", "v1", "GPDMA")), (r".*:GPDMA\d?:.*", ("gpdma", "v1", "GPDMA")),
(r".*:BDMA\d?:.*", ("bdma", "v1", "DMA")), (r".*:BDMA\d?:.*", ("bdma", "v1", "DMA")),