Index: firmware/drivers/ata.c =================================================================== --- firmware/drivers/ata.c (Revision 18712) +++ firmware/drivers/ata.c (Arbeitskopie) @@ -141,6 +141,10 @@ #define mutex_unlock ata_lock_unlock #endif /* MAX_PHYS_SECTOR_SIZE */ +#if defined(HAVE_USBSTACK) && defined(USE_ROCKBOX_USB) && !defined(BOOTLOADER) +#define HANDLE_USB +#endif + static struct mutex ata_mtx SHAREDBSS_ATTR; static int ata_device; /* device 0 (master) or 1 (slave) */ @@ -884,7 +888,7 @@ static long last_sleep = 0; struct queue_event ev; static long last_seen_mtx_unlock = 0; -#if defined(HAVE_USBSTACK) && defined(USE_ROCKBOX_USB) && !defined(BOOTLOADER) +#ifdef HANDLE_USB static bool usb_mode = false; #endif @@ -901,7 +905,7 @@ last_seen_mtx_unlock = current_tick; if (TIME_AFTER(current_tick, last_seen_mtx_unlock+(HZ*2))) { -#if defined(HAVE_USBSTACK) && defined(USE_ROCKBOX_USB) && !defined(BOOTLOADER) +#ifdef HANDLE_USB if(!usb_mode) #endif call_ata_idle_notifys(false); @@ -914,7 +918,7 @@ TIME_AFTER( current_tick, last_disk_activity + sleep_timeout ) ) { -#if defined(HAVE_USBSTACK) && defined(USE_ROCKBOX_USB) && !defined(BOOTLOADER) +#ifdef HANDLE_USB if(!usb_mode) #endif call_ata_idle_notifys(true); @@ -949,7 +953,7 @@ DEBUGF("ata_thread got SYS_USB_CONNECTED\n"); usb_acknowledge(SYS_USB_CONNECTED_ACK); -#if defined(HAVE_USBSTACK) && defined(USE_ROCKBOX_USB) && !defined(BOOTLOADER) +#ifdef HANDLE_USB usb_mode = true; #else /* Wait until the USB cable is extracted again */ @@ -957,7 +961,7 @@ #endif break; -#if defined(HAVE_USBSTACK) && defined(USE_ROCKBOX_USB) && !defined(BOOTLOADER) +#ifdef HANDLE_USB case SYS_USB_DISCONNECTED: /* Tell the USB thread that we are ready again */ DEBUGF("ata_thread got SYS_USB_DISCONNECTED\n"); @@ -967,7 +971,7 @@ #endif #endif case Q_SLEEP: -#if defined(HAVE_USBSTACK) && defined(USE_ROCKBOX_USB) && !defined(BOOTLOADER) +#ifdef HANDLE_USB if(!usb_mode) #endif call_ata_idle_notifys(false);