1 Reply Latest reply on Jun 15, 2018 9:11 AM by codo_3475426

    S29GL064N90BFI03 autoselect mode

      Now that I can write to the SGL-N device I am unable to get it into autoselect mode to grab the device ID. I am able to grab it from the older flash S29AL032D90.

      Running the following command returns back the actual data at that location, not the device ID..

       

      *Note that I am running in 8 bit mode.

       

      (*(Uint8 *)baseaddr + 0xaaa) = 0xaa;

      (*(Uint8 *)baseaddr + 0x555) = 0x55;

      (*(Uint8 *)baseaddr + 0xaaa) = 0x90;

       

      deviceID = (*(Uint8 *)baseaddr + 0x02);

       

      Its supposed to return 0x7e but I am getting data from memory location 0x02.

      I ran this on two seperate SGL-N flash.

       

      Cong Do

        • 1. Re: S29GL064N90BFI03 autoselect mode

          For completion purposes.

           

          The solution was to run an extra read command. Not sure if because of timing issue but on the second read, I was able to get the device ID.

           

          e.g.

           

          (*(Uint8 *)baseaddr + 0xaaa) = 0xaa;

          (*(Uint8 *)baseaddr + 0x555) = 0x55;

          (*(Uint8 *)baseaddr + 0xaaa) = 0x90;

           

          deviceID = (*(Uint8 *)baseaddr + 0x02); // Garbage

          deviceID = (*(Uint8 *)baseaddr + 0x02); // Device ID