Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'acpi-4.9-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

Pull ACPI fix from Rafael Wysocki:
"Fix a recent regression in the 8250_dw serial driver introduced by
adding a quirk for the APM X-Gene SoC to it which uncovered an issue
related to the handling of built-in device properties in the core ACPI
device enumeration code (Heikki Krogerus)"

* tag 'acpi-4.9-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
ACPI / platform: Add support for build-in properties

+15 -23
+2 -8
drivers/acpi/acpi_apd.c
··· 122 122 int ret; 123 123 124 124 if (!dev_desc) { 125 - pdev = acpi_create_platform_device(adev); 125 + pdev = acpi_create_platform_device(adev, NULL); 126 126 return IS_ERR_OR_NULL(pdev) ? PTR_ERR(pdev) : 1; 127 127 } 128 128 ··· 139 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 142 adev->driver_data = pdata; 149 - pdev = acpi_create_platform_device(adev); 143 + pdev = acpi_create_platform_device(adev, dev_desc->properties); 150 144 if (!IS_ERR_OR_NULL(pdev)) 151 145 return 1; 152 146
+2 -8
drivers/acpi/acpi_lpss.c
··· 395 395 396 396 dev_desc = (const struct lpss_device_desc *)id->driver_data; 397 397 if (!dev_desc) { 398 - pdev = acpi_create_platform_device(adev); 398 + pdev = acpi_create_platform_device(adev, NULL); 399 399 return IS_ERR_OR_NULL(pdev) ? PTR_ERR(pdev) : 1; 400 400 } 401 401 pdata = kzalloc(sizeof(*pdata), GFP_KERNEL); ··· 451 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 454 adev->driver_data = pdata; 461 - pdev = acpi_create_platform_device(adev); 455 + pdev = acpi_create_platform_device(adev, dev_desc->properties); 462 456 if (!IS_ERR_OR_NULL(pdev)) { 463 457 return 1; 464 458 }
+4 -1
drivers/acpi/acpi_platform.c
··· 50 50 /** 51 51 * acpi_create_platform_device - Create platform device for ACPI device node 52 52 * @adev: ACPI device node to create a platform device for. 53 + * @properties: Optional collection of build-in properties. 53 54 * 54 55 * Check if the given @adev can be represented as a platform device and, if 55 56 * that's the case, create and register a platform device, populate its common ··· 58 57 * 59 58 * Name of the platform device will be the same as @adev's. 60 59 */ 61 - struct platform_device *acpi_create_platform_device(struct acpi_device *adev) 60 + struct platform_device *acpi_create_platform_device(struct acpi_device *adev, 61 + struct property_entry *properties) 62 62 { 63 63 struct platform_device *pdev = NULL; 64 64 struct platform_device_info pdevinfo; ··· 108 106 pdevinfo.res = resources; 109 107 pdevinfo.num_res = count; 110 108 pdevinfo.fwnode = acpi_fwnode_handle(adev); 109 + pdevinfo.properties = properties; 111 110 112 111 if (acpi_dma_supported(adev)) 113 112 pdevinfo.dma_mask = DMA_BIT_MASK(32);
+2 -2
drivers/acpi/dptf/int340x_thermal.c
··· 34 34 const struct acpi_device_id *id) 35 35 { 36 36 if (IS_ENABLED(CONFIG_INT340X_THERMAL)) 37 - acpi_create_platform_device(adev); 37 + acpi_create_platform_device(adev, NULL); 38 38 /* Intel SoC DTS thermal driver needs INT3401 to set IRQ descriptor */ 39 39 else if (IS_ENABLED(CONFIG_INTEL_SOC_DTS_THERMAL) && 40 40 id->driver_data == INT3401_DEVICE) 41 - acpi_create_platform_device(adev); 41 + acpi_create_platform_device(adev, NULL); 42 42 return 1; 43 43 } 44 44
+1 -1
drivers/acpi/scan.c
··· 1734 1734 &is_spi_i2c_slave); 1735 1735 acpi_dev_free_resource_list(&resource_list); 1736 1736 if (!is_spi_i2c_slave) { 1737 - acpi_create_platform_device(device); 1737 + acpi_create_platform_device(device, NULL); 1738 1738 acpi_device_set_enumerated(device); 1739 1739 } else { 1740 1740 blocking_notifier_call_chain(&acpi_reconfig_chain,
+1 -1
drivers/platform/x86/intel-hid.c
··· 264 264 return AE_OK; 265 265 266 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 268 dev_info(&dev->dev, 269 269 "intel-hid: created platform device\n"); 270 270
+1 -1
drivers/platform/x86/intel-vbtn.c
··· 164 164 return AE_OK; 165 165 166 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 168 dev_info(&dev->dev, 169 169 "intel-vbtn: created platform device\n"); 170 170
+2 -1
include/linux/acpi.h
··· 555 555 int acpi_device_modalias(struct device *, char *, int); 556 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 560 #define ACPI_PTR(_ptr) (_ptr) 560 561 561 562 static inline void acpi_device_set_enumerated(struct acpi_device *adev)