FreeBSD kernel AGP device code
|
#include <sys/param.h>
#include <sys/rman.h>
#include <sys/sglist.h>
#include <vm/vm.h>
#include <vm/vm_page.h>
Go to the source code of this file.
Data Structures | |
struct | intel_gtt |
Macros | |
#define | AGP_DCACHE_MEMORY 1 |
#define | AGP_PHYS_MEMORY 2 |
#define | AGP_USER_CACHED_MEMORY_LLC_MLC (AGP_USER_TYPES + 2) |
#define | AGP_USER_UNCACHED_MEMORY (AGP_USER_TYPES + 4) |
#define | AGP_USER_CACHED_MEMORY_GFDT (1 << 3) |
Functions | |
struct intel_gtt | agp_intel_gtt_get (device_t dev) |
int | agp_intel_gtt_chipset_flush (device_t dev) |
void | agp_intel_gtt_unmap_memory (device_t dev, struct sglist *sg_list) |
void | agp_intel_gtt_clear_range (device_t dev, u_int first_entry, u_int num_entries) |
int | agp_intel_gtt_map_memory (device_t dev, vm_page_t *pages, u_int num_entries, struct sglist **sg_list) |
void | agp_intel_gtt_insert_sg_entries (device_t dev, struct sglist *sg_list, u_int pg_start, u_int flags) |
void | agp_intel_gtt_insert_pages (device_t dev, u_int first_entry, u_int num_entries, vm_page_t *pages, u_int flags) |
struct intel_gtt * | intel_gtt_get (void) |
int | intel_gtt_chipset_flush (void) |
void | intel_gtt_unmap_memory (struct sglist *sg_list) |
void | intel_gtt_clear_range (u_int first_entry, u_int num_entries) |
void | intel_gtt_install_pte (u_int index, vm_paddr_t addr, u_int flags) |
int | intel_gtt_map_memory (vm_page_t *pages, u_int num_entries, struct sglist **sg_list) |
void | intel_gtt_insert_sg_entries (struct sglist *sg_list, u_int pg_start, u_int flags) |
void | intel_gtt_insert_pages (u_int first_entry, u_int num_entries, vm_page_t *pages, u_int flags) |
vm_paddr_t | intel_gtt_read_pte_paddr (u_int entry) |
u_int32_t | intel_gtt_read_pte (u_int entry) |
device_t | intel_gtt_get_bridge_device (void) |
void | intel_gtt_write (u_int entry, uint32_t val) |
#define AGP_DCACHE_MEMORY 1 |
Definition at line 44 of file agp_i810.h.
#define AGP_PHYS_MEMORY 2 |
Definition at line 45 of file agp_i810.h.
#define AGP_USER_CACHED_MEMORY_GFDT (1 << 3) |
Definition at line 52 of file agp_i810.h.
#define AGP_USER_CACHED_MEMORY_LLC_MLC (AGP_USER_TYPES + 2) |
Definition at line 48 of file agp_i810.h.
#define AGP_USER_UNCACHED_MEMORY (AGP_USER_TYPES + 4) |
Definition at line 49 of file agp_i810.h.
int agp_intel_gtt_chipset_flush | ( | device_t | dev | ) |
Definition at line 2187 of file agp_i810.c.
References agp_i810_driver::chipset_flush, agp_i810_match::driver, and agp_i810_softc::match.
Referenced by intel_gtt_chipset_flush().
void agp_intel_gtt_clear_range | ( | device_t | dev, |
u_int | first_entry, | ||
u_int | num_entries | ||
) |
Definition at line 1934 of file agp_i810.c.
References agp_i810_match::driver, agp_i810_driver::install_gtt_pte, agp_i810_softc::match, and agp_i810_driver::read_gtt_pte.
Referenced by intel_gtt_clear_range().
struct intel_gtt agp_intel_gtt_get | ( | device_t | dev | ) |
Definition at line 1964 of file agp_i810.c.
References agp_i810_softc::agp, agp_softc::as_aperture, intel_gtt::do_idle_maps, intel_gtt::gma_bus_addr, agp_i810_softc::gtt_mappable_entries, intel_gtt::gtt_mappable_entries, agp_i810_softc::gtt_total_entries, intel_gtt::gtt_total_entries, intel_gtt::scratch_page_dma, agp_i810_softc::stolen_size, and intel_gtt::stolen_size.
Referenced by intel_gtt_get().
void agp_intel_gtt_insert_pages | ( | device_t | dev, |
u_int | first_entry, | ||
u_int | num_entries, | ||
vm_page_t * | pages, | ||
u_int | flags | ||
) |
Definition at line 1947 of file agp_i810.c.
References agp_i810_match::driver, agp_i810_driver::install_gtt_pte, agp_i810_softc::match, and agp_i810_driver::read_gtt_pte.
Referenced by intel_gtt_insert_pages().
void agp_intel_gtt_insert_sg_entries | ( | device_t | dev, |
struct sglist * | sg_list, | ||
u_int | pg_start, | ||
u_int | flags | ||
) |
Definition at line 2258 of file agp_i810.c.
References agp_i810_match::driver, agp_i810_driver::install_gtt_pte, agp_i810_softc::match, and agp_i810_driver::read_gtt_pte.
Referenced by intel_gtt_insert_sg_entries().
int agp_intel_gtt_map_memory | ( | device_t | dev, |
vm_page_t * | pages, | ||
u_int | num_entries, | ||
struct sglist ** | sg_list | ||
) |
Definition at line 2202 of file agp_i810.c.
References agp_i810_softc::match.
Referenced by intel_gtt_map_memory().
void agp_intel_gtt_unmap_memory | ( | device_t | dev, |
struct sglist * | sg_list | ||
) |
Definition at line 2197 of file agp_i810.c.
Referenced by intel_gtt_unmap_memory().
int intel_gtt_chipset_flush | ( | void | ) |
Definition at line 2305 of file agp_i810.c.
References agp_intel_gtt_chipset_flush(), and intel_agp.
void intel_gtt_clear_range | ( | u_int | first_entry, |
u_int | num_entries | ||
) |
Definition at line 2281 of file agp_i810.c.
References agp_intel_gtt_clear_range(), and intel_agp.
struct intel_gtt * intel_gtt_get | ( | void | ) |
Definition at line 2297 of file agp_i810.c.
References agp_intel_gtt_get(), intel_agp, and intel_private.
device_t intel_gtt_get_bridge_device | ( | void | ) |
Definition at line 2343 of file agp_i810.c.
References agp_i810_softc::bdev, and intel_agp.
void intel_gtt_insert_pages | ( | u_int | first_entry, |
u_int | num_entries, | ||
vm_page_t * | pages, | ||
u_int | flags | ||
) |
Definition at line 2288 of file agp_i810.c.
References agp_intel_gtt_insert_pages(), and intel_agp.
void intel_gtt_insert_sg_entries | ( | struct sglist * | sg_list, |
u_int | pg_start, | ||
u_int | flags | ||
) |
Definition at line 2328 of file agp_i810.c.
References agp_intel_gtt_insert_sg_entries(), and intel_agp.
void intel_gtt_install_pte | ( | u_int | index, |
vm_paddr_t | addr, | ||
u_int | flags | ||
) |
Definition at line 2336 of file agp_i810.c.
References agp_intel_gtt_install_pte(), and intel_agp.
int intel_gtt_map_memory | ( | vm_page_t * | pages, |
u_int | num_entries, | ||
struct sglist ** | sg_list | ||
) |
Definition at line 2319 of file agp_i810.c.
References agp_intel_gtt_map_memory(), and intel_agp.
u_int32_t intel_gtt_read_pte | ( | u_int | entry | ) |
Definition at line 2361 of file agp_i810.c.
References agp_i810_match::driver, intel_agp, agp_i810_softc::match, and agp_i810_driver::read_gtt_pte.
vm_paddr_t intel_gtt_read_pte_paddr | ( | u_int | entry | ) |
Definition at line 2352 of file agp_i810.c.
References agp_i810_match::driver, intel_agp, agp_i810_softc::match, and agp_i810_driver::read_gtt_pte_paddr.
void intel_gtt_unmap_memory | ( | struct sglist * | sg_list | ) |
Definition at line 2312 of file agp_i810.c.
References agp_intel_gtt_unmap_memory(), and intel_agp.
void intel_gtt_write | ( | u_int | entry, |
uint32_t | val | ||
) |
Definition at line 2370 of file agp_i810.c.
References agp_i810_match::driver, intel_agp, agp_i810_softc::match, and agp_i810_driver::write_gtt.