1/*- 2 * Copyright (c) 2000 Doug Rabson 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 11 unchanged lines hidden (view full) --- 20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24 * SUCH DAMAGE. 25 */ 26 27#include <sys/cdefs.h> |
28__FBSDID("$FreeBSD: head/sys/dev/agp/agp_amd.c 173203 2007-10-30 22:09:16Z jhb $"); |
29 30#include "opt_bus.h" 31 32#include <sys/param.h> 33#include <sys/systm.h> 34#include <sys/malloc.h> 35#include <sys/kernel.h> 36#include <sys/module.h> --- 235 unchanged lines hidden (view full) --- 272 273 return 0; 274} 275 276static int 277agp_amd_detach(device_t dev) 278{ 279 struct agp_amd_softc *sc = device_get_softc(dev); |
280 |
281 agp_free_cdev(dev); |
282 283 /* Disable the TLB.. */ 284 WRITE2(AGP_AMD751_STATUS, 285 READ2(AGP_AMD751_STATUS) & ~AGP_AMD751_STATUS_GCE); 286 287 /* Disable host-agp sync */ 288 pci_write_config(dev, AGP_AMD751_MODECTRL, 0x00, 1); 289 290 /* Clear the GATT base */ 291 WRITE4(AGP_AMD751_ATTBASE, 0); 292 293 /* Put the aperture back the way it started. */ 294 AGP_SET_APERTURE(dev, sc->initial_aperture); 295 296 agp_amd_free_gatt(sc->gatt); |
297 agp_free_res(dev); |
298 299 bus_release_resource(dev, SYS_RES_MEMORY, 300 AGP_AMD751_REGISTERS, sc->regs); 301 302 return 0; 303} 304 305static u_int32_t --- 112 unchanged lines hidden --- |