Invalid ONFI PARAM PAGE
Miquel Raynal
miquel.raynal at bootlin.com
Mon Aug 3 09:10:22 EDT 2020
Hi Marco,
Marco Felsch <m.felsch at pengutronix.de> wrote on Mon, 3 Aug 2020
11:06:26 +0200:
> Hi Miquel,
>
> thanks for your response :)
>
> On 20-08-03 10:47, Miquel Raynal wrote:
> > Hi Marco,
> >
> > Marco Felsch <m.felsch at pengutronix.de> wrote on Thu, 30 Jul 2020
> > 14:14:25 +0200:
> >
> > > Hi,
> > >
> > > a customer of us uses micron nand flash devices for their local storage.
> > > They are now having some troubles with a few devices. Let me start with
> > > the following:
> > > 1) We can successfully read the nand id field by:
> > > -> select_chip
> > > -> cmdfunc(mtd, NAND_CMD_RESET)
> > > -> cmdfunc(mtd, NAND_CMD_READID) Addr=0x00
> > > -> 8times: read_byte(mtd)
> > >
> > > The NAND device response with the following:
> > > nand: id_data[0]: 0x2c
> > > nand: id_data[1]: 0xdc
> > > nand: id_data[2]: 0x90
> > > nand: id_data[3]: 0x95
> > > nand: id_data[4]: 0x56
> > > nand: id_data[5]: 0x0
> > > nand: id_data[6]: 0x0
> > > nand: id_data[7]: 0x0
> > >
> > > Accroding the schematic and the datasheet this is right.
> > >
> > > 2) To detect the ONFI compatibility we now issue:
> > > -> cmdfunc(mtd, NAND_CMD_READID) Addr=0x20
> > >
> > > and getting the expected 'O','N','F','I' signature.
> > >
> > > 3) Now we are trying to Read the PARAM Page by:
> > > -> cmdfunc(mtd, NAND_CMD_PARAM)
> > > -> try to read the the param page and if not successful try to
> > > read the copies.
> > >
> > > Here things getting crazy since we are reading all the time '0xff'.
> > >
> > > 4) Since Barebox (Bootloader) can't read the ONFI param page we
> > > calculate the values as expected from the param page. But now we
> > > can't access BBT (not found) nor we are not able to write to the
> > > OOB Area (the chip is not write protected).
> > >
> > > The electrical signals are looking good and since we can retrieve the
> > > id-data it should be no PCB bug. Did anyone struggled with such problems
> > > too?
> > >
> > > BTW:
> > > I also get '0xff' if I send a READ_UNIQUE_ID command and trying to read
> > > the 16 copies of the 32byte unique-id.
> > >
> > > Any answers are welcome :)
> >
> > Could you share more details about the situation your customer is
> > facing? Did this work before? Is this an update? If yes from what
> > version to what version? Also, is this a Linux or Barebox issue?
>
> This issue get's triggered right after the first start-up. Some devices
> do work and some of them don't after the production. I think it's not a
> Linux nor a Barebox issue. Since Barebox can't find the BBT and all
> other stuff I skipped propper Linux tests. I will test if Linux can
> identify and setup the chip. But I think Linux will setp into the same
> NAND-Issues.
>
> I asked on this ML since you guys are the Experts here and maybe you had
> see a 'not full prefactored' NAND device too.
>
> Regards,
> Marco
Thanks for detailing, I understand your problem now. Well I honestly
don't have any idea why a flashing process would work with a chip and
totally fail otherwise, if not a hardware issue. Maybe there is a
clocking specificity?
Sorry for not being helpful at all :)
Miquèl
More information about the linux-mtd
mailing list