1OBMC_BMC_INSTANCES ??= "0"
2OBMC_CHASSIS_INSTANCES ??= "0"
3OBMC_HOST_INSTANCES ??= "0"
4
5# obmc-bmc-state-manager
6#
7# Provides an implementation of the xyz.openbmc_project.State.BMC
8# interface.
9VIRTUAL-RUNTIME_obmc-bmc-state-manager ?= "phosphor-state-manager-bmc"
10
11# obmc-chassis-state-manager
12#
13# Provides an implementation of the xyz.openbmc_project.State.Chassis
14# interface.
15VIRTUAL-RUNTIME_obmc-chassis-state-manager ?= "phosphor-state-manager-chassis"
16
17# obmc-host-state-manager
18#
19# Provides an implementation of the xyz.openbmc_project.State.Host
20# interface.
21VIRTUAL-RUNTIME_obmc-host-state-manager ?= "phosphor-state-manager-host"
22
23# obmc-discover-system-state
24#
25# Provides an implementation of phosphor-discover-system-state, which, if the
26# host is powered off, will check the current power policy and, if necessary,
27# power the host back on.
28VIRTUAL-RUNTIME_obmc-discover-system-state ?= "phosphor-state-manager-discover"
29
30# obmc-fan-presence
31#
32# Provides implementations of fan presence detection
33VIRTUAL-RUNTIME_obmc-fan-presence ?= "phosphor-fan-presence-tach"
34
35# obmc-fan-control
36#
37# Provides implementations of fan control
38VIRTUAL-RUNTIME_obmc-fan-control ?= "phosphor-fan-control"
39
40# obmc-inventory-manager
41#
42# Provides an implementation of the xyz.openbmc_project.Inventory.Manager
43# interface.
44VIRTUAL-RUNTIME_obmc-inventory-manager ?= "phosphor-inventory-manager"
45
46# obmc-sensors-hwmon
47#
48# Provides an implementation of xyz.openbmc_project.Sensor.Value
49# for hwmon sensors.
50VIRTUAL-RUNTIME_obmc-sensors-hwmon ?= "phosphor-hwmon"
51
52# phosphor-hwmon-config
53#
54# The phosphor-hwmon package can have its configuration generated
55# automatically if the MRW feature is enabled.
56VIRTUAL-RUNTIME_phosphor-hwmon-config ?= ""
57
58# Configuration overrides for phosphor-ipmi-fru.
59#
60# The phosphor-ipmi-fru application is data-driven and requires an input
61# mapping of how the host firmware reports inventory via IPMI and the mapping
62# of that inventory metadata to DBus objects interfaces and properties.
63
64# The phosphor-ipmi-fru application is data-driven and requires an input
65# mapping of how the host firmware reports inventory via IPMI.
66# This virtual is a native recipe that provides that mapping by installing
67# configuration files in the format and native sysroot location expected by
68# the phosphor-ipmi-fru build process.
69PREFERRED_PROVIDER_virtual/phosphor-ipmi-fru-hostfw-config ?= "phosphor-ipmi-fru-hostfw-config-example-native"
70
71# The phosphor-ipmi-fru application is data-driven and requires an input
72# mapping of IPMI inventory metadata to DBus objects interfaces and properties.
73# This virtual is a native recipe that provides that mapping by installing
74# configuration files in the format and native sysroot location expected by
75# the phosphor-ipmi-fru build process in the native sysroot.
76PREFERRED_PROVIDER_virtual/phosphor-ipmi-fru-inventory ?= "phosphor-ipmi-fru-inventory-example-native"
77
78PREFERRED_PROVIDER_virtual/phosphor-ipmi-fru-properties ?= "phosphor-ipmi-fru-properties-native"
79
80PREFERRED_PROVIDER_virtual/phosphor-ipmi-fru-read-inventory ?= "phosphor-ipmi-fru-read-inventory-example-native"
81
82# Configuration overrides for phosphor-host-ipmid.
83#
84# The phosphor-host-ipmid application is data-driven.
85
86# The phosphor-host-ipmid application is data-driven and requires an input
87# mapping of IPMI inventory sensor metadata to DBus objects interfaces and properties.
88# This virtual is a native recipe that provides that mapping by installing
89# configuration files in the format and native sysroot location expected by
90# the phosphor-host-ipmid build process in the native sysroot.
91PREFERRED_PROVIDER_virtual/phosphor-ipmi-sensor-inventory ?= "phosphor-ipmi-sensor-inventory-native"
92
93# The phosphor-host-ipmid application is data-driven and requires an input
94# mapping of inventory object path to the sensor number and sensor metadata.
95# This virtual is a native recipe that provides that mapping by installing
96# configuration files in the format and native sysroot location expected by
97# the phosphor-host-ipmid build process in the native sysroot.
98PREFERRED_PROVIDER_virtual/phosphor-ipmi-inventory-sel ?= "phosphor-ipmi-inventory-sel-native"
99
100# Various other overrides.
101
102# The phosphor-led-manager application is data-driven and requires an input
103# yaml of LED group and members.
104# This virtual is a native recipe that provides that mapping by installing
105# configuration files in the format and native sysroot location expected by
106# the phosphor-led-manager build process in the native sysroot.
107PREFERRED_PROVIDER_virtual/phosphor-led-manager-config-native ?= "phosphor-led-manager-config-example-native"
108
109# The phosphor-logging application has a data driven plugin that adds FRU
110# callout information to error logs, when applications generating error logs
111# add the requisite callout metadata to the systemd journal.  The plugin requires
112# an input mapping of Linux sysfs devices to OpenBMC DBus objects.
113# This virtual is a native recipe that provides that mapping by installing
114# configuration files in the format and native sysroot location expected by
115# the phosphor-logging build process in the native sysroot.
116PREFERRED_PROVIDER_virtual/phosphor-logging-callouts ?= "phosphor-logging-callouts-example-native"
117
118# The phosphor-fan-presence application is data driven and requires an input
119# YAML that maps fans to their tach sensors.  This virtual is a recipe that
120# provides that mapping by installing configuration files in the format and
121# sysroot location expected by the phosphor-fan-presence build process in the
122# sysroot.
123PREFERRED_PROVIDER_virtual/phosphor-fan-presence-config ?= "phosphor-fan-presence-config"
124
125# The phosphor-fan-control application is data driven and requires a YAML file
126# to define the fans in the system.  This virtual is a recipe that provides
127# that definition by installing the YAML file in the format and sysroot
128# location expected by the phosphor-fan-control build process in the sysroot.
129PREFERRED_PROVIDER_virtual/phosphor-fan-control-fan-config ?= "phosphor-fan-control-fan-config"
130
131OBMC_DBUS_PATH_ROOT ?= "/xyz/openbmc_project"
132OBMC_DBUS_IFACE_ROOT ?= "xyz.openbmc_project"
133
134# VIRTUAL-RUNTIME_phosphor-ipmi-providers are the set of shared library
135# plugins for the host-ipmid application.  By default the IPMI FRU plugin
136# is enabled.  Additionally the host-ipmid recipe uses
137# VIRTUAL-RUNTIME_phosphor-ipmi-providers to compute a list of potential
138# IPMI whitelist recipe dependencies.  For example:
139#
140# VIRTUAL-RUNTIME_phosphor-ipmi-providers ?= "phosphor-ipmi-fru"
141#
142# Will add a build dependency to host-ipmid on the
143# phosphor-ipmi-fru-whitelist-native recipe.
144VIRTUAL-RUNTIME_phosphor-ipmi-providers ?= "phosphor-ipmi-fru"
145
146# Set security headers on builds
147require conf/distro/include/security_flags.inc
148
149# obmc-libobmc-intf doesn't compile with security flags enabled
150SECURITY_CFLAGS:pn-obmc-libobmc-intf = ""
151
152# We generally want to enable LTO with meson
153EXTRA_OEMESON:append:class-target = " -Db_lto=true"
154
155# Set the root password to '0penBmc'
156# Override this in your local.conf
157inherit extrausers
158
159# This is the default password for the OpenBMC root user account (0penBmc)
160# salted and hashed with SHA512 suitable for /etc/shadow or `usermod -p`.
161DEFAULT_OPENBMC_PASSWORD = "'\$6\$UGMqyqdG\$GqTb3tXPFx9AJlzTw/8X5RoW2Z.100dT.acuk8AFJfNQYr.ZRL8itMIgLqsdq46RNHgiv78XayOSl.IbR4DFU.'"
162
163EXTRA_USERS_PARAMS:pn-obmc-phosphor-image = " \
164  usermod -p ${DEFAULT_OPENBMC_PASSWORD} root; \
165  "
166