Lines Matching +full:idle +full:- +full:halt

1 // SPDX-License-Identifier: GPL-2.0-only
3 * (C) 2001-2004 Dave Jones.
13 * Present in Samuel 2 (steppings 1-7 only) (C5B), and Ezra (C5C).
16 * It is present in Ezra-T (C5M), Nehemiah (C5X) and above.
146 /* Change frequency on next halt or sleep */
150 halt();
187 halt();
192 /* Dummy op - must do something useless after P_LVL3
200 /* Change frequency on next halt or sleep */
205 halt();
210 /* Dummy op - must do something useless after P_LVL3 read */
224 halt();
229 /* Dummy op - must do something useless after P_LVL3
261 if (mult == -1)
262 return -EINVAL;
266 return -EINVAL;
288 || ((pr != NULL) && pr->flags.bm_control))) {
293 bm_timeout--;
302 } else if ((pr != NULL) && pr->flags.bm_control) {
317 * Longhaul v2 appears in Samuel2 Steppings 1->7 [C5B] and Ezra [C5C]
319 * Longhaul v3 (aka Powersaver). (Ezra-T [C5M] & Nehemiah [C5N])
328 do_powersaver(cx->address, mults_index, dir);
338 } else if ((pr != NULL) && pr->flags.bm_control) {
389 pr_info("Warning: Timeout while waiting for idle PCI bus\n");
390 return -EBUSY;
417 f_min = f_max - ROUNDING;
433 if (mult == -1) {
435 return -EINVAL;
440 return -EINVAL;
442 /* Get max multiplier - as we always did.
470 return -EINVAL;
475 return -EINVAL;
481 return -ENOMEM;
485 if (ratio == -1)
495 return -ENODEV;
498 for (j = 0; j < k - 1; j++) {
559 pr_info("Bogus values Min:%d.%03d Max:%d.%03d - Voltage scaling disabled\n",
566 pr_info("Claims to support voltage scaling but min & max are both %d.%03d - Voltage scaling disabled\n",
572 numvscales = maxvid.pos - minvid.pos + 1;
583 if (min_vid_speed == -1)
601 kHz_step = (highest_speed - min_vid_speed) / numvscales;
604 speed = freq_pos->frequency;
606 pos = (speed - min_vid_speed) / kHz_step + minvid.pos;
609 freq_pos->driver_data |= mV_vrm_table[pos] << 8;
651 i--;
702 /* Find CN400 V-Link host bridge */
768 switch (c->x86_model) {
778 switch (c->x86_stepping) {
790 if (c->x86_stepping < 8) {
805 cpuname = "C3 'Ezra-T' [C5M]";
817 switch (c->x86_stepping) {
866 cx = &pr->power.states[ACPI_STATE_C3];
867 if (cx->address > 0 && cx->latency <= 1000)
880 && ((pr == NULL) || !(pr->flags.bm_control))) {
882 return -ENODEV;
897 policy->transition_delay_us = 200000; /* usec */
898 policy->freq_table = longhaul_table;
922 return -ENODEV;
925 pr_err("Option \"enable\" not set - Aborting\n");
926 return -ENODEV;
931 return -ENODEV;
937 return -ENODEV;
940 switch (c->x86_model) {
944 pr_err("Use acpi-cpufreq driver for VIA C7\n");
947 return -ENODEV;
960 freqs.old = policy->cur;
977 * with success when CPU is idle, this state doesn't