18c2ecf20Sopenharmony_ciDevice tree binding for NVIDIA Tegra DPAUX pad controller 28c2ecf20Sopenharmony_ci======================================================== 38c2ecf20Sopenharmony_ci 48c2ecf20Sopenharmony_ciThe Tegra Display Port Auxiliary (DPAUX) pad controller manages two pins 58c2ecf20Sopenharmony_ciwhich can be assigned to either the DPAUX channel or to an I2C 68c2ecf20Sopenharmony_cicontroller. 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_ciThis document defines the device-specific binding for the DPAUX pad 98c2ecf20Sopenharmony_cicontroller. Refer to pinctrl-bindings.txt in this directory for generic 108c2ecf20Sopenharmony_ciinformation about pin controller device tree bindings. Please refer to 118c2ecf20Sopenharmony_cithe binding document ../display/tegra/nvidia,tegra20-host1x.txt for more 128c2ecf20Sopenharmony_cidetails on the DPAUX binding. 138c2ecf20Sopenharmony_ci 148c2ecf20Sopenharmony_ciPin muxing: 158c2ecf20Sopenharmony_ci----------- 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_ciChild nodes contain the pinmux configurations following the conventions 188c2ecf20Sopenharmony_cifrom the pinctrl-bindings.txt document. 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ciSince only three configurations are possible, only three child nodes are 218c2ecf20Sopenharmony_cineeded to describe the pin mux'ing options for the DPAUX pads. 228c2ecf20Sopenharmony_ciFurthermore, given that the pad functions are only applicable to a 238c2ecf20Sopenharmony_cisingle set of pads, the child nodes only need to describe the pad group 248c2ecf20Sopenharmony_cithe functions are being applied to rather than the individual pads. 258c2ecf20Sopenharmony_ci 268c2ecf20Sopenharmony_ciRequired properties: 278c2ecf20Sopenharmony_ci- groups: Must be "dpaux-io" 288c2ecf20Sopenharmony_ci- function: Must be either "aux", "i2c" or "off". 298c2ecf20Sopenharmony_ci 308c2ecf20Sopenharmony_ciExample: 318c2ecf20Sopenharmony_ci-------- 328c2ecf20Sopenharmony_ci 338c2ecf20Sopenharmony_ci dpaux@545c0000 { 348c2ecf20Sopenharmony_ci ... 358c2ecf20Sopenharmony_ci 368c2ecf20Sopenharmony_ci state_dpaux_aux: pinmux-aux { 378c2ecf20Sopenharmony_ci groups = "dpaux-io"; 388c2ecf20Sopenharmony_ci function = "aux"; 398c2ecf20Sopenharmony_ci }; 408c2ecf20Sopenharmony_ci 418c2ecf20Sopenharmony_ci state_dpaux_i2c: pinmux-i2c { 428c2ecf20Sopenharmony_ci groups = "dpaux-io"; 438c2ecf20Sopenharmony_ci function = "i2c"; 448c2ecf20Sopenharmony_ci }; 458c2ecf20Sopenharmony_ci 468c2ecf20Sopenharmony_ci state_dpaux_off: pinmux-off { 478c2ecf20Sopenharmony_ci groups = "dpaux-io"; 488c2ecf20Sopenharmony_ci function = "off"; 498c2ecf20Sopenharmony_ci }; 508c2ecf20Sopenharmony_ci }; 518c2ecf20Sopenharmony_ci 528c2ecf20Sopenharmony_ci ... 538c2ecf20Sopenharmony_ci 548c2ecf20Sopenharmony_ci i2c@7000d100 { 558c2ecf20Sopenharmony_ci ... 568c2ecf20Sopenharmony_ci pinctrl-0 = <&state_dpaux_i2c>; 578c2ecf20Sopenharmony_ci pinctrl-1 = <&state_dpaux_off>; 588c2ecf20Sopenharmony_ci pinctrl-names = "default", "idle"; 598c2ecf20Sopenharmony_ci }; 60