# Atom: no or unknown cpufreq driver is active on this CPU

## grant123

I'm using a Gigabyte Brix 2807, Intel SpeedStep is enabled in the BIOS, and I have CONFIG_X86_ACPI_CPUFREQ=y but I'm missing the /sys/devices/system/cpu/cpu0/cpufreq/ directory:

```
# 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

  maximum transition latency: 4294.55 ms.
```

Can I fix this or is there another way to control the CPU frequency?  My goal is to choose the lowest possible setting to save power.

----------

## SDNick484

Newer Intel CPUs should use intel_pstate driver instead of acpi-cpufreq (make sure it's compiled in your kernel); more info on intel_pstate is here: https://www.kernel.org/doc/Documentation/cpu-freq/intel-pstate.txt

The CPU should still be able to be throttled down, but the syntax may be a bit different (some info here & here).

----------

## grant123

I enabled it but I still don't have frequency control:

```
# cpupower frequency-info

analyzing CPU 0:

  no or unknown cpufreq driver is active on this CPU

  boost state support:

    Supported: yes

    Active: yes

# ls /sys/devices/system/cpu/intel_pstate

ls: cannot access /sys/devices/system/cpu/intel_pstate: No such file or directory

# zgrep PSTATE /proc/config.gz

CONFIG_X86_INTEL_PSTATE=y

#
```

----------

## SDNick484

What kernel version are you using?  I think Bay Trail CPUs are 3.14+.

----------

## grant123

```
# uname -r

3.15.10-hardened-r1

# lspci

00:00.0 Host bridge: Intel Corporation Atom Processor Z36xxx/Z37xxx Series SoC Transaction Register (rev 0e)

00:02.0 VGA compatible controller: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Graphics & Display (rev 0e)

00:13.0 SATA controller: Intel Corporation Device 0f23 (rev 0e)

00:14.0 USB controller: Intel Corporation Atom Processor Z36xxx/Z37xxx Series USB xHCI (rev 0e)

00:1a.0 Encryption controller: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Trusted Execution Engine (rev 0e)

00:1c.0 PCI bridge: Intel Corporation Device 0f48 (rev 0e)

00:1c.1 PCI bridge: Intel Corporation Device 0f4a (rev 0e)

00:1c.2 PCI bridge: Intel Corporation Device 0f4c (rev 0e)

00:1c.3 PCI bridge: Intel Corporation Device 0f4e (rev 0e)

00:1f.0 ISA bridge: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Power Control Unit (rev 0e)

00:1f.3 SMBus: Intel Corporation Device 0f12 (rev 0e)

03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 0c)
```

----------

## grant123

Working now.  I needed to do a 'make mrproper'.  Sorry about that and thank you!

----------

## grant123

How can I minimize the frequency?

```
# cpupower frequency-info

analyzing CPU 0:

  driver: intel_pstate

  CPUs which run at the same hardware frequency: 0

  CPUs which need to have their frequency coordinated by software: 0

  maximum transition latency: 0.97 ms.

  hardware limits: 600 MHz - 2.60 GHz

  available cpufreq governors: performance, powersave

  current policy: frequency should be within 600 MHz and 2.60 GHz.

                  The governor "powersave" may decide which speed to use

                  within this range.

  current CPU frequency is 2.60 GHz (asserted by call to hardware).

  boost state support:

    Supported: yes

    Active: yes
```

I did 'echo 1 > /sys/devices/system/cpu/intel_pstate/no_turbo' and the reported frequency dropped to 1.90 GHz.  But playing with the values for max_perf_pct and min_perf_pct doesn't seem to have any effect.

----------

## khayyam

 *grant123 wrote:*   

> How can I minimize the frequency?

 

grant ... with the ondemand govenor you would do the following:

/etc/conf.d/cpupower

```
START_OPTS="--governor ondemand -d 600MHz -u 2.60GHz"
```

I'm not sure if the powesave govenor offers the same capacity to step ... but you should be able to set the '--min, -d' parameter.

The userspace governor accepts '--freq, -f <FREQ>' so perhaps powersave is same (though I'm a little confused about the above output as powesave doesn't seem to list "available frequency steps" yet I assume that like 'ondemand' it adjusts the freq dependent on load).

Anyhow, you can add other govenors and set the --governer to whatever you so wish, with the required frequency ... or --min, --max.

HTH & best ... khay

----------

## grant123

I didn't seem to have enough control with the Intel P State driver so I switched to the ACPI driver and now everything is working great.  I like the ondemand governor best.  cpupower doesn't seem to be necessary for a basic setup since you can set the default governor in the kernel.  Thanks to everyone for your help.

----------

