This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Part Number: TDA4VM
I have a custom board and I want to confirm the bootmode I have set using the dip switch setting. This will provide as a sanity check for my configuration and also as the first level debug step as I am not able to boot.
The section 4.3 Boot Mode Pins of the TRM has these details. The bootmode and its configuration can be inferred by MCU_BOOTMODE and BOOTMODE.
CTRLMMR_MAIN_DEVSTAT register reflects the BOOTMODE pin values sampled at internal POR release.
CTRLMMR_WKUP_DEVSTAT register reflects the MCU_BOOTMODE pin values sampledat internal POR release.
This FAQ mentions a python script (bootmode_util) which can be used to infer the Primary and the Secondary (backup) bootmodes and their configuration quickly.
All you need to input to the script is the CTRLMMR_MAIN_DEVSTAT and the CTRLMMR_WKUP_DEVSTAT registers. These registers can be read using either u-boot (md command), Kernel (devmem2) command, CCS (memory browser or even printing these out on the console.
python bootmode.py <CTRLMMR_WKUP_DEVSTAT in HEX> <CTRLMMR_MAIN_DEVSTAT in HEX>
$ python bootmode.py --help
usage: bootmode.py [-h] CTRLMMR_WKUP_DEVSTAT CTRLMMR_MAIN_DEVSTAT
This scripts gives information on the bootmodes by taking the
CTRLMMR_WKUP_DEVSTAT & CTRLMMR_MAIN_DEVSTAT registers as input
CTRLMMR_WKUP_DEVSTAT Value of CTRLMMR_WKUP_DEVSTAT register in HEX
CTRLMMR_MAIN_DEVSTAT Value of CTRLMMR_MAIN_DEVSTAT register in HEX
-h, --help show this help message and exit
for example: python bootmode.py 0x0 0x41
The sample output for SD boot configuration of the EVM is as below:
$ python bootmode.py 0x0 0x41
| MCU_BOOTMODE | 0x0 |
| BOOTMODE | 0x41 |
| Primary boot mode | MMC/SD |
| Port | SD card |
| Bus Width | 4bit |
| FS/Raw | FS mode |
| Backup boot mode | None |
From the above output one can infer the Primary (SD) boot mode and Backup (None) and also the configuration like Port, Bus Width, FS/Raw mode etc..
All this data is picked up from the TRM data present in bootmode_TRM_data.py file.
We are glad that we were able to resolve this issue, and will now proceed to close this thread.
If you have further questions related to this thread, you may click "Ask a related question" below. The newly created question will be automatically linked to this question.
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.