diff mbox

[v2,3/9] ARM: dts: dra72: Add separate dtsi for tps65917

Message ID 20161021103841.8044-4-lokeshvutla@ti.com (mailing list archive)
State New, archived
Headers show

Commit Message

Lokesh Vutla Oct. 21, 2016, 10:38 a.m. UTC
dra72-evm-common.dtsi consolidates dra72-evm.dts and dra72-evm-revc.dts
which also include tps65917 pmic support as both the evms uses the same
pmic. But, dra71-evm has mostly similar features with a different pmic.
In order to exploit dra72-evm-common.dtsi, creating a separate dtsi
for tps65915 support and including it in respective board files.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
---
 arch/arm/boot/dts/dra72-evm-common.dtsi   | 128 ----------------------------
 arch/arm/boot/dts/dra72-evm-revc.dts      |  21 +++--
 arch/arm/boot/dts/dra72-evm-tps65917.dtsi | 134 ++++++++++++++++++++++++++++++
 arch/arm/boot/dts/dra72-evm.dts           |  14 ++--
 4 files changed, 154 insertions(+), 143 deletions(-)
 create mode 100644 arch/arm/boot/dts/dra72-evm-tps65917.dtsi

Comments

Roger Quadros Dec. 13, 2016, 12:40 p.m. UTC | #1
+Tomi, Kishon, Carlos
 
Hi,

On 21/10/16 13:38, Lokesh Vutla wrote:
> dra72-evm-common.dtsi consolidates dra72-evm.dts and dra72-evm-revc.dts
> which also include tps65917 pmic support as both the evms uses the same
> pmic. But, dra71-evm has mostly similar features with a different pmic.
> In order to exploit dra72-evm-common.dtsi, creating a separate dtsi
> for tps65915 support and including it in respective board files.
> 
> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
> ---
>  arch/arm/boot/dts/dra72-evm-common.dtsi   | 128 ----------------------------
>  arch/arm/boot/dts/dra72-evm-revc.dts      |  21 +++--
>  arch/arm/boot/dts/dra72-evm-tps65917.dtsi | 134 ++++++++++++++++++++++++++++++
>  arch/arm/boot/dts/dra72-evm.dts           |  14 ++--
>  4 files changed, 154 insertions(+), 143 deletions(-)
>  create mode 100644 arch/arm/boot/dts/dra72-evm-tps65917.dtsi
> 

This patch breaks USB XHCI and boot on dra72-evm (both revC and non revC)

I'll explain why below.

[   13.625167] Unhandled fault: imprecise external abort (0x1406) at 0x00000000
[   13.632557] pgd = ede10000
[   13.635390] [00000000] *pgd=00000000
[   13.639145] Internal error: : 1406 [#1] SMP ARM
[   13.643893] Modules linked in: xhci_plat_hcd(+) xhci_hcd usbcore omapfb dwc3 cfbfillrect snd_soc_davinci_mcasp cfbimgblt cfbcopyarea udc_core connector_hdmi encoder_tpd12s015 snd_soc_edma m25p80 snd_soc_simpe
[   13.695557] CPU: 0 PID: 440 Comm: modprobe Not tainted 4.9.0-rc1 #1050
[   13.702399] Hardware name: Generic DRA72X (Flattened Device Tree)
[   13.708786] task: edb5c040 task.stack: edd10000
[   13.713540] PC is at _raw_spin_unlock_irqrestore+0x0/0x44
[   13.719219] LR is at xhci_hub_control+0xc2c/0x15e0 [xhci_hcd]
[   13.725242] pc : [<c07df718>]    lr : [<bf486300>]    psr: a0000093
[   13.725242] sp : edd118c0  ip : c0e306b4  fp : 00000000
[   13.737278] r10: 00000000  r9 : 60000013  r8 : edf28218
[   13.742753] r7 : edf28000  r6 : 00000000  r5 : 00000000  r4 : edf2a000
[   13.749593] r3 : 00000000  r2 : 00000000  r1 : 60000013  r0 : edf28218


> diff --git a/arch/arm/boot/dts/dra72-evm-common.dtsi b/arch/arm/boot/dts/dra72-evm-common.dtsi
> index 8537b6a..9903ac7 100644
> --- a/arch/arm/boot/dts/dra72-evm-common.dtsi
> +++ b/arch/arm/boot/dts/dra72-evm-common.dtsi
> @@ -214,123 +214,6 @@
>  	status = "okay";
>  	clock-frequency = <400000>;
>  
> -	tps65917: tps65917@58 {
> -		compatible = "ti,tps65917";
> -		reg = <0x58>;
> -
> -		interrupts = <GIC_SPI 2 IRQ_TYPE_NONE>;  /* IRQ_SYS_1N */
> -		interrupt-controller;
> -		#interrupt-cells = <2>;
> -
> -		ti,system-power-controller;
> -
> -		tps65917_pmic {
> -			compatible = "ti,tps65917-pmic";
> -
> -			smps1-in-supply = <&vsys_3v3>;
> -			smps2-in-supply = <&vsys_3v3>;
> -			smps3-in-supply = <&vsys_3v3>;
> -			smps4-in-supply = <&vsys_3v3>;
> -			smps5-in-supply = <&vsys_3v3>;
> -			ldo1-in-supply = <&vsys_3v3>;
> -			ldo2-in-supply = <&vsys_3v3>;
> -			ldo3-in-supply = <&vsys_3v3>;
> -			ldo4-in-supply = <&evm_5v0>;
> -			ldo5-in-supply = <&vsys_3v3>;
> -
> -			tps65917_regulators: regulators {
> -				smps1_reg: smps1 {
> -					/* VDD_MPU */
> -					regulator-name = "smps1";
> -					regulator-min-microvolt = <850000>;
> -					regulator-max-microvolt = <1250000>;
> -					regulator-always-on;
> -					regulator-boot-on;
> -				};
> -
> -				smps2_reg: smps2 {
> -					/* VDD_CORE */
> -					regulator-name = "smps2";
> -					regulator-min-microvolt = <850000>;
> -					regulator-max-microvolt = <1150000>;
> -					regulator-boot-on;
> -					regulator-always-on;
> -				};
> -
> -				smps3_reg: smps3 {
> -					/* VDD_GPU IVA DSPEVE */
> -					regulator-name = "smps3";
> -					regulator-min-microvolt = <850000>;
> -					regulator-max-microvolt = <1250000>;
> -					regulator-boot-on;
> -					regulator-always-on;
> -				};
> -
> -				smps4_reg: smps4 {
> -					/* VDDS1V8 */
> -					regulator-name = "smps4";
> -					regulator-min-microvolt = <1800000>;
> -					regulator-max-microvolt = <1800000>;
> -					regulator-always-on;
> -					regulator-boot-on;
> -				};
> -
> -				smps5_reg: smps5 {
> -					/* VDD_DDR */
> -					regulator-name = "smps5";
> -					regulator-min-microvolt = <1350000>;
> -					regulator-max-microvolt = <1350000>;
> -					regulator-boot-on;
> -					regulator-always-on;
> -				};
> -
> -				ldo1_reg: ldo1 {
> -					/* LDO1_OUT --> SDIO  */
> -					regulator-name = "ldo1";
> -					regulator-min-microvolt = <1800000>;
> -					regulator-max-microvolt = <3300000>;
> -					regulator-always-on;
> -					regulator-boot-on;
> -					regulator-allow-bypass;
> -				};
> -
> -				ldo3_reg: ldo3 {
> -					/* VDDA_1V8_PHY */
> -					regulator-name = "ldo3";
> -					regulator-min-microvolt = <1800000>;
> -					regulator-max-microvolt = <1800000>;
> -					regulator-boot-on;
> -					regulator-always-on;
> -				};
> -
> -				ldo5_reg: ldo5 {
> -					/* VDDA_1V8_PLL */
> -					regulator-name = "ldo5";
> -					regulator-min-microvolt = <1800000>;
> -					regulator-max-microvolt = <1800000>;
> -					regulator-always-on;
> -					regulator-boot-on;
> -				};
> -
> -				ldo4_reg: ldo4 {
> -					/* VDDA_3V_USB: VDDA_USBHS33 */
> -					regulator-name = "ldo4";
> -					regulator-min-microvolt = <3300000>;
> -					regulator-max-microvolt = <3300000>;
> -					regulator-boot-on;
> -				};
> -			};
> -		};
> -
> -		tps65917_power_button {
> -			compatible = "ti,palmas-pwrbutton";
> -			interrupt-parent = <&tps65917>;
> -			interrupts = <1 IRQ_TYPE_NONE>;
> -			wakeup-source;
> -			ti,palmas-long-press-seconds = <6>;
> -		};
> -	};
> -
>  	pcf_gpio_21: gpio@21 {
>  		compatible = "ti,pcf8575", "nxp,pcf8575";
>  		reg = <0x21>;
> @@ -480,14 +363,6 @@
>  	};
>  };
>  
> -&usb2_phy1 {
> -	phy-supply = <&ldo4_reg>;
> -};
> -
> -&usb2_phy2 {
> -	phy-supply = <&ldo4_reg>;
> -};
> -

You remove this here but don't add them in the board dts files.

>  &omap_dwc3_1 {
>  	extcon = <&extcon_usb1>;
>  };
> @@ -509,7 +384,6 @@
>  	pinctrl-names = "default";
>  	pinctrl-0 = <&mmc1_pins_default>;
>  	vmmc-supply = <&evm_3v3_sd>;
> -	vmmc_aux-supply = <&ldo1_reg>;

What about this?

>  	bus-width = <4>;
>  	/*
>  	 * SDCD signal is not being used here - using the fact that GPIO mode
> @@ -606,8 +480,6 @@
>  
>  &dss {
>  	status = "ok";
> -
> -	vdda_video-supply = <&ldo5_reg>;

and this?

>  };
>  
>  &hdmi {
> diff --git a/arch/arm/boot/dts/dra72-evm-revc.dts b/arch/arm/boot/dts/dra72-evm-revc.dts
> index 064b322..4ea2a0c 100644
> --- a/arch/arm/boot/dts/dra72-evm-revc.dts
> +++ b/arch/arm/boot/dts/dra72-evm-revc.dts
> @@ -17,17 +17,22 @@
>  	};
>  };
>  
> -&tps65917_regulators {
> -	ldo2_reg: ldo2 {
> -		/* LDO2_OUT --> VDDA_1V8_PHY2 */
> -		regulator-name = "ldo2";
> -		regulator-min-microvolt = <1800000>;
> -		regulator-max-microvolt = <1800000>;
> -		regulator-always-on;
> -		regulator-boot-on;
> +&i2c1 {
> +	tps65917: tps65917@58 {
> +		reg = <0x58>;
> +
> +		interrupts = <GIC_SPI 2 IRQ_TYPE_NONE>;  /* IRQ_SYS_1N */
>  	};
>  };
>  
> +#include "dra72-evm-tps65917.dtsi"
> +
> +&ldo2_reg {
> +	/* LDO2_OUT --> VDDA_1V8_PHY2 */
> +	regulator-always-on;
> +	regulator-boot-on;
> +};
> +

Here you need to add the usb2_phy1 & 2 supplies.

>  &hdmi {
>  	vdda-supply = <&ldo2_reg>;
>  };
> diff --git a/arch/arm/boot/dts/dra72-evm-tps65917.dtsi b/arch/arm/boot/dts/dra72-evm-tps65917.dtsi
> new file mode 100644
> index 0000000..ee6dac4
> --- /dev/null
> +++ b/arch/arm/boot/dts/dra72-evm-tps65917.dtsi
> @@ -0,0 +1,134 @@
> +/*
> + * Copyright (C) 2016 Texas Instruments Incorporated - http://www.ti.com/
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License version 2 as
> + * published by the Free Software Foundation.
> + */
> +
> +/*
> + * Integrated Power Management Chip
> + * http://www.ti.com/lit/ds/symlink/tps65917-q1.pdf
> + */
> +
> +&tps65917 {
> +	compatible = "ti,tps65917";
> +
> +	interrupt-controller;
> +	#interrupt-cells = <2>;
> +
> +	ti,system-power-controller;
> +
> +	tps65917_pmic {
> +		compatible = "ti,tps65917-pmic";
> +
> +		smps1-in-supply = <&vsys_3v3>;
> +		smps2-in-supply = <&vsys_3v3>;
> +		smps3-in-supply = <&vsys_3v3>;
> +		smps4-in-supply = <&vsys_3v3>;
> +		smps5-in-supply = <&vsys_3v3>;
> +		ldo1-in-supply = <&vsys_3v3>;
> +		ldo2-in-supply = <&vsys_3v3>;
> +		ldo3-in-supply = <&vsys_3v3>;
> +		ldo4-in-supply = <&evm_5v0>;
> +		ldo5-in-supply = <&vsys_3v3>;
> +
> +		tps65917_regulators: regulators {
> +			smps1_reg: smps1 {
> +				/* VDD_MPU */
> +				regulator-name = "smps1";
> +				regulator-min-microvolt = <850000>;
> +				regulator-max-microvolt = <1250000>;
> +				regulator-always-on;
> +				regulator-boot-on;
> +			};
> +
> +			smps2_reg: smps2 {
> +				/* VDD_CORE */
> +				regulator-name = "smps2";
> +				regulator-min-microvolt = <850000>;
> +				regulator-max-microvolt = <1150000>;
> +				regulator-boot-on;
> +				regulator-always-on;
> +			};
> +
> +			smps3_reg: smps3 {
> +				/* VDD_GPU IVA DSPEVE */
> +				regulator-name = "smps3";
> +				regulator-min-microvolt = <850000>;
> +				regulator-max-microvolt = <1250000>;
> +				regulator-boot-on;
> +				regulator-always-on;
> +			};
> +
> +			smps4_reg: smps4 {
> +				/* VDDS1V8 */
> +				regulator-name = "smps4";
> +				regulator-min-microvolt = <1800000>;
> +				regulator-max-microvolt = <1800000>;
> +				regulator-always-on;
> +				regulator-boot-on;
> +			};
> +
> +			smps5_reg: smps5 {
> +				/* VDD_DDR */
> +				regulator-name = "smps5";
> +				regulator-min-microvolt = <1350000>;
> +				regulator-max-microvolt = <1350000>;
> +				regulator-boot-on;
> +				regulator-always-on;
> +			};
> +
> +			ldo1_reg: ldo1 {
> +				/* LDO1_OUT --> SDIO  */
> +				regulator-name = "ldo1";
> +				regulator-min-microvolt = <1800000>;
> +				regulator-max-microvolt = <3300000>;
> +				regulator-always-on;
> +				regulator-boot-on;
> +				regulator-allow-bypass;
> +			};
> +
> +			ldo2_reg: ldo2 {
> +				regulator-name = "ldo2";
> +				regulator-min-microvolt = <1800000>;
> +				regulator-max-microvolt = <1800000>;
> +				regulator-allow-bypass;
> +			};
> +
> +			ldo3_reg: ldo3 {
> +				/* VDDA_1V8_PHY */
> +				regulator-name = "ldo3";
> +				regulator-min-microvolt = <1800000>;
> +				regulator-max-microvolt = <1800000>;
> +				regulator-boot-on;
> +				regulator-always-on;
> +			};
> +
> +			ldo5_reg: ldo5 {
> +				/* VDDA_1V8_PLL */
> +				regulator-name = "ldo5";
> +				regulator-min-microvolt = <1800000>;
> +				regulator-max-microvolt = <1800000>;
> +				regulator-always-on;
> +				regulator-boot-on;
> +			};
> +
> +			ldo4_reg: ldo4 {
> +				/* VDDA_3V_USB: VDDA_USBHS33 */
> +				regulator-name = "ldo4";
> +				regulator-min-microvolt = <3300000>;
> +				regulator-max-microvolt = <3300000>;
> +				regulator-boot-on;
> +			};
> +		};
> +	};
> +
> +	tps65917_power_button {
> +		compatible = "ti,palmas-pwrbutton";
> +		interrupt-parent = <&tps65917>;
> +		interrupts = <1 IRQ_TYPE_NONE>;
> +		wakeup-source;
> +		ti,palmas-long-press-seconds = <6>;
> +	};
> +};
> diff --git a/arch/arm/boot/dts/dra72-evm.dts b/arch/arm/boot/dts/dra72-evm.dts
> index e3a9b69..cd9c4ff 100644
> --- a/arch/arm/boot/dts/dra72-evm.dts
> +++ b/arch/arm/boot/dts/dra72-evm.dts
> @@ -15,16 +15,16 @@
>  	};
>  };
>  
> -&tps65917_regulators {
> -	ldo2_reg: ldo2 {
> -		/* LDO2_OUT --> TP1017 (UNUSED)  */
> -		regulator-name = "ldo2";
> -		regulator-min-microvolt = <1800000>;
> -		regulator-max-microvolt = <3300000>;
> -		regulator-allow-bypass;
> +&i2c1 {
> +	tps65917: tps65917@58 {
> +		reg = <0x58>;
> +
> +		interrupts = <GIC_SPI 2 IRQ_TYPE_NONE>;  /* IRQ_SYS_1N */
>  	};
>  };
>  
> +#include "dra72-evm-tps65917.dtsi"
> +
>  &hdmi {
>  	vdda-supply = <&ldo3_reg>;
>  };
> 

Here as well you need to add the usb2_phy1 & 2 supplies.

We probably need to add dss and mmc supplies as well to both the board dts files?

cheers,
-roger
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Lokesh Vutla Dec. 13, 2016, 1:08 p.m. UTC | #2
On Tuesday 13 December 2016 06:10 PM, Roger Quadros wrote:
> +Tomi, Kishon, Carlos
>  
> Hi,
> 
> On 21/10/16 13:38, Lokesh Vutla wrote:
>> dra72-evm-common.dtsi consolidates dra72-evm.dts and dra72-evm-revc.dts
>> which also include tps65917 pmic support as both the evms uses the same
>> pmic. But, dra71-evm has mostly similar features with a different pmic.
>> In order to exploit dra72-evm-common.dtsi, creating a separate dtsi
>> for tps65915 support and including it in respective board files.
>>
>> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
>> ---
>>  arch/arm/boot/dts/dra72-evm-common.dtsi   | 128 ----------------------------
>>  arch/arm/boot/dts/dra72-evm-revc.dts      |  21 +++--
>>  arch/arm/boot/dts/dra72-evm-tps65917.dtsi | 134 ++++++++++++++++++++++++++++++
>>  arch/arm/boot/dts/dra72-evm.dts           |  14 ++--
>>  4 files changed, 154 insertions(+), 143 deletions(-)
>>  create mode 100644 arch/arm/boot/dts/dra72-evm-tps65917.dtsi
>>
> 
> This patch breaks USB XHCI and boot on dra72-evm (both revC and non revC)
> 
> I'll explain why below.
> 
> [   13.625167] Unhandled fault: imprecise external abort (0x1406) at 0x00000000
> [   13.632557] pgd = ede10000
> [   13.635390] [00000000] *pgd=00000000
> [   13.639145] Internal error: : 1406 [#1] SMP ARM
> [   13.643893] Modules linked in: xhci_plat_hcd(+) xhci_hcd usbcore omapfb dwc3 cfbfillrect snd_soc_davinci_mcasp cfbimgblt cfbcopyarea udc_core connector_hdmi encoder_tpd12s015 snd_soc_edma m25p80 snd_soc_simpe
> [   13.695557] CPU: 0 PID: 440 Comm: modprobe Not tainted 4.9.0-rc1 #1050
> [   13.702399] Hardware name: Generic DRA72X (Flattened Device Tree)
> [   13.708786] task: edb5c040 task.stack: edd10000
> [   13.713540] PC is at _raw_spin_unlock_irqrestore+0x0/0x44
> [   13.719219] LR is at xhci_hub_control+0xc2c/0x15e0 [xhci_hcd]
> [   13.725242] pc : [<c07df718>]    lr : [<bf486300>]    psr: a0000093
> [   13.725242] sp : edd118c0  ip : c0e306b4  fp : 00000000
> [   13.737278] r10: 00000000  r9 : 60000013  r8 : edf28218
> [   13.742753] r7 : edf28000  r6 : 00000000  r5 : 00000000  r4 : edf2a000
> [   13.749593] r3 : 00000000  r2 : 00000000  r1 : 60000013  r0 : edf28218

Hmm.. Thanks for catching it. I remember it was booting when I tested,
not sure how I missed this :(. usb2_phy1 & 2, mmc and dss supplies needs
to be added in dra72-evm-tps65917.dtsi file.

Tony,
	Do you want me to resend this patch or fixup patch on top of this?

Thanks and regards,
Lokesh
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Roger Quadros Dec. 13, 2016, 2:55 p.m. UTC | #3
Lokesh,

On 13/12/16 15:08, Lokesh Vutla wrote:
> 
> 
> On Tuesday 13 December 2016 06:10 PM, Roger Quadros wrote:
>> +Tomi, Kishon, Carlos
>>  
>> Hi,
>>
>> On 21/10/16 13:38, Lokesh Vutla wrote:
>>> dra72-evm-common.dtsi consolidates dra72-evm.dts and dra72-evm-revc.dts
>>> which also include tps65917 pmic support as both the evms uses the same
>>> pmic. But, dra71-evm has mostly similar features with a different pmic.
>>> In order to exploit dra72-evm-common.dtsi, creating a separate dtsi
>>> for tps65915 support and including it in respective board files.
>>>
>>> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
>>> ---
>>>  arch/arm/boot/dts/dra72-evm-common.dtsi   | 128 ----------------------------
>>>  arch/arm/boot/dts/dra72-evm-revc.dts      |  21 +++--
>>>  arch/arm/boot/dts/dra72-evm-tps65917.dtsi | 134 ++++++++++++++++++++++++++++++
>>>  arch/arm/boot/dts/dra72-evm.dts           |  14 ++--
>>>  4 files changed, 154 insertions(+), 143 deletions(-)
>>>  create mode 100644 arch/arm/boot/dts/dra72-evm-tps65917.dtsi
>>>
>>
>> This patch breaks USB XHCI and boot on dra72-evm (both revC and non revC)
>>
>> I'll explain why below.
>>
>> [   13.625167] Unhandled fault: imprecise external abort (0x1406) at 0x00000000
>> [   13.632557] pgd = ede10000
>> [   13.635390] [00000000] *pgd=00000000
>> [   13.639145] Internal error: : 1406 [#1] SMP ARM
>> [   13.643893] Modules linked in: xhci_plat_hcd(+) xhci_hcd usbcore omapfb dwc3 cfbfillrect snd_soc_davinci_mcasp cfbimgblt cfbcopyarea udc_core connector_hdmi encoder_tpd12s015 snd_soc_edma m25p80 snd_soc_simpe
>> [   13.695557] CPU: 0 PID: 440 Comm: modprobe Not tainted 4.9.0-rc1 #1050
>> [   13.702399] Hardware name: Generic DRA72X (Flattened Device Tree)
>> [   13.708786] task: edb5c040 task.stack: edd10000
>> [   13.713540] PC is at _raw_spin_unlock_irqrestore+0x0/0x44
>> [   13.719219] LR is at xhci_hub_control+0xc2c/0x15e0 [xhci_hcd]
>> [   13.725242] pc : [<c07df718>]    lr : [<bf486300>]    psr: a0000093
>> [   13.725242] sp : edd118c0  ip : c0e306b4  fp : 00000000
>> [   13.737278] r10: 00000000  r9 : 60000013  r8 : edf28218
>> [   13.742753] r7 : edf28000  r6 : 00000000  r5 : 00000000  r4 : edf2a000
>> [   13.749593] r3 : 00000000  r2 : 00000000  r1 : 60000013  r0 : edf28218
> 
> Hmm.. Thanks for catching it. I remember it was booting when I tested,
> not sure how I missed this :(. usb2_phy1 & 2, mmc and dss supplies needs
> to be added in dra72-evm-tps65917.dtsi file.

OK.
> 
> Tony,
> 	Do you want me to resend this patch or fixup patch on top of this?

In case you send a new patch. please add

Reported-by: Carlos Hernandez <ceh@ti.com>

Thanks.

cheers,
-roger
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/arch/arm/boot/dts/dra72-evm-common.dtsi b/arch/arm/boot/dts/dra72-evm-common.dtsi
index 8537b6a..9903ac7 100644
--- a/arch/arm/boot/dts/dra72-evm-common.dtsi
+++ b/arch/arm/boot/dts/dra72-evm-common.dtsi
@@ -214,123 +214,6 @@ 
 	status = "okay";
 	clock-frequency = <400000>;
 
-	tps65917: tps65917@58 {
-		compatible = "ti,tps65917";
-		reg = <0x58>;
-
-		interrupts = <GIC_SPI 2 IRQ_TYPE_NONE>;  /* IRQ_SYS_1N */
-		interrupt-controller;
-		#interrupt-cells = <2>;
-
-		ti,system-power-controller;
-
-		tps65917_pmic {
-			compatible = "ti,tps65917-pmic";
-
-			smps1-in-supply = <&vsys_3v3>;
-			smps2-in-supply = <&vsys_3v3>;
-			smps3-in-supply = <&vsys_3v3>;
-			smps4-in-supply = <&vsys_3v3>;
-			smps5-in-supply = <&vsys_3v3>;
-			ldo1-in-supply = <&vsys_3v3>;
-			ldo2-in-supply = <&vsys_3v3>;
-			ldo3-in-supply = <&vsys_3v3>;
-			ldo4-in-supply = <&evm_5v0>;
-			ldo5-in-supply = <&vsys_3v3>;
-
-			tps65917_regulators: regulators {
-				smps1_reg: smps1 {
-					/* VDD_MPU */
-					regulator-name = "smps1";
-					regulator-min-microvolt = <850000>;
-					regulator-max-microvolt = <1250000>;
-					regulator-always-on;
-					regulator-boot-on;
-				};
-
-				smps2_reg: smps2 {
-					/* VDD_CORE */
-					regulator-name = "smps2";
-					regulator-min-microvolt = <850000>;
-					regulator-max-microvolt = <1150000>;
-					regulator-boot-on;
-					regulator-always-on;
-				};
-
-				smps3_reg: smps3 {
-					/* VDD_GPU IVA DSPEVE */
-					regulator-name = "smps3";
-					regulator-min-microvolt = <850000>;
-					regulator-max-microvolt = <1250000>;
-					regulator-boot-on;
-					regulator-always-on;
-				};
-
-				smps4_reg: smps4 {
-					/* VDDS1V8 */
-					regulator-name = "smps4";
-					regulator-min-microvolt = <1800000>;
-					regulator-max-microvolt = <1800000>;
-					regulator-always-on;
-					regulator-boot-on;
-				};
-
-				smps5_reg: smps5 {
-					/* VDD_DDR */
-					regulator-name = "smps5";
-					regulator-min-microvolt = <1350000>;
-					regulator-max-microvolt = <1350000>;
-					regulator-boot-on;
-					regulator-always-on;
-				};
-
-				ldo1_reg: ldo1 {
-					/* LDO1_OUT --> SDIO  */
-					regulator-name = "ldo1";
-					regulator-min-microvolt = <1800000>;
-					regulator-max-microvolt = <3300000>;
-					regulator-always-on;
-					regulator-boot-on;
-					regulator-allow-bypass;
-				};
-
-				ldo3_reg: ldo3 {
-					/* VDDA_1V8_PHY */
-					regulator-name = "ldo3";
-					regulator-min-microvolt = <1800000>;
-					regulator-max-microvolt = <1800000>;
-					regulator-boot-on;
-					regulator-always-on;
-				};
-
-				ldo5_reg: ldo5 {
-					/* VDDA_1V8_PLL */
-					regulator-name = "ldo5";
-					regulator-min-microvolt = <1800000>;
-					regulator-max-microvolt = <1800000>;
-					regulator-always-on;
-					regulator-boot-on;
-				};
-
-				ldo4_reg: ldo4 {
-					/* VDDA_3V_USB: VDDA_USBHS33 */
-					regulator-name = "ldo4";
-					regulator-min-microvolt = <3300000>;
-					regulator-max-microvolt = <3300000>;
-					regulator-boot-on;
-				};
-			};
-		};
-
-		tps65917_power_button {
-			compatible = "ti,palmas-pwrbutton";
-			interrupt-parent = <&tps65917>;
-			interrupts = <1 IRQ_TYPE_NONE>;
-			wakeup-source;
-			ti,palmas-long-press-seconds = <6>;
-		};
-	};
-
 	pcf_gpio_21: gpio@21 {
 		compatible = "ti,pcf8575", "nxp,pcf8575";
 		reg = <0x21>;
@@ -480,14 +363,6 @@ 
 	};
 };
 
-&usb2_phy1 {
-	phy-supply = <&ldo4_reg>;
-};
-
-&usb2_phy2 {
-	phy-supply = <&ldo4_reg>;
-};
-
 &omap_dwc3_1 {
 	extcon = <&extcon_usb1>;
 };
@@ -509,7 +384,6 @@ 
 	pinctrl-names = "default";
 	pinctrl-0 = <&mmc1_pins_default>;
 	vmmc-supply = <&evm_3v3_sd>;
-	vmmc_aux-supply = <&ldo1_reg>;
 	bus-width = <4>;
 	/*
 	 * SDCD signal is not being used here - using the fact that GPIO mode
@@ -606,8 +480,6 @@ 
 
 &dss {
 	status = "ok";
-
-	vdda_video-supply = <&ldo5_reg>;
 };
 
 &hdmi {
diff --git a/arch/arm/boot/dts/dra72-evm-revc.dts b/arch/arm/boot/dts/dra72-evm-revc.dts
index 064b322..4ea2a0c 100644
--- a/arch/arm/boot/dts/dra72-evm-revc.dts
+++ b/arch/arm/boot/dts/dra72-evm-revc.dts
@@ -17,17 +17,22 @@ 
 	};
 };
 
-&tps65917_regulators {
-	ldo2_reg: ldo2 {
-		/* LDO2_OUT --> VDDA_1V8_PHY2 */
-		regulator-name = "ldo2";
-		regulator-min-microvolt = <1800000>;
-		regulator-max-microvolt = <1800000>;
-		regulator-always-on;
-		regulator-boot-on;
+&i2c1 {
+	tps65917: tps65917@58 {
+		reg = <0x58>;
+
+		interrupts = <GIC_SPI 2 IRQ_TYPE_NONE>;  /* IRQ_SYS_1N */
 	};
 };
 
+#include "dra72-evm-tps65917.dtsi"
+
+&ldo2_reg {
+	/* LDO2_OUT --> VDDA_1V8_PHY2 */
+	regulator-always-on;
+	regulator-boot-on;
+};
+
 &hdmi {
 	vdda-supply = <&ldo2_reg>;
 };
diff --git a/arch/arm/boot/dts/dra72-evm-tps65917.dtsi b/arch/arm/boot/dts/dra72-evm-tps65917.dtsi
new file mode 100644
index 0000000..ee6dac4
--- /dev/null
+++ b/arch/arm/boot/dts/dra72-evm-tps65917.dtsi
@@ -0,0 +1,134 @@ 
+/*
+ * Copyright (C) 2016 Texas Instruments Incorporated - http://www.ti.com/
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+/*
+ * Integrated Power Management Chip
+ * http://www.ti.com/lit/ds/symlink/tps65917-q1.pdf
+ */
+
+&tps65917 {
+	compatible = "ti,tps65917";
+
+	interrupt-controller;
+	#interrupt-cells = <2>;
+
+	ti,system-power-controller;
+
+	tps65917_pmic {
+		compatible = "ti,tps65917-pmic";
+
+		smps1-in-supply = <&vsys_3v3>;
+		smps2-in-supply = <&vsys_3v3>;
+		smps3-in-supply = <&vsys_3v3>;
+		smps4-in-supply = <&vsys_3v3>;
+		smps5-in-supply = <&vsys_3v3>;
+		ldo1-in-supply = <&vsys_3v3>;
+		ldo2-in-supply = <&vsys_3v3>;
+		ldo3-in-supply = <&vsys_3v3>;
+		ldo4-in-supply = <&evm_5v0>;
+		ldo5-in-supply = <&vsys_3v3>;
+
+		tps65917_regulators: regulators {
+			smps1_reg: smps1 {
+				/* VDD_MPU */
+				regulator-name = "smps1";
+				regulator-min-microvolt = <850000>;
+				regulator-max-microvolt = <1250000>;
+				regulator-always-on;
+				regulator-boot-on;
+			};
+
+			smps2_reg: smps2 {
+				/* VDD_CORE */
+				regulator-name = "smps2";
+				regulator-min-microvolt = <850000>;
+				regulator-max-microvolt = <1150000>;
+				regulator-boot-on;
+				regulator-always-on;
+			};
+
+			smps3_reg: smps3 {
+				/* VDD_GPU IVA DSPEVE */
+				regulator-name = "smps3";
+				regulator-min-microvolt = <850000>;
+				regulator-max-microvolt = <1250000>;
+				regulator-boot-on;
+				regulator-always-on;
+			};
+
+			smps4_reg: smps4 {
+				/* VDDS1V8 */
+				regulator-name = "smps4";
+				regulator-min-microvolt = <1800000>;
+				regulator-max-microvolt = <1800000>;
+				regulator-always-on;
+				regulator-boot-on;
+			};
+
+			smps5_reg: smps5 {
+				/* VDD_DDR */
+				regulator-name = "smps5";
+				regulator-min-microvolt = <1350000>;
+				regulator-max-microvolt = <1350000>;
+				regulator-boot-on;
+				regulator-always-on;
+			};
+
+			ldo1_reg: ldo1 {
+				/* LDO1_OUT --> SDIO  */
+				regulator-name = "ldo1";
+				regulator-min-microvolt = <1800000>;
+				regulator-max-microvolt = <3300000>;
+				regulator-always-on;
+				regulator-boot-on;
+				regulator-allow-bypass;
+			};
+
+			ldo2_reg: ldo2 {
+				regulator-name = "ldo2";
+				regulator-min-microvolt = <1800000>;
+				regulator-max-microvolt = <1800000>;
+				regulator-allow-bypass;
+			};
+
+			ldo3_reg: ldo3 {
+				/* VDDA_1V8_PHY */
+				regulator-name = "ldo3";
+				regulator-min-microvolt = <1800000>;
+				regulator-max-microvolt = <1800000>;
+				regulator-boot-on;
+				regulator-always-on;
+			};
+
+			ldo5_reg: ldo5 {
+				/* VDDA_1V8_PLL */
+				regulator-name = "ldo5";
+				regulator-min-microvolt = <1800000>;
+				regulator-max-microvolt = <1800000>;
+				regulator-always-on;
+				regulator-boot-on;
+			};
+
+			ldo4_reg: ldo4 {
+				/* VDDA_3V_USB: VDDA_USBHS33 */
+				regulator-name = "ldo4";
+				regulator-min-microvolt = <3300000>;
+				regulator-max-microvolt = <3300000>;
+				regulator-boot-on;
+			};
+		};
+	};
+
+	tps65917_power_button {
+		compatible = "ti,palmas-pwrbutton";
+		interrupt-parent = <&tps65917>;
+		interrupts = <1 IRQ_TYPE_NONE>;
+		wakeup-source;
+		ti,palmas-long-press-seconds = <6>;
+	};
+};
diff --git a/arch/arm/boot/dts/dra72-evm.dts b/arch/arm/boot/dts/dra72-evm.dts
index e3a9b69..cd9c4ff 100644
--- a/arch/arm/boot/dts/dra72-evm.dts
+++ b/arch/arm/boot/dts/dra72-evm.dts
@@ -15,16 +15,16 @@ 
 	};
 };
 
-&tps65917_regulators {
-	ldo2_reg: ldo2 {
-		/* LDO2_OUT --> TP1017 (UNUSED)  */
-		regulator-name = "ldo2";
-		regulator-min-microvolt = <1800000>;
-		regulator-max-microvolt = <3300000>;
-		regulator-allow-bypass;
+&i2c1 {
+	tps65917: tps65917@58 {
+		reg = <0x58>;
+
+		interrupts = <GIC_SPI 2 IRQ_TYPE_NONE>;  /* IRQ_SYS_1N */
 	};
 };
 
+#include "dra72-evm-tps65917.dtsi"
+
 &hdmi {
 	vdda-supply = <&ldo3_reg>;
 };