Skip to content

Commit

Permalink
Merge branch 'thermal-intel'
Browse files Browse the repository at this point in the history
Merge updates of Intel int3400 thermal driver for 6.13-rc1:

 - Remove the data_vault attribute_group from int3400 because it is only
   used for exposing one binary file that can be exposed directly (Thomas
   Weißschuh).

 - Prevent the current_uuid sysfs attribute in int3400 from mistakenly
   treating valid UUID values as invalid on some older systems (Srinivas
   Pandruvada).

* thermal-intel:
  thermal: int3400: Remove unneeded data_vault attribute_group
  thermal: int3400: Fix reading of current_uuid for active policy
  • Loading branch information
Rafael J. Wysocki committed Nov 27, 2024
2 parents c79886c + 13f3cbf commit 4dc333c
Showing 1 changed file with 4 additions and 14 deletions.
18 changes: 4 additions & 14 deletions drivers/thermal/intel/int340x_thermal/int3400_thermal.c
Original file line number Diff line number Diff line change
Expand Up @@ -75,11 +75,6 @@ struct odvp_attr {

static BIN_ATTR_SIMPLE_RO(data_vault);

static struct bin_attribute *data_attributes[] = {
&bin_attr_data_vault,
NULL,
};

static ssize_t imok_store(struct device *dev, struct device_attribute *attr,
const char *buf, size_t count)
{
Expand Down Expand Up @@ -108,10 +103,6 @@ static const struct attribute_group imok_attribute_group = {
.attrs = imok_attr,
};

static const struct attribute_group data_attribute_group = {
.bin_attrs = data_attributes,
};

static ssize_t available_uuids_show(struct device *dev,
struct device_attribute *attr,
char *buf)
Expand All @@ -137,7 +128,7 @@ static ssize_t current_uuid_show(struct device *dev,
struct int3400_thermal_priv *priv = dev_get_drvdata(dev);
int i, length = 0;

if (priv->current_uuid_index > 0)
if (priv->current_uuid_index >= 0)
return sprintf(buf, "%s\n",
int3400_thermal_uuids[priv->current_uuid_index]);

Expand Down Expand Up @@ -624,8 +615,7 @@ static int int3400_thermal_probe(struct platform_device *pdev)
}

if (!ZERO_OR_NULL_PTR(priv->data_vault)) {
result = sysfs_create_group(&pdev->dev.kobj,
&data_attribute_group);
result = device_create_bin_file(&pdev->dev, &bin_attr_data_vault);
if (result)
goto free_uuid;
}
Expand All @@ -648,7 +638,7 @@ static int int3400_thermal_probe(struct platform_device *pdev)
free_sysfs:
cleanup_odvp(priv);
if (!ZERO_OR_NULL_PTR(priv->data_vault)) {
sysfs_remove_group(&pdev->dev.kobj, &data_attribute_group);
device_remove_bin_file(&pdev->dev, &bin_attr_data_vault);
kfree(priv->data_vault);
}
free_uuid:
Expand Down Expand Up @@ -683,7 +673,7 @@ static void int3400_thermal_remove(struct platform_device *pdev)
acpi_thermal_rel_misc_device_remove(priv->adev->handle);

if (!ZERO_OR_NULL_PTR(priv->data_vault))
sysfs_remove_group(&pdev->dev.kobj, &data_attribute_group);
device_remove_bin_file(&pdev->dev, &bin_attr_data_vault);
sysfs_remove_group(&pdev->dev.kobj, &uuid_attribute_group);
sysfs_remove_group(&pdev->dev.kobj, &imok_attribute_group);
thermal_zone_device_unregister(priv->thermal);
Expand Down

0 comments on commit 4dc333c

Please sign in to comment.