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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 0CA49C47DD9 for ; Fri, 22 Mar 2024 08:49:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Content-ID:In-Reply-To: References:Message-ID:Date:Subject:CC:To:From:Reply-To:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=xuzOWVf2H91O+e4Qwf66Iw9i//BiBaHzh+fu6jPJMVg=; b=qr7bhAcEh6dqPZ VFYk9Xk+lZg5Xg8b7oY2qQzI27kxImODQ+2NADRU5bFMO1uUgeHJ5jKteJY1Pb1J2OqKp4gi/ZD6p NbDEb6zTyPlUKbhSiQ5jk+Cv+ibOhgUPM7RZ+WJlqOrZERIOwPLehcOuUEbdCLpwCLuv+AL0rd6Fb LLGtagpJunoNwNUa+65OEnfKzo7fGUugMeo7IXFxWjRcwgrLz7KoR3aB+QvXQ2M2jj4WuRMmg/H3Z rc5z5vBoSGAXQ5WcPyLU2uolI1bcdBVfKR+ZmAH4OevGwuwT2zDCSsvPoWjjFuZHEJHCSFoyhGOOv 0NTUXAemTtHzyYjJmBxw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rnaaJ-00000006Qd4-1mxB; Fri, 22 Mar 2024 08:49:07 +0000 Received: from mailgw01.mediatek.com ([216.200.240.184]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rnaaG-00000006QcX-2Tvh; Fri, 22 Mar 2024 08:49:05 +0000 X-UUID: 0690c088e82911ee9aa9374d6d45775a-20240322 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=MIME-Version:Content-Transfer-Encoding:Content-ID:Content-Type:In-Reply-To:References:Message-ID:Date:Subject:CC:To:From; bh=Xz7rznxGLbCt+ETqeRU8TMpn3HG8aBhUbNhlsRjDo1Y=; b=VAJ18TKnM22m2oENp+8mN28vGsVlW0ZE2435ROrkZkKTTPUPBR4uh0H7tn7QTzKoRKPbeeOl5P4doRH3W/jcHVcKWP1bN3IyaolfAx5Tuk9vpSfWvKxFlvfNTRh1FFloFyHMid+sMNtbeCR81isx3iqlfHyAydAJlSN9I5aRQM4=; X-CID-P-RULE: Release_Ham X-CID-O-INFO: VERSION:1.1.37,REQID:8ce3de0d-442e-432b-89bf-aab453cc8526,IP:0,U RL:0,TC:0,Content:0,EDM:0,RT:0,SF:0,FILE:0,BULK:0,RULE:Release_Ham,ACTION: release,TS:0 X-CID-META: VersionHash:6f543d0,CLOUDID:ddfcb590-e2c0-40b0-a8fe-7c7e47299109,B ulkID:nil,BulkQuantity:0,Recheck:0,SF:102,TC:nil,Content:0,EDM:-3,IP:nil,U RL:11|1,File:nil,RT:nil,Bulk:nil,QS:nil,BEC:nil,COL:0,OSI:0,OSA:0,AV:0,LES :1,SPR:NO,DKR:0,DKP:0,BRR:0,BRE:0 X-CID-BVR: 0 X-CID-BAS: 0,_,0,_ X-CID-FACTOR: TF_CID_SPAM_SNR,TF_CID_SPAM_ULN X-UUID: 0690c088e82911ee9aa9374d6d45775a-20240322 Received: from mtkmbs11n1.mediatek.inc [(172.21.101.185)] by mailgw01.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 256/256) with ESMTP id 2034196243; Fri, 22 Mar 2024 01:48:59 -0700 Received: from mtkmbs10n1.mediatek.inc (172.21.101.34) by mtkmbs10n1.mediatek.inc (172.21.101.34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.26; Fri, 22 Mar 2024 16:48:56 +0800 Received: from SG2PR03CU006.outbound.protection.outlook.com (172.21.101.237) by mtkmbs10n1.mediatek.inc (172.21.101.34) with Microsoft SMTP Server id 15.2.1118.26 via Frontend Transport; Fri, 22 Mar 2024 16:48:56 +0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=S2iI+uY7xckp2nfRtwaJLXKNGOi/wKvT6xbZC4XDiG4rmE4EluJL8XfRhASgmJA6SZFoBY9mTPYARCqkxGTxVAwHlQ6gzaWGGhO2V52YgLIj0pLMuc6KzLyQl9Xx9/V+XB1b0vcUiGdF8kWLlv3PN6QT6i9yEHX/Kg5hF4/7KWLRdORn9iAOLIzF5ibsFV3SpoTv1xS201XzQXpqOkQvolpuUkFAYj35rjYKuyhVguVnzEW9+m2x9YKbonUUUwJ5JXjHLBOJl54Kbgh3j6b6DWEJH/WbE5ZvW1IsPwbusMz33f8AHWLuJ7rTe6DsvUIm4MMYfciwWZ1C1lKE/21a+g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Xz7rznxGLbCt+ETqeRU8TMpn3HG8aBhUbNhlsRjDo1Y=; b=Yh1bnaN4t8tsWXAK2TcB0ycgaVlUTsRF7yUL+Ko5nnwwEt5TndIMU/jaXPr1qzbtzUvYA9qdI8gFbKoFMXZSu79G4lSaebpJ1HljEqEJySO8SPUOZ7IInuRY+A/Lv+AgqBDFGIsarL90IMfeaUphKsLaZqIAQNdc8jBBgyatrgWd3PJ9XDkLfGMDzXIiZ6EQ3ketR/de/uq1UtFEMu1RlIfFHSR3YZXrkDOzj0H3LCLZo9V45JoPR4Zofx51D9yEgHs/JcGdJzMpSCcULa6m7OO/ptSc3U1O76aw51o50R1zfbwm5uJxbPjZJr4nhRfddVY82U+5CIanTqhXF7ltLA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=mediatek.com; dmarc=pass action=none header.from=mediatek.com; dkim=pass header.d=mediatek.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mediateko365.onmicrosoft.com; s=selector2-mediateko365-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Xz7rznxGLbCt+ETqeRU8TMpn3HG8aBhUbNhlsRjDo1Y=; b=EyIWRfZSCk6a1pj5ihweTAvp6UOXNiQqJ6oZIYRVnU7MCKJiyTGCbAxJrnWuR14tLfIjU690MyFzFQg+HTFKsG6P9rt34eNV+GkxbcL6TeeC50Ud1h7pBbkOdn6DNAa4bQ91oRQgFeH5GSBTFCgbbSSe/gVNsbSKtmt1r2JmIuk= Received: from TYZPR03MB6624.apcprd03.prod.outlook.com (2603:1096:400:1f4::13) by TYSPR03MB8806.apcprd03.prod.outlook.com (2603:1096:405:99::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7386.28; Fri, 22 Mar 2024 08:48:53 +0000 Received: from TYZPR03MB6624.apcprd03.prod.outlook.com ([fe80::f3b6:91a7:e0fb:cb27]) by TYZPR03MB6624.apcprd03.prod.outlook.com ([fe80::f3b6:91a7:e0fb:cb27%7]) with mapi id 15.20.7386.031; Fri, 22 Mar 2024 08:48:53 +0000 From: =?utf-8?B?Q0sgSHUgKOiDoeS/iuWFiSk=?= To: "angelogioacchino.delregno@collabora.com" , "chunkuang.hu@kernel.org" CC: "linux-mediatek@lists.infradead.org" , "linux-kernel@vger.kernel.org" , "wenst@chromium.org" , "kernel@collabora.com" , =?utf-8?B?TmFuY3kgTGluICjmnpfmrKPonqIp?= , "daniel@ffwll.ch" , "p.zabel@pengutronix.de" , "dri-devel@lists.freedesktop.org" , =?utf-8?B?TmF0aGFuIEx1ICjlkYLmnbHpnJYp?= , "airlied@gmail.com" , "linux-arm-kernel@lists.infradead.org" , "matthias.bgg@gmail.com" Subject: Re: [PATCH 2/3] drm/mediatek: Perform iounmap on simple DDP component destruction Thread-Topic: [PATCH 2/3] drm/mediatek: Perform iounmap on simple DDP component destruction Thread-Index: AQHaVQ2oM95wEItPMkWi9kS/tGuFoLFDwW2A Date: Fri, 22 Mar 2024 08:48:53 +0000 Message-ID: <4b5d172c9b169313aaec777158e2db697fe447fc.camel@mediatek.com> References: <20240201125304.218467-1-angelogioacchino.delregno@collabora.com> <20240201125304.218467-3-angelogioacchino.delregno@collabora.com> In-Reply-To: <20240201125304.218467-3-angelogioacchino.delregno@collabora.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYZPR03MB6624:EE_|TYSPR03MB8806:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: uLLZjF1cdTdz/dTFRvNrMb+scxovbA17a1ky08lU91AJp+5iJRT7CtJLX0lFppDXiO95ftl7p846k009itt/9XkC4L+1D8Z1powbhgCvJU00rutR5EfqPDfNNaWAeUXMjNwMvYiyobxRAlC9zE1Sz8zeKCJWtNfE2TKCkGw0rqCNUq+XQzT8CbcH6+nqnSBQWcDdK9lRDSTwd7hiFTA7PfqtH5iSxy1gvvkVukSfmFF2oj0qaNxEAxm2B5zSdKMTNAxVNBqkCImMFtmXhapShsigpOJqXNJnno2bZfrw6XE2E+Qy0gCPfSzL16Zp86IO7WRg6pew78mfkvefWHebPB23l6lx003dFhQdTxfQENTGqesR4WExZCO978YL6K3dHGSLMsZ4XvVXB85qItP259/Z7Rt9OS8fuAQnsiR2vy/bX/S2fxn//FxtFXH4YqhCgyUgWF/n1wj52HX9Ox/wR+V+MoIXNUgPrRV5WTkAVPpDPvW86yXtJQuWE+TKb830qIkuj4IuCLhPxXUw9S6M3WSISLNH/YHkcCvfjfP1v4cP39UQD+Y0dN7QdMOCxpawZCyAk7L+YpjJj4TtP+TqfNyq6DeBVl893xOBZ+kEKbvRTtJ+Dl7ixI/5rIHEY+U2NAp+wwfQ+NtvSd0epqObVgHzIngb5YXMaRfwn62yAoU= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TYZPR03MB6624.apcprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(376005)(366007)(1800799015);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?WVVZQnhLL3d1QXZmSFNIVjFUYzR4UngvMEV3T01FSXRzOXR0Q2RvYVptN2ZL?= =?utf-8?B?V25BbHdJc0NhazMrdHhvbWxrVFpwd0ZFZFAvS1BtZWV1bzZLNDNZNmtrMlc4?= =?utf-8?B?UHlTRjdMM1VaVFBCSVhiTmlOWElzby9CTGhsRXdpUUQ3QUV4dkJBaWlYVUhW?= =?utf-8?B?WkkrWmt5cUpBRHlLSFIxYmxXNnFLS1ZqaFc4Vkk2eWJzTGZDS3pQL3JBUk1R?= =?utf-8?B?OUQ5NEpMZnIwS1ZyVWdwQWtvMGlibjUvN2IvSHVGWjEzUUxmcFFMUThFWk8y?= =?utf-8?B?RlA1Y0xLVHZGcGRYWEYzUmhGTm9oZUIrQUlqckJZRGx2ekMxd3pyZjBLVkEx?= =?utf-8?B?Q21jcytQN1JoUXVSMnBnWjluc1YzMmc1N2ZxSmZFQUNGelFycFZYZ1YxSnBF?= =?utf-8?B?ZnQ5aCtlTjljR1FLMDFEb2ZEdmNETGVjdHVyYUdMWmd1UUVwUVViOTZQNHRS?= =?utf-8?B?RUNqOTVxZy9mSWlRdHlESnZEZW1JaWpDWG94VHJ3Q2dSNmFqakdDbEJRNmd3?= =?utf-8?B?TzlZN00zejRZMWY5RDRBanF3S20rWmxSUWEreGpOSEtRbGM0NlIyTHBscG1F?= =?utf-8?B?UWVlYjJnN3B0Q0tBZC9ESmRlTEJhd0s4NkVGbFJaU2dSYk8yT3drL2tQQlEr?= =?utf-8?B?TG91d3FWYnFtQ1l4OElLN3hFUmJrRVYzUUtETU9iSElRcGJvVXB4SG95NzJJ?= =?utf-8?B?bk5vQ3FRTTJIeC9RRTluVzcvNlNKWVIzYjNZK2pMWDM4OXVqVUM2d3hUN1dl?= =?utf-8?B?SVplMWtycjVmSC9KSUgwcjkvTXNqKzZWVXdkeEdiOVZZWlZXeWlBS2lsOTdY?= =?utf-8?B?ZG9jNHV0Y0NFVUpVNXRsQmdXTk1uR2hYNzA5Rm0xa1JyMEZzYmVRQXlYSlZ3?= =?utf-8?B?aVpObDJZTVR5RmpIa3dqOEJQK0ZGS0t1ckJtN3JaOHhVNWxXT2hPQlJOaXdu?= =?utf-8?B?K0t0bk9obno1K2M5Y1ljaGc5djVHQmNWejhTTW5RdGxQY1A4SkdUcjlaaHB0?= =?utf-8?B?MFNES054cDRHeW56NnhWUnZxRU5zZFVNenNWcTIyRWU4QXBtanFSNlhKdnky?= =?utf-8?B?aTRrdDFzekovN0c3SXNIZVhpVnNxUVNsZS85NWdUd2FtNS9VOUFsbkdnTkpY?= =?utf-8?B?NE5JdGd1Y3lDaXg2a0VoOUZRUGtIazkzQVlHLzd4MUpzTUYyMnlDQkUxc0ZF?= =?utf-8?B?Ni9WM0l1WWhvWTFjUVdReUVMeFBud0I2RFQ5bFR0cVd0ZHBmcW9lREJhcVhT?= =?utf-8?B?NEFBdURoTUtMQisvS2FEUjBRZHpzZTlkTU5ycmo2K3dCekYwL3BPZVc0WDZo?= =?utf-8?B?bkllVFhxbzVvdHQ5UnhZUnAzWEVVUWc2cUJVeU1qUXhIemRJV0dTVDdpL2pa?= =?utf-8?B?M1kxNDBhZGE1U0hiOUlDL2EveGJyWFd5OWJLTUx0YzRKbGlvV29GWkxNeU0v?= =?utf-8?B?eVBac2tDdkdzdHVHTnd6Mlp4MC9qMjVoVU9kRHU0bkp5T3Jjd1M4YjBXQnVy?= =?utf-8?B?L2kwUUF0UXhxZXhZQkVXN1lhN0hKckJzNlZRNG9RaDVEVGpMQlh6Z0JkTjJS?= =?utf-8?B?b3BIUk13aVVCbWUyQ2w5aFNOQ2EzUVBPYTN5OUg4c1gvWlhXeS9ONXo5YSsr?= =?utf-8?B?d2tBb3paTDNqbWljNldaWGluaGxkMFRENVBhYWRqaFA4MzBIT3dNSXVhUHlS?= =?utf-8?B?RWUrQll0SmFVTGtjbWdWWnJMbm5ZSG1kcUdvV3h1TWcraWs0OGgybDhZV1U1?= =?utf-8?B?L3NtR1lPYUdJVGExT0tHMTE1ZnlIc3NTY1ljckZJcUdEbm1xajNGVjZtN2Va?= =?utf-8?B?emZicnRsN0tHTDh0SHFVNUVmc3FWQlJwL2FpTDdsNStYVFhCOUp0RUI3aUo5?= =?utf-8?B?c0NnREtETzU2U0hQUWZQY1FWZjdSWFBzbTVzRklxQWdoZWNRNElvQVBqUnFH?= =?utf-8?B?bUVmMm5QS016WGVMR05QbWU3NUVyc0xhSHdyMDluaEFSOUVRM2M2VHpjTjhY?= =?utf-8?B?anByUFZIWkJsbU1CaHphY2pKWDZWU0hiZlRZZldkblBxcmtheE5FMStTbFdi?= =?utf-8?B?bkV5ZmJOVWRHQzFxQ0dHdmM3aTBNeUlZU2ljcGthcEV3SWdrQlRVblNWeVFK?= =?utf-8?Q?8loyL8un08i6oRHvnlTxDVHFr?= Content-ID: <4A9ACBDFA971FB47B2B2B5D912FEDAF9@apcprd03.prod.outlook.com> MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYZPR03MB6624.apcprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 244418d4-1e3b-402e-54fa-08dc4a4ce75a X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Mar 2024 08:48:53.9147 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a7687ede-7a6b-4ef6-bace-642f677fbe31 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 7rSjW/XDpDKL7lsnd3H8pnXRuNbGQIsaHGWbFalk6Gf/iUszWC1eIF+xewyTDRRKbyII4i0IsyqULAtlcHY8Fw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYSPR03MB8806 X-TM-AS-Product-Ver: SMEX-14.0.0.3152-9.1.1006-23728.005 X-TM-AS-Result: No-10--12.807400-8.000000 X-TMASE-MatchedRID: VPleTT1nwdQNtKv7cnNXnSa1MaKuob8PC/ExpXrHizxcKZwALwMGs5xz 8+1dXyV4hpv9C7a+dY66AcOfQyTZW3OErgCAgGZubc297PAGtWaeEP0DdJruliz+5QCTrE/s2ft v/5jXki9X6UIPOG+iLbpxDH0YWH+ICRueYusp1xzd+fuf9kcapu3+iQEtoSj4XaZ/Rba9vHHic9 PyNm/U0eLzNWBegCW2PZex/kxUIHW3sNbcHjySQd0H8LFZNFG7bkV4e2xSge49ufFJBOEB/i6tY UFbougOyYa+7Z0yIEsIC0ANgox4jD6Qrn3xh/cy X-TM-AS-User-Approved-Sender: No X-TM-AS-User-Blocked-Sender: No X-TMASE-Result: 10--12.807400-8.000000 X-TMASE-Version: SMEX-14.0.0.3152-9.1.1006-23728.005 X-TM-SNTS-SMTP: E00BDBEF73B41523CD25955EB72321A798237D99D1F43C5237687EC00FB5246C2000:8 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240322_014904_674532_8224369A X-CRM114-Status: GOOD ( 19.83 ) 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 Hi, Angelo: On Thu, 2024-02-01 at 13:53 +0100, AngeloGioacchino Del Regno wrote: > Add a new mtk_ddp_comp_destroy() function and call it in the teardown > path of mtk_drm_drv to make sure that we unmap the iospace of the > simple DDP components. > > While at it, also fix iounmapping on mtk_ddp_comp_init() error path. Reviewed-by: CK Hu > > Fixes: ff1395609e20 ("drm/mediatek: Move mtk_ddp_comp_init() from sub > driver to DRM driver") > Signed-off-by: AngeloGioacchino Del Regno < > angelogioacchino.delregno@collabora.com> > --- > drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c | 38 > ++++++++++++++++++++- > drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h | 1 + > drivers/gpu/drm/mediatek/mtk_drm_drv.c | 4 ++- > 3 files changed, 41 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c > b/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c > index c13359eeb3cd..539b526a6b0a 100644 > --- a/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c > +++ b/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c > @@ -626,8 +626,11 @@ int mtk_ddp_comp_init(struct device_node *node, > struct mtk_ddp_comp *comp, > > priv->regs = of_iomap(node, 0); > priv->clk = of_clk_get(node, 0); > - if (IS_ERR(priv->clk)) > + if (IS_ERR(priv->clk)) { > + iounmap(priv->regs); > + priv->regs = NULL; > return PTR_ERR(priv->clk); > + } > > #if IS_REACHABLE(CONFIG_MTK_CMDQ) > ret = cmdq_dev_get_client_reg(comp->dev, &priv->cmdq_reg, 0); > @@ -639,3 +642,36 @@ int mtk_ddp_comp_init(struct device_node *node, > struct mtk_ddp_comp *comp, > > return 0; > } > + > +void mtk_ddp_comp_destroy(struct mtk_ddp_comp *comp) > +{ > + struct mtk_ddp_comp_dev *priv; > + > + if (!comp || !comp->dev) > + return; > + > + /* Complex components are destroyed with their own remove > callback */ > + if (type == MTK_DISP_AAL || > + type == MTK_DISP_BLS || > + type == MTK_DISP_CCORR || > + type == MTK_DISP_COLOR || > + type == MTK_DISP_GAMMA || > + type == MTK_DISP_MERGE || > + type == MTK_DISP_OVL || > + type == MTK_DISP_OVL_2L || > + type == MTK_DISP_PWM || > + type == MTK_DISP_RDMA || > + type == MTK_DPI || > + type == MTK_DP_INTF || > + type == MTK_DSI) > + return; > + > + priv = dev_get_drvdata(comp->dev); > + if (!priv) > + return; > + > + if (priv->regs) { > + iounmap(priv->regs); > + priv->regs = NULL; > + } > +} > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h > b/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h > index 15b2eafff438..43372b416a3f 100644 > --- a/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h > +++ b/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h > @@ -318,6 +318,7 @@ unsigned int > mtk_drm_find_possible_crtc_by_comp(struct drm_device *drm, > struct device *dev); > int mtk_ddp_comp_init(struct device_node *comp_node, struct > mtk_ddp_comp *comp, > unsigned int comp_id); > +void mtk_ddp_comp_destroy(struct mtk_ddp_comp *comp); > enum mtk_ddp_comp_type mtk_ddp_comp_get_type(unsigned int comp_id); > void mtk_ddp_write(struct cmdq_pkt *cmdq_pkt, unsigned int value, > struct cmdq_client_reg *cmdq_reg, void __iomem > *regs, > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c > b/drivers/gpu/drm/mediatek/mtk_drm_drv.c > index 14a1e0157cc4..89b6c31a1511 100644 > --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c > +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c > @@ -944,8 +944,10 @@ static void mtk_drm_remove(struct > platform_device *pdev) > component_master_del(&pdev->dev, &mtk_drm_ops); > pm_runtime_disable(&pdev->dev); > of_node_put(private->mutex_node); > - for (i = 0; i < DDP_COMPONENT_DRM_ID_MAX; i++) > + for (i = 0; i < DDP_COMPONENT_DRM_ID_MAX; i++) { > + mtk_ddp_comp_destroy(&private->ddp_comp[i]); > of_node_put(private->comp_node[i]); > + } > } > > static int mtk_drm_sys_prepare(struct device *dev) _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel