From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757971AbcEEWDo (ORCPT ); Thu, 5 May 2016 18:03:44 -0400 Received: from gate.crashing.org ([63.228.1.57]:52685 "EHLO gate.crashing.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757273AbcEEWDl (ORCPT ); Thu, 5 May 2016 18:03:41 -0400 Message-ID: <1462485774.20290.34.camel@kernel.crashing.org> Subject: Re: [PATCH v11 04/60] sparc/PCI: Use correct offset for bus address to resource From: Benjamin Herrenschmidt To: Yinghai Lu , Bjorn Helgaas , David Miller Cc: Bjorn Helgaas , Linus Torvalds , Wei Yang , TJ , Yijing Wang , Khalid Aziz , "linux-pci@vger.kernel.org" , Linux Kernel Mailing List , Michael Ellerman Date: Fri, 06 May 2016 08:02:54 +1000 In-Reply-To: References: <1460074573-7481-5-git-send-email-yinghai@kernel.org> <20160422204920.GA17215@localhost> <20160428135607.GA12470@localhost> <1462322260.30470.76.camel@kernel.crashing.org> <20160504012531.GB17170@localhost> <20160504151722.GA22051@localhost> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.18.5.2 (3.18.5.2-1.fc23) Mime-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 2016-05-05 at 08:53 -0700, Yinghai Lu wrote: > For powerpc io port, we still need extra offset from resource address > to final address. > >      resource_size_t offset = >          ((resource_size_t)vma->vm_pgoff) << PAGE_SHIFT; > > +    if (mmap_state == pci_mmap_io) { > +        struct pci_controller *hose = pci_bus_to_host(dev->bus); > + > +        /* hose should never be NULL */ > +        offset += hose->io_base_phys - > +              ((unsigned long)hose->io_base_virt - _IO_BASE); > +    } > >      vma->vm_pgoff = offset >> PAGE_SHIFT; > > but sparc does not need that trick. I'm not sure how sparc handles IO space but on powerpc, the IO resource is not a physical address, it's a virtual address (coming from ioremap).  Cheers, Ben.