--- zzzz-none-000/linux-2.6.28.10/drivers/usb/storage/scsiglue.c 2009-05-02 18:54:43.000000000 +0000 +++ puma5-6360-529/linux-2.6.28.10/drivers/usb/storage/scsiglue.c 2010-03-30 20:02:06.000000000 +0000 @@ -68,7 +68,7 @@ #define VENDOR_ID_MOTOROLA 0x22b8 /*********************************************************************** - * Host functions + * Host functions ***********************************************************************/ static const char* host_info(struct Scsi_Host *host) @@ -175,6 +175,10 @@ * 192 bytes (that's what Windows uses). */ sdev->use_192_bytes_for_3f = 1; + /* AVM/BC 20100330: Patch from AVM Kernel 2.6.19 + * AVM/WK 20091026 + * Allow spindown disks to restart automatically */ + sdev->allow_restart = 1; /* Some devices don't like MODE SENSE with page=0x3f, * which is the command used for checking if a device * is write-protected. Now that we tell the sd driver @@ -258,7 +262,7 @@ if (us->fflags & US_FL_NOT_LOCKABLE) sdev->lockable = 0; - /* this is to satisfy the compiler, tho I don't think the + /* this is to satisfy the compiler, tho I don't think the * return code is ever checked anywhere. */ return 0; } @@ -449,6 +453,17 @@ *(pos++) = '\n'; } + /* + * AVM/BC 20100330: Patch from AVM Kernel 2.6.19 + * AVM/WK 20070710: Patch from AVM Kernel 2.6.13 + * Help the hotplug machinery to work properly... =OS= 20051201 + */ + if (us->pusb_dev != NULL) { + SPRINTF(" Path: %03d/%03d\n", us->pusb_dev->bus->busnum, us->pusb_dev->devnum); + } else { + SPRINTF(" Path: -\n"); + } + /* * Calculate start of next buffer, and return value. */ @@ -485,7 +500,7 @@ blk_queue_max_sectors(sdev->request_queue, ms); return strlen(buf); } - return -EINVAL; + return -EINVAL; } static DEVICE_ATTR(max_sectors, S_IRUGO | S_IWUSR, show_max_sectors,