diff --git a/src/soc/intel/common/block/fast_spi/fast_spi.c b/src/soc/intel/common/block/fast_spi/fast_spi.c
index 1f12467..621dc96 100644
--- a/src/soc/intel/common/block/fast_spi/fast_spi.c
+++ b/src/soc/intel/common/block/fast_spi/fast_spi.c
@@ -545,11 +545,11 @@
 	pci_dev_read_resources(dev);
 
 	/* Add SPI flash MMIO window as a reserved resource. */
-	mmio_resource_kb(dev, 0, FLASH_BASE_ADDR / KiB, FLASH_MMIO_SIZE / KiB);
+	mmio_range(dev, 0, FLASH_BASE_ADDR, FLASH_MMIO_SIZE);
 	/* Add extended SPI flash MMIO window as reserved resource if enabled. */
 	if (CONFIG(FAST_SPI_SUPPORTS_EXT_BIOS_WINDOW)) {
-		mmio_resource_kb(dev, 1, CONFIG_EXT_BIOS_WIN_BASE / KiB,
-				 CONFIG_EXT_BIOS_WIN_SIZE / KiB);
+		mmio_range(dev, 1, CONFIG_EXT_BIOS_WIN_BASE,
+			   CONFIG_EXT_BIOS_WIN_SIZE);
 	}
 }
 
diff --git a/src/soc/intel/common/block/p2sb/ioe_p2sb.c b/src/soc/intel/common/block/p2sb/ioe_p2sb.c
index e806417..41b815b 100644
--- a/src/soc/intel/common/block/p2sb/ioe_p2sb.c
+++ b/src/soc/intel/common/block/p2sb/ioe_p2sb.c
@@ -28,7 +28,7 @@
 
 static void read_resources(struct device *dev)
 {
-	mmio_resource_kb(dev, 0, IOE_P2SB_BAR / KiB, IOE_P2SB_SIZE / KiB);
+	mmio_range(dev, 0, IOE_P2SB_BAR, IOE_P2SB_SIZE);
 }
 
 struct device_operations device_ops = {
diff --git a/src/soc/intel/common/block/p2sb/p2sb.c b/src/soc/intel/common/block/p2sb/p2sb.c
index c6333af..157ac3a 100644
--- a/src/soc/intel/common/block/p2sb/p2sb.c
+++ b/src/soc/intel/common/block/p2sb/p2sb.c
@@ -128,7 +128,7 @@
 	 * The following code makes sure that it doesn't change if the device
 	 * is visible and the resource allocator is being run.
 	 */
-	mmio_resource_kb(dev, PCI_BASE_ADDRESS_0, P2SB_BAR / KiB, P2SB_SIZE / KiB);
+	mmio_range(dev, PCI_BASE_ADDRESS_0, P2SB_BAR, P2SB_SIZE);
 }
 
 const struct device_operations p2sb_ops = {
diff --git a/src/soc/intel/common/block/systemagent/systemagent.c b/src/soc/intel/common/block/systemagent/systemagent.c
index 174d511..f569a0d 100644
--- a/src/soc/intel/common/block/systemagent/systemagent.c
+++ b/src/soc/intel/common/block/systemagent/systemagent.c
@@ -109,7 +109,7 @@
 			sa_fixed_resources[i].description, sa_fixed_resources[i].base,
 			sa_fixed_resources[i].size);
 
-		mmio_resource_kb(dev, index++, base / KiB, size / KiB);
+		mmio_range(dev, index++, base, size);
 	}
 
 	*resource_cnt = index;
@@ -240,7 +240,7 @@
 	 * out of MTRRs. Memory reserved by IMRs is not usable for host
 	 * so mark it reserved.
 	 */
-	reserved_ram_resource_kb(dev, idx, base_k, size_k);
+	reserved_ram_range(dev, idx, base_k * KiB, size_k * KiB);
 }
 
 /*
diff --git a/src/soc/intel/common/block/tracehub/tracehub.c b/src/soc/intel/common/block/tracehub/tracehub.c
index dd065d5..4faa9eb 100644
--- a/src/soc/intel/common/block/tracehub/tracehub.c
+++ b/src/soc/intel/common/block/tracehub/tracehub.c
@@ -30,8 +30,8 @@
 	}
 	printk(BIOS_DEBUG, "Trace Hub HOB found: addr=0x%08llx length=0x%08llx\n",
 			tracehub_info_hob->addr, tracehub_info_hob->length);
-	reserved_ram_resource_kb(dev, 0, tracehub_info_hob->addr / KiB,
-			tracehub_info_hob->length / KiB);
+	reserved_ram_range(dev, 0, tracehub_info_hob->addr,
+			   tracehub_info_hob->length);
 }
 
 static struct device_operations dev_ops = {
