On Fri, Nov 08, 2019 at 08:21:35PM -0800, Bart Van Assche wrote: > The commit mentioned in the subject breaks point-to-point mode for at least > the QLE2562 HBA. Restore point-to-point support by reverting that commit. > > Cc: Roman Bolshakov <r.bolshakov@xxxxxxxxx> > Cc: Quinn Tran <qutran@xxxxxxxxxxx> > Cc: Himanshu Madhani <hmadhani@xxxxxxxxxxx> > Fixes: 0aabb6b699f7 ("scsi: qla2xxx: Fix Nport ID display value") > Signed-off-by: Bart Van Assche <bvanassche@xxxxxxx> > --- > drivers/scsi/qla2xxx/qla_iocb.c | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) > > diff --git a/drivers/scsi/qla2xxx/qla_iocb.c b/drivers/scsi/qla2xxx/qla_iocb.c > index b25f87ff8cde..cfd686fab1b1 100644 > --- a/drivers/scsi/qla2xxx/qla_iocb.c > +++ b/drivers/scsi/qla2xxx/qla_iocb.c > @@ -2656,10 +2656,9 @@ qla24xx_els_logo_iocb(srb_t *sp, struct els_entry_24xx *els_iocb) > els_iocb->port_id[0] = sp->fcport->d_id.b.al_pa; > els_iocb->port_id[1] = sp->fcport->d_id.b.area; > els_iocb->port_id[2] = sp->fcport->d_id.b.domain; > - /* For SID the byte order is different than DID */ > - els_iocb->s_id[1] = vha->d_id.b.al_pa; > - els_iocb->s_id[2] = vha->d_id.b.area; > - els_iocb->s_id[0] = vha->d_id.b.domain; > + els_iocb->s_id[0] = vha->d_id.b.al_pa; > + els_iocb->s_id[1] = vha->d_id.b.area; > + els_iocb->s_id[2] = vha->d_id.b.domain; > > if (elsio->u.els_logo.els_cmd == ELS_DCMD_PLOGI) { > els_iocb->control_flags = 0; > -- > 2.23.0 > The original commit definitely fixes P2P mode for QLE2700, the lowest byte is domain, followed by AL_PA, followed by area. However the fields are reserved in ELS IOCB for QLE2500, according to FW spec. Perhaps we should have a switch here for 2500 and the other one for 2600/2700? Or, we should only set the fields only for QLE2700, to comply with both specs. Thank you, Roman