Received: by 2002:a25:c593:0:0:0:0:0 with SMTP id v141csp4606089ybe; Mon, 16 Sep 2019 15:21:51 -0700 (PDT) X-Google-Smtp-Source: APXvYqzR4d9YDW2akj2ByI8kX4jhVOP+47PHNjbVj3BfDqh7SML2EDiwf0GrPH4bJKBmaL2nAfnA X-Received: by 2002:a50:e611:: with SMTP id y17mr1639497edm.66.1568672511244; Mon, 16 Sep 2019 15:21:51 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1568672511; cv=none; d=google.com; s=arc-20160816; b=sh+c1pQbB79K7WFaYeHMm/iR22Hbpe6iiUGSdH30sNRcM3rP0sx8e8Milyr5wmtJRL mk2O56uRwq4EUkE1qpEkEdITuYaa6rfEUN83T0T3QLmMaWnVMlsFCb7o7K7fAYWt6cCE 7B/bLo+SGKJLSyNjkne++buzJYEK7o22VWOhY/8SkuMxXER82Pugi9ANleALHl2GbDXD e0JKKeo/X/NcCyaOzf+1+X6mMEE1fvEZM/Uve8pGm+sfHKccRKp8OTmaA90S3o+TcJAP E4+rL2h1Ir0Y6U0mpme5mD4zeIhAy7yA3spYpbn8Lo4ADAeJcTAChvBUskN8CZI3Tx98 T2Zg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=35Le1CuHRQyVF/cByw2yYN48BkYqEm/VqIIyyf0DRl4=; b=s+3lmuJ2KrX1pICdv0T/ck67xx2VmjEPMzc7I/fg0ON8RzgK6gvEX2uMeKuPZdtyB/ Y66oV4UsEAKts5Rrd8N5QjF2kTIL4AN5oXLmo0Fky2ORu1qpPc5onBSzSuP96iMXGAef cKfP2z3hQB9eD+rLbyDa5yHLNGY0Jvm1sdCdVzTMVdGPoZo8nZGQlASwE/tSkIyWw5p5 ysCpiD89N340u5EiPG8k1ZzcS/ICo8+Bm6WdtmJI0ITBXacu29L2SUbgITrkUnjADanL KHZR9PQ7lPLNoBp9+HKPogEwljagWHbO7+pev7RkLtpMTmPTsUnPbH3ps8JqmWfTJOUF MIKQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id r24si233899edy.417.2019.09.16.15.21.27; Mon, 16 Sep 2019 15:21:51 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2403855AbfIPUoJ (ORCPT + 99 others); Mon, 16 Sep 2019 16:44:09 -0400 Received: from mail-wm1-f65.google.com ([209.85.128.65]:40274 "EHLO mail-wm1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2403842AbfIPUoI (ORCPT ); Mon, 16 Sep 2019 16:44:08 -0400 Received: by mail-wm1-f65.google.com with SMTP id b24so687375wmj.5; Mon, 16 Sep 2019 13:44:07 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=35Le1CuHRQyVF/cByw2yYN48BkYqEm/VqIIyyf0DRl4=; b=B+dLal9Z/qIruAwH40UbKUUu/gDCp6z1+Rf9r090hUkENBdmWM4X7k7YF+zSF6m6aB OTugm8Va8BEVKYT3VqWJlzFaKx2qX0qomJGQPBXo3/VHb3ABnx5N45KRpuY7LHgGUa4A +kTX2l2Ptvi9MEk8X/iA9iJy53cvHuIX9e05zO9Z3tjyI97nyDJjVHYtv6l6iPueB5zC pKH5cjeDbrp2fdaXm1a/1AI8JwFYbtFQOBpEa2CYtR6JVKM5RLJuORUOs/GorSf3N1FB iyWFyLEG43fJbvLpMgmgAUbhlC/aMJxXLo3SEKKdGUT7FvtOzWJKb7i0ewFtDBw1VbFV Nyig== X-Gm-Message-State: APjAAAVk6b8j0epPVcy0BnJQ0wkjxmxX19zxdj4LNIAJlDDlSVuYHty6 VYvq8N3A/0q3cyj4cxHEMdE= X-Received: by 2002:a1c:f917:: with SMTP id x23mr687011wmh.101.1568666646746; Mon, 16 Sep 2019 13:44:06 -0700 (PDT) Received: from black.home (broadband-188-32-48-208.ip.moscow.rt.ru. [188.32.48.208]) by smtp.googlemail.com with ESMTPSA id x6sm231437wmf.38.2019.09.16.13.44.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Sep 2019 13:44:06 -0700 (PDT) From: Denis Efremov To: Bjorn Helgaas Cc: Denis Efremov , linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, Andrew Murray , Kishon Vijay Abraham I , Lorenzo Pieralisi Subject: [PATCH v3 04/26] PCI: endpoint: Use PCI_STD_NUM_BARS Date: Mon, 16 Sep 2019 23:41:36 +0300 Message-Id: <20190916204158.6889-5-efremov@linux.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190916204158.6889-1-efremov@linux.com> References: <20190916204158.6889-1-efremov@linux.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org To iterate through all possible BARs, loop conditions refactored to the *number* of BARs "i < PCI_STD_NUM_BARS", instead of the index of the last valid BAR "i <= BAR_5". This is more idiomatic C style and allows to avoid the fencepost error. Array definitions changed to PCI_STD_NUM_BARS where appropriate. Cc: Kishon Vijay Abraham I Cc: Lorenzo Pieralisi Signed-off-by: Denis Efremov --- drivers/pci/endpoint/functions/pci-epf-test.c | 10 +++++----- include/linux/pci-epc.h | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/pci/endpoint/functions/pci-epf-test.c b/drivers/pci/endpoint/functions/pci-epf-test.c index 1cfe3687a211..5d74f81ddfe4 100644 --- a/drivers/pci/endpoint/functions/pci-epf-test.c +++ b/drivers/pci/endpoint/functions/pci-epf-test.c @@ -44,7 +44,7 @@ static struct workqueue_struct *kpcitest_workqueue; struct pci_epf_test { - void *reg[6]; + void *reg[PCI_STD_NUM_BARS]; struct pci_epf *epf; enum pci_barno test_reg_bar; struct delayed_work cmd_handler; @@ -377,7 +377,7 @@ static void pci_epf_test_unbind(struct pci_epf *epf) cancel_delayed_work(&epf_test->cmd_handler); pci_epc_stop(epc); - for (bar = BAR_0; bar <= BAR_5; bar++) { + for (bar = 0; bar < PCI_STD_NUM_BARS; bar++) { epf_bar = &epf->bar[bar]; if (epf_test->reg[bar]) { @@ -400,7 +400,7 @@ static int pci_epf_test_set_bar(struct pci_epf *epf) epc_features = epf_test->epc_features; - for (bar = BAR_0; bar <= BAR_5; bar += add) { + for (bar = 0; bar < PCI_STD_NUM_BARS; bar += add) { epf_bar = &epf->bar[bar]; /* * pci_epc_set_bar() sets PCI_BASE_ADDRESS_MEM_TYPE_64 @@ -450,7 +450,7 @@ static int pci_epf_test_alloc_space(struct pci_epf *epf) } epf_test->reg[test_reg_bar] = base; - for (bar = BAR_0; bar <= BAR_5; bar += add) { + for (bar = 0; bar < PCI_STD_NUM_BARS; bar += add) { epf_bar = &epf->bar[bar]; add = (epf_bar->flags & PCI_BASE_ADDRESS_MEM_TYPE_64) ? 2 : 1; @@ -478,7 +478,7 @@ static void pci_epf_configure_bar(struct pci_epf *epf, bool bar_fixed_64bit; int i; - for (i = BAR_0; i <= BAR_5; i++) { + for (i = 0; i < PCI_STD_NUM_BARS; i++) { epf_bar = &epf->bar[i]; bar_fixed_64bit = !!(epc_features->bar_fixed_64bit & (1 << i)); if (bar_fixed_64bit) diff --git a/include/linux/pci-epc.h b/include/linux/pci-epc.h index f641badc2c61..56f1846b9d39 100644 --- a/include/linux/pci-epc.h +++ b/include/linux/pci-epc.h @@ -117,7 +117,7 @@ struct pci_epc_features { unsigned int msix_capable : 1; u8 reserved_bar; u8 bar_fixed_64bit; - u64 bar_fixed_size[BAR_5 + 1]; + u64 bar_fixed_size[PCI_STD_NUM_BARS]; size_t align; }; -- 2.21.0