Commit a8269d36 authored by Rafael J. Wysocki's avatar Rafael J. Wysocki

Merge branches 'pnp' and 'pm-tools'

* pnp:
  PNP / ACPI: use unsigned int in pnpacpi_encode_resources()
  PNP / ACPI: use u8 instead of int in acpi_resource_extended_irq context

* pm-tools:
  cpupower: mperf monitor: fix output in MAX_FREQ_SYSFS mode
...@@ -28,8 +28,8 @@ ...@@ -28,8 +28,8 @@
#include "../base.h" #include "../base.h"
#include "pnpacpi.h" #include "pnpacpi.h"
static void decode_irq_flags(struct pnp_dev *dev, int flags, int *triggering, static void decode_irq_flags(struct pnp_dev *dev, int flags, u8 *triggering,
int *polarity, int *shareable) u8 *polarity, u8 *shareable)
{ {
switch (flags & (IORESOURCE_IRQ_LOWLEVEL | IORESOURCE_IRQ_HIGHLEVEL | switch (flags & (IORESOURCE_IRQ_LOWLEVEL | IORESOURCE_IRQ_HIGHLEVEL |
IORESOURCE_IRQ_LOWEDGE | IORESOURCE_IRQ_HIGHEDGE)) { IORESOURCE_IRQ_LOWEDGE | IORESOURCE_IRQ_HIGHEDGE)) {
...@@ -654,7 +654,7 @@ static void pnpacpi_encode_irq(struct pnp_dev *dev, ...@@ -654,7 +654,7 @@ static void pnpacpi_encode_irq(struct pnp_dev *dev,
struct resource *p) struct resource *p)
{ {
struct acpi_resource_irq *irq = &resource->data.irq; struct acpi_resource_irq *irq = &resource->data.irq;
int triggering, polarity, shareable; u8 triggering, polarity, shareable;
if (!pnp_resource_enabled(p)) { if (!pnp_resource_enabled(p)) {
irq->interrupt_count = 0; irq->interrupt_count = 0;
...@@ -683,7 +683,7 @@ static void pnpacpi_encode_ext_irq(struct pnp_dev *dev, ...@@ -683,7 +683,7 @@ static void pnpacpi_encode_ext_irq(struct pnp_dev *dev,
struct resource *p) struct resource *p)
{ {
struct acpi_resource_extended_irq *extended_irq = &resource->data.extended_irq; struct acpi_resource_extended_irq *extended_irq = &resource->data.extended_irq;
int triggering, polarity, shareable; u8 triggering, polarity, shareable;
if (!pnp_resource_enabled(p)) { if (!pnp_resource_enabled(p)) {
extended_irq->interrupt_count = 0; extended_irq->interrupt_count = 0;
...@@ -873,7 +873,7 @@ int pnpacpi_encode_resources(struct pnp_dev *dev, struct acpi_buffer *buffer) ...@@ -873,7 +873,7 @@ int pnpacpi_encode_resources(struct pnp_dev *dev, struct acpi_buffer *buffer)
/* pnpacpi_build_resource_template allocates extra mem */ /* pnpacpi_build_resource_template allocates extra mem */
int res_cnt = (buffer->length - 1) / sizeof(struct acpi_resource) - 1; int res_cnt = (buffer->length - 1) / sizeof(struct acpi_resource) - 1;
struct acpi_resource *resource = buffer->pointer; struct acpi_resource *resource = buffer->pointer;
int port = 0, irq = 0, dma = 0, mem = 0; unsigned int port = 0, irq = 0, dma = 0, mem = 0;
pnp_dbg(&dev->dev, "encode %d resources\n", res_cnt); pnp_dbg(&dev->dev, "encode %d resources\n", res_cnt);
while (i < res_cnt) { while (i < res_cnt) {
......
...@@ -135,7 +135,7 @@ static int mperf_get_count_percent(unsigned int id, double *percent, ...@@ -135,7 +135,7 @@ static int mperf_get_count_percent(unsigned int id, double *percent,
dprint("%s: TSC Ref - mperf_diff: %llu, tsc_diff: %llu\n", dprint("%s: TSC Ref - mperf_diff: %llu, tsc_diff: %llu\n",
mperf_cstates[id].name, mperf_diff, tsc_diff); mperf_cstates[id].name, mperf_diff, tsc_diff);
} else if (max_freq_mode == MAX_FREQ_SYSFS) { } else if (max_freq_mode == MAX_FREQ_SYSFS) {
timediff = timespec_diff_us(time_start, time_end); timediff = max_frequency * timespec_diff_us(time_start, time_end);
*percent = 100.0 * mperf_diff / timediff; *percent = 100.0 * mperf_diff / timediff;
dprint("%s: MAXFREQ - mperf_diff: %llu, time_diff: %llu\n", dprint("%s: MAXFREQ - mperf_diff: %llu, time_diff: %llu\n",
mperf_cstates[id].name, mperf_diff, timediff); mperf_cstates[id].name, mperf_diff, timediff);
...@@ -176,7 +176,7 @@ static int mperf_get_count_freq(unsigned int id, unsigned long long *count, ...@@ -176,7 +176,7 @@ static int mperf_get_count_freq(unsigned int id, unsigned long long *count,
dprint("%s: Average freq based on %s maximum frequency:\n", dprint("%s: Average freq based on %s maximum frequency:\n",
mperf_cstates[id].name, mperf_cstates[id].name,
(max_freq_mode == MAX_FREQ_TSC_REF) ? "TSC calculated" : "sysfs read"); (max_freq_mode == MAX_FREQ_TSC_REF) ? "TSC calculated" : "sysfs read");
dprint("%max_frequency: %lu", max_frequency); dprint("max_frequency: %lu\n", max_frequency);
dprint("aperf_diff: %llu\n", aperf_diff); dprint("aperf_diff: %llu\n", aperf_diff);
dprint("mperf_diff: %llu\n", mperf_diff); dprint("mperf_diff: %llu\n", mperf_diff);
dprint("avg freq: %llu\n", *count); dprint("avg freq: %llu\n", *count);
...@@ -279,6 +279,7 @@ static int init_maxfreq_mode(void) ...@@ -279,6 +279,7 @@ static int init_maxfreq_mode(void)
return -1; return -1;
} }
max_freq_mode = MAX_FREQ_SYSFS; max_freq_mode = MAX_FREQ_SYSFS;
max_frequency /= 1000; /* Default automatically to MHz value */
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment