Browse Source

Merge "msm: eva: access sideband manager regs in PC"

qctecmdr 3 years ago
parent
commit
5740f67760
2 changed files with 20 additions and 4 deletions
  1. 17 4
      msm/eva/cvp_hfi.c
  2. 3 0
      msm/eva/cvp_hfi_io.h

+ 17 - 4
msm/eva/cvp_hfi.c

@@ -3762,19 +3762,32 @@ static void power_off_iris2(struct iris_hfi_device *device)
 		lpi_status, reg_status, count);
 	if (count == max_count) {
 		u32 pc_ready, wfi_status, sbm_ln0_low;
-		/*u32 main_sbm_ln0_low, main_sbm_ln1_high;  */
+		u32 main_sbm_ln0_low, main_sbm_ln1_high;
+		u32 cpu_cs_x2rpmh;
 
 		wfi_status = __read_register(device, CVP_WRAPPER_CPU_STATUS);
 		pc_ready = __read_register(device, CVP_CTRL_STATUS);
 		sbm_ln0_low =
 			__read_register(device, CVP_NOC_SBM_SENSELN0_LOW);
-		/*temp commented till dependency ready*/
-		/*
+
+		cpu_cs_x2rpmh = __read_register(device,
+			CVP_CPU_CS_X2RPMh);
+
+		__write_register(device, CVP_CPU_CS_X2RPMh,
+			(cpu_cs_x2rpmh | CVP_CPU_CS_X2RPMh_SWOVERRIDE_BMSK));
+		cpu_cs_x2rpmh = __read_register(device,
+			CVP_CPU_CS_X2RPMh);
+		dprintk(CVP_PWR, "cpu_cs_x2rpmh (%#x)\n",
+			cpu_cs_x2rpmh);
+
 		main_sbm_ln0_low = __read_register(device,
 				CVP_NOC_MAIN_SIDEBANDMANAGER_SENSELN0_LOW);
 		main_sbm_ln1_high = __read_register(device,
 				CVP_NOC_MAIN_SIDEBANDMANAGER_SENSELN1_HIGH);
-		*/
+
+		__write_register(device, CVP_CPU_CS_X2RPMh,
+			(cpu_cs_x2rpmh & (~CVP_CPU_CS_X2RPMh_SWOVERRIDE_BMSK)));
+
 		dprintk(CVP_WARN,
 			"NOC not in qaccept status %x %x %x %x %x\n",
 			reg_status, lpi_status, wfi_status, pc_ready,

+ 3 - 0
msm/eva/cvp_hfi_io.h

@@ -220,4 +220,7 @@
 #define CVP_CC_MVS1C_GDSCR			(CVP_CC_BASE_OFFS + 0x74)
 #define CVP_CC_MVS1C_CBCR			(CVP_CC_BASE_OFFS + 0x8C)
 #define CVP_CC_MVS1_GDSCR			(CVP_CC_BASE_OFFS + 0xC0)
+#define CVP_CC_MVS1_CBCR			(CVP_CC_BASE_OFFS + 0xD4)
+
+#define CVP_GCC_VIDEO_AXI1_CBCR		(0x32020)
 #endif