Received: by 2002:a05:6a10:7420:0:0:0:0 with SMTP id hk32csp3469932pxb; Sun, 20 Feb 2022 21:23:40 -0800 (PST) X-Google-Smtp-Source: ABdhPJzk+bBKGC+fkmXWOAyRlPO6WHR0fz7lLRp+LLFL6MCXZJTs5up/A79hj5KSMH/QNm1v9Zac X-Received: by 2002:a17:90b:1b0f:b0:1b9:f5ac:ae53 with SMTP id nu15-20020a17090b1b0f00b001b9f5acae53mr19610456pjb.71.1645421020711; Sun, 20 Feb 2022 21:23:40 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1645421020; cv=none; d=google.com; s=arc-20160816; b=J8ekLqQAayHgvyP/E2gxMN9lVVR5Aoio7JIlOOc0/Z1F0Crl0//j0JH29k6IALKAx/ W9PImjAnRYXN4NezidlyiI2hEeA4rlVJX2zecpiiPFv6S0j2R54iSTdpcuZRXOQCK4m1 2C1TnYEc5eaeI36FGwfOlZrQTLaEZiHkBSVxfZVlOGk0jPs0Vb582uNxzA8mlbA21Tdt nEfgSCKY+aKAlmBE0E92Xy1puTWxWMc+TgfOqFpv5KSPLUX0Xt+KGPjKi7Hb3hPvyK// TCXae2cGRRxXt52GdZxS1q+yOqTsK+iAaGGkD07npfMgQkezCNVvUec55vIHTH6P4w0p uO3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=a8BoNKg3X7vHdPBNoSjrR0NK00HJgBU5lNtfGsBr0Qo=; b=UDjsAAVmY6angJn4Vsb1d78qvh8HapeBVtw48T7l3TzsoLIGqqhAjh+Uxtvu7/ycPw ZXJVU569iGxBAMGYXLz2HzMiFUPiLQzTg37VHKnRsAjWCLTWH5J48EV1xNXkHfElxa82 ktla4O9fYdJASVuNEXGPZi82plOV5P5hcqKXk2yTBicpaxPdYReVEh5RHll2PqVB6Brl 6fEL7j7EQMq0bqNiO1gRtCS6ybFvGVV55mYyuAQzp8VgqtkllryIJXUD3GXeJsCnr7GC Ja+MuUeH7jkLmyBnIWGZEVzlf651mzs2lgWVgoaje6KAU4mO7E71q4dMpXpb5A59o2PC FJAA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=iOYpZ2RV; 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=kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id i35si16688578pgm.665.2022.02.20.21.23.25; Sun, 20 Feb 2022 21:23:40 -0800 (PST) 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=@kernel.org header.s=k20201202 header.b=iOYpZ2RV; 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=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1343997AbiBUClN (ORCPT + 99 others); Sun, 20 Feb 2022 21:41:13 -0500 Received: from mxb-00190b01.gslb.pphosted.com ([23.128.96.19]:58932 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238658AbiBUClM (ORCPT ); Sun, 20 Feb 2022 21:41:12 -0500 Received: from dfw.source.kernel.org (dfw.source.kernel.org [IPv6:2604:1380:4641:c500::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 763CB201BD; Sun, 20 Feb 2022 18:40:50 -0800 (PST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 0EAA361121; Mon, 21 Feb 2022 02:40:50 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6F1AEC340FC; Mon, 21 Feb 2022 02:40:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1645411249; bh=bFvQNAVbGlS7Vkgnjf6TBiEr7ZXdUWSxzalTjblThqE=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=iOYpZ2RVDoZAyMqglzcqxB77Kn23NhumIkrWlWsgMLG7zA8Q2HUuKaf0ipbHD0CGd vV0i0mCqfEjrzAVlC/+8zFYxsxpJSNZ0zn71+DkAWdJ7Q0vAZnpeEE9sg8BW+5XWQ9 amaKz06WAgN7qj1LrM4IcCudViHKWnOtzX6hXsGSbfQRMztAQgeYeN/ESpG0sigFCi /ttN43FUaa3fLNP/lBM7feYg7oBzFY2k+vBFLYr4EdK/kRa41WJQJEbmO6ncLEi54H ATPW7yxxPVIJZ7pKwL+xoIQHtN8M0MjlVgJjCxlcj5/J5CP0XGsiHhzIEVT3m2PlLo zOCTIgkiWe+og== Received: by mail-ej1-f46.google.com with SMTP id r13so6307345ejd.5; Sun, 20 Feb 2022 18:40:49 -0800 (PST) X-Gm-Message-State: AOAM5328kLL2/OMR4TocWTyq2/X0WvpYGiD2/7KJ4Gns+cEjVGVmrlTm aftmJLm9mOPkIH8IxAS0xny4GWdvEqnS453Q3A== X-Received: by 2002:a17:907:a06c:b0:6c9:408e:cec with SMTP id ia12-20020a170907a06c00b006c9408e0cecmr13894591ejc.510.1645411247627; Sun, 20 Feb 2022 18:40:47 -0800 (PST) MIME-Version: 1.0 References: <20220218145437.18563-1-granquet@baylibre.com> <20220218145437.18563-9-granquet@baylibre.com> In-Reply-To: <20220218145437.18563-9-granquet@baylibre.com> From: Chun-Kuang Hu Date: Mon, 21 Feb 2022 10:40:35 +0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v8 08/19] drm/mediatek: dpi: move dimension mask to board config To: Guillaume Ranquet Cc: Chun-Kuang Hu , Philipp Zabel , David Airlie , Daniel Vetter , Rob Herring , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , Matthias Brugger , Chunfeng Yun , Kishon Vijay Abraham I , Vinod Koul , deller@gmx.de, CK Hu , Jitao Shi , AngeloGioacchino Del Regno , DRI Development , "moderated list:ARM/Mediatek SoC support" , DTML , linux-kernel , Linux ARM , linux-phy@lists.infradead.org, linux-fbdev@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE 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, Guillaume: Guillaume Ranquet =E6=96=BC 2022=E5=B9=B42=E6=9C=88= 18=E6=97=A5 =E9=80=B1=E4=BA=94 =E4=B8=8B=E5=8D=8810:56=E5=AF=AB=E9=81=93=EF= =BC=9A > > Add flexibility by moving the dimension mask to the board config After change 'board' to 'SoC', Reviewed-by: Chun-Kuang Hu > > Signed-off-by: Guillaume Ranquet > --- > drivers/gpu/drm/mediatek/mtk_dpi.c | 26 ++++++++++++++++---------- > 1 file changed, 16 insertions(+), 10 deletions(-) > > diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c b/drivers/gpu/drm/mediate= k/mtk_dpi.c > index 454f8563efae4..8ca3455ed64ee 100644 > --- a/drivers/gpu/drm/mediatek/mtk_dpi.c > +++ b/drivers/gpu/drm/mediatek/mtk_dpi.c > @@ -127,6 +127,8 @@ struct mtk_dpi_conf { > u32 num_output_fmts; > bool is_ck_de_pol; > bool swap_input_support; > + // Mask used for HWIDTH, HPORCH, VSYNC_WIDTH and VSYNC_PORCH (no = shift) > + u32 dimension_mask; > const struct mtk_dpi_yc_limit *limit; > }; > > @@ -156,30 +158,30 @@ static void mtk_dpi_disable(struct mtk_dpi *dpi) > static void mtk_dpi_config_hsync(struct mtk_dpi *dpi, > struct mtk_dpi_sync_param *sync) > { > - mtk_dpi_mask(dpi, DPI_TGEN_HWIDTH, > - sync->sync_width << HPW, HPW_MASK); > - mtk_dpi_mask(dpi, DPI_TGEN_HPORCH, > - sync->back_porch << HBP, HBP_MASK); > + mtk_dpi_mask(dpi, DPI_TGEN_HWIDTH, sync->sync_width << HPW, > + dpi->conf->dimension_mask << HPW); > + mtk_dpi_mask(dpi, DPI_TGEN_HPORCH, sync->back_porch << HBP, > + dpi->conf->dimension_mask << HBP); > mtk_dpi_mask(dpi, DPI_TGEN_HPORCH, sync->front_porch << HFP, > - HFP_MASK); > + dpi->conf->dimension_mask << HFP); > } > > static void mtk_dpi_config_vsync(struct mtk_dpi *dpi, > struct mtk_dpi_sync_param *sync, > u32 width_addr, u32 porch_addr) > { > - mtk_dpi_mask(dpi, width_addr, > - sync->sync_width << VSYNC_WIDTH_SHIFT, > - VSYNC_WIDTH_MASK); > mtk_dpi_mask(dpi, width_addr, > sync->shift_half_line << VSYNC_HALF_LINE_SHIFT, > VSYNC_HALF_LINE_MASK); > + mtk_dpi_mask(dpi, width_addr, > + sync->sync_width << VSYNC_WIDTH_SHIFT, > + dpi->conf->dimension_mask << VSYNC_WIDTH_SHIFT); > mtk_dpi_mask(dpi, porch_addr, > sync->back_porch << VSYNC_BACK_PORCH_SHIFT, > - VSYNC_BACK_PORCH_MASK); > + dpi->conf->dimension_mask << VSYNC_BACK_PORCH_SHIFT)= ; > mtk_dpi_mask(dpi, porch_addr, > sync->front_porch << VSYNC_FRONT_PORCH_SHIFT, > - VSYNC_FRONT_PORCH_MASK); > + dpi->conf->dimension_mask << VSYNC_FRONT_PORCH_SHIFT= ); > } > > static void mtk_dpi_config_vsync_lodd(struct mtk_dpi *dpi, > @@ -813,6 +815,7 @@ static const struct mtk_dpi_conf mt8173_conf =3D { > .num_output_fmts =3D ARRAY_SIZE(mt8173_output_fmts), > .is_ck_de_pol =3D true, > .swap_input_support =3D true, > + .dimension_mask =3D HPW_MASK, > .limit =3D &mtk_dpi_limit, > }; > > @@ -825,6 +828,7 @@ static const struct mtk_dpi_conf mt2701_conf =3D { > .num_output_fmts =3D ARRAY_SIZE(mt8173_output_fmts), > .is_ck_de_pol =3D true, > .swap_input_support =3D true, > + .dimension_mask =3D HPW_MASK, > .limit =3D &mtk_dpi_limit, > }; > > @@ -836,6 +840,7 @@ static const struct mtk_dpi_conf mt8183_conf =3D { > .num_output_fmts =3D ARRAY_SIZE(mt8183_output_fmts), > .is_ck_de_pol =3D true, > .swap_input_support =3D true, > + .dimension_mask =3D HPW_MASK, > .limit =3D &mtk_dpi_limit, > }; > > @@ -847,6 +852,7 @@ static const struct mtk_dpi_conf mt8192_conf =3D { > .num_output_fmts =3D ARRAY_SIZE(mt8173_output_fmts), > .is_ck_de_pol =3D true, > .swap_input_support =3D true, > + .dimension_mask =3D HPW_MASK, > .limit =3D &mtk_dpi_limit, > }; > > -- > 2.34.1 >