Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752957AbcCGQbB (ORCPT ); Mon, 7 Mar 2016 11:31:01 -0500 Received: from shards.monkeyblade.net ([149.20.54.216]:51036 "EHLO shards.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752418AbcCGQa4 (ORCPT ); Mon, 7 Mar 2016 11:30:56 -0500 Date: Mon, 07 Mar 2016 11:30:54 -0500 (EST) Message-Id: <20160307.113054.2069588355987832062.davem@davemloft.net> To: blogic@openwrt.org Cc: linux-kernel@vger.kernel.org, netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, steven.liu@mediatek.com, Carlos.Huang@mediatek.com, nbd@openwrt.org, igvtee@gmail.com Subject: Re: [PATCH V4 2/4] net-next: mediatek: add support for MT7623 ethernet From: David Miller In-Reply-To: <1457340997-23116-3-git-send-email-blogic@openwrt.org> References: <1457340997-23116-1-git-send-email-blogic@openwrt.org> <1457340997-23116-3-git-send-email-blogic@openwrt.org> X-Mailer: Mew version 6.6 on Emacs 24.5 / Mule 6.0 (HANACHIRUSATO) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.5.12 (shards.monkeyblade.net [149.20.54.216]); Mon, 07 Mar 2016 08:30:56 -0800 (PST) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 520 Lines: 20 From: John Crispin Date: Mon, 7 Mar 2016 09:56:35 +0100 > +static int mtk_mdio_busy_wait(struct mtk_eth *eth) > +{ > + unsigned long t_start = jiffies; > + > + while (1) { > + if (!(mtk_r32(eth, MTK_PHY_IAC) & PHY_IAC_ACCESS)) > + return 0; > + if (time_after(jiffies, t_start + PHY_IAC_TIMEOUT)) > + break; > + } > + > + dev_err(eth->dev, "mdio: MDIO timeout\n"); > + return -1; > +} Busy polling in a loop for up to 5 seconds with no preemption points is not something you can do, sorry.