diff --git a/configuration/mconfig_managers.py b/configuration/mconfig_managers.py
index bd39c4c..3b76418 100644
--- a/configuration/mconfig_managers.py
+++ b/configuration/mconfig_managers.py
@@ -157,7 +157,7 @@
                 mconfig_str = cfg_file.read()
             return self.deserialize_mconfig(mconfig_str)
         except (OSError, json.JSONDecodeError, json_format.ParseError) as e:
-            raise LoadConfigError('Error loading mconfig') from e
+            raise LoadConfigError('Error loading mconfig, mconfig may have format issue') from e
 
     def load_service_mconfig(
         self, service_name: str,
diff --git a/configuration/service_configs.py b/configuration/service_configs.py
index c60c340..f2d0f24 100644
--- a/configuration/service_configs.py
+++ b/configuration/service_configs.py
@@ -22,7 +22,8 @@
 # Location of configs (both service config and mconfig)
 CONFIG_DIR = './magma_configs'
 CONFIG_OVERRIDE_DIR = './override_configs'
-
+ENB_COMMON_FILE = './magma_configs/acs_common.yml'
+ENB_CONFIG_DIR = './magma_configs/serial_number'
 
 def load_override_config(service_name: str) -> Optional[Any]:
     """
@@ -73,7 +74,6 @@
         LoadConfigError:
             Unable to load config due to missing file or missing key
     """
-    print(CONFIG_DIR, service_name)
     cfg_file_name = os.path.join(CONFIG_DIR, '%s.yml' % service_name)
     cfg = _load_yaml_file(cfg_file_name)
 
@@ -83,6 +83,36 @@
         cfg.update(overrides)
     return cfg
 
+def load_enb_config() -> Any:
+    """
+    Load enb configurations from directory.
+
+    Args:
+        None
+
+    Returns: json-decoded value of the service config
+    """
+
+    ret = dict()
+    for fname in os.listdir(ENB_CONFIG_DIR):
+        sn = fname.replace(".yml", "")
+        cfg_file_name = os.path.join(ENB_CONFIG_DIR, fname)
+        ret[sn] = _load_yaml_file(cfg_file_name)
+
+    return ret
+
+def load_common_config() -> Any:
+    """
+    Load enb common configuration.
+
+    Args:
+        None
+
+    Returns: json-decoded value of the service config
+    """
+
+    return _load_yaml_file(ENB_COMMON_FILE)
+
 
 cached_service_configs = {}     # type: Dict[str, Any]
 
