IMX8mm cpu-freq scaling issue

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

IMX8mm cpu-freq scaling issue

1,409 次查看
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,390 次查看
joanxie
NXP TechSupport
NXP TechSupport

what pmic and bsp version do you use?

0 项奖励
回复

1,385 次查看
saurav-pandya
Contributor III

Hi joanxie,

I used ROHM BD71847MWV and BSP version 5.15-kirkstone.

 

Thanks,

Saurav

0 项奖励
回复

1,376 次查看
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,334 次查看
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,316 次查看
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,217 次查看
joanxie
NXP TechSupport
NXP TechSupport

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

0 项奖励
回复

1,203 次查看
saurav-pandya
Contributor III

that's folder isn't available in that directory

0 项奖励
回复

1,306 次查看
saurav-pandya
Contributor III

No such file or directory

0 项奖励
回复

1,165 次查看
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,317 次查看
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,304 次查看
saurav-pandya
Contributor III

used imx8mm board with rohm PMIC

标记 (1)
0 项奖励
回复

1,364 次查看
saurav-pandya
Contributor III

Ohk.

I will check and update

 

0 项奖励
回复