xref: /openbmc/phosphor-bmc-code-mgmt/meson.options (revision ec807fcb376e54e5526a9c47fa702c1642d07f90)
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(
7    'bmc-layout',
8    type: 'combo',
9    choices: ['static', 'ubi', 'mmc'],
10    value: 'static',
11    description: 'The BMC layout type.',
12)
13
14# Features
15option(
16    'host-bios-upgrade',
17    type: 'feature',
18    value: 'enabled',
19    description: 'Enable host bios upgrade support.',
20)
21
22option(
23    'sync-bmc-files',
24    type: 'feature',
25    value: 'enabled',
26    description: 'Enable sync of filesystem files.',
27)
28
29option('tests', type: 'feature', description: 'Build tests')
30
31option(
32    'verify-signature',
33    type: 'feature',
34    value: 'enabled',
35    description: 'Enable image signature validation.',
36)
37
38option(
39    'usb-code-update',
40    type: 'feature',
41    value: 'enabled',
42    description: 'Firmware update via USB.',
43)
44
45option(
46    'software-update-dbus-interface',
47    type: 'feature',
48    value: 'enabled',
49    description: 'Implementation using software update D-Bus interface - https://github.com/openbmc/docs/blob/master/designs/code-update.md.',
50)
51
52option(
53    'side-switch-on-boot',
54    type: 'feature',
55    value: 'enabled',
56    description: 'Automatic flash side switch on boot',
57)
58
59# Variables
60option(
61    'active-bmc-max-allowed',
62    type: 'integer',
63    value: 1,
64    description: 'The maximum allowed active BMC versions.',
65)
66
67option(
68    'hash-file-name',
69    type: 'string',
70    value: 'hashfunc',
71    description: 'The name of the hash file.',
72)
73
74option(
75    'img-upload-dir',
76    type: 'string',
77    value: '/tmp/images',
78    description: 'Directory where downloaded software images are placed.',
79)
80
81option(
82    'manifest-file-name',
83    type: 'string',
84    value: 'MANIFEST',
85    description: 'The name of the MANIFEST file.',
86)
87
88option(
89    'media-dir',
90    type: 'string',
91    value: '/run/media',
92    description: 'The base dir where all read-only partitions are mounted.',
93)
94
95option(
96    'optional-images',
97    type: 'array',
98    value: [],
99    description: 'A list of additional image files in the BMC tarball.',
100)
101
102option(
103    'publickey-file-name',
104    type: 'string',
105    value: 'publickey',
106    description: 'The name of the public key file.',
107)
108
109option(
110    'signature-file-ext',
111    type: 'string',
112    value: '.sig',
113    description: 'The extension of the Signature file.',
114)
115
116option(
117    'signed-image-conf-path',
118    type: 'string',
119    value: '/etc/activationdata/',
120    description: 'Path of public key and hash function files.',
121)
122
123option(
124    'sync-list-dir-path',
125    type: 'string',
126    value: '/etc/',
127    description: 'The path to the sync list file directory.',
128)
129
130option(
131    'sync-list-file-name',
132    type: 'string',
133    value: 'synclist',
134    description: 'The name of the sync list file.',
135)
136
137option(
138    'bmc-msl',
139    type: 'string',
140    value: '',
141    description: 'The BMC minimum ship level.',
142)
143
144option(
145    'regex-bmc-msl',
146    type: 'string',
147    value: '',
148    description: 'The Regular expression to parse the MSL.',
149)
150
151option(
152    'bios-object-path',
153    type: 'string',
154    value: '/xyz/openbmc_project/software/bios_active',
155    description: 'The BIOS DBus object path.',
156)
157
158option(
159    'bmc-static-dual-image',
160    type: 'feature',
161    value: 'enabled',
162    description: 'Enable the dual image support for static layout.',
163)
164
165option(
166    'alt-rofs-dir',
167    type: 'string',
168    value: '/run/media/rofs-alt',
169    description: 'The base dir where all read-only partitions are mounted.',
170)
171
172option(
173    'alt-rwfs-dir',
174    type: 'string',
175    value: '/run/media/rwfs-alt/cow',
176    description: 'The dir for alt-rwfs partition.',
177)
178