diff options
author | Martin K. Petersen <martin.petersen@oracle.com> | 2012-08-28 14:29:37 -0400 |
---|---|---|
committer | James Bottomley <JBottomley@Parallels.com> | 2012-09-24 04:11:00 -0400 |
commit | 5e95e731115c391d36868cd36f499a8ce16c7959 (patch) | |
tree | 3cb6e78ecb0c1ba2c14d8038fdc7cfc1ccce4a3b /drivers/scsi/mpt2sas | |
parent | 9b5cd13249af3eb023ee7ba9ff63c16c25488d03 (diff) |
[SCSI] mpt2sas: Add a module parameter that permits overriding protection capabilities
Add a parameter that allows the host protection capabilities mask to be
provided at module load time.
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Acked-by: "Sreekanth Reddy" <Sreekanth.reddy@lsi.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/mpt2sas')
-rw-r--r-- | drivers/scsi/mpt2sas/mpt2sas_scsih.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/drivers/scsi/mpt2sas/mpt2sas_scsih.c b/drivers/scsi/mpt2sas/mpt2sas_scsih.c index bfda0ecd960..96f4d1f1cf5 100644 --- a/drivers/scsi/mpt2sas/mpt2sas_scsih.c +++ b/drivers/scsi/mpt2sas/mpt2sas_scsih.c | |||
@@ -123,6 +123,11 @@ static int disable_discovery = -1; | |||
123 | module_param(disable_discovery, int, 0); | 123 | module_param(disable_discovery, int, 0); |
124 | MODULE_PARM_DESC(disable_discovery, " disable discovery "); | 124 | MODULE_PARM_DESC(disable_discovery, " disable discovery "); |
125 | 125 | ||
126 | /* permit overriding the host protection capabilities mask (EEDP/T10 PI) */ | ||
127 | static int prot_mask = 0; | ||
128 | module_param(prot_mask, int, 0); | ||
129 | MODULE_PARM_DESC(prot_mask, " host protection capabilities mask, def=7 "); | ||
130 | |||
126 | /** | 131 | /** |
127 | * struct sense_info - common structure for obtaining sense keys | 132 | * struct sense_info - common structure for obtaining sense keys |
128 | * @skey: sense key | 133 | * @skey: sense key |
@@ -8088,8 +8093,14 @@ _scsih_probe(struct pci_dev *pdev, const struct pci_device_id *id) | |||
8088 | goto out_add_shost_fail; | 8093 | goto out_add_shost_fail; |
8089 | } | 8094 | } |
8090 | 8095 | ||
8091 | scsi_host_set_prot(shost, SHOST_DIF_TYPE1_PROTECTION | 8096 | /* register EEDP capabilities with SCSI layer */ |
8092 | | SHOST_DIF_TYPE2_PROTECTION | SHOST_DIF_TYPE3_PROTECTION); | 8097 | if (prot_mask) |
8098 | scsi_host_set_prot(shost, prot_mask); | ||
8099 | else | ||
8100 | scsi_host_set_prot(shost, SHOST_DIF_TYPE1_PROTECTION | ||
8101 | | SHOST_DIF_TYPE2_PROTECTION | ||
8102 | | SHOST_DIF_TYPE3_PROTECTION); | ||
8103 | |||
8093 | scsi_host_set_guard(shost, SHOST_DIX_GUARD_CRC); | 8104 | scsi_host_set_guard(shost, SHOST_DIX_GUARD_CRC); |
8094 | 8105 | ||
8095 | /* event thread */ | 8106 | /* event thread */ |