mirror of
https://git.codelinaro.org/clo/qsdk/oss/boot/u-boot-2016.git
synced 2025-12-10 07:44:53 +01:00
mtd: qcom: write NAND_CTRL only once
Currently NAND_CTRL register write generates error. Register writes to operational registers should always be done through command descriptors if BAM_MODE is already enabled. For NAND boot, bootloader already enables BAM_MODE so read the NAND_CTRL register value and write only if BAM_MODE is not set. Change-Id: Iabc3e06dc7d8d8b36cdf35907217e1c4d7cc960a Signed-off-by: Abhishek Sahu <absahu@codeaurora.org>
This commit is contained in:
parent
290e544e19
commit
3edd3544f0
1 changed files with 10 additions and 2 deletions
|
|
@ -381,8 +381,16 @@ qpic_bam_init(struct qpic_nand_init_config *config)
|
|||
bam_ret = NANDC_RESULT_FAILURE;
|
||||
goto qpic_nand_bam_init_error;
|
||||
}
|
||||
/* Enable BAM Mode in QPIC */
|
||||
writel(BAM_MODE_EN, QPIC_NAND_CTRL);
|
||||
|
||||
/*
|
||||
* Once BAM_MODE_EN bit is set then QPIC_NAND_CTRL register
|
||||
* should be written with BAM instead of writel.
|
||||
* Check if BAM_MODE_EN is already set by bootloader and write only
|
||||
* if this bit is not set.
|
||||
*/
|
||||
if (!(readl(QPIC_NAND_CTRL) & BAM_MODE_EN))
|
||||
writel(BAM_MODE_EN, QPIC_NAND_CTRL);
|
||||
|
||||
qpic_nand_bam_init_error:
|
||||
return bam_ret;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue