aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-06-14 17:51:25 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2014-06-14 17:51:25 -0400
commit4a54e5e517cdc0044c9c9542e53736500a9391dc (patch)
treecfe4c412fbaec60400cc4f9a211f6f179189126d
parent1ad96bb0a20fa26b952b2250e89d14b6397bf618 (diff)
parentb357d7b58f379ebe8038cd97b6204f2f5c52220d (diff)
Merge tag 'hsi-for-3.16-fixes1' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi
Pull HSI build fixes from Sebastian Reichel: - tighten dependency between ssi-protocol and omap-ssi to fix build failures with randconfig. - use normal module refcounting in omap driver to fix build with disabled module support * tag 'hsi-for-3.16-fixes1' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi: hsi: omap_ssi_port: use normal module refcounting HSI: fix omap ssi driver dependency
-rw-r--r--drivers/hsi/clients/Kconfig2
-rw-r--r--drivers/hsi/controllers/omap_ssi_port.c4
2 files changed, 3 insertions, 3 deletions
diff --git a/drivers/hsi/clients/Kconfig b/drivers/hsi/clients/Kconfig
index 71b9f9ab86e4..bc60dec3f586 100644
--- a/drivers/hsi/clients/Kconfig
+++ b/drivers/hsi/clients/Kconfig
@@ -15,7 +15,7 @@ config NOKIA_MODEM
15 15
16config SSI_PROTOCOL 16config SSI_PROTOCOL
17 tristate "SSI protocol" 17 tristate "SSI protocol"
18 depends on HSI && PHONET && (OMAP_SSI=y || OMAP_SSI=m) 18 depends on HSI && PHONET && OMAP_SSI
19 help 19 help
20 If you say Y here, you will enable the SSI protocol aka McSAAB. 20 If you say Y here, you will enable the SSI protocol aka McSAAB.
21 21
diff --git a/drivers/hsi/controllers/omap_ssi_port.c b/drivers/hsi/controllers/omap_ssi_port.c
index b8693f0b27fe..29aea0b93360 100644
--- a/drivers/hsi/controllers/omap_ssi_port.c
+++ b/drivers/hsi/controllers/omap_ssi_port.c
@@ -1116,8 +1116,7 @@ static int __init ssi_port_probe(struct platform_device *pd)
1116 1116
1117 dev_dbg(&pd->dev, "init ssi port...\n"); 1117 dev_dbg(&pd->dev, "init ssi port...\n");
1118 1118
1119 err = ref_module(THIS_MODULE, ssi->owner); 1119 if (!try_module_get(ssi->owner)) {
1120 if (err) {
1121 dev_err(&pd->dev, "could not increment parent module refcount (err=%d)\n", 1120 dev_err(&pd->dev, "could not increment parent module refcount (err=%d)\n",
1122 err); 1121 err);
1123 return -ENODEV; 1122 return -ENODEV;
@@ -1254,6 +1253,7 @@ static int __exit ssi_port_remove(struct platform_device *pd)
1254 1253
1255 omap_ssi->port[omap_port->port_id] = NULL; 1254 omap_ssi->port[omap_port->port_id] = NULL;
1256 platform_set_drvdata(pd, NULL); 1255 platform_set_drvdata(pd, NULL);
1256 module_put(ssi->owner);
1257 pm_runtime_disable(&pd->dev); 1257 pm_runtime_disable(&pd->dev);
1258 1258
1259 return 0; 1259 return 0;