diff options
author | Alex Ivanov <gnidorah@p0n4ik.tk> | 2013-07-10 21:14:55 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-08-11 18:35:20 -0700 |
commit | 6a3f7e9ec5c41da18fa1eec3cb9a2d3f2e5e14e3 (patch) | |
tree | 62e15cacf8dabdc37d232dafaaeefcef71764fc9 /drivers/char | |
parent | 027798707afb90e6f08144955813ba575743b04d (diff) | |
download | linux-3.10-6a3f7e9ec5c41da18fa1eec3cb9a2d3f2e5e14e3.tar.gz linux-3.10-6a3f7e9ec5c41da18fa1eec3cb9a2d3f2e5e14e3.tar.bz2 linux-3.10-6a3f7e9ec5c41da18fa1eec3cb9a2d3f2e5e14e3.zip |
parisc: agp/parisc-agp: allow binding of user memory to the AGP GART
commit 06f0cce43a32bd2357cea1d8733bba48693d556b upstream.
Allow binding of user memory to the AGP GART on systems with HP
Quicksilver AGP bus. This resolves 'bind memory failed' error seen in
dmesg:
[29.365973] [TTM] AGP Bind memory failed.
…
[29.367030] [drm] Forcing AGP to PCI mode
The system doesn't more fail to bind the memory, and hence not falling
back to the PCI mode (if other failures aren't detected).
This is just a simple write down from the following patches:
agp/amd-k7: Allow binding user memory to the AGP GART
agp/hp-agp: Allow binding user memory to the AGP GART
Signed-off-by: Alex Ivanov <gnidorah@p0n4ik.tk>
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/char')
-rw-r--r-- | drivers/char/agp/parisc-agp.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/char/agp/parisc-agp.c b/drivers/char/agp/parisc-agp.c index 94821ab01c6..9576fad5d71 100644 --- a/drivers/char/agp/parisc-agp.c +++ b/drivers/char/agp/parisc-agp.c @@ -129,7 +129,8 @@ parisc_agp_insert_memory(struct agp_memory *mem, off_t pg_start, int type) off_t j, io_pg_start; int io_pg_count; - if (type != 0 || mem->type != 0) { + if (type != mem->type || + agp_bridge->driver->agp_type_to_mask_type(agp_bridge, type)) { return -EINVAL; } @@ -175,7 +176,8 @@ parisc_agp_remove_memory(struct agp_memory *mem, off_t pg_start, int type) struct _parisc_agp_info *info = &parisc_agp_info; int i, io_pg_start, io_pg_count; - if (type != 0 || mem->type != 0) { + if (type != mem->type || + agp_bridge->driver->agp_type_to_mask_type(agp_bridge, type)) { return -EINVAL; } |