1# SPDX-License-Identifier: BSD-3-Clause 2# 3# Includes base bindings at multiple levels (binding, 4# child-binding, grandchild-binding): 5# 6# include: base.yaml 7# child-binding: 8# include: base.yaml 9# child-binding: 10# include: base.yaml 11# 12# Which properties are specified at which levels is summarized below 13# for convenience. 14# 15# Child-binding level: 16# From top-level "include:" element. 17# - child-prop-1 (amended) 18# - child-prop-2 19# - child-prop-enum 20# From "child-binding: include:" element. 21# - prop-1 (amended) 22# - prop-2 (amended) 23# - prop-enum (amended) 24# 25# Grandchild-binding level: 26# From top-level "include:" element. 27# - grandchild-prop-1 (amended) 28# - grandchild-prop-2 29# - grandchild-prop-enum 30# From "child-binding: include:" element. 31# - child-prop-1 (amended) 32# - child-prop-2 33# - child-prop-enum 34# From "child-binding: child-binding: include:" element. 35# - prop-1 (amended) 36# - prop-2 (amended) 37# - prop-enum (amended) 38# 39# Grand-grandchild-binding level: 40# From "child-binding: include:" element. 41# - child-prop-1 42# - child-prop-2 43# - child-prop-enum 44# From "child-binding: child-binding: include:" element. 45# - grandchild-prop-1 46# - grandchild-prop-2 47# - grandchild-prop-enum 48 49description: Description of 'base_multi.yaml'. 50 51include: 52 - name: base.yaml 53 child-binding: 54 property-allowlist: [child-prop-1, child-prop-2, child-prop-enum] 55 child-binding: 56 property-allowlist: [grandchild-prop-1, grandchild-prop-2, grandchild-prop-enum] 57 58child-binding: 59 include: 60 - name: base.yaml 61 property-allowlist: [prop-1, prop-2, prop-enum] 62 child-binding: 63 property-allowlist: [child-prop-1, child-prop-2, child-prop-enum] 64 child-binding: 65 property-allowlist: [grandchild-prop-1, grandchild-prop-2, grandchild-prop-enum] 66 67 properties: 68 # Amend top-level "include:" element. 69 child-prop-1: 70 const: 0xf1 71 # Amend this "child-binding: include:" element. 72 prop-1: 73 const: 0xf1 74 prop-2: 75 description: New description (child). 76 prop-enum: 77 required: true 78 default: FOO 79 80 child-binding: 81 include: 82 - name: base.yaml 83 property-allowlist: [prop-1, prop-2, prop-enum] 84 child-binding: 85 property-allowlist: [child-prop-1, child-prop-2, child-prop-enum] 86 child-binding: 87 property-allowlist: [grandchild-prop-1, grandchild-prop-2, grandchild-prop-enum] 88 89 properties: 90 # Amend above top-level "include:" element. 91 grandchild-prop-1: 92 const: 0xf2 93 # Amend above "child-binding: include:" element. 94 child-prop-1: 95 const: 0xf2 96 # Amend this "child-binding: child-binding: include:" element. 97 prop-1: 98 const: 0xf2 99 prop-2: 100 description: New description (grandchild). 101 prop-enum: 102 required: true 103 default: FOO 104