summaryrefslogtreecommitdiff
path: root/meta-phosphor/conf/distro/include/phosphor-defaults.inc
blob: 8673a15c19fd38daef7967bffdb88a9a7bf81dee (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
OBMC_BMC_INSTANCES ?= "0"
OBMC_CHASSIS_INSTANCES ?= "0"
OBMC_CHECKSTOP_INSTANCES ?= "0"
OBMC_FAN_INSTANCES ?= ""
OBMC_HOST_INSTANCES ?= "0"
OBMC_POWER_BUTTON_INSTANCES ?= "0"
OBMC_POWER_INSTANCES ?= "0"
OBMC_RESET_BUTTON_INSTANCES ?= "0"
OBMC_WATCHDOG_INSTANCES ?= "0"

# obmc-bmc-state-manager
#
# Provides an implementation of the xyz.openbmc_project.State.BMC
# interface.
VIRTUAL-RUNTIME_obmc-bmc-state-manager ?= "phosphor-state-manager-bmc"

# obmc-chassis-state-manager
#
# Provides an implementation of the xyz.openbmc_project.State.Chassis
# interface.
VIRTUAL-RUNTIME_obmc-chassis-state-manager ?= "phosphor-state-manager-chassis"

# obmc-host-state-manager
#
# Provides an implementation of the xyz.openbmc_project.State.Host
# interface.
VIRTUAL-RUNTIME_obmc-host-state-manager ?= "phosphor-state-manager-host"

# obmc-discover-system-state
#
# Provides an implementation of phosphor-discover-system-state, which, if the
# host is powered off, will check the current power policy and, if necessary,
# power the host back on.
VIRTUAL-RUNTIME_obmc-discover-system-state ?= "phosphor-state-manager-discover"

# obmc-fan-presence
#
# Provides implementations of fan presence detection
VIRTUAL-RUNTIME_obmc-fan-presence ?= "phosphor-fan-presence-tach"

# obmc-fan-control
#
# Provides implementations of fan control
VIRTUAL-RUNTIME_obmc-fan-control ?= "phosphor-fan-control"

# obmc-inventory-manager
#
# Provides an implementation of the xyz.openbmc_project.Inventory.Manager
# interface.
VIRTUAL-RUNTIME_obmc-inventory-manager ?= "phosphor-inventory-manager"

# obmc-led-manager
#
# Provides an implementation of the xyz.openbmc_project.ledmanager interface.
VIRTUAL-RUNTIME_obmc-leds-manager ?= "phosphor-led-manager"

# obmc-led-monitor
#
# Provides an implementation of the FRU fault monitor.
VIRTUAL-RUNTIME_obmc-led-monitor ?= "phosphor-led-manager-faultmonitor"

# obmc-led-sysfs
#
# Provides an implementation of xyz.openbmc_project.Led.Physical for
# Linux kernel LED subsystem LEDs.
VIRTUAL-RUNTIME_obmc-leds-sysfs ?= "phosphor-led-sysfs"

# obmc-bmc-download-mgr
#
# Provides an implementation of the xyz.openbmc_project.Common.TFTP
# interface.
VIRTUAL-RUNTIME_obmc-bmc-download-mgr ?= "phosphor-software-manager-download-mgr"

# obmc-bmc-version
#
# Provides an implementation of the xyz.openbmc_project.Software.Version
# interface.
VIRTUAL-RUNTIME_obmc-bmc-version ?= "phosphor-software-manager-version"

# obmc-bmc-updater
#
# Provides an implementation of the xyz.openbmc_project.Software.Activation
# interface.
VIRTUAL-RUNTIME_obmc-bmc-updater ?= "phosphor-software-manager-updater"

# obmc-sensors-hwmon
#
# Provides an implementation of xyz.openbmc_project.Sensor.Value
# for hwmon sensors.
VIRTUAL-RUNTIME_obmc-sensors-hwmon ?= "phosphor-hwmon"

# obmc-dump-manager
# Provide support for managing dump
VIRTUAL-RUNTIME_obmc-dump-manager ?= "phosphor-debug-collector-manager"

# obmc-dump-monitor
# Provide support for monitoring BMC core dumps
VIRTUAL-RUNTIME_obmc-dump-monitor ?= "phosphor-debug-collector-monitor"

PREFERRED_PROVIDER_virtual/obmc-system-mgmt ??= "obmc-phosphor-sysd"

# phosphor-hwmon-config
#
# The phosphor-hwmon package can have its configuration generated
# automatically if the MRW feature is enabled.
VIRTUAL-RUNTIME_phosphor-hwmon-config ?= ""

# obmc-network-manager
#
# Provide support for managing network
VIRTUAL-RUNTIME_obmc-network-manager ?= "phosphor-network"

# Configuration overrides for phosphor-ipmi-fru.
#
# The phosphor-ipmi-fru application is data-driven and requires an input
# mapping of how the host firmware reports inventory via IPMI and the mapping
# of that inventory metadata to DBus objects interfaces and properties.

# The phosphor-ipmi-fru application is data-driven and requires an input
# mapping of how the host firmware reports inventory via IPMI.
# This virtual is a native recipe that provides that mapping by installing
# configuration files in the format and native sysroot location expected by
# the phosphor-ipmi-fru build process.
PREFERRED_PROVIDER_virtual/phosphor-ipmi-fru-hostfw-config ?= "phosphor-ipmi-fru-hostfw-config-example-native"

# The phosphor-ipmi-fru application is data-driven and requires an input
# mapping of IPMI inventory metadata to DBus objects interfaces and properties.
# This virtual is a native recipe that provides that mapping by installing
# configuration files in the format and native sysroot location expected by
# the phosphor-ipmi-fru build process in the native sysroot.
PREFERRED_PROVIDER_virtual/phosphor-ipmi-fru-inventory ?= \
    "phosphor-ipmi-fru-inventory-example-native"

PREFERRED_PROVIDER_virtual/phosphor-ipmi-fru-properties ?= \
    "phosphor-ipmi-fru-properties-native"

PREFERRED_PROVIDER_virtual/phosphor-ipmi-fru-read-inventory ?= \
    "phosphor-ipmi-fru-read-inventory-example-native"

# Configuration overrides for phosphor-host-ipmid.
#
# The phosphor-host-ipmid application is data-driven.

# The phosphor-host-ipmid application is data-driven and requires an input
# mapping of IPMI inventory sensor metadata to DBus objects interfaces and properties.
# This virtual is a native recipe that provides that mapping by installing
# configuration files in the format and native sysroot location expected by
# the phosphor-host-ipmid build process in the native sysroot.
PREFERRED_PROVIDER_virtual/phosphor-ipmi-sensor-inventory ?= \
    "phosphor-ipmi-sensor-inventory-native"

# The phosphor-host-ipmid application is data-driven and requires an input
# mapping of inventory object path to the sensor number and sensor metadata.
# This virtual is a native recipe that provides that mapping by installing
# configuration files in the format and native sysroot location expected by
# the phosphor-host-ipmid build process in the native sysroot.
PREFERRED_PROVIDER_virtual/phosphor-ipmi-inventory-sel ?= \
    "phosphor-ipmi-inventory-sel-native"

# Various other overrides.

# The phosphor-led-manager application is data-driven and requires an input
# yaml of LED group and members.
# This virtual is a native recipe that provides that mapping by installing
# configuration files in the format and native sysroot location expected by
# the phosphor-led-manager build process in the native sysroot.
PREFERRED_PROVIDER_virtual/phosphor-led-manager-config-native ?= \
    "phosphor-led-manager-config-example-native"

# The phosphor-logging application has a data driven plugin that adds FRU
# callout information to error logs, when applications generating error logs
# add the requisite callout metadata to the systemd journal.  The plugin requires
# an input mapping of Linux sysfs devices to OpenBMC DBus objects.
# This virtual is a native recipe that provides that mapping by installing
# configuration files in the format and native sysroot location expected by
# the phosphor-logging build process in the native sysroot.
PREFERRED_PROVIDER_virtual/phosphor-logging-callouts ?= \
    "phosphor-logging-callouts-example-native"

# The phosphor-fan-presence application is data driven and requires an input
# YAML that maps fans to their tach sensors.  This virtual is a recipe that
# provides that mapping by installing configuration files in the format and
# sysroot location expected by the phosphor-fan-presence build process in the
# sysroot.
PREFERRED_PROVIDER_virtual/phosphor-fan-presence-config ?= \
    "phosphor-fan-presence-config"

# The phosphor-fan-control application is data driven and requires a YAML file
# to define the fans in the system.  This virtual is a recipe that provides
# that definition by installing the YAML file in the format and sysroot
# location expected by the phosphor-fan-control build process in the sysroot.
PREFERRED_PROVIDER_virtual/phosphor-fan-control-fan-config ?= \
    "phosphor-fan-control-fan-config"

# The phosphor-gpio-monitor application is data-driven and requires an input.
# The application then watches the passed in input event entry for the
# change in polarity for the value matching user input. Once the required
# condition is met, it calls into a systemd target file if one is mentioned
# in input.
PREFERRED_PROVIDER_virtual/obmc-gpio-monitor ?= "phosphor-gpio-monitor"

# The phosphor-watchdog application is data-driven and requires an input.
# The application then starts a timer in disabled state. User of this timer
# needs to first enable and then use it. This also provides a way for changing
# the timeout if needed.
PREFERRED_PROVIDER_virtual/obmc-watchdog ?= "phosphor-watchdog"

# obmc-user-mgmt
#
# Provides an implementation of xyz.openbmc_project.User.Manager catering
# to user management
VIRTUAL-RUNTIME_obmc-user-mgmt ?= "phosphor-user-manager"

OBMC_DBUS_PATH_ROOT ?= "/xyz/openbmc_project"
OBMC_DBUS_IFACE_ROOT ?= "xyz.openbmc_project"

# VIRTUAL-RUNTIME_phosphor-ipmi-providers are the set of shared library
# plugins for the host-ipmid application.  By default the IPMI FRU plugin
# is enabled.  Additionally the host-ipmid recipe uses
# VIRTUAL-RUNTIME_phosphor-ipmi-providers to compute a list of potential
# IPMI whitelist recipe dependencies.  For example:
#
# VIRTUAL-RUNTIME_phosphor-ipmi-providers ?= "phosphor-ipmi-fru"
#
# Will add a build dependency to host-ipmid on the
# phosphor-ipmi-fru-whitelist-native recipe.
VIRTUAL-RUNTIME_phosphor-ipmi-providers ?= "phosphor-ipmi-fru"

# Set security headers on builds
require conf/distro/include/security_flags.inc

# Disable security on croserver.
# Remove if https://github.com/open-power/eCMD/pull/433 is ever merged
SECURITY_STRINGFORMAT:pn-croserver = ""
# obmc-libobmc-intf doesn't compile with security flags enabled
SECURITY_CFLAGS:pn-obmc-libobmc-intf = ""

# remove when https://gerrit.openbmc-project.xyz/c/openbmc/pldm/+/39984
# is merged and rev bumped
SECURITY_CFLAGS:pn-pldm = ""

# We generally want to enable LTO with meson
EXTRA_OEMESON:append:class-target = " -Db_lto=true"

# Set the root password to '0penBmc'
# Override this in your local.conf
inherit extrausers

# This is the default password for the OpenBMC root user account (0penBmc)
# salted and hashed with SHA512 suitable for /etc/shadow or `usermod -p`.
DEFAULT_OPENBMC_PASSWORD = "'\$6\$UGMqyqdG\$GqTb3tXPFx9AJlzTw/8X5RoW2Z.100dT.acuk8AFJfNQYr.ZRL8itMIgLqsdq46RNHgiv78XayOSl.IbR4DFU.'"

EXTRA_USERS_PARAMS:pn-obmc-phosphor-image = " \
  usermod -p ${DEFAULT_OPENBMC_PASSWORD} root; \
  "