diff options
author | Dominik Sliwa <dominik.sliwa@toradex.com> | 2017-02-08 16:53:34 +0100 |
---|---|---|
committer | Marcel Ziswiler <marcel.ziswiler@toradex.com> | 2017-04-04 13:42:14 +0200 |
commit | 45c26755661aa1d27f05ca4695d2f981c97213d1 (patch) | |
tree | a9f2cb86d79103cf6bbec283e8588e75a34faa26 /arch | |
parent | 1fad13a736449ee7f41a405ab586642ab753764f (diff) |
apalis-tk1: fix lp1 sleep
Fix suspend and resume for LP1 sleep.
Signed-off-by: Dominik Sliwa <dominik.sliwa@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Diffstat (limited to 'arch')
5 files changed, 10 insertions, 30 deletions
diff --git a/arch/arm/boot/dts/tegra124-apalis-eval.dts b/arch/arm/boot/dts/tegra124-apalis-eval.dts index c5ecf9301229..9e32f873f949 100644 --- a/arch/arm/boot/dts/tegra124-apalis-eval.dts +++ b/arch/arm/boot/dts/tegra124-apalis-eval.dts @@ -179,22 +179,11 @@ }; }; - pmc { - status = "okay"; - nvidia,invert-interrupt; - nvidia,suspend-mode = <0>; - nvidia,cpu-pwr-good-time = <500>; - nvidia,cpu-pwr-off-time = <300>; - nvidia,core-pwr-good-time = <3845 3845>; - nvidia,core-pwr-off-time = <2000>; - nvidia,core-power-req-active-high; - nvidia,sys-clock-req-active-high; - nvidia,lp0-vec = <0xf46ff000 2064>; - }; - pcie-controller { nvidia,port0_status = <1>; nvidia,port1_status = <1>; + hvdd_pex-supply = <®_3v3>; + avdd_pex_pll-supply = <&as3722_sd4>; status = "okay"; }; diff --git a/arch/arm/boot/dts/tegra124-platforms/tegra124-apalis-fixed.dtsi b/arch/arm/boot/dts/tegra124-platforms/tegra124-apalis-fixed.dtsi index 2b73f2c1ace2..e00f482907b7 100644 --- a/arch/arm/boot/dts/tegra124-platforms/tegra124-apalis-fixed.dtsi +++ b/arch/arm/boot/dts/tegra124-platforms/tegra124-apalis-fixed.dtsi @@ -88,9 +88,11 @@ }; c9 { regulator-consumer-supply = "hvdd_pex"; + regulator-consumer-device = "tegra-pcie"; }; c10 { regulator-consumer-supply = "hvdd_pex_pll"; + regulator-consumer-device = "tegra-pcie"; }; c11 { regulator-consumer-supply = "vdd_sys_cam_3v3"; diff --git a/arch/arm/boot/dts/tegra124-platforms/tegra124-apalis-pmic.dtsi b/arch/arm/boot/dts/tegra124-platforms/tegra124-apalis-pmic.dtsi index 46bd097fc47e..695891d28a80 100644 --- a/arch/arm/boot/dts/tegra124-platforms/tegra124-apalis-pmic.dtsi +++ b/arch/arm/boot/dts/tegra124-platforms/tegra124-apalis-pmic.dtsi @@ -121,15 +121,19 @@ consumers { c1 { regulator-consumer-supply = "avdd_pex_pll"; + regulator-consumer-device = "tegra-pcie"; }; c2 { regulator-consumer-supply = "avddio_pex_pll"; + regulator-consumer-device = "tegra-pcie"; }; c3 { regulator-consumer-supply = "dvddio_pex"; + regulator-consumer-device = "tegra-pcie"; }; c4 { regulator-consumer-supply = "pwrdet_pex_ctl"; + regulator-consumer-device = "tegra-pcie"; }; c5 { regulator-consumer-supply = "avdd_sata"; diff --git a/arch/arm/mach-tegra/board-apalis-tk1-power.c b/arch/arm/mach-tegra/board-apalis-tk1-power.c index d1cf46b2c7ea..8e4bb5be6537 100644 --- a/arch/arm/mach-tegra/board-apalis-tk1-power.c +++ b/arch/arm/mach-tegra/board-apalis-tk1-power.c @@ -64,6 +64,7 @@ static struct tegra_suspend_platform_data apalis_tk1_suspend_data = { .min_residency_ncpu_slow = 5000, .min_residency_mclk_stop = 5000, .min_residency_crail = 20000, + .crail_up_early = true, }; /************************ Apalis TK1 CL-DVFS Data *********************/ diff --git a/arch/arm/mach-tegra/board-apalis-tk1.c b/arch/arm/mach-tegra/board-apalis-tk1.c index ac6b122fbc1a..82e0cfda87b3 100644 --- a/arch/arm/mach-tegra/board-apalis-tk1.c +++ b/arch/arm/mach-tegra/board-apalis-tk1.c @@ -517,22 +517,6 @@ static struct tegra_io_dpd pexclk2_io = { .io_dpd_bit = 6, }; -static struct tegra_suspend_platform_data apalis_tk1_suspend_data = { - .cpu_timer = 500, - .cpu_off_timer = 300, - .suspend_mode = TEGRA_SUSPEND_LP0, - .core_timer = 0x157e, - .core_off_timer = 10, - .corereq_high = true, - .sysclkreq_high = true, - .cpu_lp2_min_residency = 1000, - .min_residency_vmin_fmin = 1000, - .min_residency_ncpu_fast = 8000, - .min_residency_ncpu_slow = 5000, - .min_residency_mclk_stop = 5000, - .min_residency_crail = 20000, -}; - static void __init tegra_apalis_tk1_late_init(void) { apalis_tk1_display_init(); @@ -551,7 +535,7 @@ static void __init tegra_apalis_tk1_late_init(void) apalis_tk1_regulator_init(); apalis_tk1_dtv_init(); - tegra_init_suspend(&apalis_tk1_suspend_data); + apalis_tk1_suspend_init(); apalis_tk1_emc_init(); |