Commit graph

1919 commits

Author SHA1 Message Date
Hector Martin
44e70e2f3e m1n1.fw.dcp.ipc: Add {set,get}_tiling_state
Signed-off-by: Hector Martin <marcan@marcan.st>
2023-04-12 00:39:11 +09:00
Hector Martin
fe4037365b Merge remote-tracking branch 'jannau/m2_dptx' into m2-13_2 2023-04-11 21:29:01 +09:00
Hector Martin
2ff412930e dart: Detect locked t8110 DARTs
Signed-off-by: Hector Martin <marcan@marcan.st>
2023-04-11 20:08:11 +09:00
Janne Grunau
7715b04217 kboot: Add DCP reserved mem support for t602x
Signed-off-by: Janne Grunau <j@jannau.net>
2023-04-11 19:18:51 +09:00
Hector Martin
93a6daa337 m1n1.fw.asc.{crash, ioreporting}: Do not align prealloc buffer sizes
On SMC on t602x, this is a small SRAM and we can run off the edge.

Signed-off-by: Hector Martin <marcan@marcan.st>
2023-04-11 17:47:41 +09:00
Hector Martin
55ca08d482 m1n1.hv: t6020 support
Signed-off-by: Hector Martin <marcan@marcan.st>
2023-04-11 17:47:41 +09:00
Hector Martin
9a2e530fed nvme: Add nvme_ensure_shutdown()
We're not using it in the end because we fixed this in Linux, but I went
through the trouble of writing the function so we might as well leave it
lying around.

Signed-off-by: Hector Martin <marcan@marcan.st>
2023-04-11 17:47:41 +09:00
Hector Martin
7d37a61a06 pcie: Add initial t602x support
Signed-off-by: Hector Martin <marcan@marcan.st>
2023-04-11 17:47:41 +09:00
Hector Martin
046620d4d5 pmgr: Add pmgr_adt_power_{en,dis}able_index()
Signed-off-by: Hector Martin <marcan@marcan.st>
2023-04-10 01:06:05 +09:00
Hector Martin
3bc3b0131f tools/pmgr_adt2dt.py: Add multidie support
Signed-off-by: Hector Martin <marcan@marcan.st>
2023-04-09 23:50:42 +09:00
Hector Martin
41aac76fff Bring T6020 support up to parity with T6021
Missing smp/cpufreq/soc stuff.

Signed-off-by: Hector Martin <marcan@marcan.st>
2023-04-09 21:05:50 +09:00
Hector Martin
06884b5613 experiments/cpu_pstate_latencies.py: Fix SoC configs
Signed-off-by: Hector Martin <marcan@marcan.st>
2023-04-09 21:04:40 +09:00
Hector Martin
dabad98d6e smp: Bump MAX_CPUS to 24
Needed for (presumed) M2 Ultra.

Signed-off-by: Hector Martin <marcan@marcan.st>
2023-04-09 20:37:56 +09:00
Hector Martin
481f662271 hv_vm: Fix CTRR hugepage issue
This is the hypervisor counterpart to da9ceddeac.

Signed-off-by: Hector Martin <marcan@marcan.st>
2023-04-09 19:46:13 +09:00
Hector Martin
2389fa9d3d m1n1.adt: Fix parsing of template ADTs
Adding the speaker calibration stuff broke it because we try to parse
template values as real values. Don't do that.

Signed-off-by: Hector Martin <marcan@marcan.st>
2023-04-09 19:46:13 +09:00
Hector Martin
fe104d3848 m1n1.hv: Also hook ATC_AON device
It seems 13.2 is messing with this now.

Signed-off-by: Hector Martin <marcan@marcan.st>
2023-04-09 19:46:13 +09:00
Hector Martin
795211c534 m1n1.fw.dcp.ipc: More fields
Signed-off-by: Hector Martin <marcan@marcan.st>
2023-04-09 19:46:13 +09:00
Mario Hros
2f96635420 mcc: Reuse existing T6000 impl for T6020
Signed-off-by: Mario Hros <git@reversity.org>
2023-04-09 19:46:13 +09:00
Mario Hros
693ebbae2b m1n1.hv: Support T6021 cpustart offset
Signed-off-by: Mario Hros <git@reversity.org>
2023-04-09 19:46:13 +09:00
Mario Hros
049bc64e36 smp: Add T6021 CPU start offset
Signed-off-by: Mario Hros <git@reversity.org>
2023-04-09 19:46:13 +09:00
Mario Hros
da03138eec cpufreq: Add T6021 clusters
Signed-off-by: Mario Hros <git@reversity.org>
2023-04-09 19:46:13 +09:00
Mario Hros
69012c0702 experiments/cpu_pstate_latencies.py: Extend for T6021
Signed-off-by: Mario Hros <git@reversity.org>
2023-04-09 19:46:12 +09:00
Mario Hros
e71ad13474 chickens: Add preliminary T6020 support
Signed-off-by: Mario Hros <git@reversity.org>
2023-04-09 19:46:12 +09:00
Mario Hros
afb68db34c chickens: Force nonspec for rev 0x0 of Avalanche
Signed-off-by: Mario Hros <git@reversity.org>
2023-04-09 19:46:12 +09:00
Mario Hros
2e040a6729 chickens: Add T6021 chickens
Signed-off-by: Mario Hros <git@reversity.org>
2023-04-09 17:56:01 +09:00
Mario Hros
d033044a80 soc: Add T6021 defines
Signed-off-by: Mario Hros <git@reversity.org>
2023-04-09 17:56:01 +09:00
Mario Hros
34f49a56fc nvme: assume die 0 if clock-gates not set
Signed-off-by: Mario Hros <git@reversity.org>
2023-04-09 17:56:01 +09:00
Janne Grunau
e029c588c0 Merge branch 'pulls/286' into m2_dptx 2023-03-31 18:03:57 +02:00
Janne Grunau
638e4494d0 fixup! m1n1.fw.dcp.ipc: Add support for the macOS 13.2 firmware
Signed-off-by: Janne Grunau <j@jannau.net>
2023-03-31 17:47:18 +02:00
Janne Grunau
d6b6470bef m1n1.fw.dcp.ipc: Correct CompressionInfo.sizeof() assert
Fixes a copy-n-paste error adding a second assert for PlaneInfo.sizeof()
with CompressionInfo's size.

Fixes: 3e572aba4a ("m1n1.fw.dcp.ipc: Add compression info struct")
Signed-off-by: Janne Grunau <j@jannau.net>
2023-03-31 17:46:30 +02:00
Janne Grunau
cc6b58f13e m1n1.fw.dcp: Parse AVPropChunks in parse_log
Signed-off-by: Janne Grunau <j@jannau.net>
2023-03-31 17:46:30 +02:00
Janne Grunau
7498b785ae m1n1/fw/dcp/parse_log: Parse firmware version from log
Incomplete, needs to reload fw.dcp.ipc.

Signed-off-by: Janne Grunau <j@jannau.net>
2023-03-31 17:46:30 +02:00
Janne Grunau
40d1d302d0 m1n1.fw.dcp.ipc: Add support for the macOS 13.2 firmware
Signed-off-by: Janne Grunau <j@jannau.net>
2023-03-31 17:46:30 +02:00
Janne Grunau
13afd0c98e hv/trace_dcp.py: import firmware vesrions from the HV
Signed-off-by: Janne Grunau <j@jannau.net>
2023-03-31 17:46:30 +02:00
Janne Grunau
6f057d3395 proxy: hv: Add trace_dptx.py for tracing dptx-phy on j473/t8112
Signed-off-by: Janne Grunau <j@jannau.net>
2023-03-31 17:46:30 +02:00
Janne Grunau
d98b0a3aa9 proxy: experiments: Add dp2hdmi.py for manual display config
Mostly required due to unknown SMC gpio's reset state for
dp2hdmi-gpio.{function-dp2hdmi_pwr_en,function-hdmi_pwr_en}.

Signed-off-by: Janne Grunau <j@jannau.net>
2023-03-31 17:46:30 +02:00
Janne Grunau
f9af0a1606 HACK: display: disable non-working display config on j473
Signed-off-by: Janne Grunau <j@jannau.net>
2023-03-31 17:46:30 +02:00
Janne Grunau
b67063abba HACK: dcp/afk: fix inline size based on macos trace
not really looked into this discrepancy but my best guess is that the
retcode should not be counted towards the payload size.
2023-03-31 17:46:30 +02:00
Janne Grunau
d4b3e758da display: trigger dptx hpd before waiting for iboot hpd
This is not enough to make the display work but at least triggers
dptx-phy link config (lane count/link rate).
2023-03-31 17:46:30 +02:00
Janne Grunau
26ceac4a3a dcp/afk: Read mailbox in afk_epic_rx
This is primarily to aid the dcp tracer to report received messages in
the order m1n1's implementation actually reads them.
This unfortunately only works for the dptx-port endpoint and not for the
dcp/iboot endpoint.

Signed-off-by: Janne Grunau <j@jannau.net>
2023-03-31 17:46:30 +02:00
Janne Grunau
c1f14a4738 dcp: add dptx-phy support for j473/t8112
Phy "implementation" is just a replay of a macos trace with an 1920x1080
display.
2023-03-31 17:46:30 +02:00
Janne Grunau
43fa9185f6 WIP: AFK: Support multiple endpoints with IOP initiated communication
Endpoint 0x2a (dptx-port) sees DCP initiated notify messages. Those need
to be handled with the correct endpoint context and must not be rejected
when other endpoints are polling for new messages.
2023-03-31 17:46:30 +02:00
Janne Grunau
32431d8ba1 WIP: dcp/dptx: Add support for dcp endpoint dptx
Supposedly required for HDMI out initilization on M2 (Pro)? Mac minis.
2023-03-31 17:46:30 +02:00
Janne Grunau
cdb6d087b2 experiments/dcp: add system ep 2023-03-31 17:46:30 +02:00
Janne Grunau
d5be7edd97 proxy/experiments/dcp.py: Add overlay support
Signed-off-by: Janne Grunau <j@jannau.net>
2023-03-31 17:46:30 +02:00
Janne Grunau
0069ea213e 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-03-31 17:46:30 +02:00
Janne Grunau
a2b4a7479a payload: Add a custom header with a payload size field for initramfs'
This add supports for concatenated (compressed) cpio archives and relies
on the kernel to decompress the initramfs.

Signed-off-by: Janne Grunau <j@jannau.net>
2023-03-31 17:46:30 +02:00
Asahi Lina
8bf08b0ff1 linux.py: Implement TSO
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-03-28 19:06:20 +09:00
Asahi Lina
fa3dcd3e77 payload: Add tso=1 m1n1 option to enable TSO
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-03-28 19:06:20 +09:00
Asahi Lina
0a05a0171e proxy: Add smp_is_alive() thunk
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-03-28 19:06:20 +09:00