clk: msm: clock: Keep the graphics clock peripheral memory always on

Due to an issue with the RBBM perf counter being corrupted after
NAP state, force turn on the gfx3d_clk peripheral memory at probe
and leave it enabled.

CRs-Fixed: 933216
Change-Id: I707b44c56e5e6d3ec9056dded9fe488163be276c
Signed-off-by: Deepak Katragadda <dkatraga@codeaurora.org>
This commit is contained in:
Deepak Katragadda 2016-01-27 17:01:20 -08:00 committed by David Keitel
parent 20c5a70a25
commit fd2f6e135a
2 changed files with 8 additions and 1 deletions

View file

@ -1,5 +1,5 @@
/*
* Copyright (c) 2015, The Linux Foundation. All rights reserved.
* Copyright (c) 2015-2016, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
@ -142,6 +142,7 @@
<0x5065130 0x4>,
<0x5066090 0x4>;
reg-names = "base", "domain_addr", "sw_reset";
qcom,retain-periph;
status = "disabled";
};
};

View file

@ -510,6 +510,12 @@ int msm_gpucc_cobalt_probe(struct platform_device *pdev)
udelay(1);
clk_disable_unprepare(&gpucc_gfx3d_clk.c);
/*
* Force periph logic to be ON since after NAP, the value of the perf
* counter might be corrupted frequently.
*/
clk_set_flags(&gpucc_gfx3d_clk.c, CLKFLAG_RETAIN_PERIPH);
dev_info(&pdev->dev, "Registered GPU clocks\n");
return 0;
}