Return-path: Received: from mail-we0-f169.google.com ([74.125.82.169]:52587 "EHLO mail-we0-f169.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752154AbaDCOMb (ORCPT ); Thu, 3 Apr 2014 10:12:31 -0400 From: Richard Genoud To: Ivo van Doorn Cc: Gertjan van Wingerde , Helmut Schaa , "John W. Linville" , linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org, Richard Genoud Subject: [PATCH] rt2x00: BUG: remove double loop on REGISTER_BUSY_COUNT Date: Thu, 3 Apr 2014 16:12:07 +0200 Message-Id: <1396534327-12971-1-git-send-email-richard.genoud@gmail.com> (sfid-20140403_161237_399138_005B4A76) Sender: linux-wireless-owner@vger.kernel.org List-ID: rt2x00usb_register_read_lock() calls rt2x00usb_vendor_req_buff_lock() that calls rt2x00usb_vendor_request() which is already looping up to REGISTER_BUSY_COUNT times. So this loop is not needed. Signed-off-by: Richard Genoud --- drivers/net/wireless/rt2x00/rt2x00usb.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/drivers/net/wireless/rt2x00/rt2x00usb.c b/drivers/net/wireless/rt2x00/rt2x00usb.c index 10572452cc21..14142b099019 100644 --- a/drivers/net/wireless/rt2x00/rt2x00usb.c +++ b/drivers/net/wireless/rt2x00/rt2x00usb.c @@ -148,12 +148,9 @@ int rt2x00usb_regbusy_read(struct rt2x00_dev *rt2x00dev, if (!test_bit(DEVICE_STATE_PRESENT, &rt2x00dev->flags)) return -ENODEV; - for (i = 0; i < REGISTER_BUSY_COUNT; i++) { - rt2x00usb_register_read_lock(rt2x00dev, offset, reg); - if (!rt2x00_get_field32(*reg, field)) - return 1; - udelay(REGISTER_BUSY_DELAY); - } + rt2x00usb_register_read_lock(rt2x00dev, offset, reg); + if (!rt2x00_get_field32(*reg, field)) + return 1; rt2x00_err(rt2x00dev, "Indirect register access failed: offset=0x%.08x, value=0x%.08x\n", offset, *reg); -- 1.8.5.5