Giter Site home page Giter Site logo

Comments (5)

mpsido avatar mpsido commented on August 17, 2024

gdb backtrace:

#0 storage_show_error () at firmware/storage.c:115
#1 0x0801531c in storage_check_flash_errors (status=) at firmware/storage.c:123
#2 storage_wipe () at firmware/storage.c:743
#3 0x080153a0 in storage_init () at firmware/storage.c:226
#4 0x080140ca in main () at firmware/trezor.c:120

from services.

mpsido avatar mpsido commented on August 17, 2024

Quote from the datasheet of the microcontroller:
https://www.st.com/content/ccc/resource/technical/document/programming_manual/f7/7e/b9/a8/31/58/41/7b/CD00233952.pdf/files/CD00233952.pdf/jcr:content/translations/en.CD00233952.pdf

"The write access type (byte, half-word, word or double word) must correspond to the type of
parallelism chosen (x8, x16, x32 or x64). If no
t, the write operation
is not performed and a
program parallelism error flag (PGPERR)
is set in the FLASH_SR register."

from services.

rngadam avatar rngadam commented on August 17, 2024

where is

  • write access type
  • parallelism

configured?

from services.

rngadam avatar rngadam commented on August 17, 2024

can you explain these diffs from git diff 88c1b0d699076ce15f8cf7b27c50d4bbc0346f76 firmware/storage.c?

 
        // fill remainder with zero for future extensions
        while (flash < FLASH_STORAGE_PINAREA) {
-               flash_program_word(flash, 0);
+               flash_write32(flash, 0);
                flash += sizeof(uint32_t);
        }

and

 static uint32_t storage_flash_words(uint32_t addr, const uint32_t *src, int nwords) {
        for (int i = 0; i < nwords; i++) {
-               flash_program_word(addr, *src++);
+               flash_write32(addr, *src++);
                addr += sizeof(uint32_t);
        }
        return addr;

from services.

mpsido avatar mpsido commented on August 17, 2024

solved

from services.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.