#include <linux/types.h>
#include <linux/pci.h>
-#include <linux/delay.h>
#include <asm/semaphore.h>
#include <asm/io.h>
#include "pci_hotplug.h"
#define msg_button_cancel "PCI slot #%d - action canceled due to button press.\n"
#define msg_button_ignore "PCI slot #%d - button press ignored. (action in progress...)\n"
+/* sysfs function for the hotplug controller info */
+extern void pciehp_create_ctrl_files (struct controller *ctrl);
+
/* controller functions */
extern int pciehprm_find_available_resources (struct controller *ctrl);
extern int pciehp_event_start_thread (void);
dbg("%s : start\n", __FUNCTION__);
add_wait_queue(&ctrl->queue, &wait);
- if (!pciehp_poll_mode)
+ set_current_state(TASK_INTERRUPTIBLE);
+ if (!pciehp_poll_mode) {
/* Sleep for up to 1 second */
- msleep_interruptible(1000);
- else
- msleep_interruptible(2500);
+ schedule_timeout(1*HZ);
+ } else
+ schedule_timeout(2.5*HZ);
+ set_current_state(TASK_RUNNING);
remove_wait_queue(&ctrl->queue, &wait);
if (signal_pending(current))
retval = -EINTR;