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.

DM8148 - How To Set OPP 166?

Hi,

I'm working with DM8148, I would like to configure it to work in OPP 166.

What are the required steps (hardware & software) that needs to be done to activate OPP 166 (for arm, dsp and ddr)?

Thank you,

Gilad

  • Gilad,

    OPP166 correspond to higher core voltage:

    OPP166 is 1.35V
    OPP100 is (0.95V - 1.2V)

    For switching to OPP166 (higher core voltage), one possible approach is through the u-boot command prompt:

    TI8148_EVM#i2c mw 0x2D 0x22 0x3C

    This method works with Power Management chip TPS659113, attached to I2C0 at address 0x2D.

    Other approach can be through the DVFS:

    http://processors.wiki.ti.com/index.php/TI81XX_PSP_PM_DVFS_User_Guide#Transitioning_to_a_different_Power_state.28OPPs.29

    Refer to the below thread for how to run the Cortex-A8 ARM at 1GHz at OPP166/1.35V:

    http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/716/p/204555/725680.aspx#725680

    Best regards,
    Pavel

  • Hi Pavel,

    Thank you for your answer.

    My questions:

    1. I typed "i2c mw 0x2D 0x22 0x3C" in the u-boot command prompt, but I didn't see a change in DSPPLL registers. How can I know that OPP 166 was activated and increased DSP frequency to 750 MHz?

    2. The "http://processors.wiki.ti.com/index.php/TI81XX_PSP_PM_DVFS_User_Guide#Transitioning_to_a_different_Power_state.28OPPs.29" link refers to the files:

    /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
    /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
    /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
    These files don't exist in the arm's files system, should I create them?
    3. In the "http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/716/p/204555/725680.aspx#725680" thread, it writes to change "clocks_ti814x.h". Should I change this file and recompile the kernel? 
    4. Are the ways mentioned are the only ways to set opp 166? Can't I directly set the plls registers (such as DSPPLL) instead?
    
    
    Thanks,
    Gilad
  • Gilad,

    Gilad Z said:
    1. I typed "i2c mw 0x2D 0x22 0x3C" in the u-boot command prompt, but I didn't see a change in DSPPLL registers. How can I know that OPP 166 was activated and increased DSP frequency to 750 MHz?

    To increase the DSP frequency from 500MHz (OPP100/1.2V) to 750MHz (OPP166/1.35V), you need to perform two steps:

    1. Modify the DSP PLL parameters (DSPPLL registers)

    2. Change the core voltage from 1.2V to 1.35V

    See the similar modification (ARM from 600MHz to 1GHz and core voltage to 1.35V) at the link below:

    http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/716/p/204555/725680.aspx#725680

    Note also that only PG3.x device support DSP 750MHz (other PG support 700MHz), see DM814x datasheet, Table 7-4. Device Operating Points (OPPs), note 3.

    Gilad Z said:

    2. The "http://processors.wiki.ti.com/index.php/TI81XX_PSP_PM_DVFS_User_Guide#Transitioning_to_a_different_Power_state.28OPPs.29" link, refer to the files:

    /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
    /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
    /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
    These files don't exist in the arm's files system, should I create them?

    I would recommend you to read the whole DVFS User Guide. Then you should concentrate at this section:

    http://processors.wiki.ti.com/index.php/TI81XX_PSP_PM_DVFS_User_Guide#Enabling_DVFS.2FCPUFreq_in_Linux_PSP

    Gilad Z said:
    3. In the "http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/716/p/204555/725680.aspx#725680" thread, it writes to change "clocks_ti814x.h". Should I change this file and recompile the kernel?

    Yes you should change this file, for DSP frequency increasing keep your attention at these parameters:

    #define DSP_N        19
    #define DSP_M        500
    #define DSP_M2        1
    #define DSP_CLKCTRL    0x801

    The you should recompile the u-boot, not kernel (uImage).

    Gilad Z said:
    4. Are the ways mentioned are the only ways to set opp 166? Can't I directly set the plls registers (such as
    DSPPLL) instead?

    When you set the DSPPLL registers with values which correspond to 750MHz, you should also increase the OPP to OPP166/1.35V with the methods discussed above. It is not enough just to modify the DSPPLL parameters.

    Regards,
    Pavel