diff options
author | Alex Ivanov <gnidorah@p0n4ik.tk> | 2013-07-10 21:14:55 +0200 |
---|---|---|
committer | Helge Deller <deller@gmx.de> | 2013-07-31 23:42:00 +0200 |
commit | 06f0cce43a32bd2357cea1d8733bba48693d556b (patch) | |
tree | e4e44cd0bb757cd82267207cd3c699207bcffce1 /drivers/char | |
parent | 50861f5a02dbf939c27d35a26c472885e2844188 (diff) | |
download | linux-stable-06f0cce43a32bd2357cea1d8733bba48693d556b.tar.gz linux-stable-06f0cce43a32bd2357cea1d8733bba48693d556b.tar.bz2 linux-stable-06f0cce43a32bd2357cea1d8733bba48693d556b.zip |
parisc: agp/parisc-agp: allow binding of user memory to the AGP GART
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>
Cc: <stable@vger.kernel.org> # 3.10
Signed-off-by: Helge Deller <deller@gmx.de>
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 bf5d2477cb77..15f2e7025b78 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; } |