Received: by 2002:a05:6a10:22f:0:0:0:0 with SMTP id 15csp297112pxk; Thu, 17 Sep 2020 03:25:44 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz6elSwQrZ7AnKbIYiqPU4gil0ijz5mfYTpdDKAXp1rsDdvBlaleZekEUo1/fPaF1aiOptI X-Received: by 2002:a50:ec10:: with SMTP id g16mr1570309edr.214.1600338344235; Thu, 17 Sep 2020 03:25:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1600338344; cv=none; d=google.com; s=arc-20160816; b=W6SuYIoe9pAxa0GeRvFO2xCogdzblV0VGZAN77b4CwdgqIxP16hXaaYQGtIxqIfMgY ujwcCQU/a4EwWqMyp492qRhqa++WvCtA4SpEIbL0LEYcXlCopyZyrQoOalnJg0HOZSH8 8K1RzqMqNHgy+NdL/Rd7yBZVBe7U1mjGxzmkT25G++AVgBeMoXQSAzBm3VLhTwAlrvlg ip7oKEiqDAFy88xkdTrCtCpOmLtU/GenqiJbzQxsupC63KFuT+mGxc+1yL53rhb2RTrm IvT02aHhrbDeL4nvf5z0YRqsiN/QgRcprDkrIj/wWoRa1VRRTwjEyk2Ix2Ff284/F7Vt mWEw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:references:cms-type:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:cc:to:from:subject:dkim-signature:dkim-filter; bh=+soWB7T32AfnQiLAfNmy+TnWJJXergXGZL/ibpvdNLc=; b=WQ63byPGlLAXKytaRai5bl/DmdI8WXDvZU9gx2dlDO8X/zKifkD1XGyu1uKSlNkT6U gCu5yfsmZhfo5AdIsI3vVKgs5L49R92l1soneLzJ7DzUcK0nuyC3Hmm6WryHeBzLExOo m8PmhuTY4tVXIJF+4vjhAlUx+CCxagjkqlfu53R+e/OSfuBgAMkpGFH5hiH6ldhDmQOk lUemc4zaYkeHqQHzo73bPR6pEG7VdtQMcspkqEVBg+jUfOS+td3lDjzZq7aPi4M6+oK5 zuLO9ADr8SvaVJmYe32NOaxkXlOMKY2eak0YrZNWa21LQcgj/JpLh4Zt9I49OAKQ7KWn kHCQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@samsung.com header.s=mail20170921 header.b=Vs4C2WUF; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=samsung.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id z14si14097608eja.502.2020.09.17.03.25.20; Thu, 17 Sep 2020 03:25:44 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@samsung.com header.s=mail20170921 header.b=Vs4C2WUF; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=samsung.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726634AbgIQKVl (ORCPT + 99 others); Thu, 17 Sep 2020 06:21:41 -0400 Received: from mailout1.w1.samsung.com ([210.118.77.11]:44147 "EHLO mailout1.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726655AbgIQKVD (ORCPT ); Thu, 17 Sep 2020 06:21:03 -0400 Received: from eucas1p2.samsung.com (unknown [182.198.249.207]) by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id 20200917102053euoutp0130f5e6ff1551d05b14c4ce70e6fc5f09~1ivsEtlFa0131701317euoutp01B for ; Thu, 17 Sep 2020 10:20:53 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20200917102053euoutp0130f5e6ff1551d05b14c4ce70e6fc5f09~1ivsEtlFa0131701317euoutp01B DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1600338053; bh=+soWB7T32AfnQiLAfNmy+TnWJJXergXGZL/ibpvdNLc=; h=Subject:From:To:Cc:Date:In-Reply-To:References:From; b=Vs4C2WUFR76REJL2l+B2qQuzWUzK/SZjuI5gpKCf2u2MUFVCfKe6uXlPU0IJZBKux zPFdVJ1Qz+wT9SxlIBR55lImZHDpU7nVSO2/IS2i/NUMXxcsyqSqSiK780yDdYVnLq Ls4pNwEbMznzoz2z7H3zPP6AXR1ajKkMNhmcqyWs= Received: from eusmges3new.samsung.com (unknown [203.254.199.245]) by eucas1p1.samsung.com (KnoxPortal) with ESMTP id 20200917102053eucas1p16c5a1bcd7329aecd78b56d57a79a2983~1ivr0zz2t0234902349eucas1p17; Thu, 17 Sep 2020 10:20:53 +0000 (GMT) Received: from eucas1p2.samsung.com ( [182.198.249.207]) by eusmges3new.samsung.com (EUCPMTA) with SMTP id 17.F8.06318.488336F5; Thu, 17 Sep 2020 11:20:52 +0100 (BST) Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by eucas1p1.samsung.com (KnoxPortal) with ESMTPA id 20200917102052eucas1p1baf4933226fe43fadd82ec5ccb51036a~1ivrbhp-N0243702437eucas1p18; Thu, 17 Sep 2020 10:20:52 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eusmtrp2.samsung.com (KnoxPortal) with ESMTP id 20200917102052eusmtrp206a2711693fabd35d17badf571cc0daf~1ivra3BZA1192211922eusmtrp27; Thu, 17 Sep 2020 10:20:52 +0000 (GMT) X-AuditID: cbfec7f5-371ff700000018ae-44-5f6338848cca Received: from eusmtip2.samsung.com ( [203.254.199.222]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id CF.AE.06314.488336F5; Thu, 17 Sep 2020 11:20:52 +0100 (BST) Received: from [106.210.123.115] (unknown [106.210.123.115]) by eusmtip2.samsung.com (KnoxPortal) with ESMTPA id 20200917102051eusmtip28df2ee4b1ba88206b4bab3e23003e2b4~1ivqphxjD2885528855eusmtip2C; Thu, 17 Sep 2020 10:20:51 +0000 (GMT) Subject: Re: [PATCH v3] clk: samsung: Prevent potential endless loop in the PLL set_rate ops From: Sylwester Nawrocki To: Chanwoo Choi , tomasz.figa@gmail.com Cc: linux-clk@vger.kernel.org, sboyd@kernel.org, mturquette@baylibre.com, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, b.zolnierkie@samsung.com, m.szyprowski@samsung.com Message-ID: <70db322d-4b8d-be69-0434-b1d1b3764340@samsung.com> Date: Thu, 17 Sep 2020 12:20:51 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.12.0 MIME-Version: 1.0 In-Reply-To: Content-Language: en-US Content-Transfer-Encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrCKsWRmVeSWpSXmKPExsWy7djP87otFsnxBnuvW1psnLGe1eL6l+es Fh977rFaXN41h81ixvl9TBZrj9xlt7h4ytXi37WNLBardv1hdOD0eH+jld1j56y77B6bVnWy efRtWcXo8XmTXABrFJdNSmpOZllqkb5dAldG09GTbAXruStu3tzD0sC4jLOLkZNDQsBEYubH y0xdjFwcQgIrGCW+n1jKCuF8YZRYtOQmO4TzmVFi7s07bDAtfw8fYYFILGeUOLKsjw3C+cgo cW/tDXaQKmGBOInlM9YygdhsAoYSvUf7GEFsEQF7iQ3H/oPtYBY4yCgxraUXrIhXwE5i7p5T YEUsAqoSN05PBYuLAg06duoRC0SNoMTJmU/AbE6gQQ8OzwSrYRYQl7j1ZD6ULS+x/e0cZohT D7FL7J3qBWG7SKz6NJkJwhaWeHV8CzuELSPxf+d8cAhICDQzSvTsvs0O4UxglLh/fAEjRJW1 xJ1zv4D+5ADaoCmxfpc+iCkh4Cjx9SkjhMknceOtIMQJfBKTtk1nhgjzSnS0CUHMUJH4vWo6 1AVSEt1P/rNMYFSaheSxWUiemYXkmVkIaxcwsqxiFE8tLc5NTy02zkst1ytOzC0uzUvXS87P 3cQITEun/x3/uoNx35+kQ4wCHIxKPLwcEknxQqyJZcWVuYcYJTiYlUR4nc6ejhPiTUmsrEot yo8vKs1JLT7EKM3BoiTOa7zoZayQQHpiSWp2ampBahFMlomDU6qBcYrTQx6JjgSzVMsIud/n lpzU21dovrnVaHnhEuE9e448aZW5qfky+9FbkwPClldv61/ZHLdjn8LOb09qdS7O1fn+Mf7I Hu4UttVS5ueNZ1uumD6vi//b+dt7er/m6fyt+S0+R+q1a78ly93/zeExbhVL044xLXN8ekPE K7JQQ8Phi5Pj8tqiFCWW4oxEQy3mouJEABJXzDZHAwAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrOIsWRmVeSWpSXmKPExsVy+t/xe7otFsnxBptOq1hsnLGe1eL6l+es Fh977rFaXN41h81ixvl9TBZrj9xlt7h4ytXi37WNLBardv1hdOD0eH+jld1j56y77B6bVnWy efRtWcXo8XmTXABrlJ5NUX5pSapCRn5xia1StKGFkZ6hpYWekYmlnqGxeayVkamSvp1NSmpO Zllqkb5dgl5G09GTbAXruStu3tzD0sC4jLOLkZNDQsBE4u/hIyxdjFwcQgJLGSVOfF/K1sXI AZSQkpjfogRRIyzx51oXG0TNe0aJ2w09LCAJYYE4ieUz1jKB2GwChhK9R/sYQWwRAXuJDcf+ s4I0MAscZJRYdvosM0T3D0aJGRM72UGqeAXsJObuOQXWwSKgKnHj9FSwSaJAU8/0vGCDqBGU ODnzCdg2TqCpDw7PBKthFlCX+DPvEjOELS5x68l8qLi8xPa3c5gnMArNQtI+C0nLLCQts5C0 LGBkWcUoklpanJueW2yoV5yYW1yal66XnJ+7iREYiduO/dy8g/HSxuBDjAIcjEo8vBtEk+KF WBPLiitzDzFKcDArifA6nT0dJ8SbklhZlVqUH19UmpNafIjRFOi5icxSosn5wCSRVxJvaGpo bmFpaG5sbmxmoSTO2yFwMEZIID2xJDU7NbUgtQimj4mDU6qB0ZU5fm3Nw949t1ZyTLvjZtNz s2HBWR6ehqD4+z83slq8sJN3Zl3ec+9orcoH9SveAsb78/Tjfq8Iay6qO2A38Ufs7dS7yzdF pkrYLX4xgY9p6qZ139Z7PU7ryuXZUPo9Lv7PqsutM6W+yn+/J/l3+xnrx3qKcj1X4xQPVEjc mi17banQ6wL3a0osxRmJhlrMRcWJAD0p34LaAgAA X-CMS-MailID: 20200917102052eucas1p1baf4933226fe43fadd82ec5ccb51036a X-Msg-Generator: CA Content-Type: text/plain; charset="utf-8" X-RootMTR: 20200813095520eucas1p209432599420d62e0e54a5545334c329c X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20200813095520eucas1p209432599420d62e0e54a5545334c329c References: <20200813095508.7563-1-s.nawrocki@samsung.com> <28cd3eeb-816d-b369-11a9-16cd2c1af87c@samsung.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 15.09.2020 13:34, Sylwester Nawrocki wrote: > On 14.08.2020 02:46, Chanwoo Choi wrote: >> On 8/13/20 6:55 PM, Sylwester Nawrocki wrote: >>> In the .set_rate callback for some PLLs there is a loop polling state >>> of the PLL lock bit and it may become an endless loop when something >>> goes wrong with the PLL. For some PLLs there is already code for polling >>> with a timeout but it uses the ktime API, which doesn't work in some >>> conditions when the set_rate op is called, in particular during >>> initialization of the clk provider before the clocksource initialization >>> has completed. Hence the ktime API cannot be used to reliably detect >>> the PLL locking timeout. >>> >>> This patch adds a common helper function for busy waiting on the PLL lock >>> bit with timeout detection. >>> Signed-off-by: Sylwester Nawrocki >>> --- >>> Changes for v3: >>> - use busy-loop with udelay() instead of ktime API >>> Changes for v2: >>> - use common readl_relaxed_poll_timeout_atomic() macro >>> --- >>> drivers/clk/samsung/clk-pll.c | 94 ++++++++++++++++--------------------------- >>> 1 file changed, 34 insertions(+), 60 deletions(-) >> Thanks. >> >> Acked-by: Chanwoo Choi > > Patch applied, thank you for your comments. And dropped now as it causes issues on arm64. As reported by Marek it seems udelay() doesn't work before the system timer is initialized.