Add gles Hibernation code for porter board. 53/9453/3
authorYuichi Kusakabe <yuichi.kusakabe@jp.fujitsu.com>
Sun, 21 May 2017 15:18:20 +0000 (00:18 +0900)
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>
Thu, 25 May 2017 13:47:05 +0000 (13:47 +0000)
This patch set is a support to Hibernation for a porter board.
I've commit with Hibernation Off patch, because it depends strongly on user land.
If you can use Hibernation, Please add local.conf agl-porter-hibernate.
OVERRIDES .= ":agl-porter-hibernate"
DISTRO_FEATURES_append = " agl-porter-hibernate"

Change-Id: I6cde0492c28ec9ed67c377d22a29bda9c1b4746e
Signed-off-by: Yuichi Kusakabe <yuichi.kusakabe@jp.fujitsu.com>
Reviewed-on: https://gerrit.automotivelinux.org/gerrit/9453
Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>
ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>
Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
meta-agl-bsp/meta-renesas/recipes-kernel/gles-module/gles-kernel-module.bbappend [new file with mode: 0755]
meta-agl-bsp/meta-renesas/recipes-kernel/gles-module/gles-kernel-module/hibernation/0001-Add-gles-hibernation-code-for-M2W-only.patch [new file with mode: 0644]

diff --git a/meta-agl-bsp/meta-renesas/recipes-kernel/gles-module/gles-kernel-module.bbappend b/meta-agl-bsp/meta-renesas/recipes-kernel/gles-module/gles-kernel-module.bbappend
new file mode 100755 (executable)
index 0000000..589ed87
--- /dev/null
@@ -0,0 +1,7 @@
+FILESEXTRAPATHS_prepend := '${THISDIR}/${PN}:'
+SRC_URI_r8a7791_append_agl-porter-hibernate = ' file://hibernation/0001-Add-gles-hibernation-code-for-M2W-only.patch \
+                                              '
+python __anonymous () {
+       d.delVarFlag('do_patch', 'noexec')
+}
+
diff --git a/meta-agl-bsp/meta-renesas/recipes-kernel/gles-module/gles-kernel-module/hibernation/0001-Add-gles-hibernation-code-for-M2W-only.patch b/meta-agl-bsp/meta-renesas/recipes-kernel/gles-module/gles-kernel-module/hibernation/0001-Add-gles-hibernation-code-for-M2W-only.patch
new file mode 100644 (file)
index 0000000..a3dd608
--- /dev/null
@@ -0,0 +1,38 @@
+From 600612d670639fc74135a4f15a79d411931b39a8 Mon Sep 17 00:00:00 2001
+From: Yuichi Kusakabe <yuichi.kusakabe@jp.fujitsu.com>
+Date: Sun, 21 May 2017 12:14:03 +0900
+Subject: [PATCH] Add gles hibernation code for M2W only
+
+Signed-off-by: Yuichi Kusakabe <yuichi.kusakabe@jp.fujitsu.com>
+---
+ services4/srvkm/env/linux/module.c | 13 +++++++++++--
+ 1 file changed, 11 insertions(+), 2 deletions(-)
+
+diff --git a/services4/srvkm/env/linux/module.c b/services4/srvkm/env/linux/module.c
+index f3f22b0..85ac24f 100644
+--- a/services4/srvkm/env/linux/module.c
++++ b/services4/srvkm/env/linux/module.c
+@@ -284,9 +284,18 @@ static struct platform_device_id powervr_id_table[] __devinitdata = {
+ };
+ #endif
++int pvrsrv_restore_noirq(struct device *dev)
++{
++#if defined(CONFIG_ARM_LPAE) && defined(SUPPORT_RCAR_IPMMU)
++      extern int r8a779x_ipmmu_initialize(void);
++      r8a779x_ipmmu_initialize();
++#endif
++      return 0;
++}
++
+ static struct dev_pm_ops powervr_dev_pm_ops = {
+-      .suspend        = PVRSRVDriverSuspend,
+-      .resume         = PVRSRVDriverResume,
++      SET_SYSTEM_SLEEP_PM_OPS(PVRSRVDriverSuspend, PVRSRVDriverResume)
++      .restore_noirq = pvrsrv_restore_noirq,
+ };
+ static LDM_DRV powervr_driver = {
+-- 
+1.8.3.1
+