From owner-svn-src-all@FreeBSD.ORG Fri Mar 2 21:46:32 2012 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 71CE41065678; Fri, 2 Mar 2012 21:46:32 +0000 (UTC) (envelope-from jmallett@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 446378FC1A; Fri, 2 Mar 2012 21:46:32 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q22LkWsJ048834; Fri, 2 Mar 2012 21:46:32 GMT (envelope-from jmallett@svn.freebsd.org) Received: (from jmallett@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q22LkWU8048831; Fri, 2 Mar 2012 21:46:32 GMT (envelope-from jmallett@svn.freebsd.org) Message-Id: <201203022146.q22LkWU8048831@svn.freebsd.org> From: Juli Mallett Date: Fri, 2 Mar 2012 21:46:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r232410 - in head/sys/mips: cavium mips X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Mar 2012 21:46:32 -0000 Author: jmallett Date: Fri Mar 2 21:46:31 2012 New Revision: 232410 URL: http://svn.freebsd.org/changeset/base/232410 Log: When creating a handle for a subregion, be sure to actually math out the new handle address, where we're using handles as raw addresses. This fixes devices with subregions on Octeon PCI specifically, and likely also on MIPS more generally, where there isn't another bus_space in use that was doing the math already. Modified: head/sys/mips/cavium/octopci_bus_space.c head/sys/mips/mips/bus_space_generic.c Modified: head/sys/mips/cavium/octopci_bus_space.c ============================================================================== --- head/sys/mips/cavium/octopci_bus_space.c Fri Mar 2 21:44:39 2012 (r232409) +++ head/sys/mips/cavium/octopci_bus_space.c Fri Mar 2 21:46:31 2012 (r232410) @@ -230,13 +230,12 @@ octopci_bs_unmap(void *t __unused, bus_s } int -octopci_bs_subregion(void *t __unused, bus_space_handle_t handle __unused, - bus_size_t offset __unused, bus_size_t size __unused, - bus_space_handle_t *nhandle __unused) +octopci_bs_subregion(void *t __unused, bus_space_handle_t handle, + bus_size_t offset, bus_size_t size __unused, + bus_space_handle_t *bshp) { - printf("SUBREGION?!?!?!\n"); - /* Do nothing */ + *bshp = handle + offset; return (0); } Modified: head/sys/mips/mips/bus_space_generic.c ============================================================================== --- head/sys/mips/mips/bus_space_generic.c Fri Mar 2 21:44:39 2012 (r232409) +++ head/sys/mips/mips/bus_space_generic.c Fri Mar 2 21:46:31 2012 (r232410) @@ -245,13 +245,12 @@ generic_bs_unmap(void *t __unused, bus_s } int -generic_bs_subregion(void *t __unused, bus_space_handle_t handle __unused, - bus_size_t offset __unused, bus_size_t size __unused, - bus_space_handle_t *nhandle __unused) +generic_bs_subregion(void *t __unused, bus_space_handle_t handle, + bus_size_t offset, bus_size_t size __unused, + bus_space_handle_t *bshp) { - printf("SUBREGION?!?!?!\n"); - /* Do nothing */ + *bshp = handle + offset; return (0); }