Command DB
---------

Command DB is a database that provides a mapping between resource key and the
resource address for a system resource managed by a remote processor. The data
is stored in a shared memory region and is loaded by the remote processor.

Some of the Qualcomm Technologies Inc SoC's have hardware accelerators for
controlling shared resources. Depending on the board configuration the shared
resource properties may change. These properties are dynamically probed by the
remote processor and made available in the shared memory.

The bindings for Command DB is specified in the reserved-memory section in
devicetree. The devicetree representation of the command DB driver should be:

Properties:
- compatible:
	Usage: required
	Value type: <string>
	Definition: Should be "qcom,cmd-db"

- reg:
	Usage: required
	Value type: <prop encoded array>
	Definition: The register address that points to the actual location of
		    the Command DB in memory.

Example:

	reserved-memory {
		[...]
		reserved-memory@85fe0000 {
			reg = <0x0 0x85fe0000 0x0 0x20000>;
			compatible = "qcom,cmd-db";
			no-map;
		};
	};
