Comments (3)
The ROM code is correct and only a single read is required.
The reason we need only a single read at that location is that the pinmux is already initialized with the internal pulldowns activated so that a weak pull-up will not be read as a logic-high.
There are tests in //sw/device/silicon_creator/rom/e2e/weak_straps
that test all 64 strap combinations and confirm that only the ROM_BOOTSTRAP (111
) and RMA_BOOTSTRAP (110
) patterns are recognized by the ROM.
from opentitan.
The correct operation of strap detection can be independently verified on the ES chip by running an opentitantool console
in one window and the teacup-strapping.sh script in another.
- For strapping value 63, you will see the ROM respond with
bootstrap:1
. - For strapping value 60, you will see nothing because the ROM hangs (and bootloops) to wait for the JTAG LC-tap connection.
- For all other values, the next stages (ie ROM_EXT and owner code) will boot. If you happen to be running the test binary associated with
//sw/device/silicon_creator/rom/e2e/weak_straps:sw_strap_value
, it will read the straps and print the value when it starts.
from opentitan.
Ah good to know. Thank you for checking!
from opentitan.
Related Issues (20)
- [test-triage] `lc_ctrl_volatile_unlock_disabled`:`lc_ctrl_sec_mubi` HOT 2
- [test-triage] `i2c_host_stress_all` low pass-rate HOT 2
- [test-triage] `usbdev` bad-traffic injection temporary woes HOT 3
- [test-triage] `otbn_ctrl_redun` imperfect pass-rate (not a timeout)
- [test-triage] `aes_unmasked`:`aes_stress_all` assert failure
- [test-triage] `aes_unmasked`:`aes_same_csr_outstanding` compare fail HOT 1
- [top_earlgrey] Port Earlgrey-PROD I/O timing constraints back to open source
- [usbdev] Packet reception logic is unaware of Resume Signaling
- [topEarlGrey] Title
- [test-triage] chip_sw_power_virus HOT 6
- [rv_core_ibex] Document that the CSRC instruction should not be used for manipulating the X bit of PMP entries
- [entropy_src] Absorb last word into SHA3 if the window ends while processing a block HOT 2
- [alert_handler_escalation] Avoid missing escalation requests HOT 1
- [entropy_src] Fix entropy drop assertions in entropy_src_core.sv
- [ECO] prim_count.sv CDC HOT 3
- [test-triage] i2c_host_mode_toggle flaky HOT 1
- [usbdev] Bit stuffing violations at packet end are undetected
- [chip_earlgrey_asic] Enable pull-up setting for power-on reset
- [dv,cov,mubi] The cp_value coverpoint in dv_base_mubi_cov doesn't handle Width=32 properly
- [rv_dm] rv_dm needs a UNR report HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from opentitan.