Browse Source

sata: dwc_ahsata: Fix memory issue in reset_sata

The reset_sata should reset the sata device info and free the
probe_ent memory. Otherwise, it will cause memory leak if we
init the sata again.

Signed-off-by: Ye Li <ye.li@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Ye Li 4 years ago
parent
commit
6b6c620c82
1 changed files with 3 additions and 0 deletions
  1. 3 0
      drivers/ata/dwc_ahsata.c

+ 3 - 0
drivers/ata/dwc_ahsata.c

@@ -918,6 +918,9 @@ int reset_sata(int dev)
 	while (readl(&host_mmio->ghc) & SATA_HOST_GHC_HR)
 		udelay(100);
 
+	free(uc_priv);
+	memset(&sata_dev_desc[dev], 0, sizeof(struct blk_desc));
+
 	return 0;
 }