[go: nahoru, domu]

Skip to content

A parser to make binary tables used by HiSilicon SoC bootloader(u-boot) early low level function init_registers() human readable

Notifications You must be signed in to change notification settings

kakigate/hisi-initregtable-parser

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

hisi-initregtable-parser

Make them binary blobs human readable.

Build: gcc -Wall -g hisi-initregtable-parser.c -o hisi-initregtable-parser

Parses HiSilicon SoC register tables(in binary format) used in bootloader(u-boot) with early low level function: init_registers(uint32_t* table_start_address, uint32_t mode)

Main purpose of this early low level function is to configure clocks and ddr phy/mem configuration in early stage so bootloader can be loaded in ddr ram. Also io muxing is partially or completelly done at this phase.

  • Parsed init register table can be used to make educated guesses about undocumented hardware configuration!

Uses external per SoC type csv-files to identify which register base table entry refers to. Any contribution in terms of accurate&complete csv-files for different devices is much appreciated.

Base+Offset can be printed with -printoffsets

Address values only can be printed with -addronly

  • Can be used to fetch values from running platform for comparison!

More details about blobs, init_registers() and how to use this tool inside .c source.

Colored mode and -nocolor for use with external tools Colored mode and nocolor for use with external tools

Example use with external tool - visual diff of two tables with Meld 2 Parses analyzed in Meld

About

A parser to make binary tables used by HiSilicon SoC bootloader(u-boot) early low level function init_registers() human readable

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages