Add support
write cache quirk on usb hdd. scsi driver will be set to wce by detecting write cache quirk in quirk list when plugging usb hdd.
Signed-off-by: Namjae Jeon<namjae.jeon@xxxxxxxxxxx>
Signed-off-by: Pankaj Kumar<pankaj.km@xxxxxxxxxxx>
Signed-off-by: Amit Sahrawat<a.sahrawat@xxxxxxxxxxx>
---
drivers/usb/storage/scsiglue.c | 6 ++++++
drivers/usb/storage/usb.c | 5 ++++-
include/linux/usb/quirks.h | 3 +++
include/linux/usb_usual.h | 4 +++-
4 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/drivers/usb/storage/scsiglue.c b/drivers/usb/storage/scsiglue.c[...]
index a324a5d..f7d0ea5 100644
--- a/drivers/usb/storage/scsiglue.c
+++ b/drivers/usb/storage/scsiglue.c
@@ -230,6 +231,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 for the cache quirk present or not */
+ if (us->pusb_dev->quirks & USB_QUIRK_WRITE_CACHE ||
+ us->fflags & US_FL_WRITE_CACHE)
+ sdev->wce_quirk = 1;