This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM385: Deep sleep mode support

Part Number: DM385

HI all,

We are using DM385 based IPNC 3.5 custom board.

We would like to implement the "deep sleep mode" function.

For enable follow the bellow steps

mount -t debugfs debugfs /sys/kernel/debug

echo 1 > /sys/kernel/debug/pm_debug/enable_deep_sleep

But its not going to deep sleep mode still it consumes 550mA.

For monitor : DEEPSLEEP_CTRL and DEEPSLEEP_STATUS.

devmem2 0x481C5324

Read at address  0x481C5324 (0x4031a324): 0x00016A75

devmem2 0x481C5328

Read at address  0x481C5328 (0x40221328): 0x00000000

deep sleep mode not set in registers.

How to implement deep sleep mode ??

Regards,

RAJ M

  • Refer to the below e2e thread:

    e2e.ti.com/.../521535

    Regards,
    Pavel
  • Hi Pavel,

    Thanks for your reply,

    I have gone through the link but still i suspect below file arch/arm/mach-omap2/sleep814x.S

    is it ok?

    Regards,

    RAJ M

    sleep814x.S

  • RAJ.M said:

    For enable follow the bellow steps

    mount -t debugfs debugfs /sys/kernel/debug

    echo 1 > /sys/kernel/debug/pm_debug/enable_deep_sleep

    But its not going to deep sleep mode still it consumes 550mA.




    The steps are:
    1.Mount debugfs
    2. set to 1 enable_deep_sleep flag
    3. pass "mem" to /sys/power/state

    More info you can find in the e2e thread already provided to you.

    Regards,

    Pavel

  • Hi Pavel,

    If i read back the DEEPSLEEP_CTRL and DEEPSLEEP_STATUS register deepsleep not set in the register?

    If i pass "mem" to /sys/power/state

    after that i have no control in minicom its hangs

    Regards,
    RAJ M
  • RAJ.M said:

    I have gone through the link but still i suspect below file arch/arm/mach-omap2/sleep814x.S

    is it ok?

    I checked your sleep814x.S file and I do not see any difference with the default one! Could you please specify what changes you have made so far in this file? If no changes are made why you send me this file for review? What should I review there?

    The polling (that should be fixed) is in the below file:

    linux-kernel/arch/arm/mach-omap2/sleep814x.S

    ds_completion_loop:
    ldr r8, [r3, #DEEPSLEEP_STATUS]
    and r8, r8, #0x1 @poll for DSCOMPLETE
    cmp r8, #0x1 @ == 1 if DSCOUNT equals timer
    bne ds_completion_loop

    For more info see:

    Regards,
    Pavel

  • RAJ.M said:
    We are using DM385 based IPNC 3.5 custom board.

    To be able to test DeepSleep support, OSC_WAKE pin should be attached to SW button

    See also DM385 TRM, sections 2.4 Oscillator and 3.2.13 AUXOSC Register

    Regards,
    Pavel

  • Hi,

    I hope the above inputs were helpful in solving your issue. If the issue is solved then please close it by verifying answer.

    Regards,
    Anuj
    Pathpartner Technology Pvt Ltd.