Hello,
I'm working on a port for a new board; the ASRock B75M-ITX.
A friend of mine did the initial porting [1] based on the existing B75 Pro3-M and autoport. I then took over the board as I intend to build an HTPC around it.
Everything works fine, with the exception of resuming from S3. The board goes to sleep fine, but when I resume it, I'm greeted with the payload. (As this board does not have a serial port, I don't have an easy way to get logs, but everything looks like it just does a cold boot because DRAM is reset.)
Then I found out that on the ASRock B75 Pro3-M port, which has been in coreboot since 2017, S3 resume also does not work [2]. It is suggested there to find the proper DRAM_RESET_GATE_GPIO, so I tried that.
I've compiled and flashed roms with DRAM_RESET_GATE_GPIO set in Kconfig from 0 to 75, but in all cases the board just reboots instead of resumes.
So I'm not too sure what to try next. Does anyone have any suggestions?
[1] https://review.coreboot.org/c/coreboot/+/73097 [2] https://review.coreboot.org/c/coreboot/+/20227
Ok, so I just found out that for the H77 Pro4-M port [1], S3 resume is listed as working.
I built a ROM for that target and flashed it to my B75M-ITX, and now resume from S3 just works. (Other things are broken though, like ethernet.)
So I guess I have to compare these two targets now and find out what would be the fix?
[1] https://review.coreboot.org/c/coreboot/+/45317
I found the issue. 3VSBSW# had to be enabled for S3 resume to work.
It ended up being a oneliner fix in devicetree.cb:
device pnp 2e.a on + irq 0xe4 = 0x10 # + enable 3VSBSW#
Kevin Keijzer via coreboot wrote:
I found the issue. 3VSBSW# had to be enabled for S3 resume to work.
It ended up being a oneliner fix in devicetree.cb:
device pnp 2e.a on
- irq 0xe4 = 0x10 # + enable 3VSBSW#
Good find!
Can you please push a commit with the fix to gerrit?
Thanks
//Peter