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.

Linux/AM5716: Clock configuration for 500MHz speed grade

Part Number: AM5716

Tool/software: Linux

Hello,

I would like to configure the clock frequencies for the 500MHz speed grade of the AM5716. We have designed our own board with a 27MHz oszillator an run uboot and linux based on the linux processor sdk 3.3 (ti-processor-sdk-linux-rt-am57xx-evm-03.03.00.04-Linux-x86-Install.bin).

I changed the configuratiion as described in http://processors.wiki.ti.com/index.php/Linux_Porting_Guide_for_AM571x/AM570x_Speed_Grades  .

Then I modiefied the Linux device tree by addition of the following lines at the end:

&cpu0 {
clock-frequency = <500000000>;
};

&cpu0_opp_table {
opp_nom@500000000 {
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <1060000 850000 1150000>;
opp-supported-hw = <0xFF 0x01>;
opp-suspend;
};

/delete-node/ opp_od@1176000000;
/delete-node/ opp_high@1500000000;
/delete-node/ opp_nom@1000000000;
};

&dpll_dsp_ck {
assigned-clock-rates = <500000000>;
};

&dpll_dsp_m2_ck {
assigned-clock-rates = <500000000>;
};

&dpll_dsp_m3x2_ck {
assigned-clock-rates = <333333332>;
};

After the system booted into Linux I checked the registers and the clock frequencies for the mpu and ddr were correct, but the dsp-core was still at 750MHz (value in register 0x4a005240 was 0x0000fa08). 

Could someone explain to me, how to set the clock frequency for the dsp core?

Thank you,

    Stephan

 

  • The software team have been notified. They will respond here.
  • Stephan Karger said:

    Then I modiefied the Linux device tree by addition of the following lines at the end:

    &cpu0 {
    clock-frequency = <500000000>;
    };

    &cpu0_opp_table {
    opp_nom@500000000 {
    opp-hz = /bits/ 64 <500000000>;
    opp-microvolt = <1060000 850000 1150000>;
    opp-supported-hw = <0xFF 0x01>;
    opp-suspend;
    };

    /delete-node/ opp_od@1176000000;
    /delete-node/ opp_high@1500000000;
    /delete-node/ opp_nom@1000000000;
    };

    These modifications seems to be related to MPU, not to DSP.

    Regarding DSP speed change, beside "assigned-clock-rates = <500000000>" change, make also modifications in u-boot code base:

    u-boot/arch/arm/mach-omap2/omap5/fdt.c

    The required u-boot modifications are described in the wiki, section "Set Speeds for Other Processing Cores".

    Regards,
    Pavel

  • Hello Pavel,

    I tried to overwrite all entries in the array dra7_opp_dsp_clk_rates in u-boot/arch/arm/mach-omap2/omap5/fdt.c and maybe had a bug in my code but after I set all values to 500000000 when the array in initialized it works.

    Regards,
    Stephan