Loading drivers/scsi/Kconfig +2 −0 Original line number Original line Diff line number Diff line Loading @@ -1353,6 +1353,8 @@ config SCSI_LPFC tristate "Emulex LightPulse Fibre Channel Support" tristate "Emulex LightPulse Fibre Channel Support" depends on PCI && SCSI depends on PCI && SCSI select SCSI_FC_ATTRS select SCSI_FC_ATTRS select GENERIC_CSUM select CRC_T10DIF help help This lpfc driver supports the Emulex LightPulse This lpfc driver supports the Emulex LightPulse Family of Fibre Channel PCI host adapters. Family of Fibre Channel PCI host adapters. Loading drivers/scsi/aic94xx/aic94xx_dev.c +12 −12 Original line number Original line Diff line number Diff line Loading @@ -84,7 +84,7 @@ static void asd_set_ddb_type(struct domain_device *dev) struct asd_ha_struct *asd_ha = dev->port->ha->lldd_ha; struct asd_ha_struct *asd_ha = dev->port->ha->lldd_ha; int ddb = (int) (unsigned long) dev->lldd_dev; int ddb = (int) (unsigned long) dev->lldd_dev; if (dev->dev_type == SATA_PM_PORT) if (dev->dev_type == SAS_SATA_PM_PORT) asd_ddbsite_write_byte(asd_ha,ddb, DDB_TYPE, DDB_TYPE_PM_PORT); asd_ddbsite_write_byte(asd_ha,ddb, DDB_TYPE, DDB_TYPE_PM_PORT); else if (dev->tproto) else if (dev->tproto) asd_ddbsite_write_byte(asd_ha,ddb, DDB_TYPE, DDB_TYPE_TARGET); asd_ddbsite_write_byte(asd_ha,ddb, DDB_TYPE, DDB_TYPE_TARGET); Loading Loading @@ -116,7 +116,7 @@ void asd_set_dmamode(struct domain_device *dev) int ddb = (int) (unsigned long) dev->lldd_dev; int ddb = (int) (unsigned long) dev->lldd_dev; u32 qdepth = 0; u32 qdepth = 0; if (dev->dev_type == SATA_DEV || dev->dev_type == SATA_PM_PORT) { if (dev->dev_type == SAS_SATA_DEV || dev->dev_type == SAS_SATA_PM_PORT) { if (ata_id_has_ncq(ata_dev->id)) if (ata_id_has_ncq(ata_dev->id)) qdepth = ata_id_queue_depth(ata_dev->id); qdepth = ata_id_queue_depth(ata_dev->id); asd_ddbsite_write_dword(asd_ha, ddb, SATA_TAG_ALLOC_MASK, asd_ddbsite_write_dword(asd_ha, ddb, SATA_TAG_ALLOC_MASK, Loading @@ -140,8 +140,8 @@ static int asd_init_sata(struct domain_device *dev) int ddb = (int) (unsigned long) dev->lldd_dev; int ddb = (int) (unsigned long) dev->lldd_dev; asd_ddbsite_write_word(asd_ha, ddb, ATA_CMD_SCBPTR, 0xFFFF); asd_ddbsite_write_word(asd_ha, ddb, ATA_CMD_SCBPTR, 0xFFFF); if (dev->dev_type == SATA_DEV || dev->dev_type == SATA_PM || if (dev->dev_type == SAS_SATA_DEV || dev->dev_type == SAS_SATA_PM || dev->dev_type == SATA_PM_PORT) { dev->dev_type == SAS_SATA_PM_PORT) { struct dev_to_host_fis *fis = (struct dev_to_host_fis *) struct dev_to_host_fis *fis = (struct dev_to_host_fis *) dev->frame_rcvd; dev->frame_rcvd; asd_ddbsite_write_byte(asd_ha, ddb, SATA_STATUS, fis->status); asd_ddbsite_write_byte(asd_ha, ddb, SATA_STATUS, fis->status); Loading Loading @@ -174,7 +174,7 @@ static int asd_init_target_ddb(struct domain_device *dev) asd_ddbsite_write_byte(asd_ha, ddb, CONN_MASK, dev->port->phy_mask); asd_ddbsite_write_byte(asd_ha, ddb, CONN_MASK, dev->port->phy_mask); if (dev->port->oob_mode != SATA_OOB_MODE) { if (dev->port->oob_mode != SATA_OOB_MODE) { flags |= OPEN_REQUIRED; flags |= OPEN_REQUIRED; if ((dev->dev_type == SATA_DEV) || if ((dev->dev_type == SAS_SATA_DEV) || (dev->tproto & SAS_PROTOCOL_STP)) { (dev->tproto & SAS_PROTOCOL_STP)) { struct smp_resp *rps_resp = &dev->sata_dev.rps_resp; struct smp_resp *rps_resp = &dev->sata_dev.rps_resp; if (rps_resp->frame_type == SMP_RESPONSE && if (rps_resp->frame_type == SMP_RESPONSE && Loading @@ -188,8 +188,8 @@ static int asd_init_target_ddb(struct domain_device *dev) } else { } else { flags |= CONCURRENT_CONN_SUPP; flags |= CONCURRENT_CONN_SUPP; if (!dev->parent && if (!dev->parent && (dev->dev_type == EDGE_DEV || (dev->dev_type == SAS_EDGE_EXPANDER_DEVICE || dev->dev_type == FANOUT_DEV)) dev->dev_type == SAS_FANOUT_EXPANDER_DEVICE)) asd_ddbsite_write_byte(asd_ha, ddb, MAX_CCONN, asd_ddbsite_write_byte(asd_ha, ddb, MAX_CCONN, 4); 4); else else Loading @@ -198,7 +198,7 @@ static int asd_init_target_ddb(struct domain_device *dev) asd_ddbsite_write_byte(asd_ha, ddb, NUM_CTX, 1); asd_ddbsite_write_byte(asd_ha, ddb, NUM_CTX, 1); } } } } if (dev->dev_type == SATA_PM) if (dev->dev_type == SAS_SATA_PM) flags |= SATA_MULTIPORT; flags |= SATA_MULTIPORT; asd_ddbsite_write_byte(asd_ha, ddb, DDB_TARG_FLAGS, flags); asd_ddbsite_write_byte(asd_ha, ddb, DDB_TARG_FLAGS, flags); Loading @@ -211,7 +211,7 @@ static int asd_init_target_ddb(struct domain_device *dev) asd_ddbsite_write_word(asd_ha, ddb, SEND_QUEUE_TAIL, 0xFFFF); asd_ddbsite_write_word(asd_ha, ddb, SEND_QUEUE_TAIL, 0xFFFF); asd_ddbsite_write_word(asd_ha, ddb, SISTER_DDB, 0xFFFF); asd_ddbsite_write_word(asd_ha, ddb, SISTER_DDB, 0xFFFF); if (dev->dev_type == SATA_DEV || (dev->tproto & SAS_PROTOCOL_STP)) { if (dev->dev_type == SAS_SATA_DEV || (dev->tproto & SAS_PROTOCOL_STP)) { i = asd_init_sata(dev); i = asd_init_sata(dev); if (i < 0) { if (i < 0) { asd_free_ddb(asd_ha, ddb); asd_free_ddb(asd_ha, ddb); Loading @@ -219,7 +219,7 @@ static int asd_init_target_ddb(struct domain_device *dev) } } } } if (dev->dev_type == SAS_END_DEV) { if (dev->dev_type == SAS_END_DEVICE) { struct sas_end_device *rdev = rphy_to_end_device(dev->rphy); struct sas_end_device *rdev = rphy_to_end_device(dev->rphy); if (rdev->I_T_nexus_loss_timeout > 0) if (rdev->I_T_nexus_loss_timeout > 0) asd_ddbsite_write_word(asd_ha, ddb, ITNL_TIMEOUT, asd_ddbsite_write_word(asd_ha, ddb, ITNL_TIMEOUT, Loading Loading @@ -328,10 +328,10 @@ int asd_dev_found(struct domain_device *dev) spin_lock_irqsave(&asd_ha->hw_prof.ddb_lock, flags); spin_lock_irqsave(&asd_ha->hw_prof.ddb_lock, flags); switch (dev->dev_type) { switch (dev->dev_type) { case SATA_PM: case SAS_SATA_PM: res = asd_init_sata_pm_ddb(dev); res = asd_init_sata_pm_ddb(dev); break; break; case SATA_PM_PORT: case SAS_SATA_PM_PORT: res = asd_init_sata_pm_port_ddb(dev); res = asd_init_sata_pm_port_ddb(dev); break; break; default: default: Loading drivers/scsi/aic94xx/aic94xx_hwi.c +1 −1 Original line number Original line Diff line number Diff line Loading @@ -74,7 +74,7 @@ static void asd_init_phy_identify(struct asd_phy *phy) memset(phy->identify_frame, 0, sizeof(*phy->identify_frame)); memset(phy->identify_frame, 0, sizeof(*phy->identify_frame)); phy->identify_frame->dev_type = SAS_END_DEV; phy->identify_frame->dev_type = SAS_END_DEVICE; if (phy->sas_phy.role & PHY_ROLE_INITIATOR) if (phy->sas_phy.role & PHY_ROLE_INITIATOR) phy->identify_frame->initiator_bits = phy->sas_phy.iproto; phy->identify_frame->initiator_bits = phy->sas_phy.iproto; if (phy->sas_phy.role & PHY_ROLE_TARGET) if (phy->sas_phy.role & PHY_ROLE_TARGET) Loading drivers/scsi/aic94xx/aic94xx_tmf.c +1 −1 Original line number Original line Diff line number Diff line Loading @@ -184,7 +184,7 @@ int asd_I_T_nexus_reset(struct domain_device *dev) struct sas_phy *phy = sas_get_local_phy(dev); struct sas_phy *phy = sas_get_local_phy(dev); /* Standard mandates link reset for ATA (type 0) and /* Standard mandates link reset for ATA (type 0) and * hard reset for SSP (type 1) */ * hard reset for SSP (type 1) */ int reset_type = (dev->dev_type == SATA_DEV || int reset_type = (dev->dev_type == SAS_SATA_DEV || (dev->tproto & SAS_PROTOCOL_STP)) ? 0 : 1; (dev->tproto & SAS_PROTOCOL_STP)) ? 0 : 1; asd_clear_nexus_I_T(dev, NEXUS_PHASE_PRE); asd_clear_nexus_I_T(dev, NEXUS_PHASE_PRE); Loading drivers/scsi/be2iscsi/be.h +1 −1 Original line number Original line Diff line number Diff line /** /** * Copyright (C) 2005 - 2012 Emulex * Copyright (C) 2005 - 2013 Emulex * All rights reserved. * All rights reserved. * * * This program is free software; you can redistribute it and/or * This program is free software; you can redistribute it and/or Loading Loading
drivers/scsi/Kconfig +2 −0 Original line number Original line Diff line number Diff line Loading @@ -1353,6 +1353,8 @@ config SCSI_LPFC tristate "Emulex LightPulse Fibre Channel Support" tristate "Emulex LightPulse Fibre Channel Support" depends on PCI && SCSI depends on PCI && SCSI select SCSI_FC_ATTRS select SCSI_FC_ATTRS select GENERIC_CSUM select CRC_T10DIF help help This lpfc driver supports the Emulex LightPulse This lpfc driver supports the Emulex LightPulse Family of Fibre Channel PCI host adapters. Family of Fibre Channel PCI host adapters. Loading
drivers/scsi/aic94xx/aic94xx_dev.c +12 −12 Original line number Original line Diff line number Diff line Loading @@ -84,7 +84,7 @@ static void asd_set_ddb_type(struct domain_device *dev) struct asd_ha_struct *asd_ha = dev->port->ha->lldd_ha; struct asd_ha_struct *asd_ha = dev->port->ha->lldd_ha; int ddb = (int) (unsigned long) dev->lldd_dev; int ddb = (int) (unsigned long) dev->lldd_dev; if (dev->dev_type == SATA_PM_PORT) if (dev->dev_type == SAS_SATA_PM_PORT) asd_ddbsite_write_byte(asd_ha,ddb, DDB_TYPE, DDB_TYPE_PM_PORT); asd_ddbsite_write_byte(asd_ha,ddb, DDB_TYPE, DDB_TYPE_PM_PORT); else if (dev->tproto) else if (dev->tproto) asd_ddbsite_write_byte(asd_ha,ddb, DDB_TYPE, DDB_TYPE_TARGET); asd_ddbsite_write_byte(asd_ha,ddb, DDB_TYPE, DDB_TYPE_TARGET); Loading Loading @@ -116,7 +116,7 @@ void asd_set_dmamode(struct domain_device *dev) int ddb = (int) (unsigned long) dev->lldd_dev; int ddb = (int) (unsigned long) dev->lldd_dev; u32 qdepth = 0; u32 qdepth = 0; if (dev->dev_type == SATA_DEV || dev->dev_type == SATA_PM_PORT) { if (dev->dev_type == SAS_SATA_DEV || dev->dev_type == SAS_SATA_PM_PORT) { if (ata_id_has_ncq(ata_dev->id)) if (ata_id_has_ncq(ata_dev->id)) qdepth = ata_id_queue_depth(ata_dev->id); qdepth = ata_id_queue_depth(ata_dev->id); asd_ddbsite_write_dword(asd_ha, ddb, SATA_TAG_ALLOC_MASK, asd_ddbsite_write_dword(asd_ha, ddb, SATA_TAG_ALLOC_MASK, Loading @@ -140,8 +140,8 @@ static int asd_init_sata(struct domain_device *dev) int ddb = (int) (unsigned long) dev->lldd_dev; int ddb = (int) (unsigned long) dev->lldd_dev; asd_ddbsite_write_word(asd_ha, ddb, ATA_CMD_SCBPTR, 0xFFFF); asd_ddbsite_write_word(asd_ha, ddb, ATA_CMD_SCBPTR, 0xFFFF); if (dev->dev_type == SATA_DEV || dev->dev_type == SATA_PM || if (dev->dev_type == SAS_SATA_DEV || dev->dev_type == SAS_SATA_PM || dev->dev_type == SATA_PM_PORT) { dev->dev_type == SAS_SATA_PM_PORT) { struct dev_to_host_fis *fis = (struct dev_to_host_fis *) struct dev_to_host_fis *fis = (struct dev_to_host_fis *) dev->frame_rcvd; dev->frame_rcvd; asd_ddbsite_write_byte(asd_ha, ddb, SATA_STATUS, fis->status); asd_ddbsite_write_byte(asd_ha, ddb, SATA_STATUS, fis->status); Loading Loading @@ -174,7 +174,7 @@ static int asd_init_target_ddb(struct domain_device *dev) asd_ddbsite_write_byte(asd_ha, ddb, CONN_MASK, dev->port->phy_mask); asd_ddbsite_write_byte(asd_ha, ddb, CONN_MASK, dev->port->phy_mask); if (dev->port->oob_mode != SATA_OOB_MODE) { if (dev->port->oob_mode != SATA_OOB_MODE) { flags |= OPEN_REQUIRED; flags |= OPEN_REQUIRED; if ((dev->dev_type == SATA_DEV) || if ((dev->dev_type == SAS_SATA_DEV) || (dev->tproto & SAS_PROTOCOL_STP)) { (dev->tproto & SAS_PROTOCOL_STP)) { struct smp_resp *rps_resp = &dev->sata_dev.rps_resp; struct smp_resp *rps_resp = &dev->sata_dev.rps_resp; if (rps_resp->frame_type == SMP_RESPONSE && if (rps_resp->frame_type == SMP_RESPONSE && Loading @@ -188,8 +188,8 @@ static int asd_init_target_ddb(struct domain_device *dev) } else { } else { flags |= CONCURRENT_CONN_SUPP; flags |= CONCURRENT_CONN_SUPP; if (!dev->parent && if (!dev->parent && (dev->dev_type == EDGE_DEV || (dev->dev_type == SAS_EDGE_EXPANDER_DEVICE || dev->dev_type == FANOUT_DEV)) dev->dev_type == SAS_FANOUT_EXPANDER_DEVICE)) asd_ddbsite_write_byte(asd_ha, ddb, MAX_CCONN, asd_ddbsite_write_byte(asd_ha, ddb, MAX_CCONN, 4); 4); else else Loading @@ -198,7 +198,7 @@ static int asd_init_target_ddb(struct domain_device *dev) asd_ddbsite_write_byte(asd_ha, ddb, NUM_CTX, 1); asd_ddbsite_write_byte(asd_ha, ddb, NUM_CTX, 1); } } } } if (dev->dev_type == SATA_PM) if (dev->dev_type == SAS_SATA_PM) flags |= SATA_MULTIPORT; flags |= SATA_MULTIPORT; asd_ddbsite_write_byte(asd_ha, ddb, DDB_TARG_FLAGS, flags); asd_ddbsite_write_byte(asd_ha, ddb, DDB_TARG_FLAGS, flags); Loading @@ -211,7 +211,7 @@ static int asd_init_target_ddb(struct domain_device *dev) asd_ddbsite_write_word(asd_ha, ddb, SEND_QUEUE_TAIL, 0xFFFF); asd_ddbsite_write_word(asd_ha, ddb, SEND_QUEUE_TAIL, 0xFFFF); asd_ddbsite_write_word(asd_ha, ddb, SISTER_DDB, 0xFFFF); asd_ddbsite_write_word(asd_ha, ddb, SISTER_DDB, 0xFFFF); if (dev->dev_type == SATA_DEV || (dev->tproto & SAS_PROTOCOL_STP)) { if (dev->dev_type == SAS_SATA_DEV || (dev->tproto & SAS_PROTOCOL_STP)) { i = asd_init_sata(dev); i = asd_init_sata(dev); if (i < 0) { if (i < 0) { asd_free_ddb(asd_ha, ddb); asd_free_ddb(asd_ha, ddb); Loading @@ -219,7 +219,7 @@ static int asd_init_target_ddb(struct domain_device *dev) } } } } if (dev->dev_type == SAS_END_DEV) { if (dev->dev_type == SAS_END_DEVICE) { struct sas_end_device *rdev = rphy_to_end_device(dev->rphy); struct sas_end_device *rdev = rphy_to_end_device(dev->rphy); if (rdev->I_T_nexus_loss_timeout > 0) if (rdev->I_T_nexus_loss_timeout > 0) asd_ddbsite_write_word(asd_ha, ddb, ITNL_TIMEOUT, asd_ddbsite_write_word(asd_ha, ddb, ITNL_TIMEOUT, Loading Loading @@ -328,10 +328,10 @@ int asd_dev_found(struct domain_device *dev) spin_lock_irqsave(&asd_ha->hw_prof.ddb_lock, flags); spin_lock_irqsave(&asd_ha->hw_prof.ddb_lock, flags); switch (dev->dev_type) { switch (dev->dev_type) { case SATA_PM: case SAS_SATA_PM: res = asd_init_sata_pm_ddb(dev); res = asd_init_sata_pm_ddb(dev); break; break; case SATA_PM_PORT: case SAS_SATA_PM_PORT: res = asd_init_sata_pm_port_ddb(dev); res = asd_init_sata_pm_port_ddb(dev); break; break; default: default: Loading
drivers/scsi/aic94xx/aic94xx_hwi.c +1 −1 Original line number Original line Diff line number Diff line Loading @@ -74,7 +74,7 @@ static void asd_init_phy_identify(struct asd_phy *phy) memset(phy->identify_frame, 0, sizeof(*phy->identify_frame)); memset(phy->identify_frame, 0, sizeof(*phy->identify_frame)); phy->identify_frame->dev_type = SAS_END_DEV; phy->identify_frame->dev_type = SAS_END_DEVICE; if (phy->sas_phy.role & PHY_ROLE_INITIATOR) if (phy->sas_phy.role & PHY_ROLE_INITIATOR) phy->identify_frame->initiator_bits = phy->sas_phy.iproto; phy->identify_frame->initiator_bits = phy->sas_phy.iproto; if (phy->sas_phy.role & PHY_ROLE_TARGET) if (phy->sas_phy.role & PHY_ROLE_TARGET) Loading
drivers/scsi/aic94xx/aic94xx_tmf.c +1 −1 Original line number Original line Diff line number Diff line Loading @@ -184,7 +184,7 @@ int asd_I_T_nexus_reset(struct domain_device *dev) struct sas_phy *phy = sas_get_local_phy(dev); struct sas_phy *phy = sas_get_local_phy(dev); /* Standard mandates link reset for ATA (type 0) and /* Standard mandates link reset for ATA (type 0) and * hard reset for SSP (type 1) */ * hard reset for SSP (type 1) */ int reset_type = (dev->dev_type == SATA_DEV || int reset_type = (dev->dev_type == SAS_SATA_DEV || (dev->tproto & SAS_PROTOCOL_STP)) ? 0 : 1; (dev->tproto & SAS_PROTOCOL_STP)) ? 0 : 1; asd_clear_nexus_I_T(dev, NEXUS_PHASE_PRE); asd_clear_nexus_I_T(dev, NEXUS_PHASE_PRE); Loading
drivers/scsi/be2iscsi/be.h +1 −1 Original line number Original line Diff line number Diff line /** /** * Copyright (C) 2005 - 2012 Emulex * Copyright (C) 2005 - 2013 Emulex * All rights reserved. * All rights reserved. * * * This program is free software; you can redistribute it and/or * This program is free software; you can redistribute it and/or Loading