Compatible is a string-array, therefore the "select" should look for anything containing Samsung SoC part. This allows to validate cases like: - "samsung,exynos5250-gsc", "samsung,exynos5-gsc" - "samsung,exynos5250-pmu", "syscon" - "tesla,fsd-mct", "samsung,exynos4210-mct" Since Tesla FSD builts on top of Exynos blocks, add an adidtional pattern for it. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> --- .../bindings/arm/samsung/samsung-soc.yaml | 26 +++++++++++++++---- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/Documentation/devicetree/bindings/arm/samsung/samsung-soc.yaml b/Documentation/devicetree/bindings/arm/samsung/samsung-soc.yaml index 653f85997643..bb1fdc205b44 100644 --- a/Documentation/devicetree/bindings/arm/samsung/samsung-soc.yaml +++ b/Documentation/devicetree/bindings/arm/samsung/samsung-soc.yaml @@ -18,17 +18,33 @@ description: | samsung,exynos5433-cmu-isp select: - properties: - compatible: - pattern: "^samsung,.*(s3c|s5pv|exynos)[0-9a-z]+.*$" + allOf: + - properties: + $nodename: + pattern: '^[a-z]' + - properties: + compatible: + contains: + pattern: "^samsung,.*(s3c|s5pv|exynos)[0-9a-z]+.*$" required: - compatible properties: compatible: oneOf: - - description: Preferred naming style for compatibles of SoC components - pattern: "^samsung,(s3c|s5pv|exynos|exynosautov)[0-9]+-.*$" + - description: Preferred naming style for compatibles of S3C/S5P/Exynos SoC components + minItems: 1 + items: + - pattern: "^samsung,(s3c|s5pv|exynos|exynosautov)[0-9]+-.*$" + - {} + - {} + + - description: Preferred naming style for compatibles of Tesla FSD SoC components + minItems: 1 + items: + - pattern: "^tesla,fsd-.*$" + - {} + - {} # Legacy compatibles with wild-cards - list cannot grow with new bindings: - enum: -- 2.34.1