Lines Matching +full:arm +full:- +full:linux +full:- +full:gnueabihf +full:-

2 # SPDX-License-Identifier: BSD-2-Clause
18 TEE_LOAD_ADDR_RE = re.compile(r'TEE load address @ (?P<load_addr>0x[0-9a-f]+)')
22 r'[UEIDFM]/(TC|LD):([0-9]+ )?(\?*|[0-9]*) [0-9]* +(?P<addr>0x[0-9a-f]+)')
23 ABORT_ADDR_RE = re.compile(r'-abort at address (?P<addr>0x[0-9a-f]+)')
24 TA_PANIC_RE = re.compile(r'TA panicked with code (?P<code>0x[0-9a-f]+)')
25 REGION_RE = re.compile(r'region +[0-9]+: va (?P<addr>0x[0-9a-f]+) '
26 r'pa 0x[0-9a-f]+ size (?P<size>0x[0-9a-f]+)'
27 r'( flags .{4} (\[(?P<elf_idx>[0-9]+)\])?)?')
28 ELF_LIST_RE = re.compile(r'\[(?P<idx>[0-9]+)\] (?P<uuid>[0-9a-f\-]+)'
29 r' @ (?P<load_addr>0x[0-9a-f\-]+)')
31 GRAPH_ADDR_RE = re.compile(r'(?P<addr>0x[0-9a-f]+)')
35 This scripts reads an OP-TEE abort or panic message from stdin and adds debug
37 address in the call stack. Any message generated by OP-TEE and containing a
49 OP-TEE abort and panic messages are sent to the secure console. They look like
52 E/TC:0 User TA data-abort at address 0xffffdecd (alignment fault)
64 $ scripts/symbolize.py -d out/arm-plat-hikey/core -d ../optee_test/out/ta/*
68 Also, this script reads function graph generated for OP-TEE user TA from
69 /tmp/ftrace-<ta_uuid>.out file and resolves function addresses to corresponding
74 $ cat /tmp/ftrace-<ta_uuid>.out | scripts/symbolize.py -d <ta_uuid>.elf
116 description='Symbolizes OP-TEE abort dumps or function graphs',
118 parser.add_argument('-d', '--dir', action='append', nargs='+',
120 'to decode a TEE Core or pseudo-TA abort, while '
121 '<TA_uuid>.elf is required if a user-mode TA has '
124 parser.add_argument('-s', '--strip_path', nargs='?',
126 'current directory, use -s with no argument to show '
166 p = subprocess.Popen(['file', '-L', elf], stdout=subprocess.PIPE)
169 if b'ARM aarch64,' in output[0]:
170 self._arch = 'aarch64-linux-gnu-'
171 elif b'ARM,' in output[0]:
172 self._arch = 'arm-linux-gnueabihf-'
173 elif b'RISC-V,' in output[0]:
174 if b'32-bit' in output[0]:
175 self._arch = 'riscv32-unknown-linux-gnu-'
176 elif b'64-bit' in output[0]:
177 self._arch = 'riscv64-unknown-linux-gnu-'
199 self._addr2line = self.my_Popen([cmd, '-f', '-p', '-e', elf])
216 # especially to symbolize mixed (user-space and kernel) addresses
240 return '0x{:x}'.format(int(addr, 16) - int(l_addr, 16))
271 nm = self.my_Popen([cmd, '--numeric-sort', '--print-size', elf])
289 offs = ireladdr - iaddr
314 objdump = self.my_Popen([cmd, '--section-headers', elf])
326 offs = iaddr - ivma
363 objdump = self.my_Popen([cmd, '--section-headers', elf])
381 return ((addr <= (sec_addr + sec_size - 1)) and
382 ((addr + size - 1) >= sec_addr))
438 pc = lr - 2
545 # Flatten list in case -d is used several times *and* with multiple