]> git.proxmox.com Git - mirror_edk2.git/blobdiff - ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressSysConfigLib/ArmVExpressSysConfig.c
ArmPlatformPkg/ArmPlatformSysConfigLib: Add function 'ArmPlatformSysConfigGetValues'
[mirror_edk2.git] / ArmPlatformPkg / ArmVExpressPkg / Library / ArmVExpressSysConfigLib / ArmVExpressSysConfig.c
index 27ef0a7c5fadcd4a704b69b4502b408611f6a1de..9753db916114e4906bc33060bdeb38dbc13fe26b 100644 (file)
@@ -151,6 +151,16 @@ ArmPlatformSysConfigGet (
   return AccessSysCfgRegister (SYS_CFGCTRL_READ, Function, Site, Position, Device, Value);\r
 }\r
 \r
+EFI_STATUS\r
+ArmPlatformSysConfigGetValues (\r
+  IN  SYS_CONFIG_FUNCTION   Function,\r
+  IN  UINTN                 Size,\r
+  OUT UINT32*               Values\r
+  )\r
+{\r
+  return EFI_UNSUPPORTED;\r
+}\r
+\r
 EFI_STATUS\r
 ArmPlatformSysConfigSet (\r
   IN  SYS_CONFIG_FUNCTION   Function,\r
@@ -216,6 +226,14 @@ ArmPlatformSysConfigSetDevice (
 \r
   // Intercept some functions\r
   switch(Function) {\r
+  case SYS_CFG_SCC:\r
+#ifdef ARM_VE_SCC_BASE\r
+    MmioWrite32 ((ARM_VE_SCC_BASE + (Device * 4)),Value);\r
+    return EFI_SUCCESS;\r
+#else\r
+    // There is no System Configuration Controller on the Model\r
+    return EFI_UNSUPPORTED;\r
+#endif\r
 \r
   case SYS_CFG_OSC_SITE1:\r
     Function = SYS_CFG_OSC;\r
@@ -240,7 +258,6 @@ ArmPlatformSysConfigSetDevice (
   case SYS_CFG_AMP:\r
   case SYS_CFG_TEMP:\r
   case SYS_CFG_RESET:\r
-  case SYS_CFG_SCC:\r
   case SYS_CFG_SHUTDOWN:\r
   case SYS_CFG_REBOOT:\r
   case SYS_CFG_DVIMODE:\r