Index: linux-2.6.15gum/include/asm-arm/arch-pxa/gumstix.h
===================================================================
--- /dev/null
+++ linux-2.6.15gum/include/asm-arm/arch-pxa/gumstix.h
@@ -0,0 +1,82 @@
+/*
+ *  linux/include/asm-arm/arch-pxa/gumstix.h
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+
+/* BTRESET - Reset line to Bluetooth module, active low signal. */
+#define GPIO_GUMSTIX_BTRESET          7
+#define GPIO_GUMSTIX_BTRESET_MD		(GPIO_GUMSTIX_BTRESET | GPIO_OUT)
+
+
+/* GPIOn - Input from MAX823 (or equiv), normalizing USB +5V 
+     into a clean interrupt signal for determining cable presence 
+     On the original gumstix, this is GPIO81, and GPIO83 needs to be defined as well.
+     On the gumstix F, this moves to GPIO17 and GPIO37 */
+/* GPIOx - Connects to USB D+ and used as a pull-up after GPIOn 
+     has detected a cable insertion; driven low otherwise. */
+
+#ifdef CONFIG_ARCH_GUMSTIX_ORIG
+
+#define GPIO_GUMSTIX_USB_GPIOn		81
+#define GPIO_GUMSTIX_USB_GPIOx		83
+
+#else
+
+#define GPIO_GUMSTIX_USB_GPIOn		35
+#define GPIO_GUMSTIX_USB_GPIOx		41
+
+#endif
+
+#define GUMSTIX_USB_INTR_IRQ		IRQ_GPIO(GPIO_GUMSTIX_USB_GPIOn)    /* usb state change */
+#define GPIO_GUMSTIX_USB_GPIOn_MD	(GPIO_GUMSTIX_USB_GPIOn | GPIO_IN)
+#define GPIO_GUMSTIX_USB_GPIOx_CON_MD	(GPIO_GUMSTIX_USB_GPIOx | GPIO_OUT)
+#define GPIO_GUMSTIX_USB_GPIOx_DIS_MD	(GPIO_GUMSTIX_USB_GPIOx | GPIO_IN)
+
+
+/*
+ * SMC Ethernet definitions
+ * ETH_RST provides a hardware reset line to the ethernet chip
+ * ETH is the IRQ line in from the ethernet chip to the PXA
+ */
+#define GPIO_GUMSTIX_ETH0_RST		80
+#define GPIO_GUMSTIX_ETH0_RST_MD	(GPIO_GUMSTIX_ETH0_RST | GPIO_OUT)
+#define GPIO_GUMSTIX_ETH1_RST		52
+#define GPIO_GUMSTIX_ETH1_RST_MD	(GPIO_GUMSTIX_ETH1_RST | GPIO_OUT)
+
+#define GPIO_GUMSTIX_ETH0		36
+#define GPIO_GUMSTIX_ETH0_MD		(GPIO_GUMSTIX_ETH0 | GPIO_IN)
+#define GUMSTIX_ETH0_IRQ		IRQ_GPIO(GPIO_GUMSTIX_ETH0)
+#define GPIO_GUMSTIX_ETH1		27
+#define GPIO_GUMSTIX_ETH1_MD		(GPIO_GUMSTIX_ETH1 | GPIO_IN)
+#define GUMSTIX_ETH1_IRQ		IRQ_GPIO(GPIO_GUMSTIX_ETH1)
+
+
+/*
+ * The following are missing from pxa-regs.h
+ */
+
+#define GPIO4_nBVD1			4
+#define GPIO4_nSTSCHG			GPIO4_nBVD1
+#define GPIO8_RESET			8
+#define GPIO11_nPCD1			11
+#define GPIO22_nINPACK			22
+#define GPIO26_PRDY_nBSY0		26
+#define GPIO36_nBVD2			36
+
+#define GPIO4_nBVD1_MD			( GPIO4_nBVD1| GPIO_IN )
+#define GPIO4_nSTSCHG_MD		( GPIO4_nSTSCHG | GPIO_IN )
+#define GPIO8_RESET_MD			( GPIO8_RESET | GPIO_OUT )
+#define GPIO11_nPCD1_MD			( GPIO11_nPCD1 | GPIO_IN )
+#define GPIO22_nINPACK_MD		( GPIO22_nINPACK | GPIO_IN )
+#define GPIO26_PRDY_nBSY0_MD		( GPIO26_PRDY_nBSY0 | GPIO_IN )
+#define GPIO36_nBVD2_MD			( GPIO36_nBVD2 | GPIO_IN )
+
+#define GUMSTIX_nSTSCHG_IRQ		IRQ_GPIO(GPIO4_nSTSCHG)
+#define GUMSTIX_nPCD1_IRQ		IRQ_GPIO(GPIO11_nPCD1)
+#define GUSMTIX_nBVD1_IRQ		IRQ_GPIO(GPIO4_nBVD1)
+#define GUMSTIX_nBVD2_IRQ		IRQ_GPIO(GPIO36_nBVD2)
+#define GUMSTIX_PRDY_nBSY0_IRQ		IRQ_GPIO(GPIO26_PRDY_nBSY0)