[PATCH 3/3] dt-bindings: add Tegra186 BPMP I2C binding

Stephen Warren swarren at wwwdotorg.org
Tue Jul 26 09:24:15 PDT 2016


On 07/26/2016 04:03 AM, Jon Hunter wrote:
>
> On 19/07/16 20:14, Stephen Warren wrote:
>> From: Stephen Warren <swarren at nvidia.com>
>>
>> In Tegra186, the BPMP (Boot and Power Management Processor) owns certain
>> HW devices, such as the I2C controller for the power management I2C bus.
>> Software running on other CPUs must perform IPC to the BPMP in order to
>> execute transactions on that I2C bus. This binding describes an I2C bus
>> that is accessed in such a fashion.
>>
>> Signed-off-by: Stephen Warren <swarren at nvidia.com>
>> ---
>>  .../bindings/i2c/nvidia,tegra186-bpmp-i2c.txt      | 42 ++++++++++++++++++++++
>>  1 file changed, 42 insertions(+)
>>  create mode 100644 Documentation/devicetree/bindings/i2c/nvidia,tegra186-bpmp-i2c.txt
>>
>> diff --git a/Documentation/devicetree/bindings/i2c/nvidia,tegra186-bpmp-i2c.txt b/Documentation/devicetree/bindings/i2c/nvidia,tegra186-bpmp-i2c.txt
>> new file mode 100644
>> index 000000000000..fecb549bc250
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/i2c/nvidia,tegra186-bpmp-i2c.txt
>> @@ -0,0 +1,42 @@
>> +NVIDIA Tegra186 BPMP I2C controller
>> +
>> +In Tegra186, the BPMP (Boot and Power Management Processor) owns certain HW
>> +devices, such as the I2C controller for the power management I2C bus. Software
>> +running on other CPUs must perform IPC to the BPMP in order to execute
>> +transactions on that I2C bus. This binding describes an I2C bus that is
>> +accessed in such a fashion.
>> +
>> +The BPMP I2C node must be located directly inside the main BPMP node. See
>> +../firmware/nvidia,tegra186-bpmp.txt for details of the BPMP binding.
>> +
>> +This node represents an I2C controller. See ../i2c/i2c.txt for details of the
>> +core I2C binding.
>> +
>> +Required properties:
>> +- compatible:
>> +    Array of strings.
>> +    One of:
>> +    - "nvidia,tegra186-bpmp-i2c".
>> +- #address-cells: Address cells for I2C device address.
>> +    Single-cell integer.
>> +    Must be <1>.
>> +- #size-cells:
>> +    Single-cell integer.
>> +    Must be <0>.
>> +- nvidia,bpmp-bus-id:
>> +    Single-cell integer.
>> +    Indicates the I2C bus number this DT node represent, as defined by the
>> +    BPMP firmware.
>> +
>> +Example:
>> +
>> +/ bpmp {
>
> Is this "/" intentional?

I think I meant to write "/bpmp" (i.e. without the space) to highlight 
where the node is in the overall hierarchy, but admittedly that's 
unusual. Yes, the "/ " should probably simply be removed.

>> +	...
>> +
>> +	bpmp-i2c {
>> +		compatible = "nvidia,tegra186-bpmp-i2c";
>> +		#address-cells = <1>;
>> +		#size-cells = <0>;
>> +		nvidia,bpmp-bus-id = <5>;
>> +	};
>> +};
>>
>
> Acked-by: Jon Hunter <jonathanh at nvidia.com>
>
> Jon




More information about the linux-arm-kernel mailing list