提交 bbb16fef 编写于 作者: S Srinivas Pandruvada 提交者: Rafael J. Wysocki

ACPI / Fan: Use bus id as the name for non PNP0C0B (Fan) devices

The _ART (Active Cooling Relationship Table), specifies relationship
among heat generating sources to a target active cooling device like
fan. The _ART table refers to actual bus id name for specifying relationship.
Naming "Fan" is not enough as name in the _ART table can change on every
platform, to establish relationship for user space thermal controllers.
Signed-off-by: NSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
上级 b2776bf7
...@@ -325,6 +325,7 @@ static int acpi_fan_probe(struct platform_device *pdev) ...@@ -325,6 +325,7 @@ static int acpi_fan_probe(struct platform_device *pdev)
struct thermal_cooling_device *cdev; struct thermal_cooling_device *cdev;
struct acpi_fan *fan; struct acpi_fan *fan;
struct acpi_device *device = ACPI_COMPANION(&pdev->dev); struct acpi_device *device = ACPI_COMPANION(&pdev->dev);
char *name;
fan = devm_kzalloc(&pdev->dev, sizeof(*fan), GFP_KERNEL); fan = devm_kzalloc(&pdev->dev, sizeof(*fan), GFP_KERNEL);
if (!fan) { if (!fan) {
...@@ -346,7 +347,12 @@ static int acpi_fan_probe(struct platform_device *pdev) ...@@ -346,7 +347,12 @@ static int acpi_fan_probe(struct platform_device *pdev)
} }
} }
cdev = thermal_cooling_device_register("Fan", device, if (!strncmp(pdev->name, "PNP0C0B", strlen("PNP0C0B")))
name = "Fan";
else
name = acpi_device_bid(device);
cdev = thermal_cooling_device_register(name, device,
&fan_cooling_ops); &fan_cooling_ops);
if (IS_ERR(cdev)) { if (IS_ERR(cdev)) {
result = PTR_ERR(cdev); result = PTR_ERR(cdev);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册