diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-06-20 13:15:30 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-06-20 13:15:30 -0400 |
commit | 43813f399c72aa22e01a680559c1cb5274bf2140 (patch) | |
tree | 933c0e7c445b9c3478b5a0db06a162d0d39f00f2 /drivers/char/agp/hp-agp.c | |
parent | a552f0af753eb4b5bbbe9eff205fe874b04c4583 (diff) | |
parent | 0b7af262aba912f52bc6ef76f1bc0960b01b8502 (diff) |
Merge branch 'drm-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6
* 'drm-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (24 commits)
agp/intel: Make intel_i965_mask_memory use dma_addr_t for physical addresses
agp: add user mapping support to ATI AGP bridge.
drm/i915: enable GEM on PAE.
drm/radeon: fix unused variables warning
agp: switch AGP to use page array instead of unsigned long array
agpgart: detected ALi M???? chipset with M1621
drm/radeon: command stream checker for r3xx-r5xx hardware
drm/radeon: Fully initialize LVDS info also when we can't get it from the ROM.
radeon: Fix CP byte order on big endian architectures with KMS.
agp/uninorth: Handle user memory types.
drm/ttm: Add some powerpc cache flush code.
radeon: Enable modesetting on non-x86.
drm/radeon: Respect AGP cant_use_aperture flag.
drm: EDID endianness fixes.
drm/radeon: this VRAM vs aperture test is wrong, just remove it.
drm/ttm: fix an error path to exit function correctly
drm: Apply "Memory fragmentation from lost alignment blocks"
ttm: Return -ERESTART when a signal interrupts bo eviction.
drm: Remove memory debugging infrastructure.
drm/i915: Clear fence register on tiling stride change.
...
Diffstat (limited to 'drivers/char/agp/hp-agp.c')
-rw-r--r-- | drivers/char/agp/hp-agp.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/char/agp/hp-agp.c b/drivers/char/agp/hp-agp.c index 9c7e2343c399..8f3d4c184914 100644 --- a/drivers/char/agp/hp-agp.c +++ b/drivers/char/agp/hp-agp.c | |||
@@ -361,13 +361,11 @@ hp_zx1_insert_memory (struct agp_memory *mem, off_t pg_start, int type) | |||
361 | for (i = 0, j = io_pg_start; i < mem->page_count; i++) { | 361 | for (i = 0, j = io_pg_start; i < mem->page_count; i++) { |
362 | unsigned long paddr; | 362 | unsigned long paddr; |
363 | 363 | ||
364 | paddr = mem->memory[i]; | 364 | paddr = page_to_phys(mem->pages[i]); |
365 | for (k = 0; | 365 | for (k = 0; |
366 | k < hp->io_pages_per_kpage; | 366 | k < hp->io_pages_per_kpage; |
367 | k++, j++, paddr += hp->io_page_size) { | 367 | k++, j++, paddr += hp->io_page_size) { |
368 | hp->gatt[j] = | 368 | hp->gatt[j] = HP_ZX1_PDIR_VALID_BIT | paddr; |
369 | agp_bridge->driver->mask_memory(agp_bridge, | ||
370 | paddr, type); | ||
371 | } | 369 | } |
372 | } | 370 | } |
373 | 371 | ||
@@ -397,8 +395,9 @@ hp_zx1_remove_memory (struct agp_memory *mem, off_t pg_start, int type) | |||
397 | 395 | ||
398 | static unsigned long | 396 | static unsigned long |
399 | hp_zx1_mask_memory (struct agp_bridge_data *bridge, | 397 | hp_zx1_mask_memory (struct agp_bridge_data *bridge, |
400 | unsigned long addr, int type) | 398 | struct page *page, int type) |
401 | { | 399 | { |
400 | unsigned long addr = phys_to_gart(page_to_phys(page)); | ||
402 | return HP_ZX1_PDIR_VALID_BIT | addr; | 401 | return HP_ZX1_PDIR_VALID_BIT | addr; |
403 | } | 402 | } |
404 | 403 | ||