diff options
author | Paul Gortmaker <paul.gortmaker@windriver.com> | 2016-09-12 18:16:31 -0400 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2016-09-15 14:04:42 +0200 |
commit | d47529b2e9fe0ec2eb1f072afad8849f52e385c4 (patch) | |
tree | e3a175e093454ff2aea2ded26977ff40bf8d6ddd /include/linux/gpio | |
parent | 39d80072222428aaf73276c6fd66185e6f622bd9 (diff) | |
download | lwn-d47529b2e9fe0ec2eb1f072afad8849f52e385c4.tar.gz lwn-d47529b2e9fe0ec2eb1f072afad8849f52e385c4.zip |
gpio: don't include module.h in shared driver header
Most shared headers in include/linux don't need to know what the
internals of a struct module are; all they care about is that it
is a struct and hence they may require a pointer to one.
The advantage in this is that module.h is including a lot of stuff
itself, and an otherwise empty C file that just contains module.h
will result in ~750kB from CPP (compared to say 12kB from init.h)
So we have approximately 50 instances of "struct module;" in the
various include/linux headers already that help us keep module.h
out of other headers; here we do the same for gpio.
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Alexandre Courbot <gnurou@gmail.com>
Cc: linux-gpio@vger.kernel.org
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'include/linux/gpio')
-rw-r--r-- | include/linux/gpio/driver.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/gpio/driver.h b/include/linux/gpio/driver.h index 50882e09289b..216e6f275aa8 100644 --- a/include/linux/gpio/driver.h +++ b/include/linux/gpio/driver.h @@ -3,7 +3,6 @@ #include <linux/device.h> #include <linux/types.h> -#include <linux/module.h> #include <linux/irq.h> #include <linux/irqchip/chained_irq.h> #include <linux/irqdomain.h> @@ -16,6 +15,7 @@ struct of_phandle_args; struct device_node; struct seq_file; struct gpio_device; +struct module; #ifdef CONFIG_GPIOLIB |