Devices are currently defined but are by no means the limit, new devices will be created as design dictates.
Each device has at a minimum an "address" and a "devices" attribute, "address" is the hardware address associated with the device. A few examples are:
Note: the UPB devices have a dual part address and must be enclosed in parentheses.
"devices" can be many but at a minimum, it must include the interface the address is associated with. This device is dependent on how you declared the interface.