5 Replies Latest reply on Nov 30, 2016 7:44 PM by leon_du

    baytrail SPI issue

    leon_du Community Member



      On our baytrail platform, a SPI nvSRAM is connected to the baytrail SPI controller.At testing, everything seems to work fine,

      but when we writes 256 bytes data per time constantly for some hours, we find that some bytes data is mistake. And the fail maybe just some times in a few hours.

      The mistake is as following , which when writing 256 bytes data (pattern is 57) to nvSRAM, we find the pattern at 0xFB is mistake. BTW, when we write 64 bytes per time, it run well.

      After the signal was checked by HW engineer, we found the signal is mistake when it came from baytrail spi controller. Then, we checked the driver and used the newer kernel (4.8.0),

      we find the mistake maybe fall at 0xF2/0xF6/0xF9/0xFC/... (write 256 bytes per time).


      I would appreciate any ideas as to what may cause this behaviour.


      Thank you!

        • Re: baytrail SPI issue
          Carlos_A Brown Belt

          Hello, leon_du:


          Thank you for contacting Intel Embedded Comunity.


          In order to be better understand your consultation, we would like to address the following questions:


          Could you please tell us the part numbers of the Processor and the SPI nvSRAM related to this situation?


          Could you please clarify if the affected project is your design or a third party one? In case that it is a third party, please give us all the information related to it.


          Could you please give us all the details of the data that you tried to write in the SPI nvSRAM? By the way, how many SPI nvSRAM devices are experiencing this problem?


          Please give us all the information related to these questions to have a better idea of this problem.


          Best regards,


            • Re: baytrail SPI issue
              leon_du Community Member

              Hello The specified item was not found..

              Thanks for your feedback!

              The part numbers of the Processor is E3845, the SPI nvSRAM is Cypress CY14X101PA. And the project is our design.

              As so far, there are approximately 10 devices that we have produced are experiencing the problem.

              We just test the nvSRAM by writing data to nvSRAM and reading it back; After encountering the problem, we tried to figure out the cause.

              As pointed out about, our hw engineer found the signal of data at the wrong data of the above picture is mistake when it came from baytrail spi controller.

              What is confusing is that when writing 256 bytes or more bytes data per time, it should experiencing the problem easily, but when wrting 64 bytes or less bytes, it run well.

              After searching the intel docs, we found Doc 514482 which has a charpter about "Write Granularity" of SPI controller, but I don't understant it well, it means we must write

              less than 64 bytes per time after following a command opcode and a address ? or it means others ?

              By the way, our design has a CPLD as a switch for two host machine, but we just run one host machine at testing. The following is the block diagram,