1# Supported BMC layout types. Reference:
2# https://github.com/openbmc/docs/blob/master/architecture/code-update/flash-layout.md#supported-filesystem-choices
3# - static: NOR flash configured with fixed-sized MTD partitions.
4# - ubi: NOR flash device configured with UBI volumes.
5# - mmc: eMMC flash device configured with ext4 filesystems.
6option('bmc-layout', type: 'combo',
7    choices: ['static', 'ubi', 'mmc'],
8    value: 'static',
9    description: 'The BMC layout type.')
10
11# Features
12option('host-bios-upgrade', type: 'feature', value: 'enabled',
13    description: 'Enable host bios upgrade support.')
14
15option('sync-bmc-files', type: 'feature', value: 'enabled',
16    description: 'Enable sync of filesystem files.')
17
18option('tests', type: 'feature', description: 'Build tests')
19
20option('verify-signature', type: 'feature', value: 'enabled',
21    description: 'Enable image signature validation.')
22
23option(
24    'usb-code-update', type: 'feature', value: 'enabled',
25    description: 'Firmware update via USB.',
26)
27
28option('software-update-dbus-interface', type: 'feature', value: 'enabled',
29    description: 'Implementation using software update D-Bus interface - https://github.com/openbmc/docs/blob/master/designs/code-update.md.',
30)
31
32option(
33    'side-switch-on-boot', type: 'feature', value: 'enabled',
34    description: 'Automatic flash side switch on boot',
35)
36
37# Variables
38option(
39    'active-bmc-max-allowed', type: 'integer',
40    value: 1,
41    description: 'The maximum allowed active BMC versions.',
42)
43
44option(
45    'hash-file-name', type: 'string',
46    value: 'hashfunc',
47    description: 'The name of the hash file.',
48)
49
50option(
51    'img-upload-dir', type: 'string',
52    value: '/tmp/images',
53    description: 'Directory where downloaded software images are placed.',
54)
55
56option(
57    'manifest-file-name', type: 'string',
58    value: 'MANIFEST',
59    description: 'The name of the MANIFEST file.',
60)
61
62option(
63    'media-dir', type: 'string',
64    value: '/run/media',
65    description: 'The base dir where all read-only partitions are mounted.',
66)
67
68option(
69    'optional-images', type: 'array',
70    value: [],
71    description: 'A list of additional image files in the BMC tarball.',
72)
73
74option(
75    'publickey-file-name', type: 'string',
76    value: 'publickey',
77    description: 'The name of the public key file.',
78)
79
80option(
81    'signature-file-ext', type: 'string',
82    value: '.sig',
83    description: 'The extension of the Signature file.',
84)
85
86option(
87    'signed-image-conf-path', type: 'string',
88    value: '/etc/activationdata/',
89    description: 'Path of public key and hash function files.',
90)
91
92option(
93    'sync-list-dir-path', type: 'string',
94    value: '/etc/',
95    description: 'The path to the sync list file directory.',
96)
97
98option(
99    'sync-list-file-name', type: 'string',
100    value: 'synclist',
101    description: 'The name of the sync list file.',
102)
103
104option(
105    'bmc-msl', type: 'string',
106    value: '',
107    description: 'The BMC minimum ship level.',
108)
109
110option(
111    'regex-bmc-msl', type: 'string',
112    value: '',
113    description: 'The Regular expression to parse the MSL.',
114)
115
116option(
117    'bios-object-path', type: 'string',
118    value: '/xyz/openbmc_project/software/bios_active',
119    description: 'The BIOS DBus object path.',
120)
121
122option('bmc-static-dual-image', type: 'feature', value: 'enabled',
123    description: 'Enable the dual image support for static layout.')
124
125option(
126    'alt-rofs-dir', type: 'string',
127    value: '/run/media/rofs-alt',
128    description: 'The base dir where all read-only partitions are mounted.',
129)
130
131option(
132    'alt-rwfs-dir', type: 'string',
133    value: '/run/media/rwfs-alt/cow',
134    description: 'The dir for alt-rwfs partition.',
135)
136