diff options
| author | Vladimir Zapolskiy <vladimir_zapolskiy@mentor.com> | 2015-09-04 18:47:43 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-09-04 19:54:41 -0400 |
| commit | 73858173593c31cb94bce63fe1c24eb803bb04e6 (patch) | |
| tree | d9843d5b2c3ec648501ae18821f52d78fe87aadf /drivers/media/platform/coda | |
| parent | c0a294988322a804901fe24222027fe8a34defcb (diff) | |
genalloc: add name arg to gen_pool_get() and devm_gen_pool_create()
This change modifies gen_pool_get() and devm_gen_pool_create() client
interfaces adding one more argument "name" of a gen_pool object.
Due to implementation gen_pool_get() is capable to retrieve only one
gen_pool associated with a device even if multiple gen_pools are created,
fortunately right at the moment it is sufficient for the clients, hence
provide NULL as a valid argument on both producer devm_gen_pool_create()
and consumer gen_pool_get() sides.
Because only one created gen_pool per device is addressable, explicitly
add a restriction to devm_gen_pool_create() to create only one gen_pool
per device, this implies two possible error codes returned by the
function, account it on client side (only misc/sram). This completes
client side changes related to genalloc updates.
[akpm@linux-foundation.org: gen_pool_get() cleanup]
Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@mentor.com>
Cc: Philipp Zabel <p.zabel@pengutronix.de>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
Cc: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Cc: Jean-Christophe Plagniol-Villard <plagnioj@jcrosoft.com>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Sascha Hauer <kernel@pengutronix.de>
Cc: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/media/platform/coda')
| -rw-r--r-- | drivers/media/platform/coda/coda-common.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/media/platform/coda/coda-common.c b/drivers/media/platform/coda/coda-common.c index 58f65486de33..284ac4c934ba 100644 --- a/drivers/media/platform/coda/coda-common.c +++ b/drivers/media/platform/coda/coda-common.c | |||
| @@ -2157,7 +2157,7 @@ static int coda_probe(struct platform_device *pdev) | |||
| 2157 | /* Get IRAM pool from device tree or platform data */ | 2157 | /* Get IRAM pool from device tree or platform data */ |
| 2158 | pool = of_gen_pool_get(np, "iram", 0); | 2158 | pool = of_gen_pool_get(np, "iram", 0); |
| 2159 | if (!pool && pdata) | 2159 | if (!pool && pdata) |
| 2160 | pool = gen_pool_get(pdata->iram_dev); | 2160 | pool = gen_pool_get(pdata->iram_dev, NULL); |
| 2161 | if (!pool) { | 2161 | if (!pool) { |
| 2162 | dev_err(&pdev->dev, "iram pool not available\n"); | 2162 | dev_err(&pdev->dev, "iram pool not available\n"); |
| 2163 | return -ENOMEM; | 2163 | return -ENOMEM; |
