Commit graph

1312 commits

Author SHA1 Message Date
Asahi Lina
37ad9f7df6 m1n1.fw.dcp.ipc: Fix assert
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-08-17 19:46:07 +09:00
Asahi Lina
31da584be8 m1n1.fw.agx: Helpers everywhere!
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-08-17 19:46:07 +09:00
Asahi Lina
7f94c7f39a tools.chainload.py: Fixes for 13.5
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-08-17 19:46:07 +09:00
Alexis Deruelle
b2e5b3ef00 proxyclient:picocom-sec.sh:warn when overriding SECDEV
Add a warning message when overriding the target serial device with
SECDEV variable, just in case one is caught by surprise there.

Signed-off-by: Alexis Deruelle <alexis.deruelle@gmail.com>
2023-08-17 19:45:13 +09:00
Alexis Deruelle
21a403a163 proxyclient:tools:add default device name for macOS
Under macOS host, secondary UART device name is different from the linux
device name. Check OS name and chose default device name accordingly.

Signed-off-by: Alexis Deruelle <alexis.deruelle@gmail.com>
2023-08-17 19:45:13 +09:00
Alexis Deruelle
0673a226c9 proxyclient:m1n1:rely on UartInterface defaults when creating object
- in 'main' section, device name and baud values are redundant as the
  UartInterface constructor handles it already
- Add a comment on how to run proxy.py as script

Signed-off-by: Alexis Deruelle <alexis.deruelle@gmail.com>
2023-08-17 19:45:13 +09:00
Alexis Deruelle
bd82c5f47a proxyclient:m1n1:add macOS device name for m1n1 primary UART
m1n1 UART device names on macOS follow /dev/cu.usbmodemP_XX naming
convention. Check for platform name using platform.system() and use the
macOS device name instead of /dev/m1n1 if equals 'Darwin'

Signed-off-by: Alexis Deruelle <alexis.deruelle@gmail.com>
2023-08-17 19:45:13 +09:00
Davide Cavalca
6bca5f77e1 m1n1.asm: make it work again with gcc
Signed-off-by: Davide Cavalca <davide@cavalca.name>
2023-08-15 18:27:51 +09:00
Hector Martin
31930a25f7 m1n1.hv: Add t6022 cpustart
Signed-off-by: Hector Martin <marcan@marcan.st>
2023-08-07 19:27:47 +09:00
Hector Martin
33ef9cdaa8 m1n1.adt: Fix GPUPerfStates64 for T6022
Signed-off-by: Hector Martin <marcan@marcan.st>
2023-08-07 19:27:47 +09:00
Asahi Lina
538693a05a hv/trace_agx{_defer}.py: Enable command dumps
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-07-11 01:49:13 +09:00
Asahi Lina
d437d04dd4 m1n1.trace.agx: Fix broken TA parsing
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-07-11 01:49:13 +09:00
Asahi Lina
d2cb85d048 m1n1.trace.agx: Add a missing UAT inval
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-07-11 01:49:13 +09:00
Asahi Lina
6e40dd9aaa m1n1.trace.agx: Add AGXDECODE solib support & trace VDM
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-07-11 01:49:13 +09:00
Asahi Lina
825fbaf1ec m1n1.agx.initdata: Split buffer manager mappings between GPU/FW
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-07-11 01:49:13 +09:00
Asahi Lina
817b48dbc9 m1n1.fw.agx & co: Unbork a bunch of stuff on <G14X
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-07-11 01:49:13 +09:00
Asahi Lina
b270f2f86c m1n1.agx: Handle pending stamps properly for V13_5B4
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-07-11 01:49:13 +09:00
Asahi Lina
6761cd2d53 m1n1.fw.agx: Blit stuff for G14X
Just hacking on the structures to get it to dump, this probably broke
other firmware combinations...

Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-07-11 01:49:13 +09:00
Asahi Lina
788a5b9866 m1n1.trace.agx: Changes to unbreak G14X tracing
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-07-11 01:49:13 +09:00
Asahi Lina
40c9dfe128 m1n1.trace.agx: Skip tracing the stats queue
This is spammy and sometimes so slow it blocks forever. Let's explicitly
remove these ranges from the GPUVM tracer.

Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-07-11 01:49:13 +09:00
Asahi Lina
d743db30b6 m1n1.trace.agx: Add extra dumping around TVB control messages
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-07-11 01:49:13 +09:00
Asahi Lina
8ae5c219dc m1n1.trace.agx: Add support for dumping commands as json
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-07-11 01:49:13 +09:00
Asahi Lina
61678c4231 m1n1.fw.agx: Add compute changes for G14X
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-07-11 01:49:13 +09:00
Asahi Lina
34df83601c m1n1.fw.agx: Add TVB growth control messages
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-07-07 13:50:13 +09:00
Asahi Lina
9e63f885e9 m1n1.fw.agx.initdata: Add 13.5B4 G14X initdata changes
Simple for once!

Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-07-07 13:25:19 +09:00
Asahi Lina
6a149e5028 m1n1.constructutils: Improve json serialization of Value types
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-07-07 13:24:26 +09:00
Asahi Lina
311385e645 m1n1.trace.agx: Dump some buffers on G14X from register values
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-06-27 18:35:01 +09:00
Asahi Lina
6902cb6210 m1n1.trace.agx: Disable the ASC tracer after initdata is available
Since we directly trace the queue rptr/wptr memory locations, we don't
need the ASC tracing and this speeds things up quite a bit (without it,
Linux can get stuck in a pathological stats gathering loop without
making forward progress while traced).

Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-06-27 18:35:01 +09:00
Asahi Lina
b219bc318a m1n1.fw.agx: Fixes for V13_3
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-06-27 18:35:01 +09:00
Asahi Lina
b6dec2a644 m1n1.constructutils: Improve Rust export
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-06-27 18:35:01 +09:00
Asahi Lina
c2bbb41953 m1n1.fw.agx: More fixes for t602x stuff
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-06-27 18:35:01 +09:00
Asahi Lina
1c7131e26d m1n1.agx: T602x rendering changes
Too lazy to split this up...

Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-06-27 18:35:01 +09:00
Asahi Lina
af6b8c29a8 m1n1.constructutils: Fix array addressing bug
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-06-27 18:35:01 +09:00
Asahi Lina
b29c9734ad m1n1.adt: Add float parsing for *-kp-1 props.
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-06-27 18:35:01 +09:00
Asahi Lina
dabde44937 m1n1.fw.agx: Initdata setup & fixes for G14X/V13_3
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-06-27 18:35:01 +09:00
Asahi Lina
e4fa6048c2 m1n1.fw.agx: Add changes for G14X on 13.2 and 13.3
Still pending confirming 13.3 on other architectures...

Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-06-27 18:35:01 +09:00
Asahi Lina
d3e61153cc m1n1.trace.agx: Do not dump misc structs
These are no longer there with the register lists, and it's all
redundant anyway...

Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-06-27 18:35:00 +09:00
Asahi Lina
2dbbe6050d m1n1.fw.agx.initdata: T602x 13.3 initdata structure changes
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-06-27 18:35:00 +09:00
Asahi Lina
18005b0f73 m1n1.fw.agx.initdata: T602x 12.3 initdata structure changes
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-06-27 18:35:00 +09:00
Asahi Lina
83a2a6a9bc m1n1.adt: Add afr/cs perf state props
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-06-27 18:35:00 +09:00
Asahi Lina
0f1f3b23ee m1n1.trace.agx: Run the init_hook before the shell
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-06-27 18:35:00 +09:00
Asahi Lina
f7639885ce fw.agx.channels: Don't crash if meta_fn is None
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-06-27 18:35:00 +09:00
Hector Martin
a0d2ed20be payload: Do cpufreq init before smp_start_secondaries()
This also requires exporting this to the proxy so linux.py can use it.

Signed-off-by: Hector Martin <marcan@marcan.st>
2023-06-04 15:56:42 +09:00
Hector Martin
4124485265 hv: Make breadcrumbs per-CPU and introduce panic handler
Signed-off-by: Hector Martin <marcan@marcan.st>
2023-06-03 12:47:39 +09:00
Hector Martin
db598aa4cf m1n1.hv: Fix register names
Signed-off-by: Hector Martin <marcan@marcan.st>
2023-05-21 12:29:13 +09:00
Hector Martin
ae1bcd6fe2 m1n1.hv: Update IMPDEF reg names
Signed-off-by: Hector Martin <marcan@marcan.st>
2023-05-06 00:51:30 +09:00
Hector Martin
6c005ddd49 asm: Fix replacing reg names that are substrings (DAIF etc)
Signed-off-by: Hector Martin <marcan@marcan.st>
2023-05-06 00:51:05 +09:00
Hector Martin
234b7064ef experiments/aic2_vms.py: New experiment
Signed-off-by: Hector Martin <marcan@marcan.st>
2023-05-05 02:02:19 +09:00
Hector Martin
ebd4613f61 proxy: Add smp_call[_sync]_el1 variants
Signed-off-by: Hector Martin <marcan@marcan.st>
2023-05-05 00:31:05 +09:00
Janne Grunau
7a84b2bbf9 tools/run_guest_kernel.sh: Support concatenated initramfs images
This allows booting a kernel with the firmware cpio and a cpio
containing matching modules. The modules initramfs can be prepared from
the kernel source directory with:

`make dir-pkg && usr/gen_initramfs.sh -o initramfs_mod.cpio -u squash -g squash ./tar-install/lib/`

The modules are available in /modules/$(uname -r) and the initramfs can
handle modules in the same way as the vendor firmware to make them
available for itself and the main OS.

Signed-off-by: Janne Grunau <j@jannau.net>
2023-04-27 04:09:49 +09:00