#include <linux/kernel.h>
#include <linux/errno.h>
+#ifdef CONFIG_GPIOLIB
+#include <linux/gpio.h>
+#endif
Please create a new struct, a new file and put all the GPIO stuff in
there rather than #if bombing the driver.
You can then declare blank methods for the gpio stuff if GPIO is not
compiled in - ie in the headers
#ifdef CONFIG_GPIOLIB
extern int ftdi_gpio_open(struct ftdi_private *priv);
etc...
#else
extern inline int ftdi_gpio_open(struct ftdi_private *priv) { return 0 };
#endif