AMD won't sleep properly

I’m using an up to date Arch install with BIOS 3.03 and get high battery drain when putting it to sleep. Turns out it’s not actually sleeping and waking itself up, from what I can see in the log.
I’ve read various stuff around and tried setting rtc_cmos.use_acpi_alarm=1 in the kernel which doesn’t seem to make any difference.
I’ve installed power-profiles-daemon and set it to power saver.
One concrete thing I’ve noticed is if I remove the WiFi card and put it to sleep then it results in normal sleep and a battery drain of around 3% in 3.5 hours which is acceptable.
At the moment I get about 4% loss in an hour.
Seems someting related to the wifi card is stopping it sleeping properly / waking it up.
I’ve run the amd_s2idle.py script and set it to sleep for 1 hour, I’d appreciate it if someone could take a look?
https://pastebin.com/J3VNWYND

I notice you’re using a 6.1 kernel. Are you able to run a 6.5+ kernel on this system and run the test again?

Sure, although the issue occurs regardless of the kernel used whether it’s the latest linux, linux-lts or linux-hardened kernel. I believe this was linux-lts kernel.

Here’s a later 6.6 kernel (linux) https://pastebin.com/bMWMVdrX

Any advice? @Mario_Limonciello ?

I think you’re seeing [TRACKING] Framework AMD Ryzen 7040 Series lid wakeup behavior feedback - #54 by Gawdl3y

Look at that thread and try the udev rule or don’t suspend before closing lid.