From: Jeremy Pallotta Date: Fri, 24 Dec 2021 01:23:31 +0000 (-0800) Subject: ntb_hw_switchtec: AND with the part_map for a valid tpart_vec X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=857e239c3ef57e6ba0ff148de96e14249a4d669b;p=linux.git ntb_hw_switchtec: AND with the part_map for a valid tpart_vec Some firmware versions return 1 in the target partition vector for undefined partitions. AND with the part_map to give a valid tpart_vec. Signed-off-by: Jeremy Pallotta Signed-off-by: Kelvin Cao Signed-off-by: Jon Mason --- diff --git a/drivers/ntb/hw/mscc/ntb_hw_switchtec.c b/drivers/ntb/hw/mscc/ntb_hw_switchtec.c index 36efba21db4b4..8e9b97631884a 100644 --- a/drivers/ntb/hw/mscc/ntb_hw_switchtec.c +++ b/drivers/ntb/hw/mscc/ntb_hw_switchtec.c @@ -858,6 +858,7 @@ static int switchtec_ntb_init_sndev(struct switchtec_ntb *sndev) tpart_vec |= ioread32(&sndev->mmio_ntb->ntp_info[self].target_part_low); part_map = ioread64(&sndev->mmio_ntb->ep_map); + tpart_vec &= part_map; part_map &= ~(1 << sndev->self_partition); if (!tpart_vec) {