Device attribute information can be represented by a name-value pair notation called a property.
For example, device registers and onboard memory can be represented by the reg property. The reg property is a software abstraction that describes device hardware registers. The value of the reg property encodes the device register address location and size. Drivers use the reg property to access device registers.
Another example is the interrupt property. An interrupt property represents the device interrupt. The value of the interrupt property encodes the device-interrupt PIN.
Five types of values can be assigned to properties:
Byte array – Series of bytes of an arbitrary length
Integer property – An integer value
Integer array property – An array of integers
String property – A null-terminated string
String array property – A list of null-terminated strings
A property that has no value is considered to be a Boolean property. A Boolean property that exists is true. A Boolean value that does not exist is false.