xref: /openbmc/phosphor-ipmi-flash/meson.options (revision 32e9ea165419725691d5e54be60073bc2cc4f7e0)
1option('tests', type: 'feature', description: 'Build tests')
2
3# Build Options
4option(
5    'bmc-blob-handler',
6    type: 'feature',
7    description: 'Build the BMC BLOB handler',
8)
9option(
10    'cleanup-delete',
11    type: 'feature',
12    description: 'Enable use of the delete files cleanup mechanism',
13)
14option('host-tool', type: 'feature', description: 'Build the host tool')
15
16# BMC Blob Handler Options
17option(
18    'host-bios',
19    type: 'boolean',
20    value: false,
21    description: 'Install default BIOS update configs',
22)
23option(
24    'reboot-update',
25    type: 'boolean',
26    value: false,
27    description: 'Enable use of reboot update mechanism',
28)
29option(
30    'update-status',
31    type: 'boolean',
32    value: false,
33    description: 'Enable use of update status file',
34)
35
36option(
37    'update-type',
38    type: 'combo',
39    choices: ['none', 'static-layout', 'tarball-ubi'],
40    description: 'Enable firmware update via Blobs',
41)
42
43option(
44    'lpc-type',
45    type: 'combo',
46    choices: ['none', 'aspeed-lpc', 'nuvoton-lpc'],
47    description: 'Enable external transfers using Aspeed/Nuvoton LPC',
48)
49option(
50    'p2a-type',
51    type: 'combo',
52    choices: ['none', 'aspeed-p2a', 'nuvoton-p2a-vga', 'nuvoton-p2a-mbox'],
53    description: 'Enable external transfers using Aspeed PCI-to-AHB, Nuvoton PCI-to-AHB via VGA, or Nuvoton PCI-to-AHB via MBOX',
54)
55option(
56    'net-bridge',
57    type: 'boolean',
58    value: false,
59    description: 'Enable external transfers using a TCP connection',
60)
61
62# Host Tool Options
63option(
64    'ppc',
65    type: 'boolean',
66    value: false,
67    description: 'Enable ppc host memory access',
68)
69# Default value 1872 is 0x0750 below
70option(
71    'nuvoton-pci-did',
72    type: 'integer',
73    value: 1872,
74    description: 'The device-id for Nuvoton PCI bridge',
75)
76
77# Configuration Details
78
79# The address used for mapping P2A or LPC into the BMC's memory-space:
80# e.g. https://github.com/openbmc/linux/blob/1da2ce51886a3b2f5db2087f26c661e13ee13b84/arch/arm/boot/dts/aspeed-bmc-quanta-q71l.dts#L26
81# or https://github.com/openbmc/linux/blob/1da2ce51886a3b2f5db2087f26c661e13ee13b84/arch/arm/boot/dts/aspeed-bmc-opp-zaius.dts#L166
82# for PCI, this address is passed back to the host and is used directly.
83option(
84    'mapped-address',
85    type: 'string',
86    value: '0',
87    description: 'Value for memory region mapping',
88)
89
90option(
91    'static-handler-staged-name',
92    type: 'string',
93    value: '/run/initramfs/bmc-image',
94    description: 'The file to use for staging the firmware update',
95)
96option(
97    'tarball-staged-name',
98    type: 'string',
99    value: '/tmp/image-update.tar',
100    description: 'The file to use for staging the firmware update',
101)
102option(
103    'hash-filename',
104    type: 'string',
105    value: '/tmp/bmc.sig',
106    description: 'The file to use for the hash provided',
107)
108option(
109    'verify-status-filename',
110    type: 'string',
111    value: '/tmp/bmc.verify',
112    description: 'The file checked for the verification status.',
113)
114option(
115    'update-status-filename',
116    type: 'string',
117    value: '/tmp/bmc.update',
118    description: 'The file checked for the update status',
119)
120option(
121    'bios-verify-status-filename',
122    type: 'string',
123    value: '/tmp/bios.verify',
124    description: 'The file checked for the verification status',
125)
126
127option(
128    'preparation-dbus-service',
129    type: 'string',
130    value: 'phosphor-ipmi-flash-bmc-prepare.target',
131    description: 'The systemd target started when the host starts to send an update',
132)
133option(
134    'verify-dbus-service',
135    type: 'string',
136    value: 'phosphor-ipmi-flash-bmc-verify.target',
137    description: 'The systemd target started for verification',
138)
139option(
140    'update-dbus-service',
141    type: 'string',
142    value: 'phosphor-ipmi-flash-bmc-update.target',
143    description: 'The systemd target started for updating the BMC',
144)
145option(
146    'bios-staged-name',
147    type: 'string',
148    value: 'bios-staged-name',
149    description: 'The file to use for staging the bios firmware update',
150)
151option(
152    'preparation-bios-target',
153    type: 'string',
154    value: 'phosphor-ipmi-flash-bios-prepare.target',
155    description: 'The systemd target started when the host starts to send an update',
156)
157option(
158    'verify-bios-target',
159    type: 'string',
160    value: 'phosphor-ipmi-flash-bios-verify.target',
161    description: 'The systemd target started for verifying the BIOS image',
162)
163option(
164    'update-bios-target',
165    type: 'string',
166    value: 'phosphor-ipmi-flash-bios-update.target',
167    description: 'The systemd target started for updating the BIOS',
168)
169