ARM: uniphier: allow DDR function to return more precise error code

Return different error code depending on the reason so that the
caller can know the cause of the failure.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
This commit is contained in:
Masahiro Yamada 2015-12-16 10:50:26 +09:00
parent 11d6effeae
commit 6a9f6ba0f9

View File

@ -5,6 +5,7 @@
*/
#include <common.h>
#include <linux/err.h>
#include <linux/io.h>
#include <mach/ddrphy-regs.h>
@ -117,7 +118,7 @@ int ddrphy_training(struct ddrphy __iomem *phy)
if (--timeout < 0) {
printf("%s: error: timeout during DDR training\n",
__func__);
return -1;
return -ETIMEDOUT;
}
udelay(1);
pgsr0 = readl(&phy->pgsr[0]);
@ -127,7 +128,7 @@ int ddrphy_training(struct ddrphy __iomem *phy)
if (pgsr0 & init_sequence[i].err_flag) {
printf("%s: error: %s failed\n", __func__,
init_sequence[i].description);
return -1;
return -EIO;
}
}