Message ID | 20240212131323.2162161-8-panikiel@google.com |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel+bounces-61645-ouuuleilei=gmail.com@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7300:50ea:b0:106:860b:bbdd with SMTP id r10csp2423691dyd; Mon, 12 Feb 2024 05:24:22 -0800 (PST) X-Google-Smtp-Source: AGHT+IEsOReuG6wwDxGgbyskmWGPweL0Lg9IYdznHcU64dk5Pls5Pu3pPMlKLBL/+3E7LZvHqBOS X-Received: by 2002:a05:622a:243:b0:42c:a452:9b61 with SMTP id c3-20020a05622a024300b0042ca4529b61mr1434279qtx.1.1707744262305; Mon, 12 Feb 2024 05:24:22 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1707744262; cv=pass; d=google.com; s=arc-20160816; b=fh+f2MsRKfjvO9ImaWcsoAyfedxNzxcGc0W2MiNJ6RLg6b2n+gygfh70io5yba39Ll Z9j4uzlC7fWVEIfTyFhGCkCZo6x7Ma+HJqQ8ZWYZk3HtBFakQOmsHhpvdpSfv3IiCbhQ 8eCwUiz9P9E86iYPf8XzW5MkPUm79oCLuG8GquviY4d16yW9v4YdrDABsdP91FcvRHt6 98ATGPGKT1ALRAkcuq6o057oQFOznTQYk6tDntGfgcFHJxGXKt+EKbeQH8hV+e05lw8m wmYyc5Yvo/U3LNvqcnR823XkaKNsjHGIJDKYkHwA1hgVp67HsVyIud2G/3sIBziTJ9wF qcwg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:cc:to:from:subject:message-id:references :mime-version:list-unsubscribe:list-subscribe:list-id:precedence :in-reply-to:date:dkim-signature; bh=rRe13GXsBNZ8mkxLlyJ1MfL527/NzLwP4cfZxeK7UxI=; fh=wBaLBUvrBiS/KmkYaivyZsuCbRAPaRVwqneAc5PAg4M=; b=kY6HadXx/gtMQmKazXmiaDmOaDC0sHFNIpD01B/1XjmEn2/a2aNoWDtY6Z1mLUlmra gJYpNNJUqpBjWKPIkic9SPapf1MEJfTzAEcJEMsxSQ9vobmpzp0ZHODs4Nd0byERbsuQ rgGfvlrlxptzAWuflBfFVpaw8XZ3cqXNGq/FHIvfnpvSFd1fOclcj28M+gjuA9NYbKkx 1v16JIRAsJfJ6c+spQ1G9iSqyNzwqRRh13QkvNoRX7D32X7hGiR75ohFbeMEfS0UT4li A74CeFUkWhZorSi05ffzoYbm0jA66UAalBdt58fUD/ELbzuXlCXhCL4nIaK4/BARBkqI oEtA==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=VvujglPx; arc=pass (i=1 spf=pass spfdomain=flex--panikiel.bounces.google.com dkim=pass dkdomain=google.com dmarc=pass fromdomain=google.com); spf=pass (google.com: domain of linux-kernel+bounces-61645-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-61645-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com X-Forwarded-Encrypted: i=2; AJvYcCW+HpvUgwjdv4aTvAVH3wPAtLtjh0jYaKmzyuiiysOn3u882b97D3AO/pK1pND/KKudDAetrpsHl6EHps/+FsdYVakAeA== Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [2604:1380:45d1:ec00::1]) by mx.google.com with ESMTPS id ku17-20020a05622a0a9100b0042c4dc130cbsi339603qtb.768.2024.02.12.05.24.22 for <ouuuleilei@gmail.com> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Feb 2024 05:24:22 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-61645-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) client-ip=2604:1380:45d1:ec00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=VvujglPx; arc=pass (i=1 spf=pass spfdomain=flex--panikiel.bounces.google.com dkim=pass dkdomain=google.com dmarc=pass fromdomain=google.com); spf=pass (google.com: domain of linux-kernel+bounces-61645-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-61645-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id 1C1EF1C21B82 for <ouuuleilei@gmail.com>; Mon, 12 Feb 2024 13:24:22 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id B58544DA01; Mon, 12 Feb 2024 13:14:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="VvujglPx" Received: from mail-wm1-f74.google.com (mail-wm1-f74.google.com [209.85.128.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 295334C626 for <linux-kernel@vger.kernel.org>; Mon, 12 Feb 2024 13:14:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.74 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707743677; cv=none; b=nNAf77iag4FGRQByPGPeW1cvVQNCZZu4tslsOgfeZeLWeET5xUcVZ8c5EM9Cv0lKeQHwLSre+HRn+REH9ZzAB3u07jC5gD3E6YS+nWgf2oqWBkA19HxhVnbtTok5/RP/zbGIHk690kb9tQ9vnGlSuT7t6M1fPAudcjr+JgZMgBc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707743677; c=relaxed/simple; bh=MGljuiY0b08CbfXabKHR3arSgSpNqpPXAmOerQ85JFw=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=DfmUjO1y4vaB3z8bArNb/N4/O28ByBHIhIanw+Z5h5k2du3da20IMYvJUMW4QUbLaiEft0vFojNU2gvd2wLPyq1RNdah281jC/F+Zdx2lSEBreSWao9aeq2XmJU+CIcaBvxeNEigHYbZip4jXO26IFxkjCYdJf6HQwn2iankPAg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--panikiel.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=VvujglPx; arc=none smtp.client-ip=209.85.128.74 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--panikiel.bounces.google.com Received: by mail-wm1-f74.google.com with SMTP id 5b1f17b1804b1-410d0660929so4553595e9.0 for <linux-kernel@vger.kernel.org>; Mon, 12 Feb 2024 05:14:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1707743673; x=1708348473; darn=vger.kernel.org; h=content-transfer-encoding:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:from:to:cc:subject:date:message-id :reply-to; bh=rRe13GXsBNZ8mkxLlyJ1MfL527/NzLwP4cfZxeK7UxI=; b=VvujglPxX48kcJgSADWgCn1UVFBsld3Ij/wDfqpgYVn1zsXY7SmwUjSAXwBSXV6HLb sM2IGHWBSjEZnICV1NG4pJK7rWTKtGuiGMaRcq6MfC0O+gjilZZyClxo0KtLMpM6j9Cg qEcQ6hWQO2s7xB85rujQcKjApX1kT7AhRVdDxnrTTtf3RhcExrZZqZXPmFYw7Nw66UYH fBAv9sePGF2NYVitZGth4lA618JHCqS8Be/dus8MoINpvDWxpN+1jEQUz6FleyB0nu5K lo3N39KUVh+xLXS5yC2P7uYt4UszfaJAFNYtDQHtB1bUw5n/9qjmZe49Tv7k3xTSZ24F /cGA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1707743673; x=1708348473; h=content-transfer-encoding:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=rRe13GXsBNZ8mkxLlyJ1MfL527/NzLwP4cfZxeK7UxI=; b=SP3a0doTwJ/Nl1SWdEADkoiz46dk4XWL8Vo+AYcF8pozi0NecnUBkyVuIMoXSGWEKb LW/VGH4QG/KurcIS+HmB4m2kBfUOsTJqp2InSAHSQD6+ZP7BFbOYaNX0CBXlz6RyF4XF ylRlDX56NfVqzSSADau37k0RsJ1NODxDE9P1qBJXtyViLc8J6pddqovFQ3mBB8oGrvRV W0+MFvwbEn/5BU9A+YbYrBXnDMHHXUxkOxTtJHKZ0RpvBFPm2wCZ/cMdQGeoCBInHnjf smRNTEtEHc3nbRn2ZDB5b73QM/jAqUgyfKXZuLm1zQ4k61jYlyRxpifDkz4NxsatxzGv vjYQ== X-Gm-Message-State: AOJu0Yzxfq/JH784iPmSH8eHyfzx+vILkmqwg4M/yikW7npLWddadkW0 /pcvrsMEpOSTcg/Sm1VNuxGIPe2UJPWBH3pK3f6uiNeSISKG1FCiajwSWQZ+w3VgKO1uhYcXnar c4kFtYPLXGA== X-Received: from szatan.c.googlers.com ([fda3:e722:ac3:cc00:28:9cb1:c0a8:2d83]) (user=panikiel job=sendgmr) by 2002:a05:600c:4c96:b0:410:bb99:7ea2 with SMTP id g22-20020a05600c4c9600b00410bb997ea2mr35246wmp.3.1707743673486; Mon, 12 Feb 2024 05:14:33 -0800 (PST) Date: Mon, 12 Feb 2024 13:13:21 +0000 In-Reply-To: <20240212131323.2162161-1-panikiel@google.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: <linux-kernel.vger.kernel.org> List-Subscribe: <mailto:linux-kernel+subscribe@vger.kernel.org> List-Unsubscribe: <mailto:linux-kernel+unsubscribe@vger.kernel.org> Mime-Version: 1.0 References: <20240212131323.2162161-1-panikiel@google.com> X-Mailer: git-send-email 2.43.0.687.g38aa6559b0-goog Message-ID: <20240212131323.2162161-8-panikiel@google.com> Subject: [PATCH 7/9] media: dt-bindings: Add Chameleon v3 framebuffer From: " =?utf-8?q?Pawe=C5=82_Anikiel?= " <panikiel@google.com> To: airlied@gmail.com, akpm@linux-foundation.org, conor+dt@kernel.org, daniel@ffwll.ch, dinguyen@kernel.org, hverkuil-cisco@xs4all.nl, krzysztof.kozlowski+dt@linaro.org, maarten.lankhorst@linux.intel.com, mchehab@kernel.org, mripard@kernel.org, robh+dt@kernel.org, tzimmermann@suse.de Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, chromeos-krk-upstreaming@google.com, ribalda@chromium.org, " =?utf-8?q?Pawe?= =?utf-8?q?=C5=82_Anikiel?= " <panikiel@google.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1790699647638509895 X-GMAIL-MSGID: 1790699647638509895 |
Series |
Add Chameleon v3 video support
|
|
Commit Message
Paweł Anikiel
Feb. 12, 2024, 1:13 p.m. UTC
The Chameleon v3 uses the framebuffer IP core to take the video signal
from different sources and directly write frames into memory.
Signed-off-by: Paweł Anikiel <panikiel@google.com>
---
.../bindings/media/google,chv3-fb.yaml | 77 +++++++++++++++++++
1 file changed, 77 insertions(+)
create mode 100644 Documentation/devicetree/bindings/media/google,chv3-fb.yaml
Comments
On Mon, 12 Feb 2024 13:13:21 +0000, Paweł Anikiel wrote: > The Chameleon v3 uses the framebuffer IP core to take the video signal > from different sources and directly write frames into memory. > > Signed-off-by: Paweł Anikiel <panikiel@google.com> > --- > .../bindings/media/google,chv3-fb.yaml | 77 +++++++++++++++++++ > 1 file changed, 77 insertions(+) > create mode 100644 Documentation/devicetree/bindings/media/google,chv3-fb.yaml > My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check' on your patch (DT_CHECKER_FLAGS is new in v5.13): yamllint warnings/errors: dtschema/dtc warnings/errors: Error: Documentation/devicetree/bindings/media/google,chv3-fb.example.dts:28.27-28 syntax error FATAL ERROR: Unable to parse input tree make[2]: *** [scripts/Makefile.lib:419: Documentation/devicetree/bindings/media/google,chv3-fb.example.dtb] Error 1 make[2]: *** Waiting for unfinished jobs.... make[1]: *** [/builds/robherring/dt-review-ci/linux/Makefile:1428: dt_binding_check] Error 2 make: *** [Makefile:240: __sub-make] Error 2 doc reference errors (make refcheckdocs): See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20240212131323.2162161-8-panikiel@google.com The base for the series is generally the latest rc1. A different dependency should be noted in *this* patch. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date: pip3 install dtschema --upgrade Please check and re-submit after running the above command yourself. Note that DT_SCHEMA_FILES can be set to your schema file to speed up checking your schema. However, it must be unset to test all examples with your schema.
On Mon, Feb 12, 2024 at 3:35 PM Rob Herring <robh@kernel.org> wrote: > > > On Mon, 12 Feb 2024 13:13:21 +0000, Paweł Anikiel wrote: > > The Chameleon v3 uses the framebuffer IP core to take the video signal > > from different sources and directly write frames into memory. > > > > Signed-off-by: Paweł Anikiel <panikiel@google.com> > > --- > > .../bindings/media/google,chv3-fb.yaml | 77 +++++++++++++++++++ > > 1 file changed, 77 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/media/google,chv3-fb.yaml > > > > My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check' > on your patch (DT_CHECKER_FLAGS is new in v5.13): > > yamllint warnings/errors: > > dtschema/dtc warnings/errors: > Error: Documentation/devicetree/bindings/media/google,chv3-fb.example.dts:28.27-28 syntax error > FATAL ERROR: Unable to parse input tree > make[2]: *** [scripts/Makefile.lib:419: Documentation/devicetree/bindings/media/google,chv3-fb.example.dtb] Error 1 > make[2]: *** Waiting for unfinished jobs.... > make[1]: *** [/builds/robherring/dt-review-ci/linux/Makefile:1428: dt_binding_check] Error 2 > make: *** [Makefile:240: __sub-make] Error 2 > > doc reference errors (make refcheckdocs): > > See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20240212131323.2162161-8-panikiel@google.com > > The base for the series is generally the latest rc1. A different dependency > should be noted in *this* patch. > > If you already ran 'make dt_binding_check' and didn't see the above > error(s), then make sure 'yamllint' is installed and dt-schema is up to > date: > > pip3 install dtschema --upgrade > > Please check and re-submit after running the above command yourself. Note > that DT_SCHEMA_FILES can be set to your schema file to speed up checking > your schema. However, it must be unset to test all examples with your schema. > I was missing a '#include <dt-bindings/interrupt-controller/arm-gic.h>' in the dt binding example. I ran dt_binding_check after adding it and it reports no errors. I will include the fix in v2.
On Mon, Feb 12, 2024 at 01:13:21PM +0000, Paweł Anikiel wrote: > The Chameleon v3 uses the framebuffer IP core to take the video signal > from different sources and directly write frames into memory. > > Signed-off-by: Paweł Anikiel <panikiel@google.com> > --- > .../bindings/media/google,chv3-fb.yaml | 77 +++++++++++++++++++ > 1 file changed, 77 insertions(+) > create mode 100644 Documentation/devicetree/bindings/media/google,chv3-fb.yaml > > diff --git a/Documentation/devicetree/bindings/media/google,chv3-fb.yaml b/Documentation/devicetree/bindings/media/google,chv3-fb.yaml > new file mode 100644 > index 000000000000..ba6643cc7232 > --- /dev/null > +++ b/Documentation/devicetree/bindings/media/google,chv3-fb.yaml > @@ -0,0 +1,77 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/media/google,chv3-fb.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Google Chameleon v3 video framebuffer > + > +maintainers: > + - Paweł Anikiel <panikiel@google.com> > + > +properties: > + compatible: > + const: google,chv3-fb > + > + reg: > + items: > + - description: core registers > + - description: irq registers > + > + interrupts: > + maxItems: 1 > + > + google,legacy-format: > + type: boolean > + description: The incoming video stream is in 32-bit padded mode. > + > + google,no-endpoint: > + type: boolean > + description: > + The framebuffer isn't connected to a controllable endpoint. > + The video interface still works, but EDID control is unavailable > + and DV timing information only reports the active video width/height. Why does this need a dedicated property? Is it not sufficient to check that there are no endpoints in the devicetree? Cheers, Conor. > + > + port: > + $ref: /schemas/graph.yaml#/properties/port > + > +required: > + - compatible > + - reg > + - interrupts > + > +allOf: > + - if: > + not: > + required: > + - google,no-endpoint > + then: > + required: > + - port > + > +additionalProperties: false > + > +examples: > + - | > + video@c0060500 { > + compatible = "google,chv3-fb"; > + reg = <0xc0060500 0x100>, > + <0xc0060f20 0x10>; > + interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; > + google,legacy-format; > + google,no-endpoint; > + }; > + > + - | > + video@c0060600 { > + compatible = "google,chv3-fb"; > + reg = <0xc0060600 0x100>, > + <0xc0060f30 0x10>; > + interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>; > + > + port { > + fb_mst0_0: endpoint { > + remote-endpoint = <&dprx_mst_0>; > + }; > + }; > + }; > -- > 2.43.0.687.g38aa6559b0-goog >
On 12/02/2024 16:51, Paweł Anikiel wrote: >> >> If you already ran 'make dt_binding_check' and didn't see the above >> error(s), then make sure 'yamllint' is installed and dt-schema is up to >> date: >> >> pip3 install dtschema --upgrade >> >> Please check and re-submit after running the above command yourself. Note >> that DT_SCHEMA_FILES can be set to your schema file to speed up checking >> your schema. However, it must be unset to test all examples with your schema. >> > > I was missing a '#include > <dt-bindings/interrupt-controller/arm-gic.h>' in the dt binding > example. I ran dt_binding_check after adding it and it reports no > errors. I will include the fix in v2. Please test the patch before sending... Best regards, Krzysztof
On Thu, Feb 15, 2024 at 6:29 PM Conor Dooley <conor@kernel.org> wrote: > > On Mon, Feb 12, 2024 at 01:13:21PM +0000, Paweł Anikiel wrote: > > The Chameleon v3 uses the framebuffer IP core to take the video signal > > from different sources and directly write frames into memory. > > > > Signed-off-by: Paweł Anikiel <panikiel@google.com> > > --- > > .../bindings/media/google,chv3-fb.yaml | 77 +++++++++++++++++++ > > 1 file changed, 77 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/media/google,chv3-fb.yaml > > > > diff --git a/Documentation/devicetree/bindings/media/google,chv3-fb.yaml b/Documentation/devicetree/bindings/media/google,chv3-fb.yaml > > new file mode 100644 > > index 000000000000..ba6643cc7232 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/media/google,chv3-fb.yaml > > @@ -0,0 +1,77 @@ > > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/media/google,chv3-fb.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: Google Chameleon v3 video framebuffer > > + > > +maintainers: > > + - Paweł Anikiel <panikiel@google.com> > > + > > +properties: > > + compatible: > > + const: google,chv3-fb > > + > > + reg: > > + items: > > + - description: core registers > > + - description: irq registers > > + > > + interrupts: > > + maxItems: 1 > > + > > + google,legacy-format: > > + type: boolean > > + description: The incoming video stream is in 32-bit padded mode. > > + > > + google,no-endpoint: > > + type: boolean > > + description: > > + The framebuffer isn't connected to a controllable endpoint. > > + The video interface still works, but EDID control is unavailable > > + and DV timing information only reports the active video width/height. > > Why does this need a dedicated property? Is it not sufficient to check > that there are no endpoints in the devicetree? Yes, I think it is sufficient. I removed the property and added a check in the driver in v2.
diff --git a/Documentation/devicetree/bindings/media/google,chv3-fb.yaml b/Documentation/devicetree/bindings/media/google,chv3-fb.yaml new file mode 100644 index 000000000000..ba6643cc7232 --- /dev/null +++ b/Documentation/devicetree/bindings/media/google,chv3-fb.yaml @@ -0,0 +1,77 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/media/google,chv3-fb.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Google Chameleon v3 video framebuffer + +maintainers: + - Paweł Anikiel <panikiel@google.com> + +properties: + compatible: + const: google,chv3-fb + + reg: + items: + - description: core registers + - description: irq registers + + interrupts: + maxItems: 1 + + google,legacy-format: + type: boolean + description: The incoming video stream is in 32-bit padded mode. + + google,no-endpoint: + type: boolean + description: + The framebuffer isn't connected to a controllable endpoint. + The video interface still works, but EDID control is unavailable + and DV timing information only reports the active video width/height. + + port: + $ref: /schemas/graph.yaml#/properties/port + +required: + - compatible + - reg + - interrupts + +allOf: + - if: + not: + required: + - google,no-endpoint + then: + required: + - port + +additionalProperties: false + +examples: + - | + video@c0060500 { + compatible = "google,chv3-fb"; + reg = <0xc0060500 0x100>, + <0xc0060f20 0x10>; + interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; + google,legacy-format; + google,no-endpoint; + }; + + - | + video@c0060600 { + compatible = "google,chv3-fb"; + reg = <0xc0060600 0x100>, + <0xc0060f30 0x10>; + interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>; + + port { + fb_mst0_0: endpoint { + remote-endpoint = <&dprx_mst_0>; + }; + }; + };