diff -uNr NVIDIA-Linux-x86_64-177.80-pkg2/usr/src/nv/nvacpi.c NVIDIA-Linux-x86_64-177.80-pkg2-patched/usr/src/nv/nvacpi.c --- NVIDIA-Linux-x86_64-177.80-pkg2/usr/src/nv/nvacpi.c 2008-10-01 23:16:41.000000000 +0100 +++ NVIDIA-Linux-x86_64-177.80-pkg2-patched/usr/src/nv/nvacpi.c 2008-10-25 20:44:22.000000000 +0100 @@ -136,7 +136,7 @@ struct acpi_object_list control_argument_list = { 0, NULL }; nv_stack_t *sp = NULL; struct list_head *node, *next; - unsigned long device_id = 0; + unsigned long long device_id = 0; NV_KMEM_CACHE_ALLOC_STACK(sp); if (sp == NULL) @@ -158,7 +158,11 @@ os_mem_set((void *)pNvAcpiObject, 0, sizeof(nv_acpi_t)); // assign driver data structure ptr to this device +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 28) + device->driver_data = pNvAcpiObject; +#else acpi_driver_data(device) = pNvAcpiObject; +#endif // store a device reference in our object pNvAcpiObject->device = device; @@ -305,7 +309,7 @@ */ nv_acpi_t *pNvAcpiObject = data; u32 event_val = 0; - unsigned long state; + unsigned long long state; int status = 0;