Message ID | 1450445764-11567-1-git-send-email-thomas@wytron.com.tw |
---|---|
State | Accepted |
Delegated to: | Thomas Chou |
Headers | show |
On Friday, December 18, 2015 at 02:36:04 PM, Thomas Chou wrote: > Initialize instr.mtd in flash_erase(). This fixes the system > hang issue when CONFIG_MTD_PARTITIONS is selected. > > Signed-off-by: Thomas Chou <thomas@wytron.com.tw> > --- > drivers/mtd/altera_qspi.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/mtd/altera_qspi.c b/drivers/mtd/altera_qspi.c > index 617bf5d..c7e37ad 100644 > --- a/drivers/mtd/altera_qspi.c > +++ b/drivers/mtd/altera_qspi.c > @@ -81,6 +81,7 @@ int flash_erase(flash_info_t *info, int s_first, int > s_last) int ret; > > memset(&instr, 0, sizeof(instr)); > + instr.mtd = mtd; > instr.addr = mtd->erasesize * s_first; > instr.len = mtd->erasesize * (s_last + 1 - s_first); > ret = mtd_erase(mtd, &instr); Nice, took me a while to grasp where the bug triggers, but now I see it: Acked-by: Marek Vasut <marex@denx.de> Best regards, Marek Vasut
diff --git a/drivers/mtd/altera_qspi.c b/drivers/mtd/altera_qspi.c index 617bf5d..c7e37ad 100644 --- a/drivers/mtd/altera_qspi.c +++ b/drivers/mtd/altera_qspi.c @@ -81,6 +81,7 @@ int flash_erase(flash_info_t *info, int s_first, int s_last) int ret; memset(&instr, 0, sizeof(instr)); + instr.mtd = mtd; instr.addr = mtd->erasesize * s_first; instr.len = mtd->erasesize * (s_last + 1 - s_first); ret = mtd_erase(mtd, &instr);
Initialize instr.mtd in flash_erase(). This fixes the system hang issue when CONFIG_MTD_PARTITIONS is selected. Signed-off-by: Thomas Chou <thomas@wytron.com.tw> --- drivers/mtd/altera_qspi.c | 1 + 1 file changed, 1 insertion(+)