1*45b3537aSGeorge Liu
2*45b3537aSGeorge Liuoption(
3*45b3537aSGeorge Liu    'tests', type: 'feature', value: 'enabled', description: 'Build tests.',
4*45b3537aSGeorge Liu)
5*45b3537aSGeorge Liu
6*45b3537aSGeorge Liuoption(
7*45b3537aSGeorge Liu    'json-config', type: 'feature', value: 'enabled',
8*45b3537aSGeorge Liu    description: 'Use json at runtime to configure fan packages.'
9*45b3537aSGeorge Liu)
10*45b3537aSGeorge Liu
11*45b3537aSGeorge Liuoption(
12*45b3537aSGeorge Liu    'machine-name', type: 'string', value: '',
13*45b3537aSGeorge Liu    description: 'Machine name being built. Used to install the proper JSON config files.'
14*45b3537aSGeorge Liu)
15*45b3537aSGeorge Liu
16*45b3537aSGeorge Liu# Control
17*45b3537aSGeorge Liu
18*45b3537aSGeorge Liuoption(
19*45b3537aSGeorge Liu    'control-service', type: 'feature', value: 'enabled',
20*45b3537aSGeorge Liu    description: 'Build fan control service.'
21*45b3537aSGeorge Liu)
22*45b3537aSGeorge Liu
23*45b3537aSGeorge Liuoption(
24*45b3537aSGeorge Liu    'json-control', type: 'feature', value: 'enabled',
25*45b3537aSGeorge Liu    description: '''This can only be used to disable JSON based fan control
26*45b3537aSGeorge Liu                    (using json-control=disabled) when json-config is enabled.
27*45b3537aSGeorge Liu                    If json-control=enabled and json-config=disabled it will
28*45b3537aSGeorge Liu                    not do anything.'''
29*45b3537aSGeorge Liu)
30*45b3537aSGeorge Liu
31*45b3537aSGeorge Liuoption(
32*45b3537aSGeorge Liu    'control-persist-root-path', type: 'string', value: '/var/lib/phosphor-fan-presence/control',
33*45b3537aSGeorge Liu    description: 'Base location to persist zone property states'
34*45b3537aSGeorge Liu)
35*45b3537aSGeorge Liu
36*45b3537aSGeorge Liuoption(
37*45b3537aSGeorge Liu    'fan-def-yaml-file', type: 'string', value: 'example/fans.yaml',
38*45b3537aSGeorge Liu    description: 'Build time fan configuration file'
39*45b3537aSGeorge Liu)
40*45b3537aSGeorge Liuoption(
41*45b3537aSGeorge Liu    'fan-zone-yaml-file', type: 'string', value: 'example/zones.yaml',
42*45b3537aSGeorge Liu    description: 'Build time fan configuration file'
43*45b3537aSGeorge Liu)
44*45b3537aSGeorge Liuoption(
45*45b3537aSGeorge Liu    'zone-events-yaml-file', type: 'string', value: 'example/events.yaml',
46*45b3537aSGeorge Liu    description: 'Build time fan configuration file'
47*45b3537aSGeorge Liu)
48*45b3537aSGeorge Liuoption(
49*45b3537aSGeorge Liu    'zone-conditions-yaml-file', type: 'string', value: 'example/zone_conditions.yaml',
50*45b3537aSGeorge Liu    description: 'Build time fan configuration file'
51*45b3537aSGeorge Liu)
52*45b3537aSGeorge Liu
53*45b3537aSGeorge Liu# Monitor
54*45b3537aSGeorge Liu
55*45b3537aSGeorge Liuoption(
56*45b3537aSGeorge Liu    'monitor-service', type: 'feature', value: 'enabled',
57*45b3537aSGeorge Liu    description: 'Build fan monitor service'
58*45b3537aSGeorge Liu)
59*45b3537aSGeorge Liu
60*45b3537aSGeorge Liuoption(
61*45b3537aSGeorge Liu    'fan-monitor-yaml-file', type: 'string', value: 'example/monitor.yaml',
62*45b3537aSGeorge Liu    description: 'Location of the config file'
63*45b3537aSGeorge Liu)
64*45b3537aSGeorge Liu
65*45b3537aSGeorge Liuoption(
66*45b3537aSGeorge Liu    'num-monitor-log-entries', type: 'integer', value: 75,
67*45b3537aSGeorge Liu    description: 'Maximum number of entries in the monitor log.'
68*45b3537aSGeorge Liu)
69*45b3537aSGeorge Liu
70*45b3537aSGeorge Liuoption(
71*45b3537aSGeorge Liu    'delay-host-control', value : '0', type: 'integer',
72*45b3537aSGeorge Liu    description: 'Delay host control when the power is on and the fan sensors are offline.'
73*45b3537aSGeorge Liu)
74*45b3537aSGeorge Liu
75*45b3537aSGeorge Liuoption(
76*45b3537aSGeorge Liu    'monitor-use-host-state', value : 'disabled', type: 'feature',
77*45b3537aSGeorge Liu    description: 'Use CurrentHostState for fan monitor to decide power state.'
78*45b3537aSGeorge Liu)
79*45b3537aSGeorge Liu
80*45b3537aSGeorge Liu# Presence
81*45b3537aSGeorge Liu
82*45b3537aSGeorge Liuoption(
83*45b3537aSGeorge Liu    'presence-service', type: 'feature', value: 'enabled',
84*45b3537aSGeorge Liu    description: 'Build fan presence service.'
85*45b3537aSGeorge Liu)
86*45b3537aSGeorge Liu
87*45b3537aSGeorge Liuoption(
88*45b3537aSGeorge Liu    'presence-config', type: 'string', value: 'example/example.yaml',
89*45b3537aSGeorge Liu    description: 'Location of the config file'
90*45b3537aSGeorge Liu)
91*45b3537aSGeorge Liu
92*45b3537aSGeorge Liuoption(
93*45b3537aSGeorge Liu    'num-presence-log-entries', type: 'integer', value: 50,
94*45b3537aSGeorge Liu    description: 'Maximum number of entries in the presence log.'
95*45b3537aSGeorge Liu)
96*45b3537aSGeorge Liu
97*45b3537aSGeorge Liu# Sensor Monitor
98*45b3537aSGeorge Liu
99*45b3537aSGeorge Liuoption(
100*45b3537aSGeorge Liu    'sensor-monitor-service', type: 'feature', value: 'enabled',
101*45b3537aSGeorge Liu    description: 'Build sensor monitor.'
102*45b3537aSGeorge Liu)
103*45b3537aSGeorge Liu
104*45b3537aSGeorge Liuoption(
105*45b3537aSGeorge Liu    'sensor-monitor-persist-root-path', type: 'string',
106*45b3537aSGeorge Liu    value: '/var/lib/phosphor-fan-presence/sensor-monitor',
107*45b3537aSGeorge Liu    description: 'Root path for persisting sensor monitor data.'
108*45b3537aSGeorge Liu)
109*45b3537aSGeorge Liu
110*45b3537aSGeorge Liuoption(
111*45b3537aSGeorge Liu    'sensor-monitor-hard-shutdown-delay', type: 'integer', value: 23000,
112*45b3537aSGeorge Liu    description: 'Milliseconds to delay the alarm before hard shutdown.'
113*45b3537aSGeorge Liu)
114*45b3537aSGeorge Liu
115*45b3537aSGeorge Liuoption(
116*45b3537aSGeorge Liu    'sensor-monitor-soft-shutdown-delay', type: 'integer', value: 900000,
117*45b3537aSGeorge Liu    description: 'Milliseconds to delay the alarm before soft shutdown.'
118*45b3537aSGeorge Liu)
119*45b3537aSGeorge Liu
120*45b3537aSGeorge Liu# Other
121*45b3537aSGeorge Liu
122*45b3537aSGeorge Liuoption(
123*45b3537aSGeorge Liu    'cooling-type-service', type: 'feature', value: 'disabled',
124*45b3537aSGeorge Liu    description: 'Build cooling-type package.'
125*45b3537aSGeorge Liu)
126*45b3537aSGeorge Liu
127*45b3537aSGeorge Liuoption(
128*45b3537aSGeorge Liu    'use-host-power-state', type: 'feature', value: 'disabled',
129*45b3537aSGeorge Liu    description: 'Enable using the host power state for power state checks.'
130*45b3537aSGeorge Liu)
131