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 <[email protected]> --- This is in response to Paul's patch (see the in-reply-to) suggesting we remove the module infrastructure from the code instead. I can push this via the tile tree since it's a tile-only device, or Greg, if you'd prefer to take it via your tree, that's fine too. drivers/char/Kconfig | 2 +- drivers/char/tile-srom.c | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig index dcc09739a54e..70124ca5c33d 100644 --- a/drivers/char/Kconfig +++ b/drivers/char/Kconfig @@ -578,7 +578,7 @@ config DEVPORT source "drivers/s390/char/Kconfig" config TILE_SROM - bool "Character-device access via hypervisor to the Tilera SPI ROM" + tristate "Character-device access via hypervisor to the Tilera SPI ROM" depends on TILE default y ---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); static char *srom_devnode(struct device *dev, umode_t *mode) { - *mode = S_IRUGO | S_IWUSR; + if (mode) + *mode = 0644; return kasprintf(GFP_KERNEL, "srom/%s", dev_name(dev)); } -- 2.7.2

