Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 316831
b: refs/heads/master
c: eaa05df
h: refs/heads/master
i:
  316829: fb6d4b7
  316827: 33cec7f
  316823: 8ea6f16
  316815: 83b48a3
  316799: a2de81d
v: v3
  • Loading branch information
Namjae Jeon authored and James Bottomley committed Jul 20, 2012
1 parent 9d399e3 commit 799d61e
Show file tree
Hide file tree
Showing 5 changed files with 15 additions and 3 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: b81478d82e389dd0961760f5ff6f56b50d29db6d
refs/heads/master: eaa05dfcdb12cf3a7bedf8918dc8699c00944384
2 changes: 2 additions & 0 deletions trunk/Documentation/kernel-parameters.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2932,6 +2932,8 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
initial READ(10) command);
o = CAPACITY_OK (accept the capacity
reported by the device);
p = WRITE_CACHE (the device cache is ON
by default);
r = IGNORE_RESIDUE (the device reports
bogus residue values);
s = SINGLE_LUN (the device has only one
Expand Down
5 changes: 5 additions & 0 deletions trunk/drivers/usb/storage/scsiglue.c
Original file line number Diff line number Diff line change
Expand Up @@ -236,6 +236,11 @@ static int slave_configure(struct scsi_device *sdev)
US_FL_SCM_MULT_TARG)) &&
us->protocol == USB_PR_BULK)
us->use_last_sector_hacks = 1;

/* Check if write cache default on flag is set or not */
if (us->fflags & US_FL_WRITE_CACHE)
sdev->wce_default_on = 1;

} else {

/* Non-disk-type devices don't need to blacklist any pages
Expand Down
5 changes: 4 additions & 1 deletion trunk/drivers/usb/storage/usb.c
Original file line number Diff line number Diff line change
Expand Up @@ -473,7 +473,7 @@ static void adjust_quirks(struct us_data *us)
US_FL_CAPACITY_OK | US_FL_IGNORE_RESIDUE |
US_FL_SINGLE_LUN | US_FL_NO_WP_DETECT |
US_FL_NO_READ_DISC_INFO | US_FL_NO_READ_CAPACITY_16 |
US_FL_INITIAL_READ10);
US_FL_INITIAL_READ10 | US_FL_WRITE_CACHE);

p = quirks;
while (*p) {
Expand Down Expand Up @@ -529,6 +529,9 @@ static void adjust_quirks(struct us_data *us)
case 'o':
f |= US_FL_CAPACITY_OK;
break;
case 'p':
f |= US_FL_WRITE_CACHE;
break;
case 'r':
f |= US_FL_IGNORE_RESIDUE;
break;
Expand Down
4 changes: 3 additions & 1 deletion trunk/include/linux/usb_usual.h
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,9 @@
US_FLAG(NO_READ_CAPACITY_16, 0x00080000) \
/* cannot handle READ_CAPACITY_16 */ \
US_FLAG(INITIAL_READ10, 0x00100000) \
/* Initial READ(10) (and others) must be retried */
/* Initial READ(10) (and others) must be retried */ \
US_FLAG(WRITE_CACHE, 0x00200000) \
/* Write Cache status is not available */

#define US_FLAG(name, value) US_FL_##name = value ,
enum { US_DO_ALL_FLAGS };
Expand Down

0 comments on commit 799d61e

Please sign in to comment.