From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752041AbdLNCKj (ORCPT ); Wed, 13 Dec 2017 21:10:39 -0500 Received: from relmlor4.renesas.com ([210.160.252.174]:21233 "EHLO relmlie3.idc.renesas.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751949AbdLNCKd (ORCPT ); Wed, 13 Dec 2017 21:10:33 -0500 X-IronPort-AV: E=Sophos;i="5.45,399,1508770800"; d="scan'208";a="266324781" Message-ID: <871sjyqd99.wl%kuninori.morimoto.gx@renesas.com> From: Kuninori Morimoto To: Laurent Pinchart Cc: David Airlie , dri-devel@lists.freedesktop.org, linux-renesas-soc@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2] drm: rcar-du: calculate DPLLCR to be more small jitter In-Reply-To: <4708231.IEM7dkWZuQ@avalon> References: <87374oz9f9.wl%kuninori.morimoto.gx@renesas.com> <4708231.IEM7dkWZuQ@avalon> User-Agent: Wanderlust/2.15.9 Emacs/24.3 Mule/6.0 MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII Date: Thu, 14 Dec 2017 02:10:27 +0000 X-Originating-IP: [211.11.155.138] X-ClientProxiedBy: TY1PR0201CA0039.apcprd02.prod.outlook.com (2a01:111:e400:5971::49) To PS1PR0601MB1881.apcprd06.prod.outlook.com (2603:1096:803:8::19) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: bd94e66f-e0eb-4843-3b9e-08d54297d82b X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(48565401081)(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(5600026)(4604075)(2017052603307);SRVR:PS1PR0601MB1881; X-Microsoft-Exchange-Diagnostics: 1;PS1PR0601MB1881;3:hcGg0Bznz9EWHr92T1+1Ypxf33M57w42+zURxvDf9qUU3Fb86eFjZegtyZLNqafVn+kBGILKoi3gDhCDhj9P6dU6TA+eqQBzWmcpI33kqfBOJcjnYebYkgQ+UUYM9RL1eWxj3+HmO4CO4aUGKITNR9ZuI1FmWe8ZQ0Ha0O5BK9RDDQI+20LF07p9odn2DOi2GYrg/Lte4pkRhrdk3s5xdyFfc6s+hMU5W9f7ULu0DNFGRrC1f1JMp7YEJrADvv5k;25:VEWU2oahSM0JXb2I8yA0rcw6nPiSObA1oRyt0G9E8AHC9+A9pnTsgFu6p64uh/fjjLszG8wN1KCuDzLLUXrY3MTiz0JjwfF/3E6Fmimbopoq2yuN9RIpVeHTlpJBSM34KSULtYzK38LGYpn9EBBCcK952/ExV9xRjuDGA/TzI6KEOpV7gOpWqVYFXjCsEXUzr8vTQe8g35NGBMmBKQZBawB+EuDaSDGn+FUMEkUIrnEg+i+yLUF0QMcuhsZv37XWVnuyem6d+ZagC6jcZV7lFWjHctPXEZFLh41TSqkFVMPcTK1jvHgD7/RrWkCI01Vjbr0GinCQGZHd66rBw+R58w==;31:57XhV/0Oag1GUHCZExcrhSbKsfWLAttMu5mqEKjwkPhhhjj3f/Cd7F00Vmc9gZoyKTtzcHBZCZiuub19jLUEtZZzxxaE+9eJmY5Las+RNba1zAeeuKGA7hx/4WlVXeWpkjI86LeCetuAvYCZULXTGYfQVAgysj3bLUUAwYfKBn1P/1hkQOhZFC4l6mCLuvg9cPfeY4Ouium64MU7VMWYeuznR8tRJ1hAVpG7BcfkFJ4= X-MS-TrafficTypeDiagnostic: PS1PR0601MB1881: Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=kuninori.morimoto.gx@renesas.com; X-Microsoft-Exchange-Diagnostics: 1;PS1PR0601MB1881;20:X+fKwUaKUMdfGN4I9jE0n6wAIU5dUFaEaGwSvcSla1om+0e1TWvwJuN4xoRHwMBDZZKY7vZJYxhcK06oSuOZ+DAMOhIy+9RB7NqGPkA0ljqFeDW3kEH1iGK8gSsjmxbRwLGHctp73Nhrx7wRQbHqiXtj2xzLIEV5vfsQLoE6/eze+nzT2LFnw8cnj1wd40zkgOshvujNmaIgdQWYACCkyC2s/odFLw8xUkVmWQIm3+nBAMeYdvCCzPlZ8DnOzZeF/y6lI2d6D5cMSWw2rwqmqAsisEk9y03vglb8zLzxVBVy/Rr1aMO0iY+eeN4qPU3FU1VlL0qC9ApJpdlDOSEPWT2JB5bY70TWYgJEyGDyh1gvcSptifRvjxS9j8kuj4mk3R9McdHIvdATrcbb/seIkXVCewMth62wR/7+mN5nwagmdedscObJ6IKegZxyeTBH6vB7NPHL9zsLrhZYM4Kcw4p46reIsDro855+KB8P5IA6bsKKwki7/CnfgCnUdfrG;4:sE+t2xIikyTlSWDVPP3JkrbkqvawjvquQgzbW+UeL9wauf87N+dfWfaYh/5frmza0r+LtGRBnBmyjuPhaFg2yh3dlsB3NhfThBvkaldzxL4LZnMxuhhgBA+zeK5atejJzAV7OFD9SeeUHrrQuMxbjSi2Ht5uFJruRis5TWIb9sgR09DnkDa4QYgvfr2+ZvQddhC1YecyXeJlrw58Zrp80tZzks2weXfBauPg88qKsZOqNVryEV2+rREOXq+zaAGZ50aZAuegOorKjKeXRFfA7JjqHm4hkK4UOjRtcQhZXsDi1rPWVGTEXXnqa4DDd4wS X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(17755550239193); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040450)(2401047)(8121501046)(5005006)(93006095)(93001095)(3231023)(3002001)(10201501046)(6055026)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(20161123558100)(20161123555025)(20161123564025)(20161123562025)(6072148)(201708071742011);SRVR:PS1PR0601MB1881;BCL:0;PCL:0;RULEID:(100000803101)(100110400095);SRVR:PS1PR0601MB1881; X-Forefront-PRVS: 05214FD68E X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(39860400002)(366004)(346002)(396003)(376002)(189003)(199004)(52314003)(106356001)(86362001)(68736007)(6116002)(69596002)(3846002)(2950100002)(2906002)(5660300001)(6916009)(345774005)(58126008)(16526018)(7696005)(316002)(59450400001)(97736004)(16586007)(229853002)(52116002)(478600001)(23726003)(76176011)(50466002)(66066001)(6486002)(8936002)(53416004)(83506002)(47776003)(25786009)(8676002)(305945005)(4326008)(105586002)(81166006)(81156014)(6246003)(36756003)(7736002)(386003)(53936002)(16060500001);DIR:OUT;SFP:1102;SCL:1;SRVR:PS1PR0601MB1881;H:morimoto-PC.renesas.com;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;PS1PR0601MB1881;23:2mlXL/6MVp6C/kVzzOL5SXcZf4EjbHTksSDE6jE?= =?us-ascii?Q?KM4fuLiuuBP3BEIm6BARoK6hU6nwjynNoa+4nTPfnWlXATjiy51fej+JIlU4?= =?us-ascii?Q?34Aueii2xgnaJSa0oBBsWE0gdBsKUbkbBOVBRrlok6GLJQ/EgObLJgRwnFFF?= =?us-ascii?Q?mcU5WKfX2vTf0d8Ik8JGolG1Jy5pS7g0mfe5Eimi9oTnvqSSnJppnz9GlHd+?= =?us-ascii?Q?DTbEfEfFje23FHogBdgLJHOHLS6kMtkNklBq7pcxKW0UHndWI7YUkfMmloMp?= =?us-ascii?Q?9ecldLhJqNYxP8iKtd1EugVRsO646MrRyqlfJ9AJP59yZ2hsDZMWeki4nLyo?= =?us-ascii?Q?KMkBgRDFRuqkhf3c9jfy8ZS3voPS4SNKGW8dYXbwFXBMaKhibA2/APcInhfa?= =?us-ascii?Q?KnMsi3RUz4HPLdrXTA84JYdc24k3ch2Tq6xW9UISGqaHpdC3eudYeGnV8T8D?= =?us-ascii?Q?br9pEvqqCq2PSqkUL9Surbc5ZxjjpGWa9evP0EZWbrQ7qT9Tpde1fiE/EMlh?= =?us-ascii?Q?NPaPhNiy6RvzCFFPIP85nZS/QIgovBAbzOL0PbmsEPgeAi/SNkj1alFq0TOq?= =?us-ascii?Q?qkTvs66vIm1n6vq5uyDQXc4mEZtoyys4RAouYO/EqD7ChWgvTI//pG0xyTHh?= =?us-ascii?Q?QyGCP5USvIrXe9TSJhxwtnf1CftOZFXE8+pzDThMRIdz3Tr/GNVqbsskCwl7?= =?us-ascii?Q?Hi/xgF8mxDGbZFMcya0qtBaFV8nBvAvC8FKpfN8+xi6Etwsws3mobTLV0oZ8?= =?us-ascii?Q?PGIl8x7lb6X2EyoiFYKe6D9eiCpq3KxBJMUgz7Jk2irEwxlMgS8Bfmru2IwA?= =?us-ascii?Q?Sav2eMMvWgi/UHyksFgtbPKRLgvHou+gwgd22DgcJ8xQWMFufQ/EqxKJAQeA?= =?us-ascii?Q?wL5UQ8cqpGHj4UERyJu0LF3gmHtyPfcrP20xVFXeiSnoBV0Mmf26U+LM4MFl?= =?us-ascii?Q?5zC9FAb3KavI8wBqjju+fFHrui9EY7LS44l6r17Q5AdK7hDJQCCPhfXCR+de?= =?us-ascii?Q?IAPbtsC3NmtWquVEzNnQ2gMGULoD+tx+VcXpYymOwSiMp/niAKWVC1/4Ut8t?= =?us-ascii?Q?0keP5QkHm3ZP9UsNAgTFWaQjYN7IBqeX/a8l3TV8yjjJLXGtAd8tUT8uvDPX?= =?us-ascii?Q?uLcl3h/dir7D8RE94pAjOAgEuZ0kgVBu56CG6jDxhXUqXFFJHzykiUP7Mvqb?= =?us-ascii?Q?w3+CdC6pVQ9ZVA8A=3D?= X-Microsoft-Exchange-Diagnostics: 1;PS1PR0601MB1881;6:B/vqmXeT6zPzBO8sjoWNMDB9UWsoFxOyYoTPK6ipFh91rr1Dcnot5p5iqzWCYS1yiyUxqP290Nw2q3GVJtc+eRjIFJE6EYb9pIJqVCWXsKVGa98SHGFVGEZ9/z3ncOGkT7ewowHLl4JWrs0Cjf+O8DCTMIYlORIkSWb80rHkn1IiJSjLLE492UvIf+QklUckol5gRSOLzrLL19+/A3zMLpDv7kIYJyeYlI/7NkXngW/FAhf6DEfFVI/2RP5PhTv8z3R2mWjr2S2oKnIUEhFgNwE2+17/uzCdym33GzCfQ9Mr7iYXfijc/dlcXl5A3Wc9YJEncVa0SCnGyanPDCkh2d3jqVWu7LUy0Cf+gRg28xA=;5:UyNrl0kqzIcLECi48On93P77ckJ2Zcz3Gy3SiHJ6mWayihzTErYH8Iy5O4StUCZXiJuNbppg9uzzXSq8ghVbX7Dc9BC+RUBfV6RyhKosPg7/DJoJHazGJetwiZDdcI98tXT4UO/yaNWPlG+QtqaYphKhi1FOn58KzDeA+Mu8RHY=;24:6/qjfN+6+iI2iaFPmXJO4It/fakl2ILRoslwqqthVQs5vZgkgdcFPkSs2K8Tf4eBE71Cuw+7xFRxHhUOEv8gOe5PTQ9cwOX4E/3ZRzUqX6o=;7:oGwMY4taOUOi7LlZN2I81pknlz4aZL10EVjVCwAtmUNvfjObN0Ca7UMkiJAg4JUMEa6vT1+/uaWXROvmlRaKElhfS99DOANW6IQ49wQPTnJIn1/Hm0qiWF6XsjaShP0FDWG54rW3WLselFkmCbk1jTOOT+i2mPBl5PzLnkBofVXk6ZfpfFecZCthPDb60Wxys+gwxo9yk6gash+cK6xfSHmSYK3CiMdnvetDZFG/Wsz0VTZ6z+wj/VHDHCSGUwPF SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;PS1PR0601MB1881;20:/ox8rRMl/hw4SeAfY14leGUwqQHKFGkGAyzohS994apRly90CEA/ibxAUXEGhaKRHEuY6AmJ9RbAHRRv5LWzuIqKb6AjZ/3ZEXwAt6EmdHsRxfq8REJn8FruP7odM2s3NRaLpIS/zi5IAV9ZkGT3BVov1nVLRIdqJPiLANS4tbQ= X-OriginatorOrg: renesas.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Dec 2017 02:10:27.3250 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: bd94e66f-e0eb-4843-3b9e-08d54297d82b X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 53d82571-da19-47e4-9cb4-625a166a4a2a X-MS-Exchange-Transport-CrossTenantHeadersStamped: PS1PR0601MB1881 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Laurent Thank you for your feedback > > + * NOTES > > + * N = (n + 1), M = (m + 1), P = 2 > > + * 2000 < fvco < 4096Mhz > > Are you sure that the fvco constraint is really 2kHz, and not 2GHz ? 2kHz - > 4GHz would be a surprisingly large range. It is 2kHz. This is came from HW team, and indicated on HW design sheet (?) > > + * Basically M=1 > > Why is this ? This is came from HW team, too. They are assuming M=1, basically. But yes confusable, let's remove it from comment. m is started from 0 (= M=1), no need to explain. > > + for (m = 0; m < 4; m++) { > > + for (n = 119; n > 38; n--) { > > + unsigned long long fvco = input * 2 * (n + 1) / (m + 1); > > This code runs for Gen3 only, so unsigned long would be enough. The rest of > the function already relies on native support for 64-bit calculation. If you > wanted to run this on a 32-bit CPU, you would likely need to do_div() for the > division, and convert input to u64 to avoid integer overflows, otherwise the > calculation will be performed on 32-bit before a final conversion to 64-bit. (snip) > > + if ((fvco < 2000) || > > + (fvco > 4096000000ll)) > > No need for the inner parentheses, and you can write both conditions on a > single line. Furthemore 4096 MHz will fit in a 32-bit number, so there's no > need for the ll. Yes, but compiled by 32bit too, right ? Without this "ll", 32bit compiler say warning: this decimal constant is unsigned only in ISO C90 # anyway, I will add this assumption (= used only by 64bit CPU) # on comment to avoid future confusion > I think you can then drop the output >= 4000000000 check inside the inner > fdpll loop, as the output frequency can't be higher than 4GHz if the VCO > frequency isn't. I think code has if (output >= 400000000) This is 400MHz, not 4GHz > > for (fdpll = 1; fdpll < 32; fdpll++) { > > unsigned long output; > > The output frequency on the line below can be calculated with > > output = fvco / 2 / (fdpll + 1) > > to avoid the multiplication by (n + 1) and division by (m + 1). It is nice idea to avoid extra calculation. I will use this idea, and add extrate comment to avoid confusion Best regards --- Kuninori Morimoto