[SCSI] zfcp: Replace FC4 constants with information from exchange port
authorChristof Schmitt <christof.schmitt@de.ibm.com>
Wed, 17 Feb 2010 10:18:58 +0000 (11:18 +0100)
committerJames Bottomley <James.Bottomley@suse.de>
Wed, 17 Feb 2010 23:46:33 +0000 (17:46 -0600)
The FC4 types are already available from exchange port.  Use this for
reporting the FC4 types, instead of having the value hardcoded in
zfcp.

Reviewed-by: Swen Schillig <swen@vnet.ibm.com>
Signed-off-by: Christof Schmitt <christof.schmitt@de.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
drivers/s390/scsi/zfcp_fsf.c

index 1c47c49..8a0705a 100644 (file)
@@ -491,8 +491,6 @@ static int zfcp_fsf_exchange_config_evaluate(struct zfcp_fsf_req *req)
        fc_host_port_id(shost) = ntoh24(bottom->s_id);
        fc_host_speed(shost) = bottom->fc_link_speed;
        fc_host_supported_classes(shost) = FC_COS_CLASS2 | FC_COS_CLASS3;
-       fc_host_supported_fc4s(shost)[2] = 1; /* FCP */
-       fc_host_active_fc4s(shost)[2] = 1; /* FCP */
 
        adapter->hydra_version = bottom->adapter_type;
        adapter->timer_ticks = bottom->timer_interval;
@@ -615,6 +613,10 @@ static void zfcp_fsf_exchange_port_evaluate(struct zfcp_fsf_req *req)
                fc_host_permanent_port_name(shost) = fc_host_port_name(shost);
        fc_host_maxframe_size(shost) = bottom->maximum_frame_size;
        fc_host_supported_speeds(shost) = bottom->supported_speed;
+       memcpy(fc_host_supported_fc4s(shost), bottom->supported_fc4_types,
+              FC_FC4_LIST_SIZE);
+       memcpy(fc_host_active_fc4s(shost), bottom->active_fc4_types,
+              FC_FC4_LIST_SIZE);
 }
 
 static void zfcp_fsf_exchange_port_data_handler(struct zfcp_fsf_req *req)