Hi,
Am 01.09.2014 15:33, schrieb Fabio Estevam:
Hi Stefan,
On Mon, Sep 1, 2014 at 3:31 AM, Stefan Wahren <info@xxxxxxxxxxxxxx> wrote:
thanks. Okay, that leads to more questions:
How can i test a ported mxs-regulator driver, that it's really working? Is
there any userspace interface?
After you ported the mxs regulator you can check whether it probed
correctly and if the reported voltages in the kernel log match the
register settings. You can also check if the voltages are really in
the correct reported value with a scope.
On mx6q we have the following:
[ 0.070554] vdd1p1: 800 <--> 1375 mV at 1100 mV
[ 0.071521] vdd3p0: 2800 <--> 3150 mV at 3000 mV
[ 0.072397] vdd2p5: 2000 <--> 2750 mV at 2400 mV
[ 0.073369] vddarm: 725 <--> 1450 mV at 1150 mV
[ 0.074282] vddpu: 725 <--> 1450 mV at 1150 mV
[ 0.075247] vddsoc: 725 <--> 1450 mV at 1200 mV
and you should get something like that in your kernel log after you
ported the mxs regulator driver.
i've ported the mxs-regulator driver and now i'm getting an probing
output like above with Linux 3.17-rc4.
Now i want to test the mxs-regulator driver with the cpufreq-cpu0 as
consumer. So i defined cpu@0 according to cpufreq-cpu0 binding in
imx28.dtsi and enabled cpufreq-cpu0 driver and userspace gov in Kernel
config.
But if i modprobe cpufreq-cpu0 i don't get any output and the entry
/sys/devices/system/cpu/cpu0/cpufreq is also missing.
Any ideas, what's wrong or missing?
Best regards
Stefan
PS: Here the relevant config:
# .config
#
# CPU Frequency scaling
#
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_STAT=y
# CONFIG_CPU_FREQ_STAT_DETAILS is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
# CONFIG_CPU_FREQ_GOV_PERFORMANCE is not set
# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set
CONFIG_CPU_FREQ_GOV_USERSPACE=y
# CONFIG_CPU_FREQ_GOV_ONDEMAND is not set
# CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set
CONFIG_GENERIC_CPUFREQ_CPU0=m
# imx28.dtsi
[...]
cpus {
#address-cells = <1>;
#size-cells = <0>;
cpu: cpu@0 {
compatible = "arm,arm926ej-s";
device_type = "cpu";
operating-points = <
/* kHz uV */
454736 1550000
392727 1475000
360000 1375000
261818 1275000
64000 1050000
>;
clock-latency = <61036>; /* two CLK32 periods */
cpu0-supply = <®_vddd>;
};
};
[...]
power: power@80044000 {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <1>;
reg = <0x80044000 0x2000>;
ranges;
reg_vddd: regulator@80044040 {
reg = <0x80044040 0x10>;
compatible = "fsl,mxs-regulator";
regulator-name = "vddd";
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <1575000>;
regulator-boot-on;
vddd-supply = <®_vdda>;
};
reg_vdda: regulator@80044050 {
reg = <0x80044050 0x10>;
compatible = "fsl,mxs-regulator";
regulator-name = "vdda";
regulator-min-microvolt = <1500000>;
regulator-max-microvolt = <2275000>;
regulator-boot-on;
vdda-supply = <®_vddio>;
};
reg_vddio: regulator@80044060 {
reg = <0x80044060 0x10>;
compatible = "fsl,mxs-regulator";
regulator-name = "vddio";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <3600000>;
regulator-microvolt-offset = <80000>;
regulator-boot-on;
};
power_sts: power_sts@800440c0 {
reg = <0x800440c0 0x10>;
status = "disabled";
};
};
--
To unsubscribe from this list: send the line "unsubscribe cpufreq" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html