diff --git a/src/osmo_gsm_tester/core/schema.py b/src/osmo_gsm_tester/core/schema.py
index d56d6ec..89c4494 100644
--- a/src/osmo_gsm_tester/core/schema.py
+++ b/src/osmo_gsm_tester/core/schema.py
@@ -375,12 +375,10 @@
         util.run_python_file_method(module_name, 'on_register_schemas', False)
 
 
-_RESOURCE_TYPES = ['ip_address', 'arfcn']
+_RESOURCE_TYPES = ['ip_address',]
 
 _RESOURCES_SCHEMA = {
         'ip_address[].addr': IPV4,
-        'arfcn[].arfcn': INT,
-        'arfcn[].band': BAND,
     }
 
 _CONFIG_SCHEMA = {}
diff --git a/src/osmo_gsm_tester/obj/bts_nanobts.py b/src/osmo_gsm_tester/obj/bts_nanobts.py
index 03730a6..25efc7f 100644
--- a/src/osmo_gsm_tester/obj/bts_nanobts.py
+++ b/src/osmo_gsm_tester/obj/bts_nanobts.py
@@ -65,16 +65,6 @@
 
     def conf_for_bsc(self):
         values = self.conf_for_bsc_prepare()
-        # Hack until we have proper ARFCN resource allocation support (OS#2230)
-        band = values.get('band')
-        trx_list = values.get('trx_list')
-        if band == 'GSM-1900':
-            for trx_i in range(len(trx_list)):
-                config.overlay(trx_list[trx_i], { 'arfcn' : str(531 + trx_i * 2) })
-        elif band == 'GSM-900':
-            for trx_i in range(len(trx_list)):
-                config.overlay(trx_list[trx_i], { 'arfcn' : str(50 + trx_i * 2) })
-
         config.overlay(values, { 'osmobsc_bts_type': 'nanobts' })
 
         self.dbg(conf=values)
diff --git a/src/osmo_gsm_tester/obj/bts_oc2g.py b/src/osmo_gsm_tester/obj/bts_oc2g.py
index 2d55637..7761ce3 100644
--- a/src/osmo_gsm_tester/obj/bts_oc2g.py
+++ b/src/osmo_gsm_tester/obj/bts_oc2g.py
@@ -78,12 +78,6 @@
 
     def conf_for_bsc(self):
         values = self.conf_for_bsc_prepare()
-        # Hack until we have proper ARFCN resource allocation support (OS#2230)
-        band = values.get('band')
-        trx_list = values.get('trx_list')
-        if band == 'GSM-900':
-            for trx_i in range(len(trx_list)):
-                config.overlay(trx_list[trx_i], { 'arfcn' : str(50 + trx_i * 2) })
         self.dbg(conf=values)
         return values
 
