From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753683AbYI0PfA (ORCPT ); Sat, 27 Sep 2008 11:35:00 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752466AbYI0Pev (ORCPT ); Sat, 27 Sep 2008 11:34:51 -0400 Received: from casper.infradead.org ([85.118.1.10]:37705 "EHLO casper.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752391AbYI0Pev (ORCPT ); Sat, 27 Sep 2008 11:34:51 -0400 Date: Sat, 27 Sep 2008 08:35:00 -0700 From: Arjan van de Ven To: Matthew Wilcox Cc: linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org Subject: Re: [PATCH] pci: introduce an ioremap_pcibar(pdev, barnr) function Message-ID: <20080927083500.26819bf1@infradead.org> In-Reply-To: <20080927025614.GK27204@parisc-linux.org> References: <20080926163641.288bf868@infradead.org> <20080927025614.GK27204@parisc-linux.org> Organization: Intel X-Mailer: Claws Mail 3.5.0 (GTK+ 2.12.12; i386-redhat-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-SRS-Rewrite: SMTP reverse-path rewritten from by casper.infradead.org See http://www.infradead.org/rpr.html Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, 26 Sep 2008 20:56:14 -0600 Matthew Wilcox wrote: > On Fri, Sep 26, 2008 at 04:36:41PM -0700, Arjan van de Ven wrote: > > A common thing in many PCI drivers is to ioremap() an entire bar. > > This is a slightly fragile thing right now, needing both an address > > and a size, and many driver writers do.. various things there. > > > > This patch introduces an ioremap_pcibar() function taking just a > > PCI device struct and the bar number as arguments, and figures this > > all out itself, in one place. In addition, we can add various > > sanity checks to this function (the patch already checks to make > > sure that the bar in question really is a MEM bar; few to no > > drivers do that sort of thing). > > So we already have a pci_iomap() which takes a 'max' argument. If you > make 'max' -1, don't you get this same behaviour? there are many ways to map a bar... I'm just arguing for providing a really simple, hard-to-get-wrong, one which only takes a device and a bar number. The goal of my patch isn't to introduce new functionality per se (although having the ability to add checks is nice and welcome), it's mostly to provide a simple, hard-to-get-wrong interface. Less chance to get it wrong -> less hard to diagnose bugs. -- Arjan van de Ven Intel Open Source Technology Centre For development, discussion and tips for power savings, visit http://www.lesswatts.org