Received: by 2002:a05:6358:1087:b0:cb:c9d3:cd90 with SMTP id j7csp4821258rwi; Mon, 17 Oct 2022 11:11:15 -0700 (PDT) X-Google-Smtp-Source: AMsMyM60ATeqZh2WLRuNUqVlyoTzOp9xYqzseFpbtV+xEupLOrvcRnEfhfueUGH5kMk1nLs4qWqq X-Received: by 2002:a17:906:3197:b0:73d:5e1a:44ac with SMTP id 23-20020a170906319700b0073d5e1a44acmr9506505ejy.512.1666030272996; Mon, 17 Oct 2022 11:11:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666030272; cv=none; d=google.com; s=arc-20160816; b=ZKOSgnPuBypPSSnVfGvHJxjaxd930Aml6WTaI/3QaQs1wO8GiKBbPZMTDRx0NfHwm4 JOs7DEQ+Kld3G0ir5lKWtOT+IjT+xtSTBzd+OcOU+RNnHWtMg9RJm2EIXHZh0fIezDps qAIkycWe7TuVnJG+T0GNNTNCs9DswLIyuMAeg1CHCrSVuHA18DxxnNw/GS9LJA6rIJvX TEjH/oeXrP8K9+FJvIuNuW6884aQggUxexUccPQVjQPzRj0yF9axHQVClC+nZxtayq3D 96jJ9O0Ova9Uks8yGPfQDUyEzEAih+uI9MDvb87qmUw0HAQBk6LKePUNFCyaYO50GwZ8 ffLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=3NBiv3SPCH7/CkNwTixJben03xMbF+oIfMj6pGQk/gg=; b=YYVwLCqO4WE208lDdDSn1tk9BOaAwemNroA9KOawMD+0pcwCv5r5rys9RPIvnhqbvh zMkoMhJDpzObpaqEacUaYqIIcWLPTgWmp28l8sEJyktvmieOPVWux8stcG9T2iAEaSX2 YFXQ6IbHizPxOGbrt9nt48a7I0S/SOToQSmKWdiDoI2fgiuSnSbD7hNsjWxLb9E9i0dP AGFxzB9I8vgTBQkrtKq3pYROfbMTGTMm4xK+aArMIKpaRxd5IjiWeOmUAqbmKeHu2ui3 3SjDp/X8+N50w0wKSKxEEk+TT9AoLnsZQ+jSSos/zXgfwQ02Z6PJl3ow1Laku+WhvyGu R+mw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@raspberrypi.com header.s=google header.b=jqHnGDES; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=raspberrypi.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id jg15-20020a170907970f00b0077ccad53173si10232274ejc.277.2022.10.17.11.10.46; Mon, 17 Oct 2022 11:11:12 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@raspberrypi.com header.s=google header.b=jqHnGDES; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=raspberrypi.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230209AbiJQR25 (ORCPT + 99 others); Mon, 17 Oct 2022 13:28:57 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39632 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229980AbiJQR2x (ORCPT ); Mon, 17 Oct 2022 13:28:53 -0400 Received: from mail-ej1-x635.google.com (mail-ej1-x635.google.com [IPv6:2a00:1450:4864:20::635]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 894D51F638 for ; Mon, 17 Oct 2022 10:28:31 -0700 (PDT) Received: by mail-ej1-x635.google.com with SMTP id sc25so26472717ejc.12 for ; Mon, 17 Oct 2022 10:28:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raspberrypi.com; s=google; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=3NBiv3SPCH7/CkNwTixJben03xMbF+oIfMj6pGQk/gg=; b=jqHnGDESxBjTsf+Ch+SFxuDfGAvum/LPswoQ599JSljkR7pw9yh8K2kUGMxQnlvX0s Y/I+MmsH/89GHhFmozDkdfX5uIzH7stjvHbbdIWAOLYZIyPZxaKpuU86xOW4zm8AY4OF yyvHvHFKYJCZ3xNQIIhR4VZxzhjSS3ekJgOUoSA3jVtb4Myr9nUEmfG0A/bHiK/znZmV mpe4mQWEOqlpptkHqgP/vX+M9fnWfotmtx1909Hyc9n4uPFhOQ4pLVDjie2+bG3Q5HpO ytL5xhQE7C75T+zFbzTp7J/QSrv/exqpDZQhr8Vq0QXI+Rxkn2Da7S/ZVyyBWvT/KQln WoTA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=3NBiv3SPCH7/CkNwTixJben03xMbF+oIfMj6pGQk/gg=; b=m5kx3MhDOm0Os6MEKC/6/c06wKdFAX2btzzfKhk3uIFBqMQyz31zIlmJC6hfgRXIaF 95por7CLLXdok7v0jH+/1OKBONmb9Vo5uXnvrpB9Oh2f46MAoanoIjA2aRFwqmgjVFOi LkwGo+4Nig9pjFxV5KZTTPC4fnRSwY85yQbNu7362rXwU5yoYDoyJj3XTo3GLBvKiLbp gunX1apdJaymCnO0SZ51sEi3kZc6jlmHIlpk6jWJBPc+kWRhGAdJGRaixmi3P0idLdtc SzlA2kYDyrCPBYCmN6EqcgsjSCpNjOOeny0N3WKJvAQy+ud5gPfob/8EFj/W1nEzjHJV JGJw== X-Gm-Message-State: ACrzQf3B/gxdj3fC/RpdzXpFrmxQzGVmEtfMd72543MvUcKDE17GMuKn 7DTxPUn1GLeAdYNK2jvoXiTzDnyHaDPVxzeWcXfbZg== X-Received: by 2002:a17:907:94c7:b0:78e:1c4f:51f9 with SMTP id dn7-20020a17090794c700b0078e1c4f51f9mr9839550ejc.200.1666027593725; Mon, 17 Oct 2022 10:26:33 -0700 (PDT) MIME-Version: 1.0 References: <20221013-rpi-dpi-improvements-v1-0-8a7a96949cb0@cerno.tech> <20221013-rpi-dpi-improvements-v1-5-8a7a96949cb0@cerno.tech> In-Reply-To: From: Dave Stevenson Date: Mon, 17 Oct 2022 18:26:18 +0100 Message-ID: Subject: Re: [PATCH 5/7] drm/vc4: dpi: Support BGR666 formats To: Laurent Pinchart Cc: Maxime Ripard , Maxime Ripard , Eric Anholt , Daniel Vetter , David Airlie , Rob Herring , Emma Anholt , dri-devel@lists.freedesktop.org, Joerg Quinten , Chris Morgan , linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Laurent Thanks for the review. On Sat, 15 Oct 2022 at 18:31, Laurent Pinchart wrote: > > On Sat, Oct 15, 2022 at 08:26:48PM +0300, Laurent Pinchart wrote: > > Hi Maxime and Joerg, > > > > Thank you for the patch. > > > > On Thu, Oct 13, 2022 at 11:56:49AM +0200, Maxime Ripard wrote: > > > From: Joerg Quinten > > > > > > The VC4 DPI output can support multiple BGR666 variants, but they were > > > never added to the driver. Let's add the the support for those formats. > > > > > > Signed-off-by: Joerg Quinten > > > Signed-off-by: Maxime Ripard > > > > Reviewed-by: Laurent Pinchart > > > > > --- > > > drivers/gpu/drm/vc4/vc4_dpi.c | 6 ++++++ > > > 1 file changed, 6 insertions(+) > > > > > > diff --git a/drivers/gpu/drm/vc4/vc4_dpi.c b/drivers/gpu/drm/vc4/vc4_dpi.c > > > index 7da3dd1db50e..ecbe4cd87036 100644 > > > --- a/drivers/gpu/drm/vc4/vc4_dpi.c > > > +++ b/drivers/gpu/drm/vc4/vc4_dpi.c > > > @@ -170,10 +170,16 @@ static void vc4_dpi_encoder_enable(struct drm_encoder *encoder) > > > dpi_c |= VC4_SET_FIELD(DPI_ORDER_BGR, > > > DPI_ORDER); > > > break; > > > + case MEDIA_BUS_FMT_BGR666_1X24_CPADHI: > > > + dpi_c |= VC4_SET_FIELD(DPI_ORDER_BGR, DPI_ORDER); > > > + fallthrough; > > Upon closer inspection of the code, I think you also need > > - dpi_c &= ~DPI_FORMAT_MASK; > + dpi_c &= ~(DPI_ORDER_MASK | DPI_FORMAT_MASK); > > a few lines above. Hmm, curious as there appears to be a difference between our vendor tree and mainline in the contents of a patch with almost the same commit text. https://github.com/torvalds/linux/commit/7a70b0b97889a89f397913c971cadfc6db9b310a vs https://github.com/raspberrypi/linux/commit/9d9dc236a9ee9021363b8601b6188e7be86d1971 Our tree leaves dpi_c effectively clear, and selects the default at the end. Mainline sets the default first. Even so, dpi_c gets initialised with dpi_c = DPI_ENABLE; dpi_c |= VC4_SET_FIELD(DPI_FORMAT_24BIT_888_RGB, DPI_FORMAT); dpi_c &= ~DPI_FORMAT_MASK; so at this point in the switch, the DPI_ORDER bits haven't changed from the default of 0. Dave > > > case MEDIA_BUS_FMT_RGB666_1X24_CPADHI: > > > dpi_c |= VC4_SET_FIELD(DPI_FORMAT_18BIT_666_RGB_2, > > > DPI_FORMAT); > > > break; > > > + case MEDIA_BUS_FMT_BGR666_1X18: > > > + dpi_c |= VC4_SET_FIELD(DPI_ORDER_BGR, DPI_ORDER); > > > + fallthrough; > > > case MEDIA_BUS_FMT_RGB666_1X18: > > > dpi_c |= VC4_SET_FIELD(DPI_FORMAT_18BIT_666_RGB_1, > > > DPI_FORMAT); > > > > > -- > Regards, > > Laurent Pinchart