struct acpi_video_bus {
        acpi_handle handle;
+       struct acpi_device *device;
        u8 dos_setting;
        struct acpi_video_enumerated_device *attached_array;
        u8 attached_count;
        if (!video)
                return;
 
-       if (acpi_bus_get_device(handle, &device))
-               return;
+       device = video->device;
 
        switch (event) {
        case ACPI_VIDEO_NOTIFY_SWITCH:  /* User request that a switch occur,
        if (!video_device)
                return;
 
-       if (acpi_bus_get_device(handle, &device))
-               return;
+       device = video_device->dev;
 
        switch (event) {
        case ACPI_VIDEO_NOTIFY_SWITCH:  /* change in status (cycle output device) */
        memset(video, 0, sizeof(struct acpi_video_bus));
 
        video->handle = device->handle;
+       video->device = device;
        strcpy(acpi_device_name(device), ACPI_VIDEO_BUS_NAME);
        strcpy(acpi_device_class(device), ACPI_VIDEO_CLASS);
        acpi_driver_data(device) = video;