Skip to content

Commit 66f5854

Browse files
committed
Merge branch 'device-properties'
* device-properties: ACPI / platform: Add support for build-in properties
2 parents bc33b0c + 1571875 commit 66f5854

File tree

8 files changed

+15
-23
lines changed

8 files changed

+15
-23
lines changed

drivers/acpi/acpi_apd.c

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ static int acpi_apd_create_device(struct acpi_device *adev,
122122
int ret;
123123

124124
if (!dev_desc) {
125-
pdev = acpi_create_platform_device(adev);
125+
pdev = acpi_create_platform_device(adev, NULL);
126126
return IS_ERR_OR_NULL(pdev) ? PTR_ERR(pdev) : 1;
127127
}
128128

@@ -139,14 +139,8 @@ static int acpi_apd_create_device(struct acpi_device *adev,
139139
goto err_out;
140140
}
141141

142-
if (dev_desc->properties) {
143-
ret = device_add_properties(&adev->dev, dev_desc->properties);
144-
if (ret)
145-
goto err_out;
146-
}
147-
148142
adev->driver_data = pdata;
149-
pdev = acpi_create_platform_device(adev);
143+
pdev = acpi_create_platform_device(adev, dev_desc->properties);
150144
if (!IS_ERR_OR_NULL(pdev))
151145
return 1;
152146

drivers/acpi/acpi_lpss.c

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -395,7 +395,7 @@ static int acpi_lpss_create_device(struct acpi_device *adev,
395395

396396
dev_desc = (const struct lpss_device_desc *)id->driver_data;
397397
if (!dev_desc) {
398-
pdev = acpi_create_platform_device(adev);
398+
pdev = acpi_create_platform_device(adev, NULL);
399399
return IS_ERR_OR_NULL(pdev) ? PTR_ERR(pdev) : 1;
400400
}
401401
pdata = kzalloc(sizeof(*pdata), GFP_KERNEL);
@@ -451,14 +451,8 @@ static int acpi_lpss_create_device(struct acpi_device *adev,
451451
goto err_out;
452452
}
453453

454-
if (dev_desc->properties) {
455-
ret = device_add_properties(&adev->dev, dev_desc->properties);
456-
if (ret)
457-
goto err_out;
458-
}
459-
460454
adev->driver_data = pdata;
461-
pdev = acpi_create_platform_device(adev);
455+
pdev = acpi_create_platform_device(adev, dev_desc->properties);
462456
if (!IS_ERR_OR_NULL(pdev)) {
463457
return 1;
464458
}

drivers/acpi/acpi_platform.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,14 +50,16 @@ static void acpi_platform_fill_resource(struct acpi_device *adev,
5050
/**
5151
* acpi_create_platform_device - Create platform device for ACPI device node
5252
* @adev: ACPI device node to create a platform device for.
53+
* @properties: Optional collection of build-in properties.
5354
*
5455
* Check if the given @adev can be represented as a platform device and, if
5556
* that's the case, create and register a platform device, populate its common
5657
* resources and returns a pointer to it. Otherwise, return %NULL.
5758
*
5859
* Name of the platform device will be the same as @adev's.
5960
*/
60-
struct platform_device *acpi_create_platform_device(struct acpi_device *adev)
61+
struct platform_device *acpi_create_platform_device(struct acpi_device *adev,
62+
struct property_entry *properties)
6163
{
6264
struct platform_device *pdev = NULL;
6365
struct platform_device_info pdevinfo;
@@ -106,6 +108,7 @@ struct platform_device *acpi_create_platform_device(struct acpi_device *adev)
106108
pdevinfo.res = resources;
107109
pdevinfo.num_res = count;
108110
pdevinfo.fwnode = acpi_fwnode_handle(adev);
111+
pdevinfo.properties = properties;
109112

110113
if (acpi_dma_supported(adev))
111114
pdevinfo.dma_mask = DMA_BIT_MASK(32);

drivers/acpi/dptf/int340x_thermal.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,11 +34,11 @@ static int int340x_thermal_handler_attach(struct acpi_device *adev,
3434
const struct acpi_device_id *id)
3535
{
3636
if (IS_ENABLED(CONFIG_INT340X_THERMAL))
37-
acpi_create_platform_device(adev);
37+
acpi_create_platform_device(adev, NULL);
3838
/* Intel SoC DTS thermal driver needs INT3401 to set IRQ descriptor */
3939
else if (IS_ENABLED(CONFIG_INTEL_SOC_DTS_THERMAL) &&
4040
id->driver_data == INT3401_DEVICE)
41-
acpi_create_platform_device(adev);
41+
acpi_create_platform_device(adev, NULL);
4242
return 1;
4343
}
4444

drivers/acpi/scan.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1734,7 +1734,7 @@ static void acpi_default_enumeration(struct acpi_device *device)
17341734
&is_spi_i2c_slave);
17351735
acpi_dev_free_resource_list(&resource_list);
17361736
if (!is_spi_i2c_slave) {
1737-
acpi_create_platform_device(device);
1737+
acpi_create_platform_device(device, NULL);
17381738
acpi_device_set_enumerated(device);
17391739
} else {
17401740
blocking_notifier_call_chain(&acpi_reconfig_chain,

drivers/platform/x86/intel-hid.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -264,7 +264,7 @@ check_acpi_dev(acpi_handle handle, u32 lvl, void *context, void **rv)
264264
return AE_OK;
265265

266266
if (acpi_match_device_ids(dev, ids) == 0)
267-
if (acpi_create_platform_device(dev))
267+
if (acpi_create_platform_device(dev, NULL))
268268
dev_info(&dev->dev,
269269
"intel-hid: created platform device\n");
270270

drivers/platform/x86/intel-vbtn.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ check_acpi_dev(acpi_handle handle, u32 lvl, void *context, void **rv)
164164
return AE_OK;
165165

166166
if (acpi_match_device_ids(dev, ids) == 0)
167-
if (acpi_create_platform_device(dev))
167+
if (acpi_create_platform_device(dev, NULL))
168168
dev_info(&dev->dev,
169169
"intel-vbtn: created platform device\n");
170170

include/linux/acpi.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -555,7 +555,8 @@ int acpi_device_uevent_modalias(struct device *, struct kobj_uevent_env *);
555555
int acpi_device_modalias(struct device *, char *, int);
556556
void acpi_walk_dep_device_list(acpi_handle handle);
557557

558-
struct platform_device *acpi_create_platform_device(struct acpi_device *);
558+
struct platform_device *acpi_create_platform_device(struct acpi_device *,
559+
struct property_entry *);
559560
#define ACPI_PTR(_ptr) (_ptr)
560561

561562
static inline void acpi_device_set_enumerated(struct acpi_device *adev)

0 commit comments

Comments
 (0)