IMX8mm cpu-freq scaling issue

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

IMX8mm cpu-freq scaling issue

1,681 次查看
saurav-pandya
Contributor III

Hi NXP Team,

I am working on imx8mm and try to change CPU frequency but I did't get any sysfs entry to get information of CPU frequency and set CPU frequency.

$ ls /sys/devices/system/cpu/cpu0/
cache cpuidle crash_notes_size node0 online regs topology
cpu_capacity crash_notes hotplug of_node power subsystem uevent

missing cpufreq folder to set or get frequency for CPU.

$ cpufreq-info
cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to cpufreq@vger.kernel.org, please.
analyzing CPU 0:
no or unknown cpufreq driver is active on this CPU
analyzing CPU 1:
no or unknown cpufreq driver is active on this CPU
analyzing CPU 2:
no or unknown cpufreq driver is active on this CPU
analyzing CPU 3:
no or unknown cpufreq driver is active on this CPU

Also apply above command but still error.

 

Please help me.

 

Thanks,

Saurav

标记 (1)
0 项奖励
回复
12 回复数

1,662 次查看
joanxie
NXP TechSupport
NXP TechSupport

what pmic and bsp version do you use?

0 项奖励
回复

1,657 次查看
saurav-pandya
Contributor III

Hi joanxie,

I used ROHM BD71847MWV and BSP version 5.15-kirkstone.

 

Thanks,

Saurav

0 项奖励
回复

1,648 次查看
joanxie
NXP TechSupport
NXP TechSupport

The response from the R&D was that the ROHM PMIC board has been dropped in recent linux release, we only support NXP PMIC board by default for LPDDR4 EVK board. Customer may need to cherry pick the ROHM PMIC patch from older release by themselves.

0 项奖励
回复

1,606 次查看
saurav-pandya
Contributor III

Hi ,

I have changes as per .dtb of imx8mm-evk-qca-wifi.dts.

pmic_rohm: pmic@4b {
compatible = "rohm,bd71837";
reg = <0x4b>;
pinctrl-0 = <&pinctrl_pmic>;
interrupt-parent = <&gpio1>;
interrupts = IRQ_TYPE_LEVEL_LOW>;
rohm,reset-snvs-powered;

regulators {
buck1_reg: BUCK1 {
regulator-name = "BUCK1";
regulator-min-microvolt = <700000>;
regulator-max-microvolt = <1300000>;
regulator-boot-on;
regulator-always-on;
regulator-ramp-delay = <1250>;
//rohm,dvs-run-voltage = <850000>;
//rohm,dvs-standby-voltage = <800000>;
};

buck2_reg: BUCK2 {
regulator-name = "BUCK2";
regulator-min-microvolt = <700000>;
regulator-max-microvolt = <1300000>;
regulator-boot-on;
regulator-always-on;
regulator-ramp-delay = <1250>;
rohm,dvs-run-voltage = <1000000>;

rohm,dvs-idle-voltage = <900000>;
};

buck3_reg: BUCK3 {
// BUCK5 in datasheet
regulator-name = "BUCK3";
regulator-min-microvolt = <700000>;
regulator-max-microvolt = <1350000>;
regulator-boot-on;
regulator-always-on;
};

buck4_reg: BUCK4 {
// BUCK6 in datasheet
regulator-name = "BUCK4";
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3300000>;
regulator-boot-on;
regulator-always-on;
};

buck5_reg: BUCK5 {
// BUCK7 in datasheet
regulator-name = "BUCK5";
regulator-min-microvolt = <1605000>;
regulator-max-microvolt = <1995000>;
regulator-boot-on;
regulator-always-on;
};

buck6_reg: BUCK6 {
// BUCK8 in datasheet
regulator-name = "BUCK6";
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <1400000>;
regulator-boot-on;
regulator-always-on;
};

ldo1_reg: LDO1 {
regulator-name = "LDO1";
regulator-min-microvolt = <1600000>;
regulator-max-microvolt = <1900000>;
regulator-boot-on;
regulator-always-on;
};

ldo2_reg: LDO2 {
regulator-name = "LDO2";
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <900000>;
regulator-boot-on;
regulator-always-on;
};

ldo3_reg: LDO3 {
regulator-name = "LDO3";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
regulator-boot-on;
regulator-always-on;
};

ldo4_reg: LDO4 {
regulator-name = "LDO4";
regulator-min-microvolt = <900000>;
regulator-max-microvolt = <1800000>;
regulator-boot-on;
regulator-always-on;
};

ldo6_reg: LDO6 {
regulator-name = "LDO6";
regulator-min-microvolt = <900000>;
regulator-max-microvolt = <1800000>;
regulator-boot-on;
regulator-always-on;
};
};
};

 

still i got error. 

root@imx8mm-loop:~# dmesg | grep -i bd
[ 0.000000] NUMA: Faking a node at [mem 0x0000000040000000-0x00000000bdffffff]
[ 0.000000] NUMA: NODE_DATA [mem 0x95bd1800-0x95bd3fff]
[ 0.000000] DMA [mem 0x0000000040000000-0x00000000bdffffff]
[ 0.000000] node 0: [mem 0x0000000040000000-0x00000000bdffffff]
[ 0.000000] Initmem setup node 0 [mem 0x0000000040000000-0x00000000bdffffff]
[ 2.053437] bd718xx-pmic bd71837-pmic.3.auto: failed to register buck4 regulator
[ 2.060849] bd718xx-pmic: probe of bd71837-pmic.3.auto failed with error -22
[ 2.181657] CSI: Registered sensor subdevice: mxc_mipi-csi.0
[ 2.281357] input: bd718xx-pwrkey as /devices/platform/soc@0/30800000.bus/30a20000.i2c/i2c-0/0-004b/gpio-keys.1.auto/input/input1
[ 7.777168] imx-sdma 30bd0000.dma-controller: firmware found.
[ 36.800991] rohm-bd718x7 0-004b: Failed to read IRQ status: -110

Please help me.

 

Thanks,

Saurav

 

 

0 项奖励
回复

1,588 次查看
joanxie
NXP TechSupport
NXP TechSupport

what do you get when you use command

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies

0 项奖励
回复

1,489 次查看
joanxie
NXP TechSupport
NXP TechSupport

what parameters under /sys/devices/system/cpu/cpu0/cpufreq/?

0 项奖励
回复

1,475 次查看
saurav-pandya
Contributor III

that's folder isn't available in that directory

0 项奖励
回复

1,578 次查看
saurav-pandya
Contributor III

No such file or directory

0 项奖励
回复

1,437 次查看
joanxie
NXP TechSupport
NXP TechSupport

couldn't reproduce this on imx8mm ROMH board, if you add this in the dts file, should be get the device node

0 项奖励
回复

1,589 次查看
joanxie
NXP TechSupport
NXP TechSupport

what board do you use? is you PMIC design the same as nxp imx8mm lpddr4 with Rohm board?

0 项奖励
回复

1,576 次查看
saurav-pandya
Contributor III

used imx8mm board with rohm PMIC

标记 (1)
0 项奖励
回复

1,636 次查看
saurav-pandya
Contributor III

Ohk.

I will check and update

 

0 项奖励
回复