diff --git a/drivers/block/dwc_ahsata.c b/drivers/block/dwc_ahsata.c
index 29f478bfbe0d35b93953bb35217970fc328d81a4..c68fd2f256541403a97f840599353dbadf7ec6df 100644
--- a/drivers/block/dwc_ahsata.c
+++ b/drivers/block/dwc_ahsata.c
@@ -878,7 +878,7 @@ int sata_port_status(int dev, int port)
 	probe_ent = (struct ahci_probe_ent *)sata_dev_desc[dev].priv;
 	port_mmio = (struct sata_port_regs *)probe_ent->port[port].port_mmio;
 
-	return readl(&(port_mmio->ssts)) && SATA_PORT_SSTS_DET_MASK;
+	return readl(&(port_mmio->ssts)) & SATA_PORT_SSTS_DET_MASK;
 }
 
 /*