diff options
-rw-r--r-- | Documentation/devicetree/bindings/arm/tegra/nvidia,tegra-dfll.txt | 37 | ||||
-rw-r--r-- | arch/arm/mach-tegra/tegra_cl_dvfs.c | 2 |
2 files changed, 23 insertions, 16 deletions
diff --git a/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra-dfll.txt b/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra-dfll.txt index c7e216565d56..2188203dc2dc 100644 --- a/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra-dfll.txt +++ b/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra-dfll.txt @@ -32,13 +32,6 @@ Required properties: for this DFLL instance. Optional properties: -- i2c-pmic-integration : phandle pointing to the integration data for - PMIC controlled by this DFLL instance via I2C interface. -- pwm-pmic-integration : phandle pointing to the integration data for - PMIC controlled by this DFLL instance via PWM interface. -Note that one and only one of 'i2c-pmic-integration', or 'pwm-pmic-integration', -must be specified. - - i2c-quiet-output-workaround : If the DFLL IP block version implemented on this SoC requires the I2C output to the PMIC to be quiesced before disabling it, this property should be set. @@ -52,6 +45,16 @@ must be specified. - status : device availability -- managed by the DT integration code. Should be set to "okay" if the DFLL is to be used on this board type. +- i2c-pmic-integration : phandle pointing to the integration data for + PMIC controlled by this DFLL instance via I2C interface. + +Optional subnode: +- pwm-pmic-integration : should have integration data for PMIC controlled by + this DFLL instance via PWM interface. + +Note that one and only one of 'i2c-pmic-integration', or 'pwm-pmic-integration', +must be included. + Example: dfll@70110000 { @@ -126,7 +129,7 @@ cpu_dfll_pmic_integration { pmic-undershoot-gb = <100>; }; -DFLL PWM PMIC integration node in the board DTS file +DFLL PWM PMIC integration subnode in the board DTS file Required properties: - compatible : Must be @@ -157,13 +160,17 @@ or 'pwm-2wire' must be specified. Example: -pwm_dfll: cpu_dfll_pmic_integration { - compatible = "nvidia,tegra124-dfll-pwm"; - pwm-1wire-buffer; - pwm-data-gpio = <&gpio TEGRA_GPIO(X, 0) 0>; - pwm-buffer-ctrl-gpio = <&gpio TEGRA_GPIO(S, 5) 1>; - #pwm-cells = <2>; - pwm-regulator = <&cpu_pwm_reg>; +dfll@70110000 { + board-params = <&{/cpu_dfll_board_params}>; + status = "okay"; + pwm_dfll: pwm-pmic-integration { + compatible = "nvidia,tegra124-dfll-pwm"; + pwm-1wire-buffer; + pwm-data-gpio = <&gpio TEGRA_GPIO(X, 0) 0>; + pwm-buffer-ctrl-gpio = <&gpio TEGRA_GPIO(S, 5) 1>; + #pwm-cells = <2>; + pwm-regulator = <&cpu_pwm_reg>; + }; }; pwm_regulators { diff --git a/arch/arm/mach-tegra/tegra_cl_dvfs.c b/arch/arm/mach-tegra/tegra_cl_dvfs.c index 157977fcd806..4af38260737e 100644 --- a/arch/arm/mach-tegra/tegra_cl_dvfs.c +++ b/arch/arm/mach-tegra/tegra_cl_dvfs.c @@ -2170,7 +2170,7 @@ static int cl_dvfs_dt_parse_pdata(struct platform_device *pdev, /* pmic integration */ i2c_dn = of_parse_phandle(dn, "i2c-pmic-integration", 0); - pwm_dn = of_parse_phandle(dn, "pwm-pmic-integration", 0); + pwm_dn = of_get_child_by_name(dn, "pwm-pmic-integration"); if (!i2c_dn == !pwm_dn) { of_node_put(i2c_dn); of_node_put(pwm_dn); |