diff options
author | Bartosz Golaszewski <brgl@bgdev.pl> | 2017-11-27 11:48:38 +0100 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2017-12-02 22:42:23 +0100 |
commit | 20c35ac473116101120b3e170f294bc5bc70bbc4 (patch) | |
tree | 003843920d39d61fa6d3b7e859458380f6aeeb68 | |
parent | f3b47170e048478a61063194d74fa72ffad716fc (diff) |
gpio: mockup: parse the module params in init, not probe
If the module parameters are invalid, we should bail out from the init
function instead of detecting it during the device probe. That way we
don't even allow the user to load the module if we don't accept the
arguments.
Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-rw-r--r-- | drivers/gpio/gpio-mockup.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/gpio/gpio-mockup.c b/drivers/gpio/gpio-mockup.c index d21c6d651287..b70f3b0c30b1 100644 --- a/drivers/gpio/gpio-mockup.c +++ b/drivers/gpio/gpio-mockup.c @@ -275,9 +275,6 @@ static int gpio_mockup_probe(struct platform_device *pdev) struct gpio_mockup_chip *chips; char *chip_name; - if (gpio_mockup_params_nr < 2 || (gpio_mockup_params_nr % 2)) - return -EINVAL; - /* Each chip is described by two values. */ num_chips = gpio_mockup_params_nr / 2; @@ -333,6 +330,9 @@ static int __init gpio_mockup_init(void) { int err; + if (gpio_mockup_params_nr < 2 || (gpio_mockup_params_nr % 2)) + return -EINVAL; + gpio_mockup_dbg_dir = debugfs_create_dir("gpio-mockup-event", NULL); if (!gpio_mockup_dbg_dir) pr_err("%s: error creating debugfs directory\n", |