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.

Powersave mode for DM6467

 

Linux version : GIT 2.6.32

Hi,

We want to implement power management feature in to our system based on DM6467 EVM

We have added the support for power management by adding the suspend and resume routines in the kernel as well as individual drivers.

When we spawn our application which is spupposed to demultiplex and decode streams from TSIF port we see that it spawns the following processes

1)  kdvb-ad-0-fe-0
2)  DSPLINK_DPC_0
3)  DSPLINK_DPC_1

We understand that the DSPLINK_DPC_x processes are used for communication between ARM and DSP but we are not sure what the "kdvb-ad-0-fe-0" process is.

Also when we try to enter suspend/standby mode from our application using the shell command "echo standby > /sys/power/state", the system does not enter the mode since the above three tasks do not freeze.

Please see the attachment which describes the error seen when the system enters suspend.

So our query is

1) What is the kdvb-ad-0-fe-0 process

2) How do we communicate to the above three process to enter some kind of wait state so that the system can enter suspend mode

3) Also how do we communicate to these processes when we want to resume.

4) Do you have any examples/ patch for these process/application where the suspend mode is supported.

 

 

 

 

 


"

 

  • Sushant

    DSPLink has never been tried in the scenario that you are using it. I have never tried putting it in suspend state and then resuming it.

    I do not know kdvb-ad-0-fe-0 process. While running standalone DSPLink sample applications, I have not seen this process.

    The other two processes are DSPLink threads which schedule DSPLink processing for various IPC. These are created using kthread_create.After looking at the kthread documentation, it looks like a specific API called kthread_suspend may be needed to be called to put it in suspend state. It looks like some power management hook may need to be added when you call  "echo standby > /sys/power/state" that puts the threads in suspended state. Also another hook may need to be added to resume the thread when the power is re-enabled.

    I need to understand the way the suspend mode works more to give details on what hooks may need to be added.

    Deepali

     


  • Hi,

    We are trying to enter supend state by calling "echo standby > /sys/power/state".

    While entering the suspend state the user level proceses are put into freeze state
    After that the suspend routines are called for individual drivers. During this time we would like to turn off the
    peripheral clocks.
    You said we need to make a hook to call into kthread_suspend when we initiate standby state. Are there any pointers how should we be doing it? What components are required to implement it in the present framework? Is there any sample application or implementation done on dm6467T?
    Thanks