├── .gitignore ├── .gitmodules ├── LICENSE ├── README ├── fiddle.cfg ├── fiddle ├── __init__.py ├── addr_space.py ├── config.py ├── configs │ └── defaults.cfg ├── database.py ├── db_info.py ├── doit_manager.py ├── external_source_manager.py ├── git_mgr.py ├── hw_info │ ├── _hw │ │ └── test │ │ │ └── _single │ │ │ ├── memory_map.yml │ │ │ └── substages.yml │ └── bbxm │ │ ├── am37x_base_memory_map.csv │ │ ├── hw_info.py │ │ ├── ocdinit │ │ ├── ocdinit2 │ │ ├── trace-events │ │ └── u_boot │ │ ├── main │ │ ├── main-events │ │ ├── memory_map.yml │ │ └── substages.yml │ │ └── spl │ │ ├── memory_map.yml │ │ ├── spl-events │ │ └── substages.yml ├── ia.py ├── instrumentation_results_manager.py ├── labeltool.py ├── main.py ├── memory_tree.py ├── process_args.py ├── pure_utils.py ├── pymacs_request │ └── __init__.py ├── pytable_utils.py ├── qemu_raw_trace.py ├── qemusimpleparse.py ├── r2_keeper.py ├── reporter.py ├── run_cmd.py ├── run_cmds.py ├── staticanalysis.py ├── substage.py ├── substages_parser.py ├── testsuite_utils.py └── unicorn_utils.py ├── fiddle_extra ├── __init__.py ├── fiddle_plugin.py ├── find_write_loops.py ├── frama_c │ ├── Makefile │ ├── __init__.py │ ├── bx-framac-patch │ ├── call.ml │ ├── call_analysis.ml │ ├── dest_analysis.ml │ ├── frama_c.py │ └── machdep_arm.ml ├── parse_am37x_register_tables.py ├── pymacs_request.py └── scripts │ ├── __init__.py │ ├── emacs_modules │ └── substage.el │ └── sort_histogram.py ├── fiddle_gdb ├── __init__.py ├── calltrace.el ├── calltrace.py ├── enforce.py ├── gdb_tools.py ├── hook_write.py ├── unicorn_trace.py └── watchpoints.py └── setup.py /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/.gitmodules -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/LICENSE -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/README -------------------------------------------------------------------------------- /fiddle.cfg: -------------------------------------------------------------------------------- 1 | /home/bx/fiddle/fiddle_examples/uboot_bbxm/fiddle.cfg -------------------------------------------------------------------------------- /fiddle/__init__.py: -------------------------------------------------------------------------------- 1 | # Bootloader (and Beyond) Instrumentation Suite package 2 | name = 'fiddle' 3 | -------------------------------------------------------------------------------- /fiddle/addr_space.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/addr_space.py -------------------------------------------------------------------------------- /fiddle/config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/config.py -------------------------------------------------------------------------------- /fiddle/configs/defaults.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/configs/defaults.cfg -------------------------------------------------------------------------------- /fiddle/database.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/database.py -------------------------------------------------------------------------------- /fiddle/db_info.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/db_info.py -------------------------------------------------------------------------------- /fiddle/doit_manager.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/doit_manager.py -------------------------------------------------------------------------------- /fiddle/external_source_manager.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/external_source_manager.py -------------------------------------------------------------------------------- /fiddle/git_mgr.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/git_mgr.py -------------------------------------------------------------------------------- /fiddle/hw_info/_hw/test/_single/memory_map.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/hw_info/_hw/test/_single/memory_map.yml -------------------------------------------------------------------------------- /fiddle/hw_info/_hw/test/_single/substages.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/hw_info/_hw/test/_single/substages.yml -------------------------------------------------------------------------------- /fiddle/hw_info/bbxm/am37x_base_memory_map.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/hw_info/bbxm/am37x_base_memory_map.csv -------------------------------------------------------------------------------- /fiddle/hw_info/bbxm/hw_info.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/hw_info/bbxm/hw_info.py -------------------------------------------------------------------------------- /fiddle/hw_info/bbxm/ocdinit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/hw_info/bbxm/ocdinit -------------------------------------------------------------------------------- /fiddle/hw_info/bbxm/ocdinit2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/hw_info/bbxm/ocdinit2 -------------------------------------------------------------------------------- /fiddle/hw_info/bbxm/trace-events: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/hw_info/bbxm/trace-events -------------------------------------------------------------------------------- /fiddle/hw_info/bbxm/u_boot/main/main-events: -------------------------------------------------------------------------------- 1 | main_uboot_writes 2 | 3 | 4 | -------------------------------------------------------------------------------- /fiddle/hw_info/bbxm/u_boot/main/memory_map.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/hw_info/bbxm/u_boot/main/memory_map.yml -------------------------------------------------------------------------------- /fiddle/hw_info/bbxm/u_boot/main/substages.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/hw_info/bbxm/u_boot/main/substages.yml -------------------------------------------------------------------------------- /fiddle/hw_info/bbxm/u_boot/spl/memory_map.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/hw_info/bbxm/u_boot/spl/memory_map.yml -------------------------------------------------------------------------------- /fiddle/hw_info/bbxm/u_boot/spl/spl-events: -------------------------------------------------------------------------------- 1 | my_cpu_write 2 | 3 | -------------------------------------------------------------------------------- /fiddle/hw_info/bbxm/u_boot/spl/substages.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/hw_info/bbxm/u_boot/spl/substages.yml -------------------------------------------------------------------------------- /fiddle/ia.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/ia.py -------------------------------------------------------------------------------- /fiddle/instrumentation_results_manager.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/instrumentation_results_manager.py -------------------------------------------------------------------------------- /fiddle/labeltool.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/labeltool.py -------------------------------------------------------------------------------- /fiddle/main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/main.py -------------------------------------------------------------------------------- /fiddle/memory_tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/memory_tree.py -------------------------------------------------------------------------------- /fiddle/process_args.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/process_args.py -------------------------------------------------------------------------------- /fiddle/pure_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/pure_utils.py -------------------------------------------------------------------------------- /fiddle/pymacs_request/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/pymacs_request/__init__.py -------------------------------------------------------------------------------- /fiddle/pytable_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/pytable_utils.py -------------------------------------------------------------------------------- /fiddle/qemu_raw_trace.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/qemu_raw_trace.py -------------------------------------------------------------------------------- /fiddle/qemusimpleparse.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/qemusimpleparse.py -------------------------------------------------------------------------------- /fiddle/r2_keeper.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/r2_keeper.py -------------------------------------------------------------------------------- /fiddle/reporter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/reporter.py -------------------------------------------------------------------------------- /fiddle/run_cmd.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/run_cmd.py -------------------------------------------------------------------------------- /fiddle/run_cmds.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/run_cmds.py -------------------------------------------------------------------------------- /fiddle/staticanalysis.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/staticanalysis.py -------------------------------------------------------------------------------- /fiddle/substage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/substage.py -------------------------------------------------------------------------------- /fiddle/substages_parser.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/substages_parser.py -------------------------------------------------------------------------------- /fiddle/testsuite_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/testsuite_utils.py -------------------------------------------------------------------------------- /fiddle/unicorn_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle/unicorn_utils.py -------------------------------------------------------------------------------- /fiddle_extra/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /fiddle_extra/fiddle_plugin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_extra/fiddle_plugin.py -------------------------------------------------------------------------------- /fiddle_extra/find_write_loops.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_extra/find_write_loops.py -------------------------------------------------------------------------------- /fiddle_extra/frama_c/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_extra/frama_c/Makefile -------------------------------------------------------------------------------- /fiddle_extra/frama_c/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /fiddle_extra/frama_c/bx-framac-patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_extra/frama_c/bx-framac-patch -------------------------------------------------------------------------------- /fiddle_extra/frama_c/call.ml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_extra/frama_c/call.ml -------------------------------------------------------------------------------- /fiddle_extra/frama_c/call_analysis.ml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_extra/frama_c/call_analysis.ml -------------------------------------------------------------------------------- /fiddle_extra/frama_c/dest_analysis.ml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_extra/frama_c/dest_analysis.ml -------------------------------------------------------------------------------- /fiddle_extra/frama_c/frama_c.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_extra/frama_c/frama_c.py -------------------------------------------------------------------------------- /fiddle_extra/frama_c/machdep_arm.ml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_extra/frama_c/machdep_arm.ml -------------------------------------------------------------------------------- /fiddle_extra/parse_am37x_register_tables.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_extra/parse_am37x_register_tables.py -------------------------------------------------------------------------------- /fiddle_extra/pymacs_request.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_extra/pymacs_request.py -------------------------------------------------------------------------------- /fiddle_extra/scripts/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /fiddle_extra/scripts/emacs_modules/substage.el: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_extra/scripts/emacs_modules/substage.el -------------------------------------------------------------------------------- /fiddle_extra/scripts/sort_histogram.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_extra/scripts/sort_histogram.py -------------------------------------------------------------------------------- /fiddle_gdb/__init__.py: -------------------------------------------------------------------------------- 1 | name = 'fiddle_gdb' 2 | -------------------------------------------------------------------------------- /fiddle_gdb/calltrace.el: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_gdb/calltrace.el -------------------------------------------------------------------------------- /fiddle_gdb/calltrace.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_gdb/calltrace.py -------------------------------------------------------------------------------- /fiddle_gdb/enforce.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_gdb/enforce.py -------------------------------------------------------------------------------- /fiddle_gdb/gdb_tools.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_gdb/gdb_tools.py -------------------------------------------------------------------------------- /fiddle_gdb/hook_write.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_gdb/hook_write.py -------------------------------------------------------------------------------- /fiddle_gdb/unicorn_trace.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_gdb/unicorn_trace.py -------------------------------------------------------------------------------- /fiddle_gdb/watchpoints.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/fiddle_gdb/watchpoints.py -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bx/bootloader_instrumentation_suite/HEAD/setup.py --------------------------------------------------------------------------------