On Fri, Jan 27, 2017 at 4:19 PM, Thierry Reding <thierry.reding@xxxxxxxxx> wrote: > On Fri, Jan 27, 2017 at 09:39:38AM +0100, Thierry Reding wrote: >> From: Stephen Warren <swarren@xxxxxxxxxx> >> >> 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@xxxxxxxxxx> >> Reviewed-by: Simon Glass <sjg@xxxxxxxxxxxx> >> Signed-off-by: Tom Warren <twarren@xxxxxxxxxx> >> Acked-by: Jon Hunter <jonathanh@xxxxxxxxxx> >> Signed-off-by: Thierry Reding <treding@xxxxxxxxxx> >> --- >> .../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 > > Rob, sorry for not Cc'ing you earlier on this, but I had thought this > binding had already been reviewed and acked since it is merged in > U-Boot. Ha! Good one. :( > > Wolfram was concerned in particular about the nvidia,bpmp-bus-id > property below. > > Can you give this a quick look, please? > > Thanks, > Thierry > >> 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..ab240e10debc >> --- /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. This seems okay to me given it's a pretty specific use and dictated by the firmware. If there were multiple, then perhaps we should use reg, but that may collide with other BPMP child nodes. Rob -- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html