sh: pfc: Make gpio chip support optional where possible.

This implements some Kconfig knobs for ensuring that the PFC gpio chip
can be disabled or built as a module in the cases where it's optional, or
forcibly enabled in cases where it's not.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
diff --git a/drivers/sh/Kconfig b/drivers/sh/Kconfig
index f168a61..d7dbfee 100644
--- a/drivers/sh/Kconfig
+++ b/drivers/sh/Kconfig
@@ -2,4 +2,19 @@
 
 source "drivers/sh/intc/Kconfig"
 
+comment "Pin function controller options"
+
+config SH_PFC
+	# XXX move off the gpio dependency
+	depends on GENERIC_GPIO
+	select GPIO_SH_PFC if ARCH_REQUIRE_GPIOLIB
+	def_bool y
+
+config GPIO_SH_PFC
+	tristate "SuperH PFC GPIO support"
+	depends on SH_PFC && GPIOLIB
+	help
+	  This enables support for GPIOs within the SoC's pin function
+	  controller.
+
 endmenu
diff --git a/drivers/sh/Makefile b/drivers/sh/Makefile
index be5b293..f5d93e8 100644
--- a/drivers/sh/Makefile
+++ b/drivers/sh/Makefile
@@ -6,5 +6,6 @@
 obj-$(CONFIG_HAVE_CLK)		+= clk/
 obj-$(CONFIG_MAPLE)		+= maple/
 obj-$(CONFIG_SUPERHYWAY)	+= superhyway/
-obj-$(CONFIG_GENERIC_GPIO)	+= pfc.o pfc-gpio.o
+obj-$(CONFIG_SH_PFC)		+= pfc.o
+obj-$(CONFIG_GPIO_SH_PFC)	+= pfc-gpio.o
 obj-y				+= pm_runtime.o