summaryrefslogtreecommitdiff
path: root/nouveau/abi16.c
diff options
context:
space:
mode:
Diffstat (limited to 'nouveau/abi16.c')
-rw-r--r--nouveau/abi16.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/nouveau/abi16.c b/nouveau/abi16.c
index 46350b13..ee38c0cb 100644
--- a/nouveau/abi16.c
+++ b/nouveau/abi16.c
@@ -244,7 +244,8 @@ abi16_object(struct nouveau_object *obj, int (**func)(struct nouveau_object *))
/* nouveau_object::length is (ab)used to determine whether the
* object is a legacy object (!=0), or a real NVIF object.
*/
- if ((parent->length != 0 && parent->oclass == NOUVEAU_DEVICE_CLASS)) {
+ if ((parent->length != 0 && parent->oclass == NOUVEAU_DEVICE_CLASS) ||
+ (parent->length == 0 && parent->oclass == NV_DEVICE)) {
if (obj->oclass == NOUVEAU_FIFO_CHANNEL_CLASS) {
struct nouveau_device *dev = (void *)parent;
if (dev->chipset < 0xc0)