diff --git a/drivers/acpi/fan.c b/drivers/acpi/fan.c
index 38acc69b21bcc5f929f5a042bddf4ef54b8810dc..8abf5ac17f671e48bd3323275383450b483e02e2 100644
--- a/drivers/acpi/fan.c
+++ b/drivers/acpi/fan.c
@@ -65,6 +65,7 @@ static struct acpi_driver acpi_fan_driver = {
 
 struct acpi_fan {
 	acpi_handle handle;
+	struct acpi_device * device;
 };
 
 /* --------------------------------------------------------------------------
@@ -192,6 +193,7 @@ static int acpi_fan_add(struct acpi_device *device)
 	memset(fan, 0, sizeof(struct acpi_fan));
 
 	fan->handle = device->handle;
+	fan->device = device;
 	strcpy(acpi_device_name(device), "Fan");
 	strcpy(acpi_device_class(device), ACPI_FAN_CLASS);
 	acpi_driver_data(device) = fan;