diff options
author | Chris Metcalf <cmetcalf@mellanox.com> | 2016-11-07 15:56:37 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2016-11-10 09:18:56 -0500 |
commit | 71aeebff2c1153037fb900e17e1accb0f7812f36 (patch) | |
tree | 3196dd3470a8eab13c1fb5bfbdfbfdc32c79568f | |
parent | e0cb6b2f878d210441e8ed232e98454ccc7fd812 (diff) |
tile-srom: allow the driver to be built as a module
The code was already configured that way, but the Kconfig
file didn't support requesting it.
A buglet caused a null pointer deref when unloading the
module, but this commit also corrects that issue.
Signed-off-by: Chris Metcalf <cmetcalf@mellanox.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/char/Kconfig | 2 | ||||
-rw-r--r-- | drivers/char/tile-srom.c | 3 |
2 files changed, 3 insertions, 2 deletions
diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig index dc4f35ad19d0..c17604f8c7c1 100644 --- a/drivers/char/Kconfig +++ b/drivers/char/Kconfig | |||
@@ -577,7 +577,7 @@ config DEVPORT | |||
577 | source "drivers/s390/char/Kconfig" | 577 | source "drivers/s390/char/Kconfig" |
578 | 578 | ||
579 | config TILE_SROM | 579 | config TILE_SROM |
580 | bool "Character-device access via hypervisor to the Tilera SPI ROM" | 580 | tristate "Character-device access via hypervisor to the Tilera SPI ROM" |
581 | depends on TILE | 581 | depends on TILE |
582 | default y | 582 | default y |
583 | ---help--- | 583 | ---help--- |
diff --git a/drivers/char/tile-srom.c b/drivers/char/tile-srom.c index 398800edb2cc..3d4cca64b2d4 100644 --- a/drivers/char/tile-srom.c +++ b/drivers/char/tile-srom.c | |||
@@ -312,7 +312,8 @@ ATTRIBUTE_GROUPS(srom_dev); | |||
312 | 312 | ||
313 | static char *srom_devnode(struct device *dev, umode_t *mode) | 313 | static char *srom_devnode(struct device *dev, umode_t *mode) |
314 | { | 314 | { |
315 | *mode = S_IRUGO | S_IWUSR; | 315 | if (mode) |
316 | *mode = 0644; | ||
316 | return kasprintf(GFP_KERNEL, "srom/%s", dev_name(dev)); | 317 | return kasprintf(GFP_KERNEL, "srom/%s", dev_name(dev)); |
317 | } | 318 | } |
318 | 319 | ||