From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.8 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 162B0C43462 for ; Tue, 20 Apr 2021 09:05:38 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id CB54A611F0 for ; Tue, 20 Apr 2021 09:05:37 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231187AbhDTJGH (ORCPT ); Tue, 20 Apr 2021 05:06:07 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36120 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230090AbhDTJGG (ORCPT ); Tue, 20 Apr 2021 05:06:06 -0400 Received: from mail-io1-xd33.google.com (mail-io1-xd33.google.com [IPv6:2607:f8b0:4864:20::d33]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 32C67C061763 for ; Tue, 20 Apr 2021 02:05:34 -0700 (PDT) Received: by mail-io1-xd33.google.com with SMTP id b9so7995285iod.13 for ; Tue, 20 Apr 2021 02:05:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Sky0InoRGfz08ZIPfmMoicP8h0LTiiMAffpNGDgYJbs=; b=nXMxTLh0sKp6GpxETText2EprCJ00h2r68bNjyo/IF5LUKD5vBUWvHwARRPAn+uyrJ kQjDZ0KCSUQEIki+oYck1Elb/FO48FaV2LtgbHDizELXrrlpNqUAtUVQ5tTUE9mHKyB5 ZbQXnv+ZIdsOqZz8tjBc7JlTrPQwcxVciypAE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Sky0InoRGfz08ZIPfmMoicP8h0LTiiMAffpNGDgYJbs=; b=b+s+7+wybV8S4+750opi2FoGVttJHTzxO2qJ1GnqNuG25JvsvXVFhNoIKg4OMTOaM3 P0W/5ry8uflVZAEBrezwSvxgo4BtUaU+UclG2e3yXleiBTFYVOwYrjGB1oJaiRozmZtc rTamtDn4+SdRUT9LhL4eOezcovrx4GzoaAt7UbJ02cKwj/4/cEo9fu3Zb6JgKmKNZJJ6 2PcvkM/fKU6lzhpfxByyhEzzfv6sr6WoUoWqKf/YHuPBOx4MrWs79YNRwqi4oPMbi2NY F/gCwglaX9TCRhwclpJ2DTylOFRpWhV81R3SrP+jt4zXSrvtntQtBIxkz0k1UHY9bqhU 6Wkg== X-Gm-Message-State: AOAM531RT7OJYRWbOkSP2cxxir1IfEw5HFFGAKShHnEdh0fK3L9o1gqe QhQO4Bgsgi2oseFnZmHO4t5WIvYTRuitMvmOPRWfoQ== X-Google-Smtp-Source: ABdhPJzFCTPxONwGXoOnArB99NKE78wLC243d0eUdaQKA1eYD2nbVDr80hIVXEpRVLb15Vj/6o9+Igu1fSkXz87MjDc= X-Received: by 2002:a5d:9682:: with SMTP id m2mr18657371ion.20.1618909533198; Tue, 20 Apr 2021 02:05:33 -0700 (PDT) MIME-Version: 1.0 References: <20210409045314.3420733-1-hsinyi@chromium.org> In-Reply-To: <20210409045314.3420733-1-hsinyi@chromium.org> From: Hsin-Yi Wang Date: Tue, 20 Apr 2021 17:05:06 +0800 Message-ID: Subject: Re: [PATCH 1/2] drm/mediatek: set panel orientation before drm_dev_register(). To: Chun-Kuang Hu , Matthias Brugger , Enric Balletbo i Serra Cc: Philipp Zabel , David Airlie , Daniel Vetter , dri-devel , "moderated list:ARM/Mediatek SoC support" , "moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE" , lkml , Rob Herring , Devicetree List Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Apr 9, 2021 at 12:53 PM Hsin-Yi Wang wrote: > > drm_dev_register() sets connector->registration_state to > DRM_CONNECTOR_REGISTERED and dev->registered to true. If > drm_connector_set_panel_orientation() is first called after > drm_dev_register(), it will fail several checks and results in following > warning. So set panel orientation in dsi before drm_dev_register() is > called. > > [ 4.480976] ------------[ cut here ]------------ > [ 4.485603] WARNING: CPU: 5 PID: 369 at drivers/gpu/drm/drm_mode_object.c:45 __drm_mode_object_add+0xb4/0xbc > > [ 4.609772] Call trace: > [ 4.612208] __drm_mode_object_add+0xb4/0xbc > [ 4.616466] drm_mode_object_add+0x20/0x2c > [ 4.620552] drm_property_create+0xdc/0x174 > [ 4.624723] drm_property_create_enum+0x34/0x98 > [ 4.629241] drm_connector_set_panel_orientation+0x64/0xa0 > [ 4.634716] boe_panel_get_modes+0x88/0xd8 > [ 4.638802] drm_panel_get_modes+0x2c/0x48 > [ 4.642887] panel_bridge_get_modes+0x1c/0x28 > [ 4.647233] drm_bridge_connector_get_modes+0xa0/0xd4 > [ 4.652273] drm_helper_probe_single_connector_modes+0x218/0x700 > [ 4.658266] drm_mode_getconnector+0x1b4/0x45c > [ 4.662699] drm_ioctl_kernel+0xac/0x128 > [ 4.666611] drm_ioctl+0x268/0x410 > [ 4.670002] drm_compat_ioctl+0xdc/0xf0 > [ 4.673829] __arm64_compat_sys_ioctl+0xc8/0x100 > [ 4.678436] el0_svc_common+0xf4/0x1c0 > [ 4.682174] do_el0_svc_compat+0x28/0x3c > [ 4.686088] el0_svc_compat+0x10/0x1c > [ 4.689738] el0_sync_compat_handler+0xa8/0xcc > [ 4.694171] el0_sync_compat+0x178/0x180 > [ 4.698082] ---[ end trace b4f2db9d9c88610b ]--- > [ 4.702721] ------------[ cut here ]------------ > [ 4.707329] WARNING: CPU: 5 PID: 369 at drivers/gpu/drm/drm_mode_object.c:243 drm_object_attach_property+0x48/0xb8 > > [ 4.833830] Call trace: > [ 4.836266] drm_object_attach_property+0x48/0xb8 > [ 4.840958] drm_connector_set_panel_orientation+0x84/0xa0 > [ 4.846432] boe_panel_get_modes+0x88/0xd8 > [ 4.850516] drm_panel_get_modes+0x2c/0x48 > [ 4.854600] panel_bridge_get_modes+0x1c/0x28 > [ 4.858946] drm_bridge_connector_get_modes+0xa0/0xd4 > [ 4.863984] drm_helper_probe_single_connector_modes+0x218/0x700 > [ 4.869978] drm_mode_getconnector+0x1b4/0x45c > [ 4.874410] drm_ioctl_kernel+0xac/0x128 > [ 4.878320] drm_ioctl+0x268/0x410 > [ 4.881711] drm_compat_ioctl+0xdc/0xf0 > [ 4.885536] __arm64_compat_sys_ioctl+0xc8/0x100 > [ 4.890142] el0_svc_common+0xf4/0x1c0 > [ 4.893879] do_el0_svc_compat+0x28/0x3c > [ 4.897791] el0_svc_compat+0x10/0x1c > [ 4.901441] el0_sync_compat_handler+0xa8/0xcc > [ 4.905873] el0_sync_compat+0x178/0x180 > [ 4.909783] ---[ end trace b4f2db9d9c88610c ]--- > > Signed-off-by: Hsin-Yi Wang ping on the thread, thanks. > --- > drivers/gpu/drm/mediatek/mtk_dsi.c | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c > index ae403c67cbd9..45a702ee09f3 100644 > --- a/drivers/gpu/drm/mediatek/mtk_dsi.c > +++ b/drivers/gpu/drm/mediatek/mtk_dsi.c > @@ -205,6 +205,7 @@ struct mtk_dsi { > u32 irq_data; > wait_queue_head_t irq_wait_queue; > const struct mtk_dsi_driver_data *driver_data; > + enum drm_panel_orientation orientation; > }; > > static inline struct mtk_dsi *bridge_to_dsi(struct drm_bridge *b) > @@ -966,6 +967,8 @@ static int mtk_dsi_encoder_init(struct drm_device *drm, struct mtk_dsi *dsi) > } > drm_connector_attach_encoder(dsi->connector, &dsi->encoder); > > + drm_connector_set_panel_orientation(dsi->connector, dsi->orientation); > + > return 0; > > err_cleanup_encoder: > @@ -1029,6 +1032,12 @@ static int mtk_dsi_probe(struct platform_device *pdev) > ret = PTR_ERR(dsi->next_bridge); > goto err_unregister_host; > } > + > + ret = of_drm_get_panel_orientation(panel->dev->of_node, &dsi->orientation); > + if (ret) { > + dev_err(dev, "failed to get panel orientation %d\n", ret); > + return ret; > + } > } > > dsi->driver_data = of_device_get_match_data(dev); > -- > 2.31.1.295.g9ea45b61b8-goog > From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.8 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 94C5FC433ED for ; Tue, 20 Apr 2021 09:06:11 +0000 (UTC) Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id F1853611F0 for ; Tue, 20 Apr 2021 09:06:10 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org F1853611F0 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=chromium.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding :Content-Type:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:Cc:To:Subject:Message-ID:Date:From:In-Reply-To: References:MIME-Version:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=9nl77uASGWf8OvZUZlS1Hi4IU7ep4S2E5mQPGj4zLr0=; b=nlOWQwHYEuScm8aLFnaj58dbt 5GDbdPU9uv5NyiTVSmK142Hh6ZYMG4nMOcVurxVuwoYOgHIR3Mi1ND3r9rOCxYFHTiny4LVHv00D8 0dNYFuX8oGOQ81Zen+At4kXhapEUeXPZbk42mC+kvdFlHQCxFz7XeHtKOuvLXxEg2bDvmJkJRDSxu 88hMuXtuCYjzG+fy6fT/3J5SFj5v5al14dM6/iVZVZvoXC+i/zq/1500VoZICCGSIyPxnZ1ce+o1M 0WaX8nQYwEjaNpIYiBzmBvYL2mxrPoh5X6J9NOAsPdd1+fcGAt2hffC+ZWx8NmHV28ETh6i57dQoi CMiJIfGug==; Received: from localhost ([::1] helo=desiato.infradead.org) by desiato.infradead.org with esmtp (Exim 4.94 #2 (Red Hat Linux)) id 1lYmKP-00Bfag-AJ; Tue, 20 Apr 2021 09:05:53 +0000 Received: from bombadil.infradead.org ([2607:7c80:54:e::133]) by desiato.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lYmKC-00BfZz-Vc for linux-mediatek@desiato.infradead.org; Tue, 20 Apr 2021 09:05:42 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=Content-Type:Cc:To:Subject:Message-ID :Date:From:In-Reply-To:References:MIME-Version:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=Sky0InoRGfz08ZIPfmMoicP8h0LTiiMAffpNGDgYJbs=; b=iA3Sdoj4z4QeA1sOf7wSQHKLNM /xx/hc927wbyCynNontIfFX3bmSJU8cVCLOMpSDDbph7YIvpUdenUFiRZC8Ke0mnw3u2oYV/lKVEq 6gJcoZ9siEKMrL4M8WNh4HG0EiHn71pkCPHssAosoOWOKd9uyte9SZ7/zRcxJEPUgzxR8l9lMCXnm xfukZFlMKuJFqurWlejP9/S219M2N8zstWBgaPdKyckgqMvgoGTAr+GXRJV1n7E+CogHhSDbcFbry kKMu6eU02bkBwoC3zmwSU97qLanFEl+GDNpdOxMDqhXeKTczJJ0W3/Dj4TE3Ey2Kt0JhhERc0LJLA a3PcksAg==; Received: from mail-io1-xd2b.google.com ([2607:f8b0:4864:20::d2b]) by bombadil.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lYmK7-00BxEA-25 for linux-mediatek@lists.infradead.org; Tue, 20 Apr 2021 09:05:39 +0000 Received: by mail-io1-xd2b.google.com with SMTP id v123so30882732ioe.10 for ; Tue, 20 Apr 2021 02:05:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Sky0InoRGfz08ZIPfmMoicP8h0LTiiMAffpNGDgYJbs=; b=nXMxTLh0sKp6GpxETText2EprCJ00h2r68bNjyo/IF5LUKD5vBUWvHwARRPAn+uyrJ kQjDZ0KCSUQEIki+oYck1Elb/FO48FaV2LtgbHDizELXrrlpNqUAtUVQ5tTUE9mHKyB5 ZbQXnv+ZIdsOqZz8tjBc7JlTrPQwcxVciypAE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Sky0InoRGfz08ZIPfmMoicP8h0LTiiMAffpNGDgYJbs=; b=r1b9W7qPYre5r2TZmvBaWD97xGaMJg2iJCuJTYPRo+SCnqWYqDzWx90GZA/JmyjjKo qgsqvui5yx6cppTF5Qlvtgdf/JKxvXJMsz7C5v81w6ba4yVem/JuCgq1NsiSeVyuOTOA s99tmWEANtkgVaKnFEgJVCkI9g2ZPsS9Z4lh6YdED5LRUfI6FtZ1XSdAtqKsjeWhvjPi YCS3vuZatFo/8b5kYz6gL8frrBVSJ53b5Y9+zIUqSUpiEIZCyTnduN9rmX39ks1J9Z3O FYpOXztD5h4W2HaFhCWDBH1/SDS5MHPTJz9CEZNRBsQwKCOm4xFPDjSUSwZNu9/auMal bDoQ== X-Gm-Message-State: AOAM530qxSxn+dDx6Du5+VxjfxhUYg7yJ6fXbwELux/YDltYynY5DfTG UBXSr1c0aUpqKU1Mn2pWYVLF7E+du3ZUl2jOVjL9Fg== X-Google-Smtp-Source: ABdhPJzFCTPxONwGXoOnArB99NKE78wLC243d0eUdaQKA1eYD2nbVDr80hIVXEpRVLb15Vj/6o9+Igu1fSkXz87MjDc= X-Received: by 2002:a5d:9682:: with SMTP id m2mr18657371ion.20.1618909533198; Tue, 20 Apr 2021 02:05:33 -0700 (PDT) MIME-Version: 1.0 References: <20210409045314.3420733-1-hsinyi@chromium.org> In-Reply-To: <20210409045314.3420733-1-hsinyi@chromium.org> From: Hsin-Yi Wang Date: Tue, 20 Apr 2021 17:05:06 +0800 Message-ID: Subject: Re: [PATCH 1/2] drm/mediatek: set panel orientation before drm_dev_register(). To: Chun-Kuang Hu , Matthias Brugger , Enric Balletbo i Serra Cc: Philipp Zabel , David Airlie , Daniel Vetter , dri-devel , "moderated list:ARM/Mediatek SoC support" , "moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE" , lkml , Rob Herring , Devicetree List X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210420_020535_144251_824AD1F0 X-CRM114-Status: GOOD ( 19.79 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org On Fri, Apr 9, 2021 at 12:53 PM Hsin-Yi Wang wrote: > > drm_dev_register() sets connector->registration_state to > DRM_CONNECTOR_REGISTERED and dev->registered to true. If > drm_connector_set_panel_orientation() is first called after > drm_dev_register(), it will fail several checks and results in following > warning. So set panel orientation in dsi before drm_dev_register() is > called. > > [ 4.480976] ------------[ cut here ]------------ > [ 4.485603] WARNING: CPU: 5 PID: 369 at drivers/gpu/drm/drm_mode_object.c:45 __drm_mode_object_add+0xb4/0xbc > > [ 4.609772] Call trace: > [ 4.612208] __drm_mode_object_add+0xb4/0xbc > [ 4.616466] drm_mode_object_add+0x20/0x2c > [ 4.620552] drm_property_create+0xdc/0x174 > [ 4.624723] drm_property_create_enum+0x34/0x98 > [ 4.629241] drm_connector_set_panel_orientation+0x64/0xa0 > [ 4.634716] boe_panel_get_modes+0x88/0xd8 > [ 4.638802] drm_panel_get_modes+0x2c/0x48 > [ 4.642887] panel_bridge_get_modes+0x1c/0x28 > [ 4.647233] drm_bridge_connector_get_modes+0xa0/0xd4 > [ 4.652273] drm_helper_probe_single_connector_modes+0x218/0x700 > [ 4.658266] drm_mode_getconnector+0x1b4/0x45c > [ 4.662699] drm_ioctl_kernel+0xac/0x128 > [ 4.666611] drm_ioctl+0x268/0x410 > [ 4.670002] drm_compat_ioctl+0xdc/0xf0 > [ 4.673829] __arm64_compat_sys_ioctl+0xc8/0x100 > [ 4.678436] el0_svc_common+0xf4/0x1c0 > [ 4.682174] do_el0_svc_compat+0x28/0x3c > [ 4.686088] el0_svc_compat+0x10/0x1c > [ 4.689738] el0_sync_compat_handler+0xa8/0xcc > [ 4.694171] el0_sync_compat+0x178/0x180 > [ 4.698082] ---[ end trace b4f2db9d9c88610b ]--- > [ 4.702721] ------------[ cut here ]------------ > [ 4.707329] WARNING: CPU: 5 PID: 369 at drivers/gpu/drm/drm_mode_object.c:243 drm_object_attach_property+0x48/0xb8 > > [ 4.833830] Call trace: > [ 4.836266] drm_object_attach_property+0x48/0xb8 > [ 4.840958] drm_connector_set_panel_orientation+0x84/0xa0 > [ 4.846432] boe_panel_get_modes+0x88/0xd8 > [ 4.850516] drm_panel_get_modes+0x2c/0x48 > [ 4.854600] panel_bridge_get_modes+0x1c/0x28 > [ 4.858946] drm_bridge_connector_get_modes+0xa0/0xd4 > [ 4.863984] drm_helper_probe_single_connector_modes+0x218/0x700 > [ 4.869978] drm_mode_getconnector+0x1b4/0x45c > [ 4.874410] drm_ioctl_kernel+0xac/0x128 > [ 4.878320] drm_ioctl+0x268/0x410 > [ 4.881711] drm_compat_ioctl+0xdc/0xf0 > [ 4.885536] __arm64_compat_sys_ioctl+0xc8/0x100 > [ 4.890142] el0_svc_common+0xf4/0x1c0 > [ 4.893879] do_el0_svc_compat+0x28/0x3c > [ 4.897791] el0_svc_compat+0x10/0x1c > [ 4.901441] el0_sync_compat_handler+0xa8/0xcc > [ 4.905873] el0_sync_compat+0x178/0x180 > [ 4.909783] ---[ end trace b4f2db9d9c88610c ]--- > > Signed-off-by: Hsin-Yi Wang ping on the thread, thanks. > --- > drivers/gpu/drm/mediatek/mtk_dsi.c | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c > index ae403c67cbd9..45a702ee09f3 100644 > --- a/drivers/gpu/drm/mediatek/mtk_dsi.c > +++ b/drivers/gpu/drm/mediatek/mtk_dsi.c > @@ -205,6 +205,7 @@ struct mtk_dsi { > u32 irq_data; > wait_queue_head_t irq_wait_queue; > const struct mtk_dsi_driver_data *driver_data; > + enum drm_panel_orientation orientation; > }; > > static inline struct mtk_dsi *bridge_to_dsi(struct drm_bridge *b) > @@ -966,6 +967,8 @@ static int mtk_dsi_encoder_init(struct drm_device *drm, struct mtk_dsi *dsi) > } > drm_connector_attach_encoder(dsi->connector, &dsi->encoder); > > + drm_connector_set_panel_orientation(dsi->connector, dsi->orientation); > + > return 0; > > err_cleanup_encoder: > @@ -1029,6 +1032,12 @@ static int mtk_dsi_probe(struct platform_device *pdev) > ret = PTR_ERR(dsi->next_bridge); > goto err_unregister_host; > } > + > + ret = of_drm_get_panel_orientation(panel->dev->of_node, &dsi->orientation); > + if (ret) { > + dev_err(dev, "failed to get panel orientation %d\n", ret); > + return ret; > + } > } > > dsi->driver_data = of_device_get_match_data(dev); > -- > 2.31.1.295.g9ea45b61b8-goog > _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.8 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id A164BC433ED for ; Tue, 20 Apr 2021 09:08:15 +0000 (UTC) Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id EEF3D6127C for ; Tue, 20 Apr 2021 09:08:14 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org EEF3D6127C Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=chromium.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding :Content-Type:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:Cc:To:Subject:Message-ID:Date:From:In-Reply-To: References:MIME-Version:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=BnBio5QJSzl/1+qqJvIg1hkXPAw6kCCknEDzohrEVlI=; b=Tta8t7NMCZFQKarTA/LNcT3x4 KV/bTjGmG4yuDTAD6FoAMODELZV7PNNP84nBc0rd7FYg1Pfj5AdlUAycyxJat4sLbfZt5E2Ew7w17 +LfcF4EsB5Y3WkRSd6fqysuNSH+DATBdeIWq5Ir1L179ua5RXuBZaqSlSidNB0C7t5I6XOMmdwMi5 VaNWEKi2NCJiW/zHz3EGWQCQko2bwh7SxsxWdRPRyFwu7Vsy+jaPVG1/SPtgE6esu6giKoLhsnYfr LvpqqVbfbqqW3W0ilmM1Eiz6vi8hjuw2z3ViatcX4pyC/Ff2rHUWSQ1LoLD6rKQCKHD/wBoOyCoIR OVNcUEy8g==; Received: from localhost ([::1] helo=desiato.infradead.org) by desiato.infradead.org with esmtp (Exim 4.94 #2 (Red Hat Linux)) id 1lYmKH-00BfaK-0I; Tue, 20 Apr 2021 09:05:45 +0000 Received: from bombadil.infradead.org ([2607:7c80:54:e::133]) by desiato.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lYmKC-00BfZw-7N for linux-arm-kernel@desiato.infradead.org; Tue, 20 Apr 2021 09:05:42 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=Content-Type:Cc:To:Subject:Message-ID :Date:From:In-Reply-To:References:MIME-Version:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=Sky0InoRGfz08ZIPfmMoicP8h0LTiiMAffpNGDgYJbs=; b=iA3Sdoj4z4QeA1sOf7wSQHKLNM /xx/hc927wbyCynNontIfFX3bmSJU8cVCLOMpSDDbph7YIvpUdenUFiRZC8Ke0mnw3u2oYV/lKVEq 6gJcoZ9siEKMrL4M8WNh4HG0EiHn71pkCPHssAosoOWOKd9uyte9SZ7/zRcxJEPUgzxR8l9lMCXnm xfukZFlMKuJFqurWlejP9/S219M2N8zstWBgaPdKyckgqMvgoGTAr+GXRJV1n7E+CogHhSDbcFbry kKMu6eU02bkBwoC3zmwSU97qLanFEl+GDNpdOxMDqhXeKTczJJ0W3/Dj4TE3Ey2Kt0JhhERc0LJLA a3PcksAg==; Received: from mail-io1-xd2c.google.com ([2607:f8b0:4864:20::d2c]) by bombadil.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lYmK7-00BxEB-1z for linux-arm-kernel@lists.infradead.org; Tue, 20 Apr 2021 09:05:39 +0000 Received: by mail-io1-xd2c.google.com with SMTP id v123so30882734ioe.10 for ; Tue, 20 Apr 2021 02:05:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Sky0InoRGfz08ZIPfmMoicP8h0LTiiMAffpNGDgYJbs=; b=nXMxTLh0sKp6GpxETText2EprCJ00h2r68bNjyo/IF5LUKD5vBUWvHwARRPAn+uyrJ kQjDZ0KCSUQEIki+oYck1Elb/FO48FaV2LtgbHDizELXrrlpNqUAtUVQ5tTUE9mHKyB5 ZbQXnv+ZIdsOqZz8tjBc7JlTrPQwcxVciypAE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Sky0InoRGfz08ZIPfmMoicP8h0LTiiMAffpNGDgYJbs=; b=WIdK1ZpRbZewD9n2/xIt84diKam1OifIZmWdL4D/UCLfxtpaMhzXcDwrXpDLG8GyTL 5WD8rmUQYsCjTPoxmAjG3t1CipNjqmouEOkztYp+zHwbStbPDtMokzldCZAvmDHOqp5A ONs/DcmobsO/uk8Fzu9HUdmrdUMnoVRLhuA175nZRQ+4M6mRKvPNwxQMqpHcjz8z1xG/ I/tSHuTuinjc1/5009GqfJhDIkJCDJdsWBBmOS3Zn3Qu/1b11/a2pKqDZqfC3zJSCifJ 2IRy47YdbfAnLnruxXNTGzfVaChZqC3EMLNy8Xlf7eERFd00tO2rrSxy6Vmj56FfNUZJ WLpw== X-Gm-Message-State: AOAM532aIReIR/rulJm8GI90lDb+sfzAYcXplfCQfeXcWOAOMigG3QWt Lqvgq+BmPnLt8CTWSjAsriE2clCMqS9K5J1kcmbDyA== X-Google-Smtp-Source: ABdhPJzFCTPxONwGXoOnArB99NKE78wLC243d0eUdaQKA1eYD2nbVDr80hIVXEpRVLb15Vj/6o9+Igu1fSkXz87MjDc= X-Received: by 2002:a5d:9682:: with SMTP id m2mr18657371ion.20.1618909533198; Tue, 20 Apr 2021 02:05:33 -0700 (PDT) MIME-Version: 1.0 References: <20210409045314.3420733-1-hsinyi@chromium.org> In-Reply-To: <20210409045314.3420733-1-hsinyi@chromium.org> From: Hsin-Yi Wang Date: Tue, 20 Apr 2021 17:05:06 +0800 Message-ID: Subject: Re: [PATCH 1/2] drm/mediatek: set panel orientation before drm_dev_register(). To: Chun-Kuang Hu , Matthias Brugger , Enric Balletbo i Serra Cc: Philipp Zabel , David Airlie , Daniel Vetter , dri-devel , "moderated list:ARM/Mediatek SoC support" , "moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE" , lkml , Rob Herring , Devicetree List X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210420_020535_139673_28E2BA24 X-CRM114-Status: GOOD ( 21.14 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Fri, Apr 9, 2021 at 12:53 PM Hsin-Yi Wang wrote: > > drm_dev_register() sets connector->registration_state to > DRM_CONNECTOR_REGISTERED and dev->registered to true. If > drm_connector_set_panel_orientation() is first called after > drm_dev_register(), it will fail several checks and results in following > warning. So set panel orientation in dsi before drm_dev_register() is > called. > > [ 4.480976] ------------[ cut here ]------------ > [ 4.485603] WARNING: CPU: 5 PID: 369 at drivers/gpu/drm/drm_mode_object.c:45 __drm_mode_object_add+0xb4/0xbc > > [ 4.609772] Call trace: > [ 4.612208] __drm_mode_object_add+0xb4/0xbc > [ 4.616466] drm_mode_object_add+0x20/0x2c > [ 4.620552] drm_property_create+0xdc/0x174 > [ 4.624723] drm_property_create_enum+0x34/0x98 > [ 4.629241] drm_connector_set_panel_orientation+0x64/0xa0 > [ 4.634716] boe_panel_get_modes+0x88/0xd8 > [ 4.638802] drm_panel_get_modes+0x2c/0x48 > [ 4.642887] panel_bridge_get_modes+0x1c/0x28 > [ 4.647233] drm_bridge_connector_get_modes+0xa0/0xd4 > [ 4.652273] drm_helper_probe_single_connector_modes+0x218/0x700 > [ 4.658266] drm_mode_getconnector+0x1b4/0x45c > [ 4.662699] drm_ioctl_kernel+0xac/0x128 > [ 4.666611] drm_ioctl+0x268/0x410 > [ 4.670002] drm_compat_ioctl+0xdc/0xf0 > [ 4.673829] __arm64_compat_sys_ioctl+0xc8/0x100 > [ 4.678436] el0_svc_common+0xf4/0x1c0 > [ 4.682174] do_el0_svc_compat+0x28/0x3c > [ 4.686088] el0_svc_compat+0x10/0x1c > [ 4.689738] el0_sync_compat_handler+0xa8/0xcc > [ 4.694171] el0_sync_compat+0x178/0x180 > [ 4.698082] ---[ end trace b4f2db9d9c88610b ]--- > [ 4.702721] ------------[ cut here ]------------ > [ 4.707329] WARNING: CPU: 5 PID: 369 at drivers/gpu/drm/drm_mode_object.c:243 drm_object_attach_property+0x48/0xb8 > > [ 4.833830] Call trace: > [ 4.836266] drm_object_attach_property+0x48/0xb8 > [ 4.840958] drm_connector_set_panel_orientation+0x84/0xa0 > [ 4.846432] boe_panel_get_modes+0x88/0xd8 > [ 4.850516] drm_panel_get_modes+0x2c/0x48 > [ 4.854600] panel_bridge_get_modes+0x1c/0x28 > [ 4.858946] drm_bridge_connector_get_modes+0xa0/0xd4 > [ 4.863984] drm_helper_probe_single_connector_modes+0x218/0x700 > [ 4.869978] drm_mode_getconnector+0x1b4/0x45c > [ 4.874410] drm_ioctl_kernel+0xac/0x128 > [ 4.878320] drm_ioctl+0x268/0x410 > [ 4.881711] drm_compat_ioctl+0xdc/0xf0 > [ 4.885536] __arm64_compat_sys_ioctl+0xc8/0x100 > [ 4.890142] el0_svc_common+0xf4/0x1c0 > [ 4.893879] do_el0_svc_compat+0x28/0x3c > [ 4.897791] el0_svc_compat+0x10/0x1c > [ 4.901441] el0_sync_compat_handler+0xa8/0xcc > [ 4.905873] el0_sync_compat+0x178/0x180 > [ 4.909783] ---[ end trace b4f2db9d9c88610c ]--- > > Signed-off-by: Hsin-Yi Wang ping on the thread, thanks. > --- > drivers/gpu/drm/mediatek/mtk_dsi.c | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c > index ae403c67cbd9..45a702ee09f3 100644 > --- a/drivers/gpu/drm/mediatek/mtk_dsi.c > +++ b/drivers/gpu/drm/mediatek/mtk_dsi.c > @@ -205,6 +205,7 @@ struct mtk_dsi { > u32 irq_data; > wait_queue_head_t irq_wait_queue; > const struct mtk_dsi_driver_data *driver_data; > + enum drm_panel_orientation orientation; > }; > > static inline struct mtk_dsi *bridge_to_dsi(struct drm_bridge *b) > @@ -966,6 +967,8 @@ static int mtk_dsi_encoder_init(struct drm_device *drm, struct mtk_dsi *dsi) > } > drm_connector_attach_encoder(dsi->connector, &dsi->encoder); > > + drm_connector_set_panel_orientation(dsi->connector, dsi->orientation); > + > return 0; > > err_cleanup_encoder: > @@ -1029,6 +1032,12 @@ static int mtk_dsi_probe(struct platform_device *pdev) > ret = PTR_ERR(dsi->next_bridge); > goto err_unregister_host; > } > + > + ret = of_drm_get_panel_orientation(panel->dev->of_node, &dsi->orientation); > + if (ret) { > + dev_err(dev, "failed to get panel orientation %d\n", ret); > + return ret; > + } > } > > dsi->driver_data = of_device_get_match_data(dev); > -- > 2.31.1.295.g9ea45b61b8-goog > _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.6 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 61745C43460 for ; Tue, 20 Apr 2021 09:05:36 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 099C3611F0 for ; Tue, 20 Apr 2021 09:05:36 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 099C3611F0 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=chromium.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 275716E4B3; Tue, 20 Apr 2021 09:05:35 +0000 (UTC) Received: from mail-io1-xd2b.google.com (mail-io1-xd2b.google.com [IPv6:2607:f8b0:4864:20::d2b]) by gabe.freedesktop.org (Postfix) with ESMTPS id 038766E4B3 for ; Tue, 20 Apr 2021 09:05:33 +0000 (UTC) Received: by mail-io1-xd2b.google.com with SMTP id e186so37754648iof.7 for ; Tue, 20 Apr 2021 02:05:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Sky0InoRGfz08ZIPfmMoicP8h0LTiiMAffpNGDgYJbs=; b=nXMxTLh0sKp6GpxETText2EprCJ00h2r68bNjyo/IF5LUKD5vBUWvHwARRPAn+uyrJ kQjDZ0KCSUQEIki+oYck1Elb/FO48FaV2LtgbHDizELXrrlpNqUAtUVQ5tTUE9mHKyB5 ZbQXnv+ZIdsOqZz8tjBc7JlTrPQwcxVciypAE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Sky0InoRGfz08ZIPfmMoicP8h0LTiiMAffpNGDgYJbs=; b=KoA+o7aBB7GOyxruH4/OgiKdCPWEJRUgdHPMRqD5x+DRTAZC6ff0YJFLUrJzjySjxk qpK9BS+TTSsSGwzFyFZ6ceaciPi0MpThvENe4U7PBdrsJ+juTZENeeZb8DvBWieadqhc 7Fkr0APM0ZKeEZ+MQ6JXNvHvaZYYiDzX77tBcxIWpcDbtQ2EpFidKBwCsWnHByaXuJOv DIMgpix87cJsACrO9UqSIkkmfNlG4vaXP7MmF2221+bcHWDwCOSai3kUmhTP12v0m+dq Ycjj1zHnax99l0HcimvdL+XryWlmGb7Xvn5TIUxf0ftouzpL6hFEaoOO/xIe94/t6Rrs qfTg== X-Gm-Message-State: AOAM533ypogsA1KTnZ1R2Ezxmmh5wmawfOTpMG7Wyp90U0u1Nd7Pra1v dj22lQsC5mhuaiKGB+cWT9bNHQrkF+zEmd/zoaNTbRU4+rA= X-Google-Smtp-Source: ABdhPJzFCTPxONwGXoOnArB99NKE78wLC243d0eUdaQKA1eYD2nbVDr80hIVXEpRVLb15Vj/6o9+Igu1fSkXz87MjDc= X-Received: by 2002:a5d:9682:: with SMTP id m2mr18657371ion.20.1618909533198; Tue, 20 Apr 2021 02:05:33 -0700 (PDT) MIME-Version: 1.0 References: <20210409045314.3420733-1-hsinyi@chromium.org> In-Reply-To: <20210409045314.3420733-1-hsinyi@chromium.org> From: Hsin-Yi Wang Date: Tue, 20 Apr 2021 17:05:06 +0800 Message-ID: Subject: Re: [PATCH 1/2] drm/mediatek: set panel orientation before drm_dev_register(). To: Chun-Kuang Hu , Matthias Brugger , Enric Balletbo i Serra X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Devicetree List , David Airlie , lkml , dri-devel , Rob Herring , "moderated list:ARM/Mediatek SoC support" , "moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE" Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" On Fri, Apr 9, 2021 at 12:53 PM Hsin-Yi Wang wrote: > > drm_dev_register() sets connector->registration_state to > DRM_CONNECTOR_REGISTERED and dev->registered to true. If > drm_connector_set_panel_orientation() is first called after > drm_dev_register(), it will fail several checks and results in following > warning. So set panel orientation in dsi before drm_dev_register() is > called. > > [ 4.480976] ------------[ cut here ]------------ > [ 4.485603] WARNING: CPU: 5 PID: 369 at drivers/gpu/drm/drm_mode_object.c:45 __drm_mode_object_add+0xb4/0xbc > > [ 4.609772] Call trace: > [ 4.612208] __drm_mode_object_add+0xb4/0xbc > [ 4.616466] drm_mode_object_add+0x20/0x2c > [ 4.620552] drm_property_create+0xdc/0x174 > [ 4.624723] drm_property_create_enum+0x34/0x98 > [ 4.629241] drm_connector_set_panel_orientation+0x64/0xa0 > [ 4.634716] boe_panel_get_modes+0x88/0xd8 > [ 4.638802] drm_panel_get_modes+0x2c/0x48 > [ 4.642887] panel_bridge_get_modes+0x1c/0x28 > [ 4.647233] drm_bridge_connector_get_modes+0xa0/0xd4 > [ 4.652273] drm_helper_probe_single_connector_modes+0x218/0x700 > [ 4.658266] drm_mode_getconnector+0x1b4/0x45c > [ 4.662699] drm_ioctl_kernel+0xac/0x128 > [ 4.666611] drm_ioctl+0x268/0x410 > [ 4.670002] drm_compat_ioctl+0xdc/0xf0 > [ 4.673829] __arm64_compat_sys_ioctl+0xc8/0x100 > [ 4.678436] el0_svc_common+0xf4/0x1c0 > [ 4.682174] do_el0_svc_compat+0x28/0x3c > [ 4.686088] el0_svc_compat+0x10/0x1c > [ 4.689738] el0_sync_compat_handler+0xa8/0xcc > [ 4.694171] el0_sync_compat+0x178/0x180 > [ 4.698082] ---[ end trace b4f2db9d9c88610b ]--- > [ 4.702721] ------------[ cut here ]------------ > [ 4.707329] WARNING: CPU: 5 PID: 369 at drivers/gpu/drm/drm_mode_object.c:243 drm_object_attach_property+0x48/0xb8 > > [ 4.833830] Call trace: > [ 4.836266] drm_object_attach_property+0x48/0xb8 > [ 4.840958] drm_connector_set_panel_orientation+0x84/0xa0 > [ 4.846432] boe_panel_get_modes+0x88/0xd8 > [ 4.850516] drm_panel_get_modes+0x2c/0x48 > [ 4.854600] panel_bridge_get_modes+0x1c/0x28 > [ 4.858946] drm_bridge_connector_get_modes+0xa0/0xd4 > [ 4.863984] drm_helper_probe_single_connector_modes+0x218/0x700 > [ 4.869978] drm_mode_getconnector+0x1b4/0x45c > [ 4.874410] drm_ioctl_kernel+0xac/0x128 > [ 4.878320] drm_ioctl+0x268/0x410 > [ 4.881711] drm_compat_ioctl+0xdc/0xf0 > [ 4.885536] __arm64_compat_sys_ioctl+0xc8/0x100 > [ 4.890142] el0_svc_common+0xf4/0x1c0 > [ 4.893879] do_el0_svc_compat+0x28/0x3c > [ 4.897791] el0_svc_compat+0x10/0x1c > [ 4.901441] el0_sync_compat_handler+0xa8/0xcc > [ 4.905873] el0_sync_compat+0x178/0x180 > [ 4.909783] ---[ end trace b4f2db9d9c88610c ]--- > > Signed-off-by: Hsin-Yi Wang ping on the thread, thanks. > --- > drivers/gpu/drm/mediatek/mtk_dsi.c | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c > index ae403c67cbd9..45a702ee09f3 100644 > --- a/drivers/gpu/drm/mediatek/mtk_dsi.c > +++ b/drivers/gpu/drm/mediatek/mtk_dsi.c > @@ -205,6 +205,7 @@ struct mtk_dsi { > u32 irq_data; > wait_queue_head_t irq_wait_queue; > const struct mtk_dsi_driver_data *driver_data; > + enum drm_panel_orientation orientation; > }; > > static inline struct mtk_dsi *bridge_to_dsi(struct drm_bridge *b) > @@ -966,6 +967,8 @@ static int mtk_dsi_encoder_init(struct drm_device *drm, struct mtk_dsi *dsi) > } > drm_connector_attach_encoder(dsi->connector, &dsi->encoder); > > + drm_connector_set_panel_orientation(dsi->connector, dsi->orientation); > + > return 0; > > err_cleanup_encoder: > @@ -1029,6 +1032,12 @@ static int mtk_dsi_probe(struct platform_device *pdev) > ret = PTR_ERR(dsi->next_bridge); > goto err_unregister_host; > } > + > + ret = of_drm_get_panel_orientation(panel->dev->of_node, &dsi->orientation); > + if (ret) { > + dev_err(dev, "failed to get panel orientation %d\n", ret); > + return ret; > + } > } > > dsi->driver_data = of_device_get_match_data(dev); > -- > 2.31.1.295.g9ea45b61b8-goog > _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel