1description: >
2    Implement to specify a restricted mode of operation.
3
4properties:
5    - name: RestrictionMode
6      type: enum[self.Modes]
7      description: >
8          The restriction mode.
9
10enumerations:
11    - name: Modes
12      description: >
13          Possible modes of restriction.
14      values:
15          - name: None
16            description: >
17                No restriction.
18          - name: Allowlist
19            description: >
20                Allow, only if in the allowlist.
21          - name: Blocklist
22            description: >
23                Prevent, if in the blocklist.
24          - name: Provisioning
25            description: >
26                Indicate that system is in provisioning mode and all commands
27                are allowed in system interface in both pre and post BIOS boot.
28          - name: ProvisionedHostAllowlist
29            description: >
30                Commands in the allowlist will only be executed through system
31                interface after BIOS POST complete. All KCS commands are
32                supported before POST complete.
33          - name: ProvisionedHostDisabled
34            description: >
35                Commands through system interface are executed only till BIOS
36                POST complete notification, after which system interface
37                commands are blocked (except BIOS SMI based ones).
38