ACPI: video: Clean up printing messages

Replace the ACPI_DEBUG_PRINT() instances in acpi_video.c with
acpi_handle_debug() calls and the ACPI_EXCEPTION()/ACPI_ERROR()/
ACPI_WARNING() instances in there with acpi_handle_info() calls,
which among other things causes the excessive log levels of those
messages to be increased.

Drop the _COMPONENT and ACPI_MODULE_NAME() definitions that are not
used any more from acpi_video.c, drop the no longer needed
ACPI_VIDEO_COMPONENT definition from the headers and update the
documentation accordingly.

While at it, add a pr_fmt() definition to acpi_video.c, replace the
direct printk() invocations in there with acpi_handle_info() or
pr_info() (and reduce the excessive log level where applicable) and
drop the PREFIX sybmbol definition which is not necessary any more
from acpi_video.c.

Also make unrelated janitorial changes to fix up white space and
use ACPI_FAILURE() instead of negating ACPI_SUCCESS().

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Hanjun Guo <guohanjun@huawei.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
This commit is contained in:
Rafael J. Wysocki 2021-02-03 19:48:33 +01:00
parent 411e3216d4
commit 2924d2f837
4 changed files with 51 additions and 51 deletions

View File

@ -59,7 +59,6 @@ shows the supported mask values, currently these::
ACPI_SYSTEM_COMPONENT 0x02000000 ACPI_SYSTEM_COMPONENT 0x02000000
ACPI_THERMAL_COMPONENT 0x04000000 ACPI_THERMAL_COMPONENT 0x04000000
ACPI_MEMORY_DEVICE_COMPONENT 0x08000000 ACPI_MEMORY_DEVICE_COMPONENT 0x08000000
ACPI_VIDEO_COMPONENT 0x10000000
ACPI_PROCESSOR_COMPONENT 0x20000000 ACPI_PROCESSOR_COMPONENT 0x20000000
debug_level debug_level

View File

@ -7,6 +7,8 @@
* Copyright (C) 2006 Thomas Tuttle <linux-kernel@ttuttle.net> * Copyright (C) 2006 Thomas Tuttle <linux-kernel@ttuttle.net>
*/ */
#define pr_fmt(fmt) "ACPI: video: " fmt
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/module.h> #include <linux/module.h>
#include <linux/init.h> #include <linux/init.h>
@ -26,16 +28,11 @@
#include <acpi/video.h> #include <acpi/video.h>
#include <linux/uaccess.h> #include <linux/uaccess.h>
#define PREFIX "ACPI: "
#define ACPI_VIDEO_BUS_NAME "Video Bus" #define ACPI_VIDEO_BUS_NAME "Video Bus"
#define ACPI_VIDEO_DEVICE_NAME "Video Device" #define ACPI_VIDEO_DEVICE_NAME "Video Device"
#define MAX_NAME_LEN 20 #define MAX_NAME_LEN 20
#define _COMPONENT ACPI_VIDEO_COMPONENT
ACPI_MODULE_NAME("video");
MODULE_AUTHOR("Bruno Ducrot"); MODULE_AUTHOR("Bruno Ducrot");
MODULE_DESCRIPTION("ACPI Video Driver"); MODULE_DESCRIPTION("ACPI Video Driver");
MODULE_LICENSE("GPL"); MODULE_LICENSE("GPL");
@ -326,11 +323,11 @@ acpi_video_device_lcd_query_levels(acpi_handle handle,
*levels = NULL; *levels = NULL;
status = acpi_evaluate_object(handle, "_BCL", NULL, &buffer); status = acpi_evaluate_object(handle, "_BCL", NULL, &buffer);
if (!ACPI_SUCCESS(status)) if (ACPI_FAILURE(status))
return status; return status;
obj = (union acpi_object *)buffer.pointer; obj = (union acpi_object *)buffer.pointer;
if (!obj || (obj->type != ACPI_TYPE_PACKAGE)) { if (!obj || (obj->type != ACPI_TYPE_PACKAGE)) {
printk(KERN_ERR PREFIX "Invalid _BCL data\n"); acpi_handle_info(handle, "Invalid _BCL data\n");
status = -EFAULT; status = -EFAULT;
goto err; goto err;
} }
@ -354,7 +351,7 @@ acpi_video_device_lcd_set_level(struct acpi_video_device *device, int level)
status = acpi_execute_simple_method(device->dev->handle, status = acpi_execute_simple_method(device->dev->handle,
"_BCM", level); "_BCM", level);
if (ACPI_FAILURE(status)) { if (ACPI_FAILURE(status)) {
ACPI_ERROR((AE_INFO, "Evaluating _BCM failed")); acpi_handle_info(device->dev->handle, "_BCM evaluation failed\n");
return -EIO; return -EIO;
} }
@ -368,7 +365,7 @@ acpi_video_device_lcd_set_level(struct acpi_video_device *device, int level)
return 0; return 0;
} }
ACPI_ERROR((AE_INFO, "Current brightness invalid")); acpi_handle_info(device->dev->handle, "Current brightness invalid\n");
return -EINVAL; return -EINVAL;
} }
@ -622,9 +619,8 @@ acpi_video_device_lcd_get_level_current(struct acpi_video_device *device,
* BQC returned an invalid level. * BQC returned an invalid level.
* Stop using it. * Stop using it.
*/ */
ACPI_WARNING((AE_INFO, acpi_handle_info(device->dev->handle,
"%s returned an invalid level", "%s returned an invalid level", buf);
buf));
device->cap._BQC = device->cap._BCQ = 0; device->cap._BQC = device->cap._BCQ = 0;
} else { } else {
/* /*
@ -635,7 +631,8 @@ acpi_video_device_lcd_get_level_current(struct acpi_video_device *device,
* ACPI video backlight still works w/ buggy _BQC. * ACPI video backlight still works w/ buggy _BQC.
* http://bugzilla.kernel.org/show_bug.cgi?id=12233 * http://bugzilla.kernel.org/show_bug.cgi?id=12233
*/ */
ACPI_WARNING((AE_INFO, "Evaluating %s failed", buf)); acpi_handle_info(device->dev->handle,
"%s evaluation failed", buf);
device->cap._BQC = device->cap._BCQ = 0; device->cap._BQC = device->cap._BCQ = 0;
} }
} }
@ -675,7 +672,7 @@ acpi_video_device_EDID(struct acpi_video_device *device,
if (obj && obj->type == ACPI_TYPE_BUFFER) if (obj && obj->type == ACPI_TYPE_BUFFER)
*edid = obj; *edid = obj;
else { else {
printk(KERN_ERR PREFIX "Invalid _DDC data\n"); acpi_handle_info(device->dev->handle, "Invalid _DDC data\n");
status = -EFAULT; status = -EFAULT;
kfree(obj); kfree(obj);
} }
@ -827,10 +824,9 @@ int acpi_video_get_levels(struct acpi_device *device,
int result = 0; int result = 0;
u32 value; u32 value;
if (!ACPI_SUCCESS(acpi_video_device_lcd_query_levels(device->handle, if (ACPI_FAILURE(acpi_video_device_lcd_query_levels(device->handle, &obj))) {
&obj))) { acpi_handle_debug(device->handle,
ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Could not query available " "Could not query available LCD brightness level\n");
"LCD brightness level\n"));
result = -ENODEV; result = -ENODEV;
goto out; goto out;
} }
@ -842,7 +838,6 @@ int acpi_video_get_levels(struct acpi_device *device,
br = kzalloc(sizeof(*br), GFP_KERNEL); br = kzalloc(sizeof(*br), GFP_KERNEL);
if (!br) { if (!br) {
printk(KERN_ERR "can't allocate memory\n");
result = -ENOMEM; result = -ENOMEM;
goto out; goto out;
} }
@ -863,7 +858,7 @@ int acpi_video_get_levels(struct acpi_device *device,
for (i = 0; i < obj->package.count; i++) { for (i = 0; i < obj->package.count; i++) {
o = (union acpi_object *)&obj->package.elements[i]; o = (union acpi_object *)&obj->package.elements[i];
if (o->type != ACPI_TYPE_INTEGER) { if (o->type != ACPI_TYPE_INTEGER) {
printk(KERN_ERR PREFIX "Invalid data\n"); acpi_handle_info(device->handle, "Invalid data\n");
continue; continue;
} }
value = (u32) o->integer.value; value = (u32) o->integer.value;
@ -900,7 +895,8 @@ int acpi_video_get_levels(struct acpi_device *device,
br->levels[i] = br->levels[i - level_ac_battery]; br->levels[i] = br->levels[i - level_ac_battery];
count += level_ac_battery; count += level_ac_battery;
} else if (level_ac_battery > ACPI_VIDEO_FIRST_LEVEL) } else if (level_ac_battery > ACPI_VIDEO_FIRST_LEVEL)
ACPI_ERROR((AE_INFO, "Too many duplicates in _BCL package")); acpi_handle_info(device->handle,
"Too many duplicates in _BCL package");
/* Check if the _BCL package is in a reversed order */ /* Check if the _BCL package is in a reversed order */
if (max_level == br->levels[ACPI_VIDEO_FIRST_LEVEL]) { if (max_level == br->levels[ACPI_VIDEO_FIRST_LEVEL]) {
@ -910,8 +906,8 @@ int acpi_video_get_levels(struct acpi_device *device,
sizeof(br->levels[ACPI_VIDEO_FIRST_LEVEL]), sizeof(br->levels[ACPI_VIDEO_FIRST_LEVEL]),
acpi_video_cmp_level, NULL); acpi_video_cmp_level, NULL);
} else if (max_level != br->levels[count - 1]) } else if (max_level != br->levels[count - 1])
ACPI_ERROR((AE_INFO, acpi_handle_info(device->handle,
"Found unordered _BCL package")); "Found unordered _BCL package");
br->count = count; br->count = count;
*dev_br = br; *dev_br = br;
@ -989,9 +985,9 @@ set_level:
if (result) if (result)
goto out_free_levels; goto out_free_levels;
ACPI_DEBUG_PRINT((ACPI_DB_INFO, acpi_handle_debug(device->dev->handle, "found %d brightness levels\n",
"found %d brightness levels\n", br->count - ACPI_VIDEO_FIRST_LEVEL);
br->count - ACPI_VIDEO_FIRST_LEVEL));
return 0; return 0;
out_free_levels: out_free_levels:
@ -1023,7 +1019,8 @@ static void acpi_video_device_find_cap(struct acpi_video_device *device)
if (acpi_has_method(device->dev->handle, "_BQC")) { if (acpi_has_method(device->dev->handle, "_BQC")) {
device->cap._BQC = 1; device->cap._BQC = 1;
} else if (acpi_has_method(device->dev->handle, "_BCQ")) { } else if (acpi_has_method(device->dev->handle, "_BCQ")) {
printk(KERN_WARNING FW_BUG "_BCQ is used instead of _BQC\n"); acpi_handle_info(device->dev->handle,
"_BCQ is used instead of _BQC\n");
device->cap._BCQ = 1; device->cap._BCQ = 1;
} }
@ -1083,8 +1080,7 @@ static int acpi_video_bus_check(struct acpi_video_bus *video)
/* Does this device support video switching? */ /* Does this device support video switching? */
if (video->cap._DOS || video->cap._DOD) { if (video->cap._DOS || video->cap._DOD) {
if (!video->cap._DOS) { if (!video->cap._DOS) {
printk(KERN_WARNING FW_BUG pr_info(FW_BUG "ACPI(%s) defines _DOD but not _DOS\n",
"ACPI(%s) defines _DOD but not _DOS\n",
acpi_device_bid(video->device)); acpi_device_bid(video->device));
} }
video->flags.multihead = 1; video->flags.multihead = 1;
@ -1272,7 +1268,8 @@ acpi_video_device_bind(struct acpi_video_bus *video,
ids = &video->attached_array[i]; ids = &video->attached_array[i];
if (device->device_id == (ids->value.int_val & 0xffff)) { if (device->device_id == (ids->value.int_val & 0xffff)) {
ids->bind_info = device; ids->bind_info = device;
ACPI_DEBUG_PRINT((ACPI_DB_INFO, "device_bind %d\n", i)); acpi_handle_debug(video->device->handle, "%s: %d\n",
__func__, i);
} }
} }
} }
@ -1324,20 +1321,22 @@ static int acpi_video_device_enumerate(struct acpi_video_bus *video)
return AE_NOT_EXIST; return AE_NOT_EXIST;
status = acpi_evaluate_object(video->device->handle, "_DOD", NULL, &buffer); status = acpi_evaluate_object(video->device->handle, "_DOD", NULL, &buffer);
if (!ACPI_SUCCESS(status)) { if (ACPI_FAILURE(status)) {
ACPI_EXCEPTION((AE_INFO, status, "Evaluating _DOD")); acpi_handle_info(video->device->handle,
"_DOD evaluation failed: %s\n",
acpi_format_exception(status));
return status; return status;
} }
dod = buffer.pointer; dod = buffer.pointer;
if (!dod || (dod->type != ACPI_TYPE_PACKAGE)) { if (!dod || (dod->type != ACPI_TYPE_PACKAGE)) {
ACPI_EXCEPTION((AE_INFO, status, "Invalid _DOD data")); acpi_handle_info(video->device->handle, "Invalid _DOD data\n");
status = -EFAULT; status = -EFAULT;
goto out; goto out;
} }
ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Found %d video heads in _DOD\n", acpi_handle_debug(video->device->handle, "Found %d video heads in _DOD\n",
dod->package.count)); dod->package.count);
active_list = kcalloc(1 + dod->package.count, active_list = kcalloc(1 + dod->package.count,
sizeof(struct acpi_video_enumerated_device), sizeof(struct acpi_video_enumerated_device),
@ -1352,15 +1351,18 @@ static int acpi_video_device_enumerate(struct acpi_video_bus *video)
obj = &dod->package.elements[i]; obj = &dod->package.elements[i];
if (obj->type != ACPI_TYPE_INTEGER) { if (obj->type != ACPI_TYPE_INTEGER) {
printk(KERN_ERR PREFIX acpi_handle_info(video->device->handle,
"Invalid _DOD data in element %d\n", i); "Invalid _DOD data in element %d\n", i);
continue; continue;
} }
active_list[count].value.int_val = obj->integer.value; active_list[count].value.int_val = obj->integer.value;
active_list[count].bind_info = NULL; active_list[count].bind_info = NULL;
ACPI_DEBUG_PRINT((ACPI_DB_INFO, "dod element[%d] = %d\n", i,
(int)obj->integer.value)); acpi_handle_debug(video->device->handle,
"_DOD element[%d] = %d\n", i,
(int)obj->integer.value);
count++; count++;
} }
@ -1451,7 +1453,8 @@ acpi_video_switch_brightness(struct work_struct *work)
out: out:
if (result) if (result)
printk(KERN_ERR PREFIX "Failed to switch the brightness\n"); acpi_handle_info(device->dev->handle,
"Failed to switch brightness\n");
} }
int acpi_video_get_edid(struct acpi_device *device, int type, int device_id, int acpi_video_get_edid(struct acpi_device *device, int type, int device_id,
@ -1601,8 +1604,8 @@ static void acpi_video_bus_notify(struct acpi_device *device, u32 event)
break; break;
default: default:
ACPI_DEBUG_PRINT((ACPI_DB_INFO, acpi_handle_debug(device->handle, "Unsupported event [0x%x]\n",
"Unsupported event [0x%x]\n", event)); event);
break; break;
} }
@ -1675,8 +1678,7 @@ static void acpi_video_device_notify(acpi_handle handle, u32 event, void *data)
keycode = KEY_DISPLAY_OFF; keycode = KEY_DISPLAY_OFF;
break; break;
default: default:
ACPI_DEBUG_PRINT((ACPI_DB_INFO, acpi_handle_debug(handle, "Unsupported event [0x%x]\n", event);
"Unsupported event [0x%x]\n", event));
break; break;
} }
@ -1812,11 +1814,12 @@ static void acpi_video_dev_register_backlight(struct acpi_video_device *device)
&device->cooling_dev->device.kobj, &device->cooling_dev->device.kobj,
"thermal_cooling"); "thermal_cooling");
if (result) if (result)
printk(KERN_ERR PREFIX "Create sysfs link\n"); pr_info("sysfs link creation failed\n");
result = sysfs_create_link(&device->cooling_dev->device.kobj, result = sysfs_create_link(&device->cooling_dev->device.kobj,
&device->dev->dev.kobj, "device"); &device->dev->dev.kobj, "device");
if (result) if (result)
printk(KERN_ERR PREFIX "Create sysfs link\n"); pr_info("Reverse sysfs link creation failed\n");
} }
static void acpi_video_run_bcl_for_osi(struct acpi_video_bus *video) static void acpi_video_run_bcl_for_osi(struct acpi_video_bus *video)
@ -2030,7 +2033,7 @@ static int acpi_video_bus_add(struct acpi_device *device)
acpi_video_bus_match, NULL, acpi_video_bus_match, NULL,
device, NULL); device, NULL);
if (status == AE_ALREADY_EXISTS) { if (status == AE_ALREADY_EXISTS) {
printk(KERN_WARNING FW_BUG pr_info(FW_BUG
"Duplicate ACPI video bus devices for the" "Duplicate ACPI video bus devices for the"
" same VGA controller, please try module " " same VGA controller, please try module "
"parameter \"video.allow_duplicates=1\"" "parameter \"video.allow_duplicates=1\""
@ -2073,7 +2076,7 @@ static int acpi_video_bus_add(struct acpi_device *device)
if (error) if (error)
goto err_put_video; goto err_put_video;
printk(KERN_INFO PREFIX "%s [%s] (multi-head: %s rom: %s post: %s)\n", pr_info("%s [%s] (multi-head: %s rom: %s post: %s)\n",
ACPI_VIDEO_DEVICE_NAME, acpi_device_bid(device), ACPI_VIDEO_DEVICE_NAME, acpi_device_bid(device),
video->flags.multihead ? "yes" : "no", video->flags.multihead ? "yes" : "no",
video->flags.rom ? "yes" : "no", video->flags.rom ? "yes" : "no",

View File

@ -59,7 +59,6 @@ static const struct acpi_dlayer acpi_debug_layers[] = {
ACPI_DEBUG_INIT(ACPI_SYSTEM_COMPONENT), ACPI_DEBUG_INIT(ACPI_SYSTEM_COMPONENT),
ACPI_DEBUG_INIT(ACPI_THERMAL_COMPONENT), ACPI_DEBUG_INIT(ACPI_THERMAL_COMPONENT),
ACPI_DEBUG_INIT(ACPI_MEMORY_DEVICE_COMPONENT), ACPI_DEBUG_INIT(ACPI_MEMORY_DEVICE_COMPONENT),
ACPI_DEBUG_INIT(ACPI_VIDEO_COMPONENT),
ACPI_DEBUG_INIT(ACPI_PROCESSOR_COMPONENT), ACPI_DEBUG_INIT(ACPI_PROCESSOR_COMPONENT),
}; };

View File

@ -22,7 +22,6 @@
#define ACPI_SYSTEM_COMPONENT 0x02000000 #define ACPI_SYSTEM_COMPONENT 0x02000000
#define ACPI_THERMAL_COMPONENT 0x04000000 #define ACPI_THERMAL_COMPONENT 0x04000000
#define ACPI_MEMORY_DEVICE_COMPONENT 0x08000000 #define ACPI_MEMORY_DEVICE_COMPONENT 0x08000000
#define ACPI_VIDEO_COMPONENT 0x10000000
#define ACPI_PROCESSOR_COMPONENT 0x20000000 #define ACPI_PROCESSOR_COMPONENT 0x20000000
/* /*