From: CMY <cmy@rock-chips.com>
Date: Thu, 25 Dec 2014 03:39:38 +0000 (+0800)
Subject: ion: export ion_device for some kernel modules
X-Git-Tag: firefly_0821_release~4263^2~25^2~8
X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=82f69029fca78b9cf94680b671e3bf46186bdcf0;p=firefly-linux-kernel-4.4.55.git

ion: export ion_device for some kernel modules
(cherry picked from commit c32433f1e0847cffdee4e0c04c6d8ee7d64392bc)

Signed-off-by: CMY <cmy@rock-chips.com>
---

diff --git a/drivers/staging/android/ion/rockchip/rockchip_ion.c b/drivers/staging/android/ion/rockchip/rockchip_ion.c
index db9c0d951da4..360881b02ab7 100755
--- a/drivers/staging/android/ion/rockchip/rockchip_ion.c
+++ b/drivers/staging/android/ion/rockchip/rockchip_ion.c
@@ -31,7 +31,9 @@
 #include <linux/of_fdt.h>
 #endif
 
-static struct ion_device *idev;
+struct ion_device *rockchip_ion_dev;
+EXPORT_SYMBOL(rockchip_ion_dev);
+
 static int num_heaps;
 static struct ion_heap **heaps;
 
@@ -109,7 +111,7 @@ static int rockchip_ion_populate_heap(struct ion_platform_heap *heap)
 
 struct ion_client *rockchip_ion_client_create(const char *name)
 {
-	return ion_client_create(idev, name);
+	return ion_client_create(rockchip_ion_dev, name);
 }
 EXPORT_SYMBOL(rockchip_ion_client_create);
 
@@ -152,6 +154,7 @@ static long rockchip_custom_ioctl (struct ion_client *client, unsigned int cmd,
 static int rockchip_ion_probe(struct platform_device *pdev)
 {
 	struct ion_platform_data *pdata;
+	struct ion_device *idev;
 	int err;
 	int i;
 
@@ -178,6 +181,7 @@ static int rockchip_ion_probe(struct platform_device *pdev)
 		kfree(heaps);
 		return PTR_ERR(idev);
 	}
+	rockchip_ion_dev = idev;
 	/* create the heaps as specified in the board file */
 	for (i = 0; i < num_heaps; i++) {
 		struct ion_platform_heap *heap_data = &pdata->heaps[i];