Suspend / resume support?

Hi,
has anyone tested if sleep/suspend & resume works ? Could not find /sys/power ( I am using default buildroot). Only info that exists is that 8051 is able to resume the main C906 core but again no any examples … And if I remember right I had read a comment that suspend/resume functionality would be available by the end of April; are there any news regarding that?

The board has low power consumption (~ 500mW idle) but without suspend support it’s use in mobile applications (eg wearables) would be very limited …

1 Like

Found out that suspend/resume may be enabled in kernel (buildroot)
*> cat /proc/cvitek/power *
suspend resume
but not sure how to enable it. There is no /sys/power/state or any similar file.
Have not checked if default buildroot has PM enabled & have not checked if distros for duo256 have PM enabled. If anyone knows please share !

1 Like

Yeah I was curious about this too, but have no tried it yet!

1 Like

I went through the datasheet for SG2000/SG2002, and looking at the RTC channel I tried directly setting register values, to check if suspend works, like :
devmem 0x050260F0 32 0x0 # set RTC_PG_REG to 0 (from 0xF)
devmem 0x050260E4 32 0x1 # set RTC_EN_SUSPEND_REQ to 1
devmem 0x05025004 32 0xAB18 # UNLOCK WRITING TO RTC_CTRL0
devmem 0x05025008 32 0x8C0 # set RTC_CTRL0, so that req_suspend = 1
Problem is in the 1st statement seems to FAIL (vs 3 others). Maybe a HW bug or bad documentation or I should do that from RTC domain (8051). Will try again …

3 Likes

I am very interested in this as well. Suspend/resume looks to be supported according to the datasheet:

I suspect you’d need to send the signal from the 8051 core and maybe a heads up to linux kernel that system is about to go down?

I’ve never worked with the 8051 or any embedded stuff really but I have devmem and sdcc set up. I’ll try writing a program to load into 8051 sram that sleeps the main core for a few seconds and then wakes it.

I’d be happy to work with someone over IRC/Matrix figuring out how to implement this.

1 Like

Any progress?

I’ve been playing around with some of the registers for shutdown/reboot/suspend. RTC_CTRL0 is set to 0xAB18, can’t seem to trigger any of the desired outcomes.

devmem 0x05025008 32 0x8C0

How did you arrive at the value 0x8C0?

1 Like