summaryrefslogtreecommitdiffstats
path: root/0010-driver-core-platform-Add-support-for-built-in-device.patch
diff options
context:
space:
mode:
Diffstat (limited to '0010-driver-core-platform-Add-support-for-built-in-device.patch')
-rw-r--r--0010-driver-core-platform-Add-support-for-built-in-device.patch112
1 files changed, 0 insertions, 112 deletions
diff --git a/0010-driver-core-platform-Add-support-for-built-in-device.patch b/0010-driver-core-platform-Add-support-for-built-in-device.patch
deleted file mode 100644
index 823198ef4..000000000
--- a/0010-driver-core-platform-Add-support-for-built-in-device.patch
+++ /dev/null
@@ -1,112 +0,0 @@
-From 00bbc1d8e46a92ce7bd80622cf4b09c3b727a741 Mon Sep 17 00:00:00 2001
-From: Mika Westerberg <mika.westerberg@linux.intel.com>
-Date: Mon, 30 Nov 2015 17:11:38 +0200
-Subject: [PATCH 10/16] driver core: platform: Add support for built-in device
- properties
-
-Make it possible to pass built-in device properties to platform device
-drivers. This is useful if the system does not have any firmware interface
-like Device Tree or ACPI which provides these.
-
-Properties associated with the platform device will be automatically
-released when the corresponding device is removed.
-
-Suggested-by: Arnd Bergmann <arnd@arndb.de>
-Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
-Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
-Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
----
- drivers/base/platform.c | 25 +++++++++++++++++++++++++
- include/linux/platform_device.h | 5 +++++
- 2 files changed, 30 insertions(+)
-
-diff --git a/drivers/base/platform.c b/drivers/base/platform.c
-index 1dd6d3b..d77ed0c 100644
---- a/drivers/base/platform.c
-+++ b/drivers/base/platform.c
-@@ -26,6 +26,7 @@
- #include <linux/acpi.h>
- #include <linux/clk/clk-conf.h>
- #include <linux/limits.h>
-+#include <linux/property.h>
-
- #include "base.h"
- #include "power/power.h"
-@@ -299,6 +300,22 @@ int platform_device_add_data(struct platform_device *pdev, const void *data,
- EXPORT_SYMBOL_GPL(platform_device_add_data);
-
- /**
-+ * platform_device_add_properties - add built-in properties to a platform device
-+ * @pdev: platform device to add properties to
-+ * @pset: properties to add
-+ *
-+ * The function will take deep copy of the properties in @pset and attach
-+ * the copy to the platform device. The memory associated with properties
-+ * will be freed when the platform device is released.
-+ */
-+int platform_device_add_properties(struct platform_device *pdev,
-+ const struct property_set *pset)
-+{
-+ return device_add_property_set(&pdev->dev, pset);
-+}
-+EXPORT_SYMBOL_GPL(platform_device_add_properties);
-+
-+/**
- * platform_device_add - add a platform device to device hierarchy
- * @pdev: platform device we're adding
- *
-@@ -409,6 +426,8 @@ void platform_device_del(struct platform_device *pdev)
- if (r->parent)
- release_resource(r);
- }
-+
-+ device_remove_property_set(&pdev->dev);
- }
- }
- EXPORT_SYMBOL_GPL(platform_device_del);
-@@ -487,6 +506,12 @@ struct platform_device *platform_device_register_full(
- if (ret)
- goto err;
-
-+ if (pdevinfo->pset) {
-+ ret = platform_device_add_properties(pdev, pdevinfo->pset);
-+ if (ret)
-+ goto err;
-+ }
-+
- ret = platform_device_add(pdev);
- if (ret) {
- err:
-diff --git a/include/linux/platform_device.h b/include/linux/platform_device.h
-index dc777be..dba40b1 100644
---- a/include/linux/platform_device.h
-+++ b/include/linux/platform_device.h
-@@ -18,6 +18,7 @@
- #define PLATFORM_DEVID_AUTO (-2)
-
- struct mfd_cell;
-+struct property_set;
-
- struct platform_device {
- const char *name;
-@@ -70,6 +71,8 @@ struct platform_device_info {
- const void *data;
- size_t size_data;
- u64 dma_mask;
-+
-+ const struct property_set *pset;
- };
- extern struct platform_device *platform_device_register_full(
- const struct platform_device_info *pdevinfo);
-@@ -167,6 +170,8 @@ extern int platform_device_add_resources(struct platform_device *pdev,
- unsigned int num);
- extern int platform_device_add_data(struct platform_device *pdev,
- const void *data, size_t size);
-+extern int platform_device_add_properties(struct platform_device *pdev,
-+ const struct property_set *pset);
- extern int platform_device_add(struct platform_device *pdev);
- extern void platform_device_del(struct platform_device *pdev);
- extern void platform_device_put(struct platform_device *pdev);
---
-2.5.0
-