FLASH 32M {
	SI_ALL 9M {
		SI_DESC 16K
		SI_EC 512K
		SI_ME
	}
	SI_BIOS 23M {
		RW_SECTION_A 7M {
			VBLOCK_A 8K
			FW_MAIN_A(CBFS)
			RW_FWID_A 64
		}
		# This section starts at the 16M boundary in SPI flash.
		# MTL does not support a region crossing this boundary,
		# because the SPI flash is memory-mapped into two non-
		# contiguous windows.
		RW_SECTION_B 7M {
			VBLOCK_B 8K
			FW_MAIN_B(CBFS)
			RW_FWID_B 64
		}
		RW_MISC 1M {
			UNIFIED_MRC_CACHE(PRESERVE) 128K {
				RECOVERY_MRC_CACHE 64K
				RW_MRC_CACHE 64K
			}
			RW_ELOG(PRESERVE) 16K
			RW_SHARED 16K {
				SHARED_DATA 8K
				VBLOCK_DEV 8K
			}
			# The RW_SPD_CACHE region is only used for rex variants that use DDRx memory.
			# It is placed in the common `chromeos.fmd` file because it is only 4K and there
			# is free space in the RW_MISC region that cannot be easily reclaimed because
			# the RW_SECTION_B must start on the 16M boundary.
			RW_SPD_CACHE(PRESERVE) 4K
			RW_VPD(PRESERVE) 8K
			RW_NVRAM(PRESERVE) 24K
		}
		RW_LEGACY(CBFS) 1M
		RW_UNUSED 3M
		# Make WP_RO region align with SPI vendor
		# memory protected range specification.
		WP_RO 4M {
			RO_VPD(PRESERVE) 16K
			RO_SECTION {
				FMAP 2K
				RO_FRID 64
				GBB@4K 12K
				COREBOOT(CBFS)
			}
		}
	}
}
