summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorDominik Sliwa <dominik.sliwa@toradex.com>2017-02-08 16:53:34 +0100
committerMarcel Ziswiler <marcel.ziswiler@toradex.com>2017-04-04 13:42:14 +0200
commit45c26755661aa1d27f05ca4695d2f981c97213d1 (patch)
treea9f2cb86d79103cf6bbec283e8588e75a34faa26 /arch
parent1fad13a736449ee7f41a405ab586642ab753764f (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')
-rw-r--r--arch/arm/boot/dts/tegra124-apalis-eval.dts15
-rw-r--r--arch/arm/boot/dts/tegra124-platforms/tegra124-apalis-fixed.dtsi2
-rw-r--r--arch/arm/boot/dts/tegra124-platforms/tegra124-apalis-pmic.dtsi4
-rw-r--r--arch/arm/mach-tegra/board-apalis-tk1-power.c1
-rw-r--r--arch/arm/mach-tegra/board-apalis-tk1.c18
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 = <&reg_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();