From owner-cvs-all@FreeBSD.ORG Tue Dec 20 22:47:42 2005 Return-Path: X-Original-To: cvs-all@FreeBSD.org Delivered-To: cvs-all@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 77E7716A41F; Tue, 20 Dec 2005 22:47:42 +0000 (GMT) (envelope-from nate@root.org) Received: from www.cryptography.com (li-22.members.linode.com [64.5.53.22]) by mx1.FreeBSD.org (Postfix) with ESMTP id 19BA543D53; Tue, 20 Dec 2005 22:47:41 +0000 (GMT) (envelope-from nate@root.org) Received: from [10.0.0.33] (adsl-67-119-74-222.dsl.sntc01.pacbell.net [67.119.74.222]) by www.cryptography.com (8.12.8/8.12.8) with ESMTP id jBKMln9e007541 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Tue, 20 Dec 2005 14:47:50 -0800 Message-ID: <43A88A00.9040407@root.org> Date: Tue, 20 Dec 2005 14:47:28 -0800 From: Nate Lawson User-Agent: Mozilla Thunderbird 1.0.6 (Windows/20050716) X-Accept-Language: en-us, en MIME-Version: 1.0 To: John Baldwin References: <20051220224208.DB1B916A449@hub.freebsd.org> In-Reply-To: <20051220224208.DB1B916A449@hub.freebsd.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: cvs-src@FreeBSD.org, src-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/dev/pci vga_pci.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 20 Dec 2005 22:47:42 -0000 John Baldwin wrote: > jhb 2005-12-20 22:41:33 UTC > > FreeBSD src repository > > Added files: > sys/dev/pci vga_pci.c > Log: > Add a vgapci(4) stub device driver for VGA PCI devices. This device serves > as a bus so that other drivers such as drm(4), acpi_video(4), and agp(4) > can attach to it thus allowing multiple drivers for the same device. It > also removes the need for the drmsub hack for the i8[13]0/i915 drm and agp > drivers. > > Revision Changes Path > 1.3 +262 -0 src/sys/dev/pci/vga_pci.c (new) > > All the methods seem to just be a straight-through mapping or a debug print + mapping. For the ones you don't plan to do anything special in, can you just make the methods map directly to the generic versions? > +static int > +vga_pci_suspend(device_t dev) > +{ > + > + return (bus_generic_suspend(dev)); > +} > + > +static int > +vga_pci_resume(device_t dev) > +{ > + > + return (bus_generic_resume(dev)); > +} > + > +/* Bus interface. */ > + > +static int > +vga_pci_read_ivar(device_t dev, device_t child, int which, uintptr_t *result) > +{ > + > + return (BUS_READ_IVAR(device_get_parent(dev), dev, which, result)); > +} > + > +static int > +vga_pci_write_ivar(device_t dev, device_t child, int which, uintptr_t value) > +{ > + > + return (EINVAL); > +} > + > +static struct resource * > +vga_pci_alloc_resource(device_t dev, device_t child, int type, int *rid, > + u_long start, u_long end, u_long count, u_int flags) > +{ > + > + return (bus_alloc_resource(dev, type, rid, start, end, count, flags)); > +} > + > +static int > +vga_pci_release_resource(device_t dev, device_t child, int type, int rid, > + struct resource *r) > +{ > + > + return (bus_release_resource(dev, type, rid, r)); > +} > + > +/* PCI interface. */ > + > +static uint32_t > +vga_pci_read_config(device_t dev, device_t child, int reg, int width) > +{ > + > + return (pci_read_config(dev, reg, width)); > +} > + > +static void > +vga_pci_write_config(device_t dev, device_t child, int reg, > + uint32_t val, int width) > +{ > + > + pci_write_config(dev, reg, val, width); > +} > + > +static int > +vga_pci_enable_busmaster(device_t dev, device_t child) > +{ > + > + device_printf(dev, "child %s requested pci_enable_busmaster\n", > + device_get_nameunit(child)); > + return (pci_enable_busmaster(dev)); > +} > + > +static int > +vga_pci_disable_busmaster(device_t dev, device_t child) > +{ > + > + device_printf(dev, "child %s requested pci_disable_busmaster\n", > + device_get_nameunit(child)); > + return (pci_disable_busmaster(dev)); > +} > + > +static int > +vga_pci_enable_io(device_t dev, device_t child, int space) > +{ > + > + device_printf(dev, "child %s requested pci_enable_io\n", > + device_get_nameunit(child)); > + return (pci_enable_io(dev, space)); > +} > + > +static int > +vga_pci_disable_io(device_t dev, device_t child, int space) > +{ > + > + device_printf(dev, "child %s requested pci_disable_io\n", > + device_get_nameunit(child)); > + return (pci_disable_io(dev, space)); > +} > + > +static int > +vga_pci_set_powerstate(device_t dev, device_t child, int state) > +{ > + > + device_printf(dev, "child %s requested pci_set_powerstate\n", > + device_get_nameunit(child)); > + return (pci_set_powerstate(dev, state)); > +} > + > +static int > +vga_pci_get_powerstate(device_t dev, device_t child) > +{ > + > + device_printf(dev, "child %s requested pci_get_powerstate\n", > + device_get_nameunit(child)); > + return (pci_get_powerstate(dev)); > +} > + > +static int > +vga_pci_assign_interrupt(device_t dev, device_t child) > +{ > + > + device_printf(dev, "child %s requested pci_assign_interrupt\n", > + device_get_nameunit(child)); > + return (PCI_ASSIGN_INTERRUPT(device_get_parent(dev), dev)); > +} > + > +static int > +vga_pci_find_extcap(device_t dev, device_t child, int capability, > + int *capreg) > +{ > + > + return (pci_find_extcap(dev, capability, capreg)); > +} -- Nate