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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 9655FC433F5 for ; Sun, 28 Nov 2021 15:57:42 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id C4EB572F3D; Sun, 28 Nov 2021 15:57:41 +0000 (UTC) Received: from mailgw02.mediatek.com (unknown [210.61.82.184]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5ADE172F3D for ; Sun, 28 Nov 2021 15:57:40 +0000 (UTC) X-UUID: a06df0059a734746a1cc6e4dd9453dbf-20211128 X-UUID: a06df0059a734746a1cc6e4dd9453dbf-20211128 Received: from mtkexhb02.mediatek.inc [(172.21.101.103)] by mailgw02.mediatek.com (envelope-from ) (Generic MTA with TLSv1.2 ECDHE-RSA-AES256-SHA384 256/256) with ESMTP id 283879108; Sun, 28 Nov 2021 23:57:35 +0800 Received: from mtkcas10.mediatek.inc (172.21.101.39) by mtkmbs10n2.mediatek.inc (172.21.101.183) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.2.792.3; Sun, 28 Nov 2021 23:57:34 +0800 Received: from mtksdccf07 (172.21.84.99) by mtkcas10.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Sun, 28 Nov 2021 23:57:33 +0800 Message-ID: From: Jason-JH Lin To: Tzung-Bi Shih In-Reply-To: References: <20211117064158.27451-1-jason-jh.lin@mediatek.com> <20211117064158.27451-4-jason-jh.lin@mediatek.com> Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 Subject: Re: FW: [PATCH 3/3] drm/mediatek: add devlink to cmdq dev Resent-From: Jason-JH Lin Resent-Cc: DRI Development , "moderated list:ARM/Mediatek SoC support" , "Linux ARM" , linux-kernel , Hsin-Yi Wang , "Fei Shao" Date: Sun, 28 Nov 2021 23:57:33 +0800 X-Mailer: Evolution 3.28.5-0ubuntu0.18.04.2 Content-Transfer-Encoding: quoted-printable X-MTK: N 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: Chun-Kuang Hu , "; David Airlie" , "; Singo Chang =?UTF-8?Q?=28=E5=BC=B5=E8=88=88=E5=9C=8B=29?=" , "; Jassi Brar" , "; dri-devel@lists.freedesktop.org; linux-mediatek@lists.infradead.org; linux-arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org; hsinyi@chromium.org; fshao@chromium.org; Nancy Lin =?UTF-8?Q?=28=E6=9E=97=E6=AC=A3=E8=9E=A2=29?=" , "; Matthias Brugger" Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Resent-Message-Id: <20211128155741.C4EB572F3D@gabe.freedesktop.org> Resent-Date: Sun, 28 Nov 2021 15:57:41 +0000 (UTC) Hi Tzung-Bi, Thanks for the reviews. > From: Linux-mediatek On > Behalf Of Tzung-Bi Shih > Sent: Thursday, November 18, 2021 1:55 PM > To: Jason-JH Lin (=E6=9E=97=E7=9D=BF=E7=A5=A5) > Cc: Chun-Kuang Hu ; Philipp Zabel < > p.zabel@pengutronix.de>; Matthias Brugger ; > Jassi Brar ; David Airlie >; Daniel Vetter ; dri-devel@lists.freedesktop.org;=20 > linux-mediatek@lists.infradead.org;=20 > linux-arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org;=20 > hsinyi@chromium.org; fshao@chromium.org; Nancy Lin (=E6=9E=97=E6=AC=A3=E8= =9E=A2) < > Nancy.Lin@mediatek.com>; Singo Chang (=E5=BC=B5=E8=88=88=E5=9C=8B) > Subject: Re: [PATCH 3/3] drm/mediatek: add devlink to cmdq dev >=20 > On Wed, Nov 17, 2021 at 02:41:58PM +0800, jason-jh.lin wrote: > > @@ -158,6 +159,7 @@ static void mtk_drm_crtc_destroy(struct > > drm_crtc *crtc) > > mtk_drm_cmdq_pkt_destroy(&mtk_crtc->cmdq_handle); > > =20 > > if (mtk_crtc->cmdq_client.chan) { > > + device_link_remove(mtk_crtc->drm_dev, mtk_crtc- > > >cmdq_client.chan->mbox->dev); > > mbox_free_channel(mtk_crtc->cmdq_client.chan); > > mtk_crtc->cmdq_client.chan =3D NULL; > > } >=20 > [...] > > @@ -956,6 +959,16 @@ int mtk_drm_crtc_create(struct drm_device > > *drm_dev, > > } > > =20 > > if (mtk_crtc->cmdq_client.chan) { > > + struct device_link *link; > > + > > + /* add devlink to cmdq dev to make sure suspend/resume > > order is correct */ > > + link =3D device_link_add(dev, mtk_crtc->cmdq_client.chan- > > >mbox->dev, > > + DL_FLAG_PM_RUNTIME | > > DL_FLAG_STATELESS); > > + if (!link) { > > + dev_err(dev, "Unable to link dev=3D%s\n", > > + dev_name(mtk_crtc->cmdq_client.chan- > > >mbox->dev)); > > + } > > + >=20 > If device_link_add() failed, doesn't mtk_drm_crtc_create() need to > return an error and exit? OK, I'll add the return error at the next verion. >=20 > OTOH, if device_link_add() failed, won't it bring any side effects to > call device_link_remove()? >=20 Because device_link_remove() will find the device_link of supplier and consumer, then delete the device_link between them. If device_link_add() failed, supplier and consumer won't create the device_link. So calling device_link_remove() won't do anything without deive_link and won't bring any side effects. Regards, Jason-JH.Lin > _______________________________________________ > Linux-mediatek mailing list > Linux-mediatek@lists.infradead.org >=20 https://urldefense.com/v3/__http://lists.infradead.org/mailman/listinfo/lin= ux-mediatek__;!!CTRNKA9wMg0ARbw!125dmOZ7xCLkwbIrzZf1VqVLQBbdT4RFHoMjR38U1Ge= CxaTM6xvvB-mSr7sTc6BuY5IH$ > =20 --=20 Jason-JH Lin 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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 6123AC433F5 for ; Sun, 28 Nov 2021 16:02:44 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id BAB0D72F93; Sun, 28 Nov 2021 16:02:42 +0000 (UTC) Received: from mailgw01.mediatek.com (unknown [60.244.123.138]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8D89672F93 for ; Sun, 28 Nov 2021 16:02:40 +0000 (UTC) X-UUID: 81bda1ccb0b4480cb9210040dba67a6d-20211129 X-UUID: 81bda1ccb0b4480cb9210040dba67a6d-20211129 Received: from mtkmbs10n1.mediatek.inc [(172.21.101.34)] by mailgw01.mediatek.com (envelope-from ) (Generic MTA with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 256/256) with ESMTP id 1868573853; Mon, 29 Nov 2021 00:02:34 +0800 Received: from mtkcas10.mediatek.inc (172.21.101.39) by mtkmbs07n1.mediatek.inc (172.21.101.16) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Mon, 29 Nov 2021 00:02:33 +0800 Received: from mtksdccf07 (172.21.84.99) by mtkcas10.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Mon, 29 Nov 2021 00:02:33 +0800 Message-ID: From: Jason-JH Lin To: Tzung-Bi Shih In-Reply-To: References: <20211117064158.27451-1-jason-jh.lin@mediatek.com> <20211117064158.27451-4-jason-jh.lin@mediatek.com> Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 Subject: Re: FW: [PATCH 3/3] drm/mediatek: add devlink to cmdq dev Resent-From: Jason-JH Lin Resent-Cc: DRI Development , "; moderated list:ARM/Mediatek SoC support" , "; Linux ARM" , "; linux-kernel" , "; Hsin-Yi Wang" , "; Fei Shao" Date: Mon, 29 Nov 2021 00:02:33 +0800 X-Mailer: Evolution 3.28.5-0ubuntu0.18.04.2 Content-Transfer-Encoding: quoted-printable X-MTK: N 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: Chun-Kuang Hu , "; David Airlie" , "; Singo Chang =?UTF-8?Q?=28=E5=BC=B5=E8=88=88=E5=9C=8B=29?=" , "; Jassi Brar" , "; dri-devel@lists.freedesktop.org; linux-mediatek@lists.infradead.org; linux-arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org; hsinyi@chromium.org; fshao@chromium.org; Nancy Lin =?UTF-8?Q?=28=E6=9E=97=E6=AC=A3=E8=9E=A2=29?=" , "; Matthias Brugger" Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Resent-Message-Id: <20211128160242.BAB0D72F93@gabe.freedesktop.org> Resent-Date: Sun, 28 Nov 2021 16:02:42 +0000 (UTC) Message-ID: <20211128160233.oZvz6IS8s-dUOZCCfXFEMT4GkUYUkGs2dyGe1psuLUc@z> Hi Tzung-Bi, Thanks for the reviews. > From: Linux-mediatek On > Behalf Of Tzung-Bi Shih > Sent: Thursday, November 18, 2021 1:55 PM > To: Jason-JH Lin (=E6=9E=97=E7=9D=BF=E7=A5=A5) > Cc: Chun-Kuang Hu ; Philipp Zabel < > p.zabel@pengutronix.de>; Matthias Brugger ; > Jassi Brar ; David Airlie >; Daniel Vetter ; dri-devel@lists.freedesktop.org;=20 > linux-mediatek@lists.infradead.org;=20 > linux-arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org;=20 > hsinyi@chromium.org; fshao@chromium.org; Nancy Lin (=E6=9E=97=E6=AC=A3=E8= =9E=A2) < > Nancy.Lin@mediatek.com>; Singo Chang (=E5=BC=B5=E8=88=88=E5=9C=8B) > Subject: Re: [PATCH 3/3] drm/mediatek: add devlink to cmdq dev >=20 > On Wed, Nov 17, 2021 at 02:41:58PM +0800, jason-jh.lin wrote: > > @@ -158,6 +159,7 @@ static void mtk_drm_crtc_destroy(struct > > drm_crtc *crtc) > > mtk_drm_cmdq_pkt_destroy(&mtk_crtc->cmdq_handle); > > =20 > > if (mtk_crtc->cmdq_client.chan) { > > + device_link_remove(mtk_crtc->drm_dev, mtk_crtc- > > >cmdq_client.chan->mbox->dev); > > mbox_free_channel(mtk_crtc->cmdq_client.chan); > > mtk_crtc->cmdq_client.chan =3D NULL; > > } >=20 > [...] > > @@ -956,6 +959,16 @@ int mtk_drm_crtc_create(struct drm_device > > *drm_dev, > > } > > =20 > > if (mtk_crtc->cmdq_client.chan) { > > + struct device_link *link; > > + > > + /* add devlink to cmdq dev to make sure suspend/resume > > order is correct */ > > + link =3D device_link_add(dev, mtk_crtc->cmdq_client.chan- > > >mbox->dev, > > + DL_FLAG_PM_RUNTIME | > > DL_FLAG_STATELESS); > > + if (!link) { > > + dev_err(dev, "Unable to link dev=3D%s\n", > > + dev_name(mtk_crtc->cmdq_client.chan- > > >mbox->dev)); > > + } > > + >=20 > If device_link_add() failed, doesn't mtk_drm_crtc_create() need to > return an error and exit? OK, I'll add the return error at the next verion. >=20 > OTOH, if device_link_add() failed, won't it bring any side effects to > call device_link_remove()? >=20 Because device_link_remove() will find the device_link of supplier and consumer, then delete the device_link between them. If device_link_add() failed, supplier and consumer won't create the device_link. So calling device_link_remove() won't do anything without deive_link and won't bring any side effects. Regards, Jason-JH.Lin > _______________________________________________ > Linux-mediatek mailing list > Linux-mediatek@lists.infradead.org >=20 https://urldefense.com/v3/__http://lists.infradead.org/mailman/listinfo/lin= ux-mediatek__;!!CTRNKA9wMg0ARbw!125dmOZ7xCLkwbIrzZf1VqVLQBbdT4RFHoMjR38U1Ge= CxaTM6xvvB-mSr7sTc6BuY5IH$ > =20 --=20 Jason-JH Lin