• Jon Hunter's avatar
    dt-bindings: Add bindings for Tegra DPAUX pinctrl driver · 6cb68e46
    Jon Hunter authored
    On Tegra124, Tegra132 and Tegra210 devices the pads used by the Display
    Port Auxiliary (DPAUX) channel are multiplexed such that they can also
    be used by one of the internal I2C controllers. Note that this is
    different from I2C-over-AUX supported by the DPAUX controller. The
    register that configures these pads is part of the DPAUX controllers
    register set and so a pinctrl driver is being added for the DPAUX device
    to share these pads. Add the device-tree binding documentation for the
    DPAUX pad controller.
    
    Although there is only one group of pads associated with the DPAUX that
    can be multiplexed, the group still needs to be described by the binding.
    If the 'groups' property is not present in the binding, then the pads
    will not be allocated by the pinctrl core for a client and this would
    allow another client to re-configure the same pads that may already be
    in-use.
    
    Please note that although the "off" function for the DPAUX pads is not
    technically a pin-mux setting but more of a pin-conf setting it is
    simpler to expose these as a function so that the user can simply select
    either "aux", "i2c" or "off" as the current function/mode.
    
    Update the main DPAUX binding documentation to reference the DPAUX pad
    controller binding document and add the 'i2c-bus' subnode. The 'i2c-bus'
    subnode is used for populating I2C slaves for the DPAUX device so that
    the I2C driver core does not attempt to add the DPAUX pad controller
    nodes as I2C slaves.
    Signed-off-by: default avatarJon Hunter <jonathanh@nvidia.com>
    Acked-by: default avatarRob Herring <robh@kernel.org>
    Signed-off-by: default avatarThierry Reding <treding@nvidia.com>
    6cb68e46
nvidia,tegra20-host1x.txt 13.1 KB