config SH_R7785RP
        bool "R7785RP board support"
        depends on CPU_SUBTYPE_SH7785
+       select GENERIC_GPIO
 
 endchoice
 
 
 #
-# Makefile for the R7780RP-1 specific parts of the kernel
+# Makefile for the Highlander specific parts of the kernel
 #
-irqinit-$(CONFIG_SH_R7780MP)   := irq-r7780mp.o
-irqinit-$(CONFIG_SH_R7785RP)   := irq-r7785rp.o
-irqinit-$(CONFIG_SH_R7780RP)   := irq-r7780rp.o
-obj-y                          := setup.o $(irqinit-y)
+obj-y                          := setup.o
+obj-$(CONFIG_SH_R7780RP)       += irq-r7780rp.o
+obj-$(CONFIG_SH_R7780MP)       += irq-r7780mp.o
+obj-$(CONFIG_SH_R7785RP)       += irq-r7785rp.o pinmux-r7785rp.o
 
 ifneq ($(CONFIG_SH_R7785RP),y)
 obj-$(CONFIG_PUSH_SWITCH)      += psw.o
 
--- /dev/null
+/*
+ * Copyright (C) 2008 Paul Mundt
+ *
+ * This file is subject to the terms and conditions of the GNU General Public
+ * License.  See the file "COPYING" in the main directory of this archive
+ * for more details.
+ */
+#include <linux/init.h>
+#include <linux/gpio.h>
+#include <cpu/sh7785.h>
+
+void __init highlander_plat_pinmux_setup(void)
+{
+       /* SCIF0 */
+       gpio_request(GPIO_FN_SCIF0_CTS, NULL);
+       gpio_request(GPIO_FN_SCIF0_RTS, NULL);
+       gpio_request(GPIO_FN_SCIF0_SCK, NULL);
+       gpio_request(GPIO_FN_SCIF0_RXD, NULL);
+       gpio_request(GPIO_FN_SCIF0_TXD, NULL);
+}
 
                         (ver >> 12) & 0xf, (ver >> 8) & 0xf,
                         (ver >>  4) & 0xf, ver & 0xf);
 
+       highlander_plat_pinmux_setup();
+
        /*
         * Enable the important clocks right away..
         */
 
 
 unsigned char *highlander_plat_irq_setup(void);
 
+#ifdef CONFIG_SH_R7785RP
+void highlander_plat_pinmux_setup(void);
+#else
+#define highlander_plat_pinmux_setup() do { } while (0)
+#endif
+
 #endif  /* __ASM_SH_RENESAS_R7780RP */