diff options
| author | Prakash, Prashanth <[email protected]> | 2016-02-17 20:21:01 +0000 |
|---|---|---|
| committer | Rafael J. Wysocki <[email protected]> | 2016-03-09 22:35:29 +0000 |
| commit | 8b0f57889843af6304b80724e36bd3d93b6484b1 (patch) | |
| tree | ec096586070e71378dff0711d984926745bcf7c7 /drivers/acpi/cppc_acpi.c | |
| parent | ACPI / CPPC: optimized cpc_read and cpc_write (diff) | |
| download | kernel-8b0f57889843af6304b80724e36bd3d93b6484b1.tar.gz kernel-8b0f57889843af6304b80724e36bd3d93b6484b1.zip | |
mailbox: pcc: optimized pcc_send_data
pcc_send_data() can be invoked during the execution of performance
critical code as in cppc_cpufreq driver. With acpi_* APIs, the
doorbell register accessed in pcc_send_data() if present in system
memory will be searched (in cached virt to phys addr mapping),
mapped, read/written and then unmapped. These operations take
significant amount of time.
This patch maps the performance critical doorbell register
during init and then reads/writes to it directly using the
mapped virtual address. This patch + similar changes to CPPC
acpi driver reduce the time per freq. transition from around
200us to about 20us for the CPPC cpufreq driver
Signed-off-by: Prashanth Prakash <[email protected]>
Acked-by: Ashwin Chaugule <[email protected]>
Signed-off-by: Rafael J. Wysocki <[email protected]>
Diffstat (limited to 'drivers/acpi/cppc_acpi.c')
0 files changed, 0 insertions, 0 deletions
