1 // Copyright 2018 The Fuchsia Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #pragma once
6 
7 // Zircon sysconfig partition format
8 //
9 // The sysconfig partition consists of four kvstore sections, each 32K in size.
10 // The sections are:
11 //
12 // version-a:       System configuration used when booting from Zircon-A.
13 //
14 // version-b:       System configuration used when booting from Zircon-B.
15 //
16 // boot-default:    Default bootloader configuration.
17 //
18 // boot-oneshot:    Bootloader configuration for one-time use.
19 //                  If present, this overrides boot-default, and the bootloader
20 //                  deletes this section after use.
21 
22 #define ZX_SYSCONFIG_KVSTORE_SIZE           32768
23 #define ZX_SYSCONFIG_VERSION_A_OFFSET       (0 * ZX_SYSCONFIG_KVSTORE_SIZE)
24 #define ZX_SYSCONFIG_VERSION_B_OFFSET       (1 * ZX_SYSCONFIG_KVSTORE_SIZE)
25 #define ZX_SYSCONFIG_BOOT_DEFAULT_OFFSET    (2 * ZX_SYSCONFIG_KVSTORE_SIZE)
26 #define ZX_SYSCONFIG_BOOT_ONESHOT_OFFSET    (3 * ZX_SYSCONFIG_KVSTORE_SIZE)
27