dts: yaml: rework yaml file layout

Moved yaml files to be under dts/bindings and have the bindings try
and match the linux doc device tree binding dir structure as the
canonical binding reference.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
This commit is contained in:
Kumar Gala 2017-10-23 02:29:07 -05:00 committed by Kumar Gala
commit b5c4237009
47 changed files with 0 additions and 0 deletions

View file

@ -0,0 +1,39 @@
#
# Copyright (c) 2017, NXP
#
# SPDX-License-Identifier: Apache-2.0
#
---
title: Kinetis System Integration Module (SIM)
id: nxp,kinetis-sim
version: 0.1
description: >
This is a representation of the Kinetis SIM IP node
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "nxp,kinetis-sim"
- reg:
type: int
description: mmio register space
generation: define
category: required
- label:
type: string
category: required
description: Human readable string describing the device (used by Zephyr for API name)
generation: define
cell_string: SIM_CLK
"#cells":
- name
- offset
- bits
...

View file

@ -0,0 +1,26 @@
---
title: KW41Z System Integration Module (SIM)
version: 0.1
description: >
This is a representation of the KW41Z SIM IP node
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "nxp,kw41z-sim"
- reg:
type: int
description: mmio register space
generation: define
category: required
cell_string: SIM_CLK
"#cells":
- offset
- bits
...

View file

@ -0,0 +1,22 @@
---
# SPDX-License-Identifier: Apache-2.0
title: TI CC2650 PRCM
version: 0.1
description: >
This binding gives a base representation of the TI CC2650
Power, Reset, and Clock control Module.
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "ti,cc2650-prcm"
- reg:
type: array
description: mmio register space
generation: define
category: required
...

View file

@ -0,0 +1,28 @@
---
title: STM32 RCC
id: st,stm32-rcc
version: 0.1
description: >
This binding gives a base representation of the STM32 Clock control
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "st,stm32-rcc"
- reg:
type: array
description: mmio register space
generation: define
category: required
cell_string: clocks
"#cells":
- bus
- bits
...

View file

@ -0,0 +1,51 @@
---
title: <Title should describe what node you are describing>
version: 0.1
description: >
Describe in free form text w/ spanning lines what you
are describing
# properties will be the contents of the device tree node
# property names must match the property names in the DT
properties:
# A typical property entry will look like the following
# - <name of property as it is in device tree>
# category: <required | optional>
# type: <string | int | array>
# description: <description of property>
# generation: <define | structure>
# At a minimum, the compatible is required for matching nodes
- compatible: <list of string compatible matches>
category: required
type: string
description: compatible of node
# reg is used to denote mmio registers
- reg:
type: array
description: mmio register space
generation: define
category: required
# interrupts specifies the interrupts that the driver may utilize
- interrupts:
type: array
category: required
description: required interrupts
generation: define
# If a node is a interrupt controller, gpio controller, pinmux device
# or any device which is referenced via phandle plus some number of cells
# then the cell fiels below must be present.
cell_string: <cell string prefix>
"#cells":
- cell0 # name of first cell
- cell1 # name of second cell
- cell2 # name of third cell
- and so on and so forth
...

View file

@ -0,0 +1,27 @@
---
title: ARM CMSDK GPIO
id: arm,cmsdk-gpio
version: 0.1
description: >
This binding gives a base representation of the ARM CMSDK GPIO
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "arm,cmsdk-gpio"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
...

View file

@ -0,0 +1,32 @@
---
title: Kinetis GPIO
version: 0.1
description: >
This is a representation of the Kinetis GPIO nodes
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "nxp,kinetis-gpio"
- reg:
type: int
description: mmio register space
generation: define
category: required
- interrupts:
type: compound
category: required
description: required interrupts
generation: define
cell_string: GPIO
"#cells":
- pin
- flags
...

View file

@ -0,0 +1,27 @@
---
# SPDX-License-Identifier: Apache-2.0
title: TI CC2650 GPIO
version: 0.1
description: >
This is a representation of the TI CC2650 GPIO node
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "ti,cc2650-gpio"
- reg:
type: int
description: mmio register space
generation: define
category: required
- interrupts:
type: compound
category: required
description: required interrupts
generation: define
...

View file

@ -0,0 +1,36 @@
---
title: Atmel SAM Family I2C (TWI) node
id: atmel,sam-i2c-twi
version: 0.1
description: >
This is a representation of the Atmel SAM Family I2C (TWI) node
inherits:
- !include i2c.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "atmel,sam-i2c-twi"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
- peripheral-id:
type: int
description: peripheral ID
generation: define
category: required
...

33
dts/bindings/i2c/i2c.yaml Normal file
View file

@ -0,0 +1,33 @@
---
title: I2C Base Structure
id: i2c
version: 0.1
description: >
This binding gives the base structures for all I2C devices
properties:
- "#address-cells":
type: int
category: required
description: should be 1.
- "#size-cells":
type: int
category: required
description: should be 0.
- clock-frequency :
type: int
category: optional
description: Initial clock frequency in Hz
generation: define
- clocks:
type: array
category: required
description: Clock gate information
generation: define
- label:
type: string
category: required
description: Human readable string describing the device (used by Zephyr for API name)
generation: define
...

View file

@ -0,0 +1,28 @@
---
title: Kinetis I2C Controller
version: 0.1
description: >
This is a representation of the Kinetis I2C nodes
inherits:
- !include i2c.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "nxp,kinetis-i2c"
- reg:
type: int
description: mmio register space
generation: define
category: required
- interrupts:
type: compound
category: required
description: required interrupts
generation: define

View file

@ -0,0 +1,42 @@
---
title: STM32 I2C V1
id: st,stm32-i2c-v1
version: 0.1
description: >
This binding gives a base representation of the STM32 I2C V1 controller
inherits:
- !include i2c.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "st,stm32-i2c-v1"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
- interrupt-names:
type: stringlist
category: optional
description: readable string describing the interrupts
generation: define
- clocks:
type: array
category: required
description: Clock gate control information
generation: define
...

View file

@ -0,0 +1,42 @@
---
title: STM32 I2C V2
id: st,stm32-i2c-v2
version: 0.1
description: >
This binding gives a base representation of the STM32 I2C V2 controller
inherits:
- !include i2c.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "st,stm32-i2c-v2"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
- interrupt-names:
type: stringlist
category: optional
description: readable string describing the interrupts
generation: define
- clocks:
type: array
category: required
description: Clock gate control information
generation: define
...

View file

@ -0,0 +1,26 @@
#
# Copyright (c) 2017, NXP
#
# SPDX-License-Identifier: Apache-2.0
#
---
title: ADC Base Structure
id: adc
version: 0.1
description: >
This binding gives the base structures for all ADC devices
properties:
- clocks:
type: array
category: required
description: Clock gate information
generation: define
- label:
type: string
category: required
description: Human readable string describing the device (used by Zephyr for API name)
generation: define
...

View file

@ -0,0 +1,36 @@
---
title: Atmel SAM Family AFEC
id: atmel,sam-afec
version: 0.1
description: >
This binding gives a base representation of the Atmel SAM AFEC
inherits:
- !include adc.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "atmel,sam-afec"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
- peripheral-id:
type: int
description: peripheral ID
generation: define
category: required
...

View file

@ -0,0 +1,35 @@
#
# Copyright (c) 2017, NXP
#
# SPDX-License-Identifier: Apache-2.0
#
---
title: Kinetis ADC16
id: nxp,kinetis-adc16
version: 0.1
description: >
This binding gives a base representation of the Kinetis ADC16
inherits:
- !include adc.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "nxp,kinetis-adc16"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
...

View file

@ -0,0 +1,32 @@
---
title: ARM Cortex M0+ NVIC Interrupt Controller
version: 0.1
description: >
This binding describes the ARM Cortex M0+ NVIC IRQ controller
properties:
- compatible:
category: required
type: string
description: compatible strings
constraint: "arm,v6m-nvic"
- reg:
category: required
type: int
description: mmio register space
generation: define
- arm,num-irq-priority-bits:
category: required
type: int
description: number of bits of IRQ priorities
generation: define
cell_string: IRQ
"#cells":
- irq
- priority
...

View file

@ -0,0 +1,32 @@
---
title: ARM Cortex M4 NVIC Interrupt Controller
version: 0.1
description: >
This binding describes the ARM Cortex M4 NVIC IRQ controller
properties:
- compatible:
category: required
type: string
description: compatible strings
constraint: "arm,v7m-nvic"
- reg:
category: required
type: int
description: mmio register space
generation: define
- arm,num-irq-priority-bits:
category: required
type: int
description: number of bits of IRQ priorities
generation: define
cell_string: IRQ
"#cells":
- irq
- priority
...

View file

@ -0,0 +1,43 @@
---
title: Flash Partitions
id: fixed-partition
version: 0.1
description: >
This binding gives a base FLASH partition description
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "fixed-partitions"
- partition\d+:
type: string
generation: define
properties:
- reg:
type: array
description: partition offset and size from flash bank
generation: define
category: required
label: offset
- label:
type: string
description: Partition label
generation: define
category: required
- read-only:
type: boolean
category: optional
description: Denotes read only partition
generation: define
base_label: FLASH_AREA
use-property-label: yes
...

View file

@ -0,0 +1,26 @@
---
title: Flash base node description
id: soc-nv-flash
version: 0.1
description: >
This binding gives a base FLASH description
properties:
- compatible:
type: string
category: optional
description: compatible strings
constraint: "soc-nv-flash"
- write-block-size:
type: int
description: address alignment required by flash write operations
generation: define
category: optional
label: alignment
base_label: FLASH
use-property-label: yes
...

View file

@ -0,0 +1,32 @@
---
title: Kinetis Pinmux
version: 0.1
description: >
This is a representation of the Kinetis Pinmux node
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "nxp,kinetis-pinmux"
- reg:
type: int
description: mmio register space
generation: define
category: required
- clocks:
type: array
description: clock gate information
generation: define
category: required
cell_string: PINMUX
"#cells":
- pin
- function
...

View file

@ -0,0 +1,28 @@
---
title: STM32 PINMUX
id: st,stm32-pinmux
version: 0.1
description: >
This binding gives a base representation of the STM32 PINMUX
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "st,stm32-pinmux"
- reg:
type: int
description: mmio register space
generation: define
category: required
cell_string: PINMUX
"#cells":
- pin
- function
...

View file

@ -0,0 +1,27 @@
---
# SPDX-License-Identifier: Apache-2.0
title: TI CC2650 Pinmux
version: 0.1
description: >
This is a representation of the TI CC2650 pinmux node
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "ti,cc2650-pinmux"
- reg:
type: int
description: mmio register space
generation: define
category: required
cell_string: PINMUX
"#cells":
- pin
- function
...

View file

@ -0,0 +1,35 @@
#
# Copyright (c) 2017, NXP
#
# SPDX-License-Identifier: Apache-2.0
#
---
title: Kinetis FTM
id: nxp,kinetis-ftm
version: 0.1
description: >
This binding gives a base representation of the Kinetis FTM
inherits:
- !include pwm.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "nxp,kinetis-ftm"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
...

26
dts/bindings/pwm/pwm.yaml Normal file
View file

@ -0,0 +1,26 @@
#
# Copyright (c) 2017, NXP
#
# SPDX-License-Identifier: Apache-2.0
#
---
title: PWM Base Structure
id: pwm
version: 0.1
description: >
This binding gives the base structures for all PWM devices
properties:
- clocks:
type: array
category: required
description: Clock gate information
generation: define
- label:
type: string
category: required
description: Human readable string describing the device (used by Zephyr for API name)
generation: define
...

View file

@ -0,0 +1,30 @@
---
title: ARM CMSDK UART
id: arm,cmsdk-uart
version: 0.1
description: >
This binding gives a base representation of the ARM CMSDK UART
inherits:
- !include uart.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "arm,cmsdk-uart"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
...

View file

@ -0,0 +1,36 @@
---
title: SAM Family UART
id: atmel,sam-uart
version: 0.1
description: >
This binding gives a base representation of the SAM UART
inherits:
- !include uart.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "atmel,sam-uart"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
- peripheral-id:
type: int
description: peripheral ID
generation: define
category: required
...

View file

@ -0,0 +1,36 @@
---
title: Atmel SAM Family USART
id: atmel,sam-usart
version: 0.1
description: >
This binding gives a base representation of the Atmel SAM USART
inherits:
- !include uart.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "atmel,sam-usart"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
- peripheral-id:
type: int
description: peripheral ID
generation: define
category: required
...

View file

@ -0,0 +1,30 @@
---
title: SAM3X UART
id: atmel,sam3x-uart
version: 0.1
description: >
This binding gives a base representation of the SAM3X UART
inherits:
- !include uart.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "atmel,sam3x-uart"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
...

View file

@ -0,0 +1,42 @@
---
title: Intel QMSI Uart
id: intel,qmsi-uart
version: 0.1
description: >
This binding gives a base representation of the INTEL QMSI UART
inherits:
- !include uart.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "intel,qmsi-uart"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
- pinctrl-\d+:
type: array
category: optional
description: pinmux information for RX, TX, CTS, RTS
generation: define
- clocks:
type: array
category: required
description: Clock gate control information
generation: structures
...

View file

@ -0,0 +1,30 @@
---
title: Nordic UART
id: nordic,nrf-uart
version: 0.1
description: >
This binding gives a base representation of the Nordic UART
inherits:
- !include uart.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "nordic,nrf-uart"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
...

View file

@ -0,0 +1,30 @@
---
title: Nordic UARTE
id: nordic,nrf-uarte
version: 0.1
description: >
This binding gives a base representation of the Nordic UARTE
inherits:
- !include uart.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "nordic,nrf-uarte"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
...

View file

@ -0,0 +1,36 @@
---
title: ns16550
id: ns16550
version: 0.1
description: >
This binding gives a base representation of the ns16550 UART
inherits:
- !include uart.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "ns16550"
- reg:
type: array
description: mmio register space
generation: define
category: required
- reg-shift:
type: int
category: optional
description: quantity to shift the register offsets by
generation: define
- interrupts:
type: array
category: required
description: required interrupts
generation: define
...

View file

@ -0,0 +1,31 @@
---
title: Kinetis LPSCI UART
id: nxp,kinetis-lpsci
version: 0.1
description: >
This binding gives a base representation of the LPSCI UART
inherits:
- !include uart.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "nxp,kinetis-lpsci"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
...

View file

@ -0,0 +1,36 @@
---
title: Kinetis LPUART
id: nxp,kinetis-lpuart
version: 0.1
description: >
This binding gives a base representation of the Kinetis LPUART
inherits:
- !include uart.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "nxp,kinetis-lpuart"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
- pinctrl-*:
type: array
category: optional
description: pinmux information for RX, TX, CTS, RTS
generation: structures
...

View file

@ -0,0 +1,42 @@
---
title: Kinetis UART
id: nxp,kinetis-uart
version: 0.1
description: >
This binding gives a base representation of the Kinetis UART
inherits:
- !include uart.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "nxp,kinetis-uart"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
- pinctrl-\d+:
type: array
category: optional
description: pinmux information for RX, TX, CTS, RTS
generation: define
- clocks:
type: array
category: required
description: Clock gate control information
generation: structures
...

View file

@ -0,0 +1,30 @@
---
title: EFM32 UART
id: silabs,efm32-uart
version: 0.1
description: >
This binding gives a base representation of the EFM32 UART
inherits:
- !include uart.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "silabs,efm32-uart"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
...

View file

@ -0,0 +1,30 @@
---
title: EFM32 USART
id: silabs,efm32-usart
version: 0.1
description: >
This binding gives a base representation of the EFM32 USART
inherits:
- !include uart.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "silabs,efm32-usart"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
...

View file

@ -0,0 +1,36 @@
---
title: STM32 UART
id: st,stm32-uart
version: 0.1
description: >
This binding gives a base representation of the STM32 UART
inherits:
- !include uart.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "st,stm32-uart"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
- clocks:
type: array
category: required
description: Clock gate control information
generation: define
...

View file

@ -0,0 +1,36 @@
---
title: STM32 USART
id: st,stm32-usart
version: 0.1
description: >
This binding gives a base representation of the STM32 USART
inherits:
- !include uart.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "st,stm32-usart"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
- clocks:
type: array
category: required
description: Clock gate control information
generation: define
...

View file

@ -0,0 +1,30 @@
---
title: TI CC32XX Uart
id: ti,cc32xx-uart
version: 0.1
description: >
This binding gives a base representation of the TI CC32XX UART
inherits:
- !include uart.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "ti,cc32xx-uart"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
...

View file

@ -0,0 +1,30 @@
---
title: TI MSP432P4XX UART
id: ti,msp432p4xx-uart
version: 0.1
description: >
This binding gives a base representation of the TI MSP432P4XX UART
inherits:
- !include uart.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "ti,msp432p4xx-uart"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
...

View file

@ -0,0 +1,30 @@
---
title: TI Stellaris UART
id: ti,stellaris-uart
version: 0.1
description: >
This binding gives a base representation of the TI Stellaris UART
inherits:
- !include uart.yaml
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "ti,stellaris-uart"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
...

View file

@ -0,0 +1,40 @@
---
title: Uart Base Structure
id: uart
version: 0.1
description: >
This binding gives the base structures for all UART devices
properties:
- clock-frequency:
type: int
category: optional
description: Clock frequency information for UART operation
generation: define
- current-speed:
type: int
category: required
description: Initial baud rate setting for UART
generation: define
- clocks:
type: array
category: required
description: Clock gate information
generation: define
- label:
type: string
category: required
description: Human readable string describing the device (used by Zephyr for API name)
generation: define
- interrupt-names:
type: stringlist
category: optional
description: names of required interrupts
generation: define
- pinctrl-\d+:
type: array
category: optional
description: pinmux information for RX, TX, CTS, RTS
generation: define
...

View file

@ -0,0 +1,27 @@
---
title: ARM CMSDK DUALTIMER
id: arm,cmsdk-dtimer
version: 0.1
description: >
This binding gives a base representation of the ARM CMSDK DUALTIMER
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "arm,cmsdk-dtimer"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
...

View file

@ -0,0 +1,27 @@
---
title: ARM CMSDK TIMER
id: arm,cmsdk-timer
version: 0.1
description: >
This binding gives a base representation of the ARM CMSDK TIMER
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "arm,cmsdk-timer"
- reg:
type: array
description: mmio register space
generation: define
category: required
- interrupts:
type: array
category: required
description: required interrupts
generation: define
...

View file

@ -0,0 +1,21 @@
---
title: ARM CMSDK WATCHDOG
id: arm,cmsdk-watchdog
version: 0.1
description: >
This binding gives a base representation of the ARM CMSDK WATCHDOG
properties:
- compatible:
type: string
category: required
description: compatible strings
constraint: "arm,cmsdk-watchdog"
- reg:
type: array
description: mmio register space
generation: define
category: required
...