diff -ru usr/src/nv/nv.c usr/src/nv.03112005/nv.c --- usr/src/nv/nv.c 2005-02-25 18:37:02.000000000 +0100 +++ usr/src/nv.03112005/nv.c 2005-03-11 21:39:22.091516080 +0100 @@ -3071,14 +3071,15 @@ nv_printf(NV_DBG_WARNINGS, "NVRM: not using NVAGP, AGPGART is loaded!\n"); return status; } -#elif defined(NV_MULTIPLE_BRIDGE_AGPGART_PRESENT) +#elif defined(AGPGART) +#if defined(NV_MULTIPLE_BRIDGE_AGPGART_PRESENT) if (!list_empty(&agp_bridges)) { nv_printf(NV_DBG_WARNINGS, "NVRM: not using NVAGP, an AGPGART backend is loaded!\n"); return status; } -#elif defined(AGPGART) +#else /* NV_MULTIPLE_BRIDGE_AGPGART_PRESENT */ int error; /* * We can only safely use NvAGP when no backend has been @@ -3096,6 +3097,7 @@ return status; } #endif +#endif /* AGPGART */ #if defined(CONFIG_X86_64) && defined(CONFIG_GART_IOMMU) nv_printf(NV_DBG_WARNINGS, "NVRM: not using NVAGP, kernel was compiled with GART_IOMMU support!!\n"); diff -ru usr/src/nv/os-agp.c usr/src/nv.03112005/os-agp.c --- usr/src/nv/os-agp.c 2005-02-25 18:37:02.000000000 +0100 +++ usr/src/nv.03112005/os-agp.c 2005-03-11 21:39:19.309938944 +0100 @@ -176,7 +176,7 @@ rm_read_registry_dword(NULL, "NVreg", "EnableAGPFW", &enable_fw); agp_mode |= NV_AGPGART_MODE_BITS_SBA(enable_fw); - agp_info.mode &= agp_mode; + agp_info.mode &= (0xff000000 | agp_mode); NV_AGPGART_BACKEND_ENABLE(drm_agp_p, nvl->agp_bridge, agp_info.mode);