FLASH 32M {
	SI_ALL 5M {
		SI_DESC 4K
		SI_ME {
			CSE_LAYOUT 8K
			CSE_RO 1640K
			CSE_DATA 420K
			# 64-KiB aligned to optimize RW erases during CSE update.
			CSE_RW 3008K
		}
	}
	SI_BIOS 27M {
		RW_SECTION_A 8M {
			VBLOCK_A 64K
			FW_MAIN_A(CBFS)
			RW_FWID_A 64
		}
		RW_LEGACY(CBFS) 2M
		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 brya 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
		}
		# This section starts at the 16M boundary in SPI flash.
		# ADL does not support a region crossing this boundary,
		# because the SPI flash is memory-mapped into two non-
		# contiguous windows.
		RW_SECTION_B 8M {
			VBLOCK_B 64K
			FW_MAIN_B(CBFS)
			RW_FWID_B 64
		}
		# Make WP_RO region align with SPI vendor
		# memory protected range specification.
		WP_RO 8M {
			RO_VPD(PRESERVE) 16K
#if CONFIG_TPM_GOOGLE_TI50
			RO_GSCVD 8K
#endif
			RO_SECTION {
				FMAP 2K
				RO_FRID 64
				GBB@4K 448K
				COREBOOT(CBFS)
			}
		}
	}
}
