summaryrefslogtreecommitdiffstats
path: root/arch/sparc/kernel/viohs.c
diff options
context:
space:
mode:
authorJag Raman2017-06-23 20:58:31 +0200
committerDavid S. Miller2017-06-25 22:43:12 +0200
commit01b7a471382c529f60f5965ecfed9a14bfccf1ab (patch)
tree743939d1eb499138fa99bb735b64ac96ce83efcd /arch/sparc/kernel/viohs.c
parentsparc64: specify the device class in VIO version info. packet (diff)
downloadkernel-qcow2-linux-01b7a471382c529f60f5965ecfed9a14bfccf1ab.tar.gz
kernel-qcow2-linux-01b7a471382c529f60f5965ecfed9a14bfccf1ab.tar.xz
kernel-qcow2-linux-01b7a471382c529f60f5965ecfed9a14bfccf1ab.zip
sparc64: skip handshake for LDC channels in RAW mode
LDC channels in RAW mode does not provide any session management. No handshake protocol is defined for LDC channels in RAW mode. It's therefore skipped. Signed-off-by: Jagannathan Raman <jag.raman@oracle.com> Reviewed-by: Liam Merwick <liam.merwick@oracle.com> Reviewed-by: Shannon Nelson <shannon.nelson@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc/kernel/viohs.c')
-rw-r--r--arch/sparc/kernel/viohs.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/sparc/kernel/viohs.c b/arch/sparc/kernel/viohs.c
index 68e952a7bcdb..d4f13c037a40 100644
--- a/arch/sparc/kernel/viohs.c
+++ b/arch/sparc/kernel/viohs.c
@@ -776,7 +776,11 @@ void vio_port_up(struct vio_driver_state *vio)
}
if (!err) {
- err = ldc_connect(vio->lp);
+ if (ldc_mode(vio->lp) == LDC_MODE_RAW)
+ ldc_set_state(vio->lp, LDC_STATE_CONNECTED);
+ else
+ err = ldc_connect(vio->lp);
+
if (err)
printk(KERN_WARNING "%s: Port %lu connect failed, "
"err=%d\n",