From d7b26a1876b619277947c2a4a69de2ecb6bf3028 Mon Sep 17 00:00:00 2001 From: Roland Dreier Date: Wed, 31 Oct 2012 09:16:49 -0700 Subject: [PATCH] --- yaml --- r: 344732 b: refs/heads/master c: 0f6d64cee9c518f5d3138a90cead62fba2031074 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/target/target_core_spc.c | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index dddfa35f299d..8a88e353f2d0 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d4b2b867193c157f0ac8c10137e287a90ed4e5d5 +refs/heads/master: 0f6d64cee9c518f5d3138a90cead62fba2031074 diff --git a/trunk/drivers/target/target_core_spc.c b/trunk/drivers/target/target_core_spc.c index 8ccfe00c51d7..6c10fce9ef09 100644 --- a/trunk/drivers/target/target_core_spc.c +++ b/trunk/drivers/target/target_core_spc.c @@ -760,6 +760,19 @@ static int spc_modesense_caching(struct se_device *dev, u8 pc, u8 *p) return 20; } +static int spc_modesense_informational_exceptions(struct se_device *dev, u8 pc, unsigned char *p) +{ + p[0] = 0x1c; + p[1] = 0x0a; + + /* No changeable values for now */ + if (pc == 1) + goto out; + +out: + return 12; +} + static struct { uint8_t page; uint8_t subpage; @@ -768,6 +781,7 @@ static struct { { .page = 0x01, .subpage = 0x00, .emulate = spc_modesense_rwrecovery }, { .page = 0x08, .subpage = 0x00, .emulate = spc_modesense_caching }, { .page = 0x0a, .subpage = 0x00, .emulate = spc_modesense_control }, + { .page = 0x1c, .subpage = 0x00, .emulate = spc_modesense_informational_exceptions }, }; static void spc_modesense_write_protect(unsigned char *buf, int type)