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 4777EC4345F for ; Wed, 24 Apr 2024 09:15:35 +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=1vxrt3ODF8il9ebfzjPkyfllmgjXQGEpi0fJVOjSxrk=; b=cFNw0d3eRN5lNh tuxOTL5e9HkruFwlqRMy+7Tg1uLBVtvsBjCxA+fhYgyqTtG6s5gtRObeYnFWIzU9NrcRara5BAF7E DCyu2xasbQBGpYeI3al3EP1ql4HYtFj8h4ZTEHL4a6JoVgNN17+OWRTScr3ireBT87YeDgRlSZyeR YaCisUl82eZ8NNRzt9vAhk/IDnWSh8j7AH447+xTylTDndAWl8gSNKNKx1kqHdY4agg2UqmqMY2tR JS7lLpEkL3oAoYCEHrutnxpLsAt1sGPQ63Gru0Mb/6jGpRlrYvLgD8kIbzNxn2WggR/y+77d9pkhB q2OkNfmQaExAdKKd73Nw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rzYim-00000003SF2-01gt; Wed, 24 Apr 2024 09:15:20 +0000 Received: from mailgw02.mediatek.com ([216.200.240.185]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rzYie-00000003SAX-3tCu; Wed, 24 Apr 2024 09:15:17 +0000 X-UUID: 24cb307c021b11ef96d5dfc950b7243d-20240424 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=F+3+82YTQ8CnBt4CW2AP15CLb1OqBUY6KafubDYfGIw=; b=ovSES+bDQ752m+sh4Bt6Yn4FvZ4z2hPvmJyNUsEZdjOUFTAFIwnYukgNx31s+fmzwHfZ4Ey/8FlAKrgUuahTwRp+9ybnoVcikB+xeD3btQyWNk6ONnDUb+6Fo8HORXYrLZ0eSWzWUOGXub7FPl9/I+Jo/IEVmcu1wjHxPLntVj0=; X-CID-P-RULE: Release_Ham X-CID-O-INFO: VERSION:1.1.38,REQID:4654d3ab-4c14-42cb-920b-05fcdf8b2a7a,IP:0,U RL:0,TC:0,Content:-5,EDM:0,RT:0,SF:0,FILE:0,BULK:0,RULE:Release_Ham,ACTION :release,TS:-5 X-CID-META: VersionHash:82c5f88,CLOUDID:04500e83-4f93-4875-95e7-8c66ea833d57,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: 24cb307c021b11ef96d5dfc950b7243d-20240424 Received: from mtkmbs11n2.mediatek.inc [(172.21.101.187)] by mailgw02.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 256/256) with ESMTP id 634442276; Wed, 24 Apr 2024 02:15:07 -0700 Received: from mtkmbs10n2.mediatek.inc (172.21.101.183) by mtkmbs13n2.mediatek.inc (172.21.101.108) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.26; Wed, 24 Apr 2024 17:14:34 +0800 Received: from APC01-SG2-obe.outbound.protection.outlook.com (172.21.101.237) by mtkmbs10n2.mediatek.inc (172.21.101.183) with Microsoft SMTP Server id 15.2.1118.26 via Frontend Transport; Wed, 24 Apr 2024 17:14:34 +0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BUVdu+2dykfeNOOC97kuCgL/4u3cR/yXl+O5x1sH7hRHJX8JO8pVjXlz8mQRzpUrjoGoQsmgsnwiYJ/wSDRyHERN2yHGO6KXPiFdhQ+JUW9tFsh0IUp5jmghNlxQbfrBACYTN+H8Y9taEu57fpLSKFLWQS1Nih4n8VxlI1hTQafewk5R3p/1CGK+lSZ8q7YcJL9/DJOI1l9GwSU2qH/x8PwYIcfSWXSHVEISfzMn5DRNhN6hWQAbmWGpyyjsRlGWpXjKvgfYO4/Dhhd8IeqZjDpAJMrrLK23s3pibvH+U1C7F9MDCggBMdCeGrtJwZVEr38/2zE0g2lpyB+ADNV7XQ== 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=F+3+82YTQ8CnBt4CW2AP15CLb1OqBUY6KafubDYfGIw=; b=U8opyOeRHWgZs4SK/Nm3+nek2mi5jmRg+eTZjisMDNepiS9T05cwQR+pFq0H/q382gC0bQstVIkz3Cj6e72WyyQ/X1fW6U91+ifxsYFEB8MDn80N4ofpEVETEVZogo5Dzgg54B7N9weETqFihpXzDd1/AO86EFeGIZ2jdyWPxMgIeUuGgs2pI3l5J2TYzq6fOXun9r0ALOfMOptWstKYfgVGbkvf2u5gNcMeUtA36mG4+g3D2fcjysbT6T298mGLoT3hQrMhC/lrT2xUH3nrDXUeJCVgx0cT7WhcS6uUI91lC6hy3G1E5Gaz4M5aC9034SD+qzjb/MLjNTsw08Htvw== 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=F+3+82YTQ8CnBt4CW2AP15CLb1OqBUY6KafubDYfGIw=; b=BrldugQyNr2QVstqVG4/Y/kjYOCYk3GcnDIW3Xd4oKX97vNl5jEqUFUcMlDrX5AuJGNYmWi0CCq1JrioxUzUL4H2BGwCAInCOa8a9UO5KgzQB7FUlAmeUt+0lK9RzmmxtLi6Vb9/8JCYv5MNsZ2jAHki/L92xkHVuj1h/mGs/PM= Received: from SEZPR03MB8678.apcprd03.prod.outlook.com (2603:1096:101:231::6) by OS8PR03MB8982.apcprd03.prod.outlook.com (2603:1096:604:2a7::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7472.44; Wed, 24 Apr 2024 09:14:31 +0000 Received: from SEZPR03MB8678.apcprd03.prod.outlook.com ([fe80::97b7:3c7d:8683:b0f4]) by SEZPR03MB8678.apcprd03.prod.outlook.com ([fe80::97b7:3c7d:8683:b0f4%4]) with mapi id 15.20.7472.044; Wed, 24 Apr 2024 09:14:31 +0000 From: =?utf-8?B?U2h1aWppbmcgTGkgKOadjuawtOmdmSk=?= To: "p.zabel@pengutronix.de" , "airlied@gmail.com" , "matthias.bgg@gmail.com" , "daniel@ffwll.ch" , "angelogioacchino.delregno@collabora.com" , "chunkuang.hu@kernel.org" , =?utf-8?B?Sml0YW8gU2hpICjnn7PorrDmtpsp?= CC: "dri-devel@lists.freedesktop.org" , "linux-kernel@vger.kernel.org" , "linux-mediatek@lists.infradead.org" , "linux-arm-kernel@lists.infradead.org" , Project_Global_Chrome_Upstream_Group Subject: Re: [PATCH] mediatek: dsi: Add dsi per-frame lp code for mt8188 Thread-Topic: [PATCH] mediatek: dsi: Add dsi per-frame lp code for mt8188 Thread-Index: AQHadfPtb+z3LozX/E+GiLbBEBgpt7E3A90AgEBf2oA= Date: Wed, 24 Apr 2024 09:14:30 +0000 Message-ID: References: <20240314094238.3315-1-shuijing.li@mediatek.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=mediatek.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SEZPR03MB8678:EE_|OS8PR03MB8982:EE_ x-ms-office365-filtering-correlation-id: 146d8588-5762-4331-d842-08dc643ef325 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: =?utf-8?B?ZWNLSmc0Q0FLbHhZWHpLeFJGeVJ3R1pUWVd6NHJTNWlXTEg0dSsyU2NQZDdV?= =?utf-8?B?ZHp4a3BEajdKSGlna3pXd2E3Q3FMUlpncWpyVEo3UTRuMHpFYm96YnZqc1h3?= =?utf-8?B?TUdENzI3c0RoazZRS1lTdmN5Z01EYlRGakhIRTU2NnNicmdNY0d1c1dwTHcv?= =?utf-8?B?b1hUNGx3RDFhYkhtek5LcXBUdi9BaEIzUmVxWnNHQkpuNlhROFROSHVMbS91?= =?utf-8?B?MjUwUThGMHhick40V2ZhT2dRM1QwdWpFVm55V0lBcWtrUHNXWUZCTnpKYllr?= =?utf-8?B?RXAzY01Wa3pGUVNlcW03UjkvZTZjWWk1VlhvUlhOeUE3UnZCTVFMZXBqa28v?= =?utf-8?B?TTR1dkhFd0Rxb2pLOTg4REpSU3hLQ3doWU1DTWl2TGcxbWFVRzQ2YzJtZHFN?= =?utf-8?B?ZnNZZjRuMWYwZ2kvcmlaQ0NBMUNKVnpYT1Z4NzlSUzhjQ2Uzc3luTHYrSzMr?= =?utf-8?B?OHpuSmhMTDJKeWtTUTJ6d2ZRL0l6Qm5ramdBclJuclR1T04xKzZqWEhrRlNk?= =?utf-8?B?TEJQdm9hTGRHVlFCMm1FQnNVSGRJN3NQVEdOU3ovcFUzTWNOWjlmLzl4eWZm?= =?utf-8?B?YjF5YkdFaTN1MElVdThNVzFTNkYzd0UrRkg4cldwenNjYyswbjk3MEVaWVNI?= =?utf-8?B?and1UWNBK09nNkwwMVgrV1BFV0RiZzBIeG5pdVlzWGpMUTVGNUNGMm1lSmhN?= =?utf-8?B?ZHkxTUMzaDg0MmwzdzdwaEpVZ2MxMHhGQlkwZTRwZXovWTZUR2RTK3gvZXYx?= =?utf-8?B?THpMYXB3RzhxZ0JqQ01HaS9uR0pJOFNSdFEwRXlOYU93b1A3dzd6T1JhZkp4?= =?utf-8?B?dHgweG1TVTRRRTUxcGNscTF2elhTSk4rZlpkcXhMZ1puK3BUNmNZcXZLaCtx?= =?utf-8?B?ei9UZStLRnFKT1EwUEVxcEJiVkdRTWZIbTlKQzNjQ1dOb2pCR203VzliNlcz?= =?utf-8?B?RDJTSHIxWkl2NXkzbVdBZUZGRXBOZ1F3SmxIYURobTBiL1JTVzc0SUlwcDFU?= =?utf-8?B?TUVXUC9XODNqcEJiSjhhbUIvNTVUcHJKQ0J5Q0o1bHZnTnlsM3Fyc3BTdkdq?= =?utf-8?B?dFJMWEJlQlZ0SnRKS2hJSEJpb0MxVmI0SE9PeS9EMllITHBxeWVFZW4rVmwv?= =?utf-8?B?Tzc4S0FBWU4vYXdPcCtPazBiOHRvaE1lWmN2SkQ0WTY4R0gxbElLbWs3RVVZ?= =?utf-8?B?dEpXVUJpTXRPNW9mbkwvRjJOMDBmdGgvZUdFMzFSZ3NTRDJvK1RUcEhCOHdx?= =?utf-8?B?ZE9OZGZQUE15YzI3Z2F0UUxVZFJuQkhHY003SlM5QTVkS1M3MjdFRFdqSjlN?= =?utf-8?B?WGxkdkxhc2lkQXBnWmdHdXcyeHRwWVZNSmhVUnBXUGlOd3cvbDhhZHBaM2x2?= =?utf-8?B?WkRJdXZyaTFiN0RITjRXdjFkNlVUcTZ0cE5BbURTMXBUNEZUOUN4bHAyTGlY?= =?utf-8?B?RnJPQTZHTDNFWk9HQlJTcTZQMDNweFJmV3FyaDJkK0NSclRLZ2JTMjB5SU1J?= =?utf-8?B?ejNFOUFxOVVYY1h4QzZKbWJCMWsxTkxXS2pQbjIvbFpnbmlrUDVDMSs3Qlha?= =?utf-8?B?UlgvbUZKQWdQMDhVcVVJUmFnM21SMHR3NytBZnYzVGhsKzl3VzRCVFJTdzFq?= =?utf-8?B?Mnd3VktNYkxEZUE4OC83OW1ZZyszTmh3K1BYT3J3bUJmRSsweVBuQjYzSkhT?= =?utf-8?B?azhzbmQ5US95blBaMlpNMFIvcWlvekV6aXVPamhGMlhUTjlvYVlnUTJEdlhq?= =?utf-8?B?K2xVNHFnWFl2NExjam8wdlNEaVkzdnZtbHhlNHdwZ3pKeWs1NVVvblZRS2Vt?= =?utf-8?B?azRtTVVIbll3U0hmMVliZz09?= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SEZPR03MB8678.apcprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376005)(366007)(1800799015)(7416005)(38070700009);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?a1dJazdlckVac0ZvSlF6bk1ua3RJTGQzeEdxSmhJYnlFNVBiL1hNSmRaeXUw?= =?utf-8?B?aVlCcFJROHhCY3dGTnR3aE1sT0tWRGRuR2ZBWnZBZHAxeW40N1d3Y3dDQ2JX?= =?utf-8?B?MHJPSFhHQ2ZyclA0aE1nc0JXQXRDNWVqaEI1M25WMG5vTjU1YUtQc29rVk1R?= =?utf-8?B?Nytid29hT1ZYWUFOMWRTUk9IZnN3Mk0yVXNhbGFhMXVsOXZvSmgxZWFjSVZZ?= =?utf-8?B?STNYMVZ4MmhBZlFZakNwQ2JPVmppSTdPWkNNNFRXRktVbmtEV0daWXpycTNX?= =?utf-8?B?RU5IMHZCN2ZJaUp1Z0xvUG1GLy8weEw1VWZzb3dEVFU3TWJMTTB2dUYreTdH?= =?utf-8?B?endOVzV1YnlMcytselh6czFLK2l1UDhyb2RuaUhWcEMzbFBxaWpCQXlZTUNX?= =?utf-8?B?b1Y1QXdiOWZDSDFwK3ZDd0FMSjRsWjA2L3ZHcjFBNlBFd0d6NXd1ckdjZ3VU?= =?utf-8?B?eWY1MU5LK0M1VlNIeFlYWjBaWnJYOGROdnY1NUY3NnpZZi9TSW14QjVNU0gz?= =?utf-8?B?eWxxYXJ2MlBsRXprN3lubmdoTFlvRGRaT05tN3RRWEUzbE1LeVlIb29rbGFD?= =?utf-8?B?K3JOQWt3dmpHRzZJMFZ0WjRQWjc1cGhXaUZPNG1wYlR2Q3VrRWtJZzB5RytM?= =?utf-8?B?ZDVYdjVWM016cnFqTmNqN3Y3bWdGVGdTRCtHRGZlS3dXeG4zRVdYSC9UVnBo?= =?utf-8?B?eHc3ZlNKRStzd29VK0I1WW01YzFwUmR5U0k5UGx1QkZ6TkpvOVVZeUFaQnZs?= =?utf-8?B?TUErdFJKSTVDUGJvZlpPNG5TRGF5WkFxYXJEUnNXTURsc3oxK3hWbHN6ZVRW?= =?utf-8?B?am05RXh1MndGSFFtWUo2TDliYTJUTGdKSGpSVWwrQjhsZVgrVDVrWW4xTGZj?= =?utf-8?B?MkFldUlvWnRHbThQOFNueDdsODJDQWFJSG10QzZIRnk5NU5mVCsxeUJZWHlk?= =?utf-8?B?em50ZEJKbzgrbElNRUtUMWlKNDlhd1VzNmp3YU5RKy8ydUV2SFBLY1BQVVNI?= =?utf-8?B?UmtnTmphZEwza3ZHbllEbGhIRzRjY1FOQnk2T3NtOUtRQ3pOQm5mdmRvN0Fx?= =?utf-8?B?cHNKRGlNZk1IaUNaSjRLUms2VUdzVU1reHQxUkpyQXJCVVlpbm9IbSt6TFVi?= =?utf-8?B?aysrMkE3ZmxTMmZhOUFZM1hRWTdRbFljdmVYTFR1TzFhS0w0QmhkM3JxVk1O?= =?utf-8?B?NG9wOElHRG9tbmQ3ZTlTSlJWekFFRS9lTHhVSDQvS25hRlJKaXUxSTgwOW9Y?= =?utf-8?B?bFRvTlJFUE51dU82TkZyeE5hYUw2TW5lUG9PZUlmVndWL2h1VnpEc1lqbUR4?= =?utf-8?B?dmlRMzl1TURxbVJVUVc2L0FnTW9xQWhqRTY2OWgwMFZiTVBlK1JUaTZqbmw2?= =?utf-8?B?OW84eHM1d0hZK2hRbU1lendFdVpSRlNTaTZrQXJhaldNU1BWdWVWS3pXRDJF?= =?utf-8?B?RjNpa1N1U2dIUkZRdjMzcllzSUZUQ3BKVEdvKzNsTjZaR2VzcTVsTUtMNmFX?= =?utf-8?B?TjAxMEdmMWh5NHVrUXdiNUFRbTBGT3NlNmQvcUdPTUhiV3k4VDYvY3JlWStj?= =?utf-8?B?ZkF6czhQcUxmRmw4ZHV6K1Q2QVNvZ3dEQkFWZjVMVkVRaGFlU2FLN0ZhZ0pE?= =?utf-8?B?b3g0MnVwRWxDYU1GdHNhSkhweHVaaFJNMGx0OXl6WmpRL2hCQmFEQzQrbHlB?= =?utf-8?B?NmxleTQvdHkvYmRQemdtM2U1OGJsU2tRQnZKbGM2MExndTY2YzBHTmtTeGVC?= =?utf-8?B?dE5GYnhWWE1PcU1RUXh6NWhjOXNxSDYzTThKNjJZS0tRWWtCR3hpLzVCSFA2?= =?utf-8?B?RXA1WEtQaUZoTkV0dStPY294VDVmWFUwTXVrVHp0RUlPcG53NmhybFN4UDlQ?= =?utf-8?B?VGtuY0lnaG9HcWJNY1c0Ly9DY0pKNzVJZUcwdFF6Z0Y5cTV4VEZyOENQMzhl?= =?utf-8?B?OFNJR2ZOcndsbXFveWVNejRUZUl4Zy9uelQ0ZU9id29xSTFROUYvcTI5ajZI?= =?utf-8?B?M1pjT082cWxMN0k2dDhycUw5d0V2N1hpQk1uRUZ3VzB4R1MxeW5uYXUrTWFp?= =?utf-8?B?cDhhTGtjQldscTNBTVRWS2xKbnRBVHJVTUlNWUdSSTFTZmg0TXlmT09ybUxC?= =?utf-8?B?b1JFbWo5OER5bVYzTlFCZW05clI1YVk3ZGU0VnhLaUE3bkVtYUNwL3RzTjVN?= =?utf-8?B?dWc9PQ==?= Content-ID: MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SEZPR03MB8678.apcprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 146d8588-5762-4331-d842-08dc643ef325 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Apr 2024 09:14:30.9317 (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: 2I1wzNa+Y9rKZA8blmzJIB0x9VK9+oDXyD+1dczahKYkwDm2Zp4qTnHvPpoejC2AoTOINk1eWE1lN141EofGvLiEptkqbmS9JMmgaDFC1dI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: OS8PR03MB8982 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240424_021513_087673_5760ED13 X-CRM114-Status: GOOD ( 22.94 ) 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 Dear Angelo, > Please document those "magic numbers": why is this 12 + 2 + 4 ? > What is 12? what is 2? what is 4? ==> This is several packets, as specified in chapter 8.11 of the DSI specification. Taking this as an example, 12 = 4 (HSS) + 4 (HSA_PH) + 4 (HSE), 2 = HSA_PF, and 4 = HBP_PH. > Is this supported only on MT8188? Are you sure that MT8195 doesn't > support that? ==> MT8195 does not have this plan. Based on the feedback you provided, I have made the necessary changes and would like to submit a version 2 for your consideration at a later date. Thank you for your time and attention to this matter. Best regards, Shuijing On Thu, 2024-03-14 at 11:10 +0100, AngeloGioacchino Del Regno wrote: > Il 14/03/24 10:41, Shuijing Li ha scritto: > > Adding the per-frame lp function of mt8188, which can keep HFP in > > HS and > > reduce the time required for each line to enter and exit low power. > > Per Frame LP: > > |<----------One Active Frame-------->| > > --______________________________________----___________________ > > ^HSA+HBP^^RGB^^HFP^^HSA+HBP^^RGB^^HFP^ ^HSA+HBP^^RGB^^HFP^ > > > > Per Line LP: > > |<---------------One Active Frame----------->| > > --______________--______________--______________----______________ > > ^HSA+HBP^^RGB^ ^HSA+HBP^^RGB^ ^HSA+HBP^^RGB^ ^HSA+HBP^^RGB^ > > > > Signed-off-by: Shuijing Li > > --- > > drivers/gpu/drm/mediatek/mtk_dsi.c | 100 > > +++++++++++++++++++++++++++++ > > 1 file changed, 100 insertions(+) > > > > diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c > > b/drivers/gpu/drm/mediatek/mtk_dsi.c > > index a2fdfc8ddb15..e6f4807c8711 100644 > > --- a/drivers/gpu/drm/mediatek/mtk_dsi.c > > +++ b/drivers/gpu/drm/mediatek/mtk_dsi.c > > @@ -83,6 +83,7 @@ > > #define DSI_HSA_WC 0x50 > > #define DSI_HBP_WC 0x54 > > #define DSI_HFP_WC 0x58 > > +#define DSI_BLLP_WC 0x5C > > > > #define DSI_CMDQ_SIZE 0x60 > > #define CMDQ_SIZE 0x3f > > @@ -180,6 +181,7 @@ struct mtk_dsi_driver_data { > > bool has_shadow_ctl; > > bool has_size_ctl; > > bool cmdq_long_packet_ctl; > > + bool support_per_frame_lp; > > }; > > > > struct mtk_dsi { > > @@ -516,6 +518,103 @@ static void mtk_dsi_config_vdo_timing(struct > > mtk_dsi *dsi) > > (vm->hactive * dsi_tmp_buf_bpp + 2) % dsi- > > >lanes; > > } > > > > + if (dsi->driver_data->support_per_frame_lp) { > > This really looks like a good candidate to fit in a function on its > own... > > > + unsigned int lpx = 0, da_hs_exit = 0, da_hs_prep = 0, > > da_hs_trail = 0; > > + unsigned int da_hs_zero = 0, ps_wc = 0, hs_vb_ps_wc = > > 0; > > + u32 bllp_wc, bllp_en, v_active_roundup, hstx_cklp_wc; > > + u32 hstx_cklp_wc_max, hstx_cklp_wc_min; > > + > > + da_hs_trail = (readl(dsi->regs + DSI_PHY_TIMECON0) >> > > 24) & 0xff; > > + bllp_en = (readl(dsi->regs + DSI_TXRX_CTRL) >> 7) & > > 0x1; > > (somewhere: #define HSTX_BLLP_EN BIT(7)) > > u32 timecon0, txrx_ctrl; > > timecon0 = readl(....DSI_PHY_TIMECON0); > txrx_ctrl = readl(.....); > > da_hs_trail = FIELD_GET(HS_TRAIL, timecon0); > bllp_en = FIELD_GET(HSTX_BLLP_EN, txrx_ctrl); > > > + if (dsi->mode_flags & MIPI_DSI_MODE_VIDEO_SYNC_PULSE) { > > + horizontal_sync_active_byte = > > + (vm->hsync_len * dsi_tmp_buf_bpp - 10); > > + horizontal_backporch_byte = > > + (vm->hback_porch * dsi_tmp_buf_bpp - > > 10); > > + horizontal_frontporch_byte = > > + (vm->hfront_porch * dsi_tmp_buf_bpp - > > 12); > > + > > + ps_wc = readl(dsi->regs + DSI_PSCTRL) & 0x7fff; > > + v_active_roundup = (32 + > > horizontal_sync_active_byte + > > + horizontal_backporch_byte + ps_wc + > > + horizontal_frontporch_byte) % dsi- > > >lanes; > > + if (v_active_roundup) > > + horizontal_backporch_byte = > > horizontal_backporch_byte + > > + dsi->lanes - v_active_roundup; > > + hstx_cklp_wc_min = (DIV_ROUND_UP((12 + 2 + 4 + > > Please document those "magic numbers": why is this 12 + 2 + 4 ? > What is 12? what is 2? what is 4? > > > + horizontal_sync_active_byte), dsi- > > >lanes) + da_hs_trail + 1) > > + * dsi->lanes / 6 - 1; > > + hstx_cklp_wc_max = (DIV_ROUND_UP((20 + 6 + 4 + > > + horizontal_sync_active_byte + > > horizontal_backporch_byte + > > + ps_wc), dsi->lanes) + da_hs_trail + 1) > > * dsi->lanes / 6 - 1; > > + } else { > > + horizontal_sync_active_byte = vm->hsync_len * > > dsi_tmp_buf_bpp - 4; > > + > > + horizontal_backporch_byte = (vm->hback_porch + > > vm->hsync_len) * > > + dsi_tmp_buf_bpp - 10; > > + hstx_cklp_wc_min = (DIV_ROUND_UP(4, dsi->lanes) > > + da_hs_trail + 1) > > + * dsi->lanes / 6 - 1; > > + > > + if (dsi->mode_flags & > > MIPI_DSI_MODE_VIDEO_BURST) { > > + ps_wc = readl(dsi->regs + DSI_PSCTRL) & > > 0x7fff; > > + bllp_wc = readl(dsi->regs + > > DSI_BLLP_WC) & 0xfff; > > Please use bitfield macros here as well. > > > + horizontal_frontporch_byte = (vm- > > >hfront_porch * > > + dsi_tmp_buf_bpp - 18); > > + > > + v_active_roundup = (28 + > > horizontal_backporch_byte + ps_wc + > > + horizontal_frontporch_byte + > > bllp_wc) % dsi->lanes; > > + if (v_active_roundup) > > + horizontal_backporch_byte = > > horizontal_backporch_byte + > > + dsi->lanes - v_active_roundup; > > + if (bllp_en) { > > + hstx_cklp_wc_max = > > (DIV_ROUND_UP((16 + 6 + 4 + > > + horizontal_backporch_by > > te + bllp_wc + ps_wc), > > + dsi->lanes) + > > da_hs_trail + 1) * dsi->lanes / 6 - 1; > > + } else { > > + hstx_cklp_wc_max = > > (DIV_ROUND_UP((12 + 4 + 4 + > > + horizontal_backporch_by > > te + bllp_wc + ps_wc), > > + dsi->lanes) + > > da_hs_trail + 1) * dsi->lanes / 6 - 1; > > + } > > + } else { > > + ps_wc = readl(dsi->regs + DSI_PSCTRL) & > > 0x7fff; > > + horizontal_frontporch_byte = (vm- > > >hfront_porch * > > + dsi_tmp_buf_bpp - 12); > > + > > + v_active_roundup = (22 + > > horizontal_backporch_byte + ps_wc + > > + horizontal_frontporch_byte) % > > dsi->lanes; > > + if (v_active_roundup) > > + horizontal_backporch_byte = > > horizontal_backporch_byte + > > + dsi->lanes - v_active_roundup; > > + > > + hstx_cklp_wc_max = (DIV_ROUND_UP((12 + > > 4 + 4 + > > + horizontal_backporch_byte + > > ps_wc), > > + dsi->lanes) + da_hs_trail + 1) > > * dsi->lanes / 6 - 1; > > + } > > + } > > + hstx_cklp_wc = (readl(dsi->regs + DSI_HSTX_CKL_WC) >> > > 2) & 0x3fff; > > same here > > > + if (hstx_cklp_wc <= hstx_cklp_wc_min || > > + hstx_cklp_wc >= hstx_cklp_wc_max) { > > + hstx_cklp_wc = (hstx_cklp_wc_max / 2) << 2; > > and same here... and everywhere else. > > > + writel(hstx_cklp_wc, dsi->regs + > > DSI_HSTX_CKL_WC); > > + } > > + hstx_cklp_wc = hstx_cklp_wc >> 2; > > + if (hstx_cklp_wc <= hstx_cklp_wc_min || > > + hstx_cklp_wc >= hstx_cklp_wc_max) { > > + DRM_WARN("Wrong setting of hstx_ckl_wc\n"); > > + } > > + > > + lpx = readl(dsi->regs + DSI_PHY_TIMECON0) & 0xff; > > + da_hs_exit = (readl(dsi->regs + DSI_PHY_TIMECON1) >> > > 24) & 0xff; > > + da_hs_prep = (readl(dsi->regs + DSI_PHY_TIMECON0) >> 8) > > & 0xff; > > + da_hs_zero = (readl(dsi->regs + DSI_PHY_TIMECON0) >> > > 16) & 0xff; > > + ps_wc = readl(dsi->regs + DSI_PSCTRL) & 0x7fff; > > + hs_vb_ps_wc = ps_wc - > > + (lpx + da_hs_exit + da_hs_prep + da_hs_zero + > > 2) > > + * dsi->lanes; > > + horizontal_frontporch_byte = (1 << 31) > > + | (hs_vb_ps_wc << 16) > > + | (horizontal_frontporch_byte); > > + } > > writel(horizontal_sync_active_byte, dsi->regs + DSI_HSA_WC); > > writel(horizontal_backporch_byte, dsi->regs + DSI_HBP_WC); > > writel(horizontal_frontporch_byte, dsi->regs + DSI_HFP_WC); > > @@ -1246,6 +1345,7 @@ static const struct mtk_dsi_driver_data > > mt8188_dsi_driver_data = { > > .has_shadow_ctl = true, > > .has_size_ctl = true, > > .cmdq_long_packet_ctl = true, > > + .support_per_frame_lp = true, > > Is this supported only on MT8188? Are you sure that MT8195 doesn't > support that? > > Regards, > Angelo > > > }; > > > > static const struct of_device_id mtk_dsi_of_match[] = { > > _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel