Received: by 10.213.65.68 with SMTP id h4csp1337042imn; Thu, 29 Mar 2018 02:52:29 -0700 (PDT) X-Google-Smtp-Source: AIpwx4+emypNOoYJxrTmGI60LgswYm1hvqlT9NCWJ1gd1j4f5rDE7u4P7ZMsmVx3u0ryI3kC/9e7 X-Received: by 2002:a17:902:ac8a:: with SMTP id h10-v6mr7615025plr.290.1522317149467; Thu, 29 Mar 2018 02:52:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1522317149; cv=none; d=google.com; s=arc-20160816; b=zkBz0O9pFEABg268ENgUr/qRbIlHPEmm9O9mRiCDYb8zxsmnRTXgU0uzIaYUEcAlOi TBpMXAiAqY8jC5nWpOgBk0CsxNWGJaOERgSM33ksQKNl/7VBI390aCckeqAy6FG048bb G288XWNSy1Ln/iGfW0Cem7XH2dmb3ruANKpEQIxI+YHkSH+EkEWSO/A/glbsq+eI+dbJ HsH0W6lEGaxWbbKphZsnUWB5durcYQq0tBIr3GzYvHhgVTmqAX9OR4icY5kHEjGsqzkN hdxkD0vM+IYvg+9Y5PM0V56dK1JHA52gHgyrE7Kj3OUg5nu/lHX6B0kn44kicjTgLhUX OoXw== 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:in-reply-to :mime-version:user-agent:date:message-id:from:cc:references:to :subject:dkim-signature:arc-authentication-results; bh=5c73lW1P286QEOCQuxfYHFv8WnEAwKCOQE6T77Vfwjo=; b=zmyK59C86unLnoLTiSP3eRAWuYZ2poAAAkKH0T6uE9OW//pdK9op+i/lLMq78IYRQO Ex0f4lA1oYjfmSTiHAnW6JtKjxSpcNGOfvpnexJkFUa5RPm7up1Z8KraciMYPO3mmXFO zgzeai81vT0u4tZGSZROx7eFtVTETCMxEmD+WO9IGGdGWXpad8KNbUXXqPkCywLQGRXM X3oXWuVgrgb2PfrmcLJTgxi7/ZK0splmkxWC3o/mtwMXdcYFhZ5Yq1g6yUYYi4r6KToC Dhr9egK6jTmix2eWeCr6rY7B8jOmrWsINEuaGhiS1NjOuiyl1RPeBhwWDFM+CgN6peVe +zEQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@ti.com header.s=ti-com-17Q1 header.b=rozBkSlk; 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; dmarc=pass (p=QUARANTINE sp=NONE dis=NONE) header.from=ti.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id n6si3749683pgc.801.2018.03.29.02.52.14; Thu, 29 Mar 2018 02:52:29 -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; dkim=pass header.i=@ti.com header.s=ti-com-17Q1 header.b=rozBkSlk; 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; dmarc=pass (p=QUARANTINE sp=NONE dis=NONE) header.from=ti.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752331AbeC2JvW (ORCPT + 99 others); Thu, 29 Mar 2018 05:51:22 -0400 Received: from lelnx193.ext.ti.com ([198.47.27.77]:53817 "EHLO lelnx193.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751249AbeC2JvU (ORCPT ); Thu, 29 Mar 2018 05:51:20 -0400 Received: from dlelxv90.itg.ti.com ([172.17.2.17]) by lelnx193.ext.ti.com (8.15.1/8.15.1) with ESMTP id w2T9ouu1003834; Thu, 29 Mar 2018 04:50:56 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ti.com; s=ti-com-17Q1; t=1522317056; bh=pcXGuBFx+a5umMZvHxAvclZQV/auSEG62RXlBxFLC9A=; h=Subject:To:References:CC:From:Date:In-Reply-To; b=rozBkSlkiBuOM6yFvVs4ocM3gfDn82m3FT41yNHZU5384h9FCdZe38xAFin9CUikF htM0hkAA189NvSgF6YSAjRNsJ/QRLH8l+TBc4RurxlRPCAlCyaH8g6FoUvye2caoXv zqi0dihZpPtFpqsaKDJcVnjV9O/EaPdtHuH8feeo= Received: from DFLE112.ent.ti.com (dfle112.ent.ti.com [10.64.6.33]) by dlelxv90.itg.ti.com (8.14.3/8.13.8) with ESMTP id w2T9ouCZ005237; Thu, 29 Mar 2018 04:50:56 -0500 Received: from DFLE109.ent.ti.com (10.64.6.30) by DFLE112.ent.ti.com (10.64.6.33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1261.35; Thu, 29 Mar 2018 04:50:55 -0500 Received: from dlep33.itg.ti.com (157.170.170.75) by DFLE109.ent.ti.com (10.64.6.30) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.1261.35 via Frontend Transport; Thu, 29 Mar 2018 04:50:55 -0500 Received: from [172.24.190.233] (ileax41-snat.itg.ti.com [10.172.224.153]) by dlep33.itg.ti.com (8.14.3/8.13.8) with ESMTP id w2T9oqEP022771; Thu, 29 Mar 2018 04:50:52 -0500 Subject: Re: [PATCH v5 08/12] PCI: endpoint: Handle 64-bit BARs properly To: Niklas Cassel , , Lorenzo Pieralisi , Bjorn Helgaas , Sekhar Nori , John Keeping , Niklas Cassel , Shawn Lin References: <20180328115018.31921-1-niklas.cassel@axis.com> <20180328115018.31921-9-niklas.cassel@axis.com> CC: , From: Kishon Vijay Abraham I Message-ID: <390035dc-7e33-184f-a2eb-909c09e2c455@ti.com> Date: Thu, 29 Mar 2018 15:20:51 +0530 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: <20180328115018.31921-9-niklas.cassel@axis.com> Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit X-EXCLAIMER-MD-CONFIG: e1e8a2fd-e40a-4ac6-ac9b-f7e9cc9ee180 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wednesday 28 March 2018 05:20 PM, Niklas Cassel wrote: > If a 64-bit BAR was set-up, we need to skip a BAR, > since a 64-bit BAR consists of a BAR pair. > > We need to check what BAR width the epc->ops->set_bar() specific > implementation actually did set-up, since some drivers, like the > Cadence EP controller, sometimes sets up a 64-bit BAR, even though > a 32-bit BAR was requested. > > Signed-off-by: Niklas Cassel Acked-by: Kishon Vijay Abraham I > --- > drivers/pci/endpoint/functions/pci-epf-test.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/drivers/pci/endpoint/functions/pci-epf-test.c b/drivers/pci/endpoint/functions/pci-epf-test.c > index 91274779e59f..d46e3ebabb8e 100644 > --- a/drivers/pci/endpoint/functions/pci-epf-test.c > +++ b/drivers/pci/endpoint/functions/pci-epf-test.c > @@ -380,6 +380,13 @@ static int pci_epf_test_set_bar(struct pci_epf *epf) > if (bar == test_reg_bar) > return ret; > } > + /* > + * pci_epc_set_bar() sets PCI_BASE_ADDRESS_MEM_TYPE_64 > + * if the specific implementation required a 64-bit BAR, > + * even if we only requested a 32-bit BAR. > + */ > + if (epf_bar->flags & PCI_BASE_ADDRESS_MEM_TYPE_64) > + bar++; > } > > return 0; >