diff options
| -rw-r--r-- | drivers/acpi/acpi_apd.c | 10 | ||||
| -rw-r--r-- | drivers/acpi/acpi_lpss.c | 10 | ||||
| -rw-r--r-- | drivers/acpi/acpi_platform.c | 5 | ||||
| -rw-r--r-- | drivers/acpi/dptf/int340x_thermal.c | 4 | ||||
| -rw-r--r-- | drivers/acpi/scan.c | 2 | ||||
| -rw-r--r-- | drivers/platform/x86/intel-hid.c | 2 | ||||
| -rw-r--r-- | drivers/platform/x86/intel-vbtn.c | 2 | ||||
| -rw-r--r-- | include/linux/acpi.h | 3 |
8 files changed, 15 insertions, 23 deletions
diff --git a/drivers/acpi/acpi_apd.c b/drivers/acpi/acpi_apd.c index d58fbf7f04e6..7dd70927991e 100644 --- a/drivers/acpi/acpi_apd.c +++ b/drivers/acpi/acpi_apd.c | |||
| @@ -122,7 +122,7 @@ static int acpi_apd_create_device(struct acpi_device *adev, | |||
| 122 | int ret; | 122 | int ret; |
| 123 | 123 | ||
| 124 | if (!dev_desc) { | 124 | if (!dev_desc) { |
| 125 | pdev = acpi_create_platform_device(adev); | 125 | pdev = acpi_create_platform_device(adev, NULL); |
| 126 | return IS_ERR_OR_NULL(pdev) ? PTR_ERR(pdev) : 1; | 126 | return IS_ERR_OR_NULL(pdev) ? PTR_ERR(pdev) : 1; |
| 127 | } | 127 | } |
| 128 | 128 | ||
| @@ -139,14 +139,8 @@ static int acpi_apd_create_device(struct acpi_device *adev, | |||
| 139 | goto err_out; | 139 | goto err_out; |
| 140 | } | 140 | } |
| 141 | 141 | ||
| 142 | if (dev_desc->properties) { | ||
| 143 | ret = device_add_properties(&adev->dev, dev_desc->properties); | ||
| 144 | if (ret) | ||
| 145 | goto err_out; | ||
| 146 | } | ||
| 147 | |||
| 148 | adev->driver_data = pdata; | 142 | adev->driver_data = pdata; |
| 149 | pdev = acpi_create_platform_device(adev); | 143 | pdev = acpi_create_platform_device(adev, dev_desc->properties); |
| 150 | if (!IS_ERR_OR_NULL(pdev)) | 144 | if (!IS_ERR_OR_NULL(pdev)) |
| 151 | return 1; | 145 | return 1; |
| 152 | 146 | ||
diff --git a/drivers/acpi/acpi_lpss.c b/drivers/acpi/acpi_lpss.c index 552010288135..373657f7e35a 100644 --- a/drivers/acpi/acpi_lpss.c +++ b/drivers/acpi/acpi_lpss.c | |||
| @@ -395,7 +395,7 @@ static int acpi_lpss_create_device(struct acpi_device *adev, | |||
| 395 | 395 | ||
| 396 | dev_desc = (const struct lpss_device_desc *)id->driver_data; | 396 | dev_desc = (const struct lpss_device_desc *)id->driver_data; |
| 397 | if (!dev_desc) { | 397 | if (!dev_desc) { |
| 398 | pdev = acpi_create_platform_device(adev); | 398 | pdev = acpi_create_platform_device(adev, NULL); |
| 399 | return IS_ERR_OR_NULL(pdev) ? PTR_ERR(pdev) : 1; | 399 | return IS_ERR_OR_NULL(pdev) ? PTR_ERR(pdev) : 1; |
| 400 | } | 400 | } |
| 401 | pdata = kzalloc(sizeof(*pdata), GFP_KERNEL); | 401 | pdata = kzalloc(sizeof(*pdata), GFP_KERNEL); |
| @@ -451,14 +451,8 @@ static int acpi_lpss_create_device(struct acpi_device *adev, | |||
| 451 | goto err_out; | 451 | goto err_out; |
| 452 | } | 452 | } |
| 453 | 453 | ||
| 454 | if (dev_desc->properties) { | ||
| 455 | ret = device_add_properties(&adev->dev, dev_desc->properties); | ||
| 456 | if (ret) | ||
| 457 | goto err_out; | ||
| 458 | } | ||
| 459 | |||
| 460 | adev->driver_data = pdata; | 454 | adev->driver_data = pdata; |
| 461 | pdev = acpi_create_platform_device(adev); | 455 | pdev = acpi_create_platform_device(adev, dev_desc->properties); |
| 462 | if (!IS_ERR_OR_NULL(pdev)) { | 456 | if (!IS_ERR_OR_NULL(pdev)) { |
| 463 | return 1; | 457 | return 1; |
| 464 | } | 458 | } |
diff --git a/drivers/acpi/acpi_platform.c b/drivers/acpi/acpi_platform.c index b200ae1f3c6f..b4c1a6a51da4 100644 --- a/drivers/acpi/acpi_platform.c +++ b/drivers/acpi/acpi_platform.c | |||
| @@ -50,6 +50,7 @@ static void acpi_platform_fill_resource(struct acpi_device *adev, | |||
| 50 | /** | 50 | /** |
| 51 | * acpi_create_platform_device - Create platform device for ACPI device node | 51 | * acpi_create_platform_device - Create platform device for ACPI device node |
| 52 | * @adev: ACPI device node to create a platform device for. | 52 | * @adev: ACPI device node to create a platform device for. |
| 53 | * @properties: Optional collection of build-in properties. | ||
| 53 | * | 54 | * |
| 54 | * Check if the given @adev can be represented as a platform device and, if | 55 | * Check if the given @adev can be represented as a platform device and, if |
| 55 | * that's the case, create and register a platform device, populate its common | 56 | * that's the case, create and register a platform device, populate its common |
| @@ -57,7 +58,8 @@ static void acpi_platform_fill_resource(struct acpi_device *adev, | |||
| 57 | * | 58 | * |
| 58 | * Name of the platform device will be the same as @adev's. | 59 | * Name of the platform device will be the same as @adev's. |
| 59 | */ | 60 | */ |
| 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) | ||
| 61 | { | 63 | { |
| 62 | struct platform_device *pdev = NULL; | 64 | struct platform_device *pdev = NULL; |
| 63 | struct platform_device_info pdevinfo; | 65 | struct platform_device_info pdevinfo; |
| @@ -106,6 +108,7 @@ struct platform_device *acpi_create_platform_device(struct acpi_device *adev) | |||
| 106 | pdevinfo.res = resources; | 108 | pdevinfo.res = resources; |
| 107 | pdevinfo.num_res = count; | 109 | pdevinfo.num_res = count; |
| 108 | pdevinfo.fwnode = acpi_fwnode_handle(adev); | 110 | pdevinfo.fwnode = acpi_fwnode_handle(adev); |
| 111 | pdevinfo.properties = properties; | ||
| 109 | 112 | ||
| 110 | if (acpi_dma_supported(adev)) | 113 | if (acpi_dma_supported(adev)) |
| 111 | pdevinfo.dma_mask = DMA_BIT_MASK(32); | 114 | pdevinfo.dma_mask = DMA_BIT_MASK(32); |
diff --git a/drivers/acpi/dptf/int340x_thermal.c b/drivers/acpi/dptf/int340x_thermal.c index 33505c651f62..86364097e236 100644 --- a/drivers/acpi/dptf/int340x_thermal.c +++ b/drivers/acpi/dptf/int340x_thermal.c | |||
| @@ -34,11 +34,11 @@ static int int340x_thermal_handler_attach(struct acpi_device *adev, | |||
| 34 | const struct acpi_device_id *id) | 34 | const struct acpi_device_id *id) |
| 35 | { | 35 | { |
| 36 | if (IS_ENABLED(CONFIG_INT340X_THERMAL)) | 36 | if (IS_ENABLED(CONFIG_INT340X_THERMAL)) |
| 37 | acpi_create_platform_device(adev); | 37 | acpi_create_platform_device(adev, NULL); |
| 38 | /* Intel SoC DTS thermal driver needs INT3401 to set IRQ descriptor */ | 38 | /* Intel SoC DTS thermal driver needs INT3401 to set IRQ descriptor */ |
| 39 | else if (IS_ENABLED(CONFIG_INTEL_SOC_DTS_THERMAL) && | 39 | else if (IS_ENABLED(CONFIG_INTEL_SOC_DTS_THERMAL) && |
| 40 | id->driver_data == INT3401_DEVICE) | 40 | id->driver_data == INT3401_DEVICE) |
| 41 | acpi_create_platform_device(adev); | 41 | acpi_create_platform_device(adev, NULL); |
| 42 | return 1; | 42 | return 1; |
| 43 | } | 43 | } |
| 44 | 44 | ||
diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c index 035ac646d8db..3d1856f1f4d0 100644 --- a/drivers/acpi/scan.c +++ b/drivers/acpi/scan.c | |||
| @@ -1734,7 +1734,7 @@ static void acpi_default_enumeration(struct acpi_device *device) | |||
| 1734 | &is_spi_i2c_slave); | 1734 | &is_spi_i2c_slave); |
| 1735 | acpi_dev_free_resource_list(&resource_list); | 1735 | acpi_dev_free_resource_list(&resource_list); |
| 1736 | if (!is_spi_i2c_slave) { | 1736 | if (!is_spi_i2c_slave) { |
| 1737 | acpi_create_platform_device(device); | 1737 | acpi_create_platform_device(device, NULL); |
| 1738 | acpi_device_set_enumerated(device); | 1738 | acpi_device_set_enumerated(device); |
| 1739 | } else { | 1739 | } else { |
| 1740 | blocking_notifier_call_chain(&acpi_reconfig_chain, | 1740 | blocking_notifier_call_chain(&acpi_reconfig_chain, |
diff --git a/drivers/platform/x86/intel-hid.c b/drivers/platform/x86/intel-hid.c index ed5874217ee7..12dbb5063376 100644 --- a/drivers/platform/x86/intel-hid.c +++ b/drivers/platform/x86/intel-hid.c | |||
| @@ -264,7 +264,7 @@ check_acpi_dev(acpi_handle handle, u32 lvl, void *context, void **rv) | |||
| 264 | return AE_OK; | 264 | return AE_OK; |
| 265 | 265 | ||
| 266 | if (acpi_match_device_ids(dev, ids) == 0) | 266 | if (acpi_match_device_ids(dev, ids) == 0) |
| 267 | if (acpi_create_platform_device(dev)) | 267 | if (acpi_create_platform_device(dev, NULL)) |
| 268 | dev_info(&dev->dev, | 268 | dev_info(&dev->dev, |
| 269 | "intel-hid: created platform device\n"); | 269 | "intel-hid: created platform device\n"); |
| 270 | 270 | ||
diff --git a/drivers/platform/x86/intel-vbtn.c b/drivers/platform/x86/intel-vbtn.c index 146d02f8c9bc..78080763df51 100644 --- a/drivers/platform/x86/intel-vbtn.c +++ b/drivers/platform/x86/intel-vbtn.c | |||
| @@ -164,7 +164,7 @@ check_acpi_dev(acpi_handle handle, u32 lvl, void *context, void **rv) | |||
| 164 | return AE_OK; | 164 | return AE_OK; |
| 165 | 165 | ||
| 166 | if (acpi_match_device_ids(dev, ids) == 0) | 166 | if (acpi_match_device_ids(dev, ids) == 0) |
| 167 | if (acpi_create_platform_device(dev)) | 167 | if (acpi_create_platform_device(dev, NULL)) |
| 168 | dev_info(&dev->dev, | 168 | dev_info(&dev->dev, |
| 169 | "intel-vbtn: created platform device\n"); | 169 | "intel-vbtn: created platform device\n"); |
| 170 | 170 | ||
diff --git a/include/linux/acpi.h b/include/linux/acpi.h index 689a8b9b9c8f..61a3d90f32b3 100644 --- a/include/linux/acpi.h +++ b/include/linux/acpi.h | |||
| @@ -555,7 +555,8 @@ int acpi_device_uevent_modalias(struct device *, struct kobj_uevent_env *); | |||
| 555 | int acpi_device_modalias(struct device *, char *, int); | 555 | int acpi_device_modalias(struct device *, char *, int); |
| 556 | void acpi_walk_dep_device_list(acpi_handle handle); | 556 | void acpi_walk_dep_device_list(acpi_handle handle); |
| 557 | 557 | ||
| 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 *); | ||
| 559 | #define ACPI_PTR(_ptr) (_ptr) | 560 | #define ACPI_PTR(_ptr) (_ptr) |
| 560 | 561 | ||
| 561 | static inline void acpi_device_set_enumerated(struct acpi_device *adev) | 562 | static inline void acpi_device_set_enumerated(struct acpi_device *adev) |
