From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bai Ping Subject: Re: [PATCH v2] cpufreq: imx: update the clock switch flow to support imx6ul Date: Fri, 11 Sep 2015 16:38:05 +0800 Message-ID: <55F292ED.1080000@freescale.com> References: <1441986065-8821-1-git-send-email-b51503@freescale.com> <20150911080741.GJ9650@linux> Mime-Version: 1.0 Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit Return-path: Received: from mail-bl2on0143.outbound.protection.outlook.com ([65.55.169.143]:44236 "EHLO na01-bl2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751273AbbIKIid (ORCPT ); Fri, 11 Sep 2015 04:38:33 -0400 In-Reply-To: <20150911080741.GJ9650@linux> Sender: linux-pm-owner@vger.kernel.org List-Id: linux-pm@vger.kernel.org To: Viresh Kumar Cc: rjw@rjwysocki.net, linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org On 2015/9/11 16:07, Viresh Kumar wrote: > On 11-09-15, 23:41, Bai Ping wrote: >> + if (of_machine_is_compatible("fsl,imx6ul")) { >> + pll2_bus_clk = clk_get(cpu_dev, "pll2_bus"); >> + secondary_sel_clk = clk_get(cpu_dev, "secondary_sel"); >> + if (IS_ERR(pll2_bus_clk) || IS_ERR(secondary_sel_clk)) { >> + dev_err(cpu_dev, "failed to get clocks specific to imx6ul\n"); >> + ret = -ENOENT; >> + goto put_clk; >> + } >> + } >> + >> arm_reg = regulator_get(cpu_dev, "arm"); >> pu_reg = regulator_get_optional(cpu_dev, "pu"); >> soc_reg = regulator_get(cpu_dev, "soc"); >> @@ -331,6 +365,10 @@ put_clk: >> clk_put(step_clk); >> if (!IS_ERR(pll2_pfd2_396m_clk)) >> clk_put(pll2_pfd2_396m_clk); >> + if (!IS_ERR(pll2_bus_clk)) >> + clk_put(pll2_bus_clk); >> + if (!IS_ERR(secondary_sel_clk)) >> + clk_put(secondary_sel_clk); >> of_node_put(np); >> return ret; >> } > As part of good coding practices, you should free resources in the > reverse order to which they were allocated. The clocks don't follow > that, but its not a problem with just your patch. That's how it is > present today. Maybe you can write another patch to fix that. thanks for your suggestion, I will pay more attention to it in future coding. > Acked-by: Viresh Kumar > From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751726AbbIKIih (ORCPT ); Fri, 11 Sep 2015 04:38:37 -0400 Received: from mail-bl2on0143.outbound.protection.outlook.com ([65.55.169.143]:44236 "EHLO na01-bl2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751273AbbIKIid (ORCPT ); Fri, 11 Sep 2015 04:38:33 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Ping.Bai@freescale.com; Subject: Re: [PATCH v2] cpufreq: imx: update the clock switch flow to support imx6ul To: Viresh Kumar References: <1441986065-8821-1-git-send-email-b51503@freescale.com> <20150911080741.GJ9650@linux> CC: , , From: Bai Ping Message-ID: <55F292ED.1080000@freescale.com> Date: Fri, 11 Sep 2015 16:38:05 +0800 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: <20150911080741.GJ9650@linux> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [123.151.195.51] X-ClientProxiedBy: HK2PR02CA0006.apcprd02.prod.outlook.com (25.163.104.144) To BN3PR03MB1367.namprd03.prod.outlook.com (25.163.34.153) X-Microsoft-Exchange-Diagnostics: 1;BN3PR03MB1367;2:axesKdI5l4cZWkw9KlGX11z2p0JaSkErsQ3nl00qQ4dfH94FqfjE3s0fWqSEhpBMVramAGkA3NEmCnyqGvVoadlx7/7zIZ4RGMZ3Po91wZCHyLoebVRJiRdmUQMVseQ0pkN180LjRA1jrL37CRtIqdIMNIx7p/0vQT6eYMVL2uw=;3:7QBj0pkx3OyaPFbu9aqTG/8ciwXh+Cl3N/AR0L4irxizm/l1uxqz2QgoX8lanbDZt1jP08sM2KOqICODwZUfLePvfvM77nmtSjG6ngk1vAb3sP+CLMMPKOlAxn+10AnE2ZTyW4Zkq8LHeMyCIMU82g==;25:p669TjgJhd3r/s8vJif15iwCt0QzrId8mwAsYuUjsCdMCRuOJyFcWqq2xIwBVTSFcFIs2+/B02KcHh1R3Zx0Z69g31gyt5mNFaRLlWMzZuCAwhCj2Z2+PdwZbtuGBnXV7jtio8ToUD2ejPsrSH3na++QD2ndsN3Ak0IS/i2R0nEF6z3kiMadPnX4Pk3u+EYbo3hZfiFb8JUvWfSdLM3BO7/k1jeFiL1/3GuPxXzRpNHBCv6n5FH3a6a+8R09/2wZjTUDzxF+pRzGwLiRo6sIUg== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BN3PR03MB1367; X-Microsoft-Exchange-Diagnostics: 1;BN3PR03MB1367;20:L0iAdu2P2t485aSBC4Fd7/4hQmRa8nlYOb9obl6nHlIcomfBmp6o/QfB8b+1RDC22sl2M2WtJp6BlB2Ys74rJ2NuPrWnyQ1jd4RS5JDzrJLN7ae6rRcA2e39+MnLXUgr3BcwpvlIYgcyMp9658REm99FqrhWtXtmU/smHoHKPG6eKa2dL/6ZNm2mncCyPwDDkGvZXMGoSbvi3w0ptoBNOfmTlQrcJjG5fqv3crz0MdJaU1B64/kHaCJtTx3hHmT/QeGInru4wGjeQHJ4bnH4bQEqqPi5Cxs8OCKp9j7vEL8sGzi3x6cIy4clzrWRrt+b1Ze3o3UDBNXCihs7dvdxZt+hhHLDl4GOoX/oEkW0D51XXn0GpRSJcfA/uvGR+eG7Dv3g1WwdXm0Ek75tZ4v/zQ0pjgZIqmPrFDjNVHi1gtPe62yg0+GPf0dBuNU1xR8jTfMZAs6gKufELne0E7n912PJa8/Vn+pHMsZxP6onmkk+vOL7mqilRZ/39BGe5PSY;4:1vkGhJ8e5ebX1olEJvLeCv9QbeGTm9LPzH2bYKi0AdxpQ/ueOfM1gtGelrBZ5RBZj2W6sOG4Olr03bdWZ8yp8JgkJruQGfRepcRSc3jhbYhfW21pvQkKc93k49zEripkHWyqaKQUxvLHOfLsYJGQo4uvkqRgmDpymL9/Rdv0IVJBhR9X9hgkPOai2klbSH+QHcJjfEbMszs1PVV7kUbp2qrCu+8utAr7zODC8DfC2z22obozIFsuEnsbdTFcIutbkQxoWVrbhat1QFcFLsGN1AT2H+HGZS4G9U6X31kbQSIHxFFOzznCDCEGwA/HuGJJHItw5cRxykJGZP46fmylOg== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(520048)(5005006)(8121501046)(3002001);SRVR:BN3PR03MB1367;BCL:0;PCL:0;RULEID:;SRVR:BN3PR03MB1367; X-Forefront-PRVS: 06968FD8C4 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(6009001)(6049001)(377424004)(189002)(479174004)(199003)(24454002)(19580395003)(101416001)(76176999)(65956001)(66066001)(65806001)(64706001)(47776003)(23746002)(5004730100002)(64126003)(80316001)(5007970100001)(189998001)(46102003)(62966003)(87976001)(42186005)(33656002)(106356001)(5001860100001)(5001830100001)(4001350100001)(50986999)(5001920100001)(77156002)(50466002)(105586002)(5001960100002)(87266999)(54356999)(4001540100001)(92566002)(68736005)(40100003)(19580405001)(122386002)(110136002)(81156007)(59896002)(97736004)(77096005)(36756003)(2950100001)(65816999)(83506001)(32563001);DIR:OUT;SFP:1102;SCL:1;SRVR:BN3PR03MB1367;H:[10.193.99.52];FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;BN3PR03MB1367;23:LeVzAb/lZfgnS2r5x1XpT6nBDxVUaedBeVjDI?= =?Windows-1252?Q?ohrVILjcSaqBKQpxcJfyiwltZMze8ZToWhHuxkonmovXGCIi2GgVSSjM?= =?Windows-1252?Q?daiv8m9HC+2GFWGYLInuoJ7M09Wawcr9cnrbeh6F+bvC7pnKHaw1LA+p?= =?Windows-1252?Q?7TOmi8Zj6bSzu5SXTHnmbbo1YTxVf21lsZmfccOClXtfvDOLlxKy/6dP?= =?Windows-1252?Q?ANmyfFGiJFk+/7nBVXDhsrrk2lp2NgrtAD5dOOwkRU9LUWw3haXsDsnr?= =?Windows-1252?Q?6PeiiBQO3CLZvhle7tii7W24uJu3RxYDQuWI+W5Ns8yCxsJB48OnS7TV?= =?Windows-1252?Q?QAkNfXLOjC40oLuhTmPd3CbjUeAhH7JvKNNgKNWfRODktAQJnz3nX+mY?= =?Windows-1252?Q?LJAjMBe1ENDRD9M9+8Ksr82S7HnxWqzSX2naloijYqWf9td3bQYXlRhk?= =?Windows-1252?Q?h0ZBaZw0mdr58krxqeJEl0n7YlfQd9XWuYlUGw2SOOueGU4E/7Cr2qyj?= =?Windows-1252?Q?AsiXI/sJAjHH69+dS5KZM8yLwl9RtIIIiDiPRf80cIBgDaDeompKZlEw?= =?Windows-1252?Q?gZNk/tszTISzua8MJFkeQrhnTvdqGiamf55ntNRMIRJkgtajJqyA199e?= =?Windows-1252?Q?CQ1ks03QlSF7YiI3mpgyewgrt109eSphW5iQxoD05y6dW2HuJhtY7Q4M?= =?Windows-1252?Q?tADXcJj+KgM1OTRO98+bdVB22dSTXOysct43jn7GDTDG43fljz1L7GPE?= =?Windows-1252?Q?pMRSCiOCocjEz7oYG6VF7ibxYpezJW8NuT3XFyaLLEnTOjFjgWFBO2hn?= =?Windows-1252?Q?6787KYqNia/df203jtFcYBCWTObsXcNX6xJsQOzJzEAvqSWOtLvK3UmA?= =?Windows-1252?Q?Cjeu1nnRQycUVw/Ovv2vK2rgzO7HPpslSAzHc2PfxP8inayvqV0FpEH2?= =?Windows-1252?Q?vu8+Ibbok1TGgjLkPjRF90/jb41sc7mv2cU3AC341XkoHq021FxL1YAa?= =?Windows-1252?Q?Xi7Gz+z85ucNk4l0b2Fm+/Dwp88FwHTBidp9gImIJUyvEJbDtR93T1en?= =?Windows-1252?Q?qrzKYTzOrKfUS87oLbZTJNsTP4HdDzHv05aoM8YIURQbinyIF0ttJ2mu?= =?Windows-1252?Q?fkDlhFQwtS8RYUz29SJ+WEqeUyQYSlJ5PVC1hb5Ola0ScwP5AotHjQnI?= =?Windows-1252?Q?ZbDFZQLqcvIAWUQSkfU/KvsF5afnKO/XW1DNSFpV00vH/hK8CuJLMdZ3?= =?Windows-1252?Q?fEIrUBJXqw0m2rLCDuh8VLOVCV9YLuHAXDDcz493v/Bm2ZMKoAPsty5l?= =?Windows-1252?Q?T6xJ3vvrbGpy9mcSX/U8KyR63etpSUg25CoGcYv+zfLp4+KcwsbuNzSo?= =?Windows-1252?Q?AltFumshCplZ6DRU3UgkzG/b6s4gjhmlEl0xxuec0wWCDDcdb/806qrw?= =?Windows-1252?Q?0aiTUclkRSn8MGIzBrSXJCWh0lZVc9nGCsBuOaky2vCkuA0kp8ZeLFCL?= =?Windows-1252?Q?6h5EvzsK0OAk4hiByK45Rhs5VwfmC+ZpvgHz5UCzbx2vfNLGg=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;BN3PR03MB1367;5:TXbHI/tz/gGBt7Pz8c0VV9iqIpCyDwVr7BRfi3getPYDwv/ah4JxPyDa7zEDRFvr+f95jcOXwy1o+TzboJtRqFEAQZhniLSXQt3mk7Q3EQ/iAze1+7MWViAZIPVBnJ0Pwow/yhk2EcimbHgE51cwIQ==;24:TOKWpnSweJ9QzcKJHD7oAob7xAo+DsOtzr3HBIDnmv1oiaRV+jPOL9IaIrLq5H/C3jvm/5HYgX9Ze8ovFs7VJXVZJe6vvwTTf672ArWe8Hs=;20:wz0jUM4Vu2bxbV+WCLolE3pCECFh06r+pYkZAc9q2kYuDHzwbsDwadvfMyYmNCicT7+t/z9wpjW/KJTsSxFtiQ== SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2015 08:38:24.4581 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR03MB1367 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2015/9/11 16:07, Viresh Kumar wrote: > On 11-09-15, 23:41, Bai Ping wrote: >> + if (of_machine_is_compatible("fsl,imx6ul")) { >> + pll2_bus_clk = clk_get(cpu_dev, "pll2_bus"); >> + secondary_sel_clk = clk_get(cpu_dev, "secondary_sel"); >> + if (IS_ERR(pll2_bus_clk) || IS_ERR(secondary_sel_clk)) { >> + dev_err(cpu_dev, "failed to get clocks specific to imx6ul\n"); >> + ret = -ENOENT; >> + goto put_clk; >> + } >> + } >> + >> arm_reg = regulator_get(cpu_dev, "arm"); >> pu_reg = regulator_get_optional(cpu_dev, "pu"); >> soc_reg = regulator_get(cpu_dev, "soc"); >> @@ -331,6 +365,10 @@ put_clk: >> clk_put(step_clk); >> if (!IS_ERR(pll2_pfd2_396m_clk)) >> clk_put(pll2_pfd2_396m_clk); >> + if (!IS_ERR(pll2_bus_clk)) >> + clk_put(pll2_bus_clk); >> + if (!IS_ERR(secondary_sel_clk)) >> + clk_put(secondary_sel_clk); >> of_node_put(np); >> return ret; >> } > As part of good coding practices, you should free resources in the > reverse order to which they were allocated. The clocks don't follow > that, but its not a problem with just your patch. That's how it is > present today. Maybe you can write another patch to fix that. thanks for your suggestion, I will pay more attention to it in future coding. > Acked-by: Viresh Kumar >