From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754266AbbKXLJR (ORCPT ); Tue, 24 Nov 2015 06:09:17 -0500 Received: from mail-bn1bon0113.outbound.protection.outlook.com ([157.56.111.113]:32413 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753009AbbKXLJN (ORCPT ); Tue, 24 Nov 2015 06:09:13 -0500 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Ping.Bai@freescale.com; Subject: Re: [PATCH] cpufreq: imx: Add cpufreq driver for imx7D/Solo SOC To: Lucas Stach References: <1448287669-3600-1-git-send-email-b51503@freescale.com> <1448271626.3689.7.camel@pengutronix.de> <5654133A.6010506@freescale.com> <1448356097.3689.19.camel@pengutronix.de> CC: , , , From: Bai Ping Message-ID: <5654451D.4000004@freescale.com> Date: Tue, 24 Nov 2015 19:08:13 +0800 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 MIME-Version: 1.0 In-Reply-To: <1448356097.3689.19.camel@pengutronix.de> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [199.59.226.141] X-ClientProxiedBy: HK2PR04CA0032.apcprd04.prod.outlook.com (25.162.205.170) To BY2PR0301MB2086.namprd03.prod.outlook.com (25.163.197.139) X-Microsoft-Exchange-Diagnostics: 1;BY2PR0301MB2086;2:T7XrOnmT2mZ0L9Ub/spxn4Ra30c6ydyaVML+G3KJkXqgLrhhF+Jo0+dDuj90Q2vjYwxvmdVAs5/zykyABLtqJksqMUS2JdheBFLnYXDRVEZiPEFhWnCfmH6z4B1k2P+XtAKpMc7bwU4rCh+qIzwvbQ==;3:PjJWBtbwD37rtM8FoKN9/R2pw2r5VuZd66GiykZy+u0VllQ+EpZu1j4NFUgQHfL/Gk2rNJqpGIVyt58iao/n7fq/7wCDN9ouu5mOy0SqjKuW6YNwNvYptL3udKvF7K++;25:1kDhFylZGyRnHoicYt1Z2pdSZUBcrwMv0OA83MtOXKsC9ie73ugLAeuSUw15M8E+GkYCH9eWaWhLeUmd8gb+eo5EdJaA2D7E6fgkllVfdhlsXqeb/HWpxnypkRyjwI5KkTg2VGIhHQv95wbUSs4wDUjD/cElqvlkH+Gd8whUzjL+TfOl8S8M+nFu8Rh52Lz0l0OReKKMO5VAZ22QwKZa/REWNEi1EjKEYPs0VDQO8b+/hXbTpyg6SyXjUhjtNq1J6uGfv+vgQ4gNPQpEKujoTQ== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY2PR0301MB2086; X-Microsoft-Exchange-Diagnostics: 1;BY2PR0301MB2086;20:iBYhhP3GhfELhn+szvqMIjW7Dqb42cnZeujC5K3MFPAMTtW/JgyOCJvbeihRzd/TVj9cOMKTNeCx1VIrdrdlYuhXAEhC0PIy4G2MNxWqdSA/XXoAIFUXsmrEPWppFly3hSnQHouRCCvAGnsn59Cam8CAuKs0zcHVUjkkYwGFDtqvQCDc+8zDRjE8ncbZTZCBr2+NmSOOd0mE0CXcF0neTaVIuKKxisbYzFx7jdtvgbLlIeZ1yFhPuB/mZawgeamHmtzZC25EbmomEPqGoh22aZEQKBK1Q6aj/qfJCwudeZ3JokJ3ndhZ4Dow4ZnjEqP/shEW2++neo4bQ27B7X+EcPEI08atvLFZnJovrJUhfVk9+y7hJjEt9LzTdqZpNYldg2lTS2SNEE2ExRwKL5Klwr9/qqIsmWkGgdIcuP43eeSn/LLgGfXEhiz2cXiACZsC7ws84FHLYSN6WScxjKtE0L9YYIChFKVJ87P+ldQOwLp0rWmull3s85dU2gUmTvza;4:XR5oFutu42wCk1Qk6BDkRx4rag/b3n5W/5/+S6BExjhWdGDAGpOMiKThf9VBdMrzCTRmYhq/nOV0ipgR5hiBcrdA7nn9dIPjy3SyywJamvQgPA1EGdMDAoiLrraZ96XrK9L8Sj0JahvZrajhczQQV1h35JvucDsi3YCmHjnRurF1XQF6JsyFp05hjkIGiieDPyK+P34bGSP1oQ/aNSq7GeSbiwtFyZBRtFhUkyT4OGED+QRHfGqoa9F5azhSJzZaGgS/qkF1KVkHTeLerQKrcz2w0Sxbkng9JhbcZ+TImb2BDnRPfYXaWyOTjvtCR0stxxgaLoZyCahCt4fxmI6H0Csl8znp8wDjUcAdFfrzUIWPXj4qnEl7oQe5YprUOv4L X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(5005006)(520078)(8121501046)(3002001)(10201501046);SRVR:BY2PR0301MB2086;BCL:0;PCL:0;RULEID:;SRVR:BY2PR0301MB2086; X-Forefront-PRVS: 0770F75EA9 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(6009001)(6049001)(189002)(24454002)(199003)(43544003)(479174004)(87266999)(230700001)(4001350100001)(110136002)(99136001)(54356999)(40100003)(5004730100002)(97736004)(5008740100001)(76176999)(59896002)(65956001)(33656002)(64126003)(87976001)(92566002)(66066001)(105586002)(65816999)(5007970100001)(106356001)(5001960100002)(80316001)(42186005)(65806001)(189998001)(586003)(36756003)(5001920100001)(101416001)(122386002)(50466002)(50986999)(6116002)(81156007)(47776003)(93886004)(2950100001)(23676002)(77096005)(83506001)(3846002)(7099028);DIR:OUT;SFP:1102;SCL:1;SRVR:BY2PR0301MB2086;H:[10.193.102.213];FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtCWTJQUjAzMDFNQjIwODY7MjM6UnlUbkcxZ0Q4RTV0aHl6VHVNMjNQZE9N?= =?utf-8?B?TjZwRGI3UHgyblZMY2hYWmVQRE5sQ3ppbWJIYW9OZEVMbitubWdIc2Q3ZHBU?= =?utf-8?B?MXVsYjQyRDhIZ0hWUkRFaEhzNU5kNElkUmxTUDBjWVBnaTM4NGFZeE5jMGdi?= =?utf-8?B?eTFLN09URDZxcGJtK284b0Zpa3QzLzBNSUE5L3k4aTIvZS83dThvVGZzcmF5?= =?utf-8?B?aDRIZzFLMzJBZ1J1MWtwYUF6SmpvYll6b3RUMW9PRzFaNjVuT3FOQmVJTGtq?= =?utf-8?B?YXcwQWtlVUgxb21OTzZleVJFNlhZbWVXNEIweG5XRHJQRUZ0ZElJaTdHUWZM?= =?utf-8?B?ZWEwUjJ6QXNRUlRIdnlDV0NaazFybEJ3UHBWR0pYdUFEa1J6ck8zREIxVkoz?= =?utf-8?B?TU5xSXk5c1d3dW1LNG5VblM0Q1d3S2YzeXpQU012Q2lNL3p2ZFQ1eDhtVHNo?= =?utf-8?B?MVFqWm1aVy8wUFpLVzhjNk05U3BvL0p6UFVsUHV2TEp1TWRlZWM5WDJNdnRn?= =?utf-8?B?bVV2dFQ0Tjd5M3drRkZUSVZCUGsveXR2aDJQS1R5eGVEVzl0bU1INW13c0pu?= =?utf-8?B?cDh2Y3VaanliMC8remdzTE01cnlUSUxtRzlmQUp0MlVSaFlLN2FTbVZDMVQr?= =?utf-8?B?NkpwTlVmRkc4QWo2M0JMUEo2K3F0amMzSGRPTEU0OXgxdTVlR2oxUkpQY2t2?= =?utf-8?B?UUN1WnhHWXZLVEZaYXBTTmdQcmI5eGxTbGpFY3Y0TmFURDhrMndmRW5kaE1Y?= =?utf-8?B?RDN0T0s0V0pvY1JQbnkzVkZ1VGI4RW90VnBDb3ppTEU0MFgzc1R3VGVtendN?= =?utf-8?B?b2szM0xDa2VFdTR3aStkTlQ1RDBFMzhxM1phbUF2eXZnRjJFNVpvYTRnbmlN?= =?utf-8?B?czNvMnN5Yi83VGRxZ296QnF1SFhiM21NUTdyZFFWWWhNeUcrV1ZSdm9vNFZ6?= =?utf-8?B?bzFGdkNYQjZUd1BDQlowVysyRFAzS21pQTZlMEtBRk5FQk1aaTBmQUoyVWlk?= =?utf-8?B?QU83a1BWUmxyOW1qRDdlNzdENDFYMDBDVW5TYTFYcHRJdTNOWFFPUE9JSWd0?= =?utf-8?B?RGc2RzdRc2RRQUVYS1RVdDBPdi9EdDRxTVBxeGk0eXpxelhiSUhwTWZtVlFN?= =?utf-8?B?djZ5bDZHQlNSTkxSdkNjUDBtMVUvLzZkL0w4cEJpUzhXUHpwd1krditxM1cx?= =?utf-8?B?MlhqcEVvVTBndW5VY0Niemx5dlQ3cERjMDJZOEZKL25RYkJmM3pqMUQ3b1E1?= =?utf-8?B?bFExb2d6R0x6WDZ3bk44bTNEeVp2aUVIbFk1TjZSa0R4UXJZUXJkNTI4Z3NP?= =?utf-8?B?VE1XMUlWNU5vVG8yQlBEaXk5V2FUTUk2clpkLzE5YktpdnBZZk5WQysvVEo3?= =?utf-8?B?MEhLNitYWkphQTJ4cmhSZlBNbmxtaHM3ZUoxQW0rNHdUZVpBSEp2dzlrWS90?= =?utf-8?B?TG5mZ3FoWnhwM1VyaFJMSGhBVUovbUo1SWRqYzFIZERGODc3dmZoSDd0a1dj?= =?utf-8?B?V0hmdGVLUkZpa091dUYxV0FPd0Z2MnlFa1JEQ01xRGJaREpvOFN0VFBFTTNy?= =?utf-8?B?VU9RcTBVTEFnSFgwZ0VnbEQ0RHNxallEN3VZM3E0ZGtPSXF4RlplNVVwRmw4?= =?utf-8?B?c3pFbVpKcXBTY3hqVFlCcnhxY1gvR0FLcG4rd3hGZU9SMUdlM0Z1OGJTQzZN?= =?utf-8?B?ZjJkYXdYNC9lN3BPL3JYWkVtczhVWG16YmRaeTMyOTlTeVRkYWovZDcxYmxK?= =?utf-8?Q?E3WTnAGhWuZ9lmtEQV+Ul3kFc+zPfZ85et2xWJ4=3D?= X-Microsoft-Exchange-Diagnostics: 1;BY2PR0301MB2086;5:/AGQvuomjx8MrZrTCq1l1EKo0VfptvnsZHp7l0coizgSdpT/Is1A5xr2ArXCVK9qNlKKBi5+kyefyV7vs7mpvkq+U0pnAwVJE8JysZvf3z4ilhzSfv+a63BMI7+D+xGDE/mx71h+CwoNJKvr0Awvcg==;24:tAJK2vWY5pICjmRlwGH6LwLsIap3EyUBtkeg2wp+tAhN7H/TxkNIP5e99JYpqCtG717uFH8yPH15cr6RGqx0sKcYDUh3+WrD/qrKmgrcXxM= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Nov 2015 11:09:06.1038 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY2PR0301MB2086 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2015/11/24 17:08, Lucas Stach wrote: > Am Dienstag, den 24.11.2015, 15:35 +0800 schrieb Bai Ping: >> On 2015/11/23 17:40, Lucas Stach wrote: >>> Am Montag, den 23.11.2015, 22:07 +0800 schrieb Bai Ping: >>>> The i.MX7Dual/Solo is a new series of the i.MX SOC family. >>>> The existing cpufreq driver for 'i.MX6' or 'cpufreq-dt' can >>>> NOT match the requirement of this new SOC. This patch adds the >>>> cpufreq driver for i.MX7Dual/Solo. >>>> >>> So, what are those requirements, which could not be matched with >>> cpufreq-dt? We should really try to not add another cpufreq driver. >> the requirement is the PLL1 used to source the CPU core clock can NOT >> change frequency on the fly, >> during the PLL1 frequency change, not clock output from this PLL1 in a >> short time. this will lead to glitch >> to the core clock. so before we change the PLL1's frequency, we must >> switch the CPU core clock to another >> clock source, after the PLL1 frequency has been changed, we switch back >> core clock to PLL1. >>> I don't see anything special in here. A single regulator and some clocks >>> needing to be controlled in the right way. That's already handled for >>> i.MX5 with cpufreq-dt. Please look up how it is done there and try to do >>> it the same way for MX7, or provide substantial information why it >>> couldn't be done. >> I have checked the i.MX5 cpufreq, As on i.MX5, no need to take care of >> the PLL's frequency change flow, >> so the cpufreq-dt is the best one to support cpufreq. But on i.MX7, the >> PLL design is not the same as on i.MX5, >> additional steps needed in CPU frequency changing flow. the issue that >> can NOT be tackled by cpufreq-dt is >> additional step used by PLL frequency change. > This is wrong, we have the step clock requirement on MX5 as well, that's > why I asked you to look into this. The MX5 clock controller provides a > virtual ARM clock, that implements the proper clock switch flow. This > allows to reuse cpufreq-dt, thus reducing code duplication in the > cpufreq drivers greatly. Thanks for your reminder. It is my fault, I missed the imx_clk_cpu function. I will try using cpufreq-dt on i.MX7 just like i.MX5. BR Jacky Bai > > Regards, > Lucas >