|
@@ -0,0 +1,82 @@
|
|
|
+/*
|
|
|
+ * linux/arch/arm/mach-pxa/balloon3.c
|
|
|
+ *
|
|
|
+ * Support for Balloonboard.org Balloon3 board.
|
|
|
+ *
|
|
|
+ * Author: Nick Bane, Wookey, Jonathan McDowell
|
|
|
+ * Created: June, 2006
|
|
|
+ * Copyright: Toby Churchill Ltd
|
|
|
+ * Derived from mainstone.c, by Nico Pitre
|
|
|
+ *
|
|
|
+ * 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.
|
|
|
+ */
|
|
|
+
|
|
|
+#include <linux/export.h>
|
|
|
+#include <linux/init.h>
|
|
|
+#include <linux/platform_device.h>
|
|
|
+#include <linux/interrupt.h>
|
|
|
+#include <linux/sched.h>
|
|
|
+#include <linux/bitops.h>
|
|
|
+#include <linux/fb.h>
|
|
|
+#include <linux/gpio.h>
|
|
|
+#include <linux/ioport.h>
|
|
|
+#include <linux/ucb1400.h>
|
|
|
+#include <linux/mtd/mtd.h>
|
|
|
+#include <linux/mtd/partitions.h>
|
|
|
+#include <linux/types.h>
|
|
|
+#include <linux/i2c/pcf857x.h>
|
|
|
+#include <linux/i2c/pxa-i2c.h>
|
|
|
+#include <linux/mtd/nand.h>
|
|
|
+#include <linux/mtd/physmap.h>
|
|
|
+#include <linux/regulator/max1586.h>
|
|
|
+
|
|
|
+#include <asm/setup.h>
|
|
|
+#include <asm/mach-types.h>
|
|
|
+#include <asm/irq.h>
|
|
|
+#include <asm/sizes.h>
|
|
|
+
|
|
|
+#include <asm/mach/arch.h>
|
|
|
+#include <asm/mach/map.h>
|
|
|
+#include <asm/mach/irq.h>
|
|
|
+#include <asm/mach/flash.h>
|
|
|
+
|
|
|
+#include <mach/pxa27x.h>
|
|
|
+#include <mach/balloon3.h>
|
|
|
+#include <mach/audio.h>
|
|
|
+#include <linux/platform_data/video-pxafb.h>
|
|
|
+#include <linux/platform_data/mmc-pxamci.h>
|
|
|
+#include <mach/udc.h>
|
|
|
+#include <mach/pxa27x-udc.h>
|
|
|
+#include <linux/platform_data/irda-pxaficp.h>
|
|
|
+#include <linux/platform_data/usb-ohci-pxa27x.h>
|
|
|
+
|
|
|
+#include "generic.h"
|
|
|
+#include "devices.h"
|
|
|
+
|
|
|
+/******************************************************************************
|
|
|
+ * Pin configuration
|
|
|
+ ******************************************************************************/
|
|
|
+static unsigned long balloon3_pin_config[] __initdata = {
|
|
|
+ /* Select BTUART 'COM1/ttyS0' as IO option for pins 42/43/44/45 */
|
|
|
+ GPIO42_BTUART_RXD,
|
|
|
+ GPIO43_BTUART_TXD,
|
|
|
+ GPIO44_BTUART_CTS,
|
|
|
+ GPIO45_BTUART_RTS,
|
|
|
+
|
|
|
+ /* Reset, configured as GPIO wakeup source */
|
|
|
+ GPIO1_GPIO | WAKEUP_ON_EDGE_BOTH,
|
|
|
+};
|
|
|
+
|
|
|
+/******************************************************************************
|
|
|
+ * Compatibility: Parameter parsing
|
|
|
+ ******************************************************************************/
|
|
|
+static unsigned long balloon3_irq_enabled;
|
|
|
+
|
|
|
+static unsigned long balloon3_features_present =
|
|
|
+ (1 << BALLOON3_FEATURE_OHCI) | (1 << BALLOON3_FEATURE_CF) |
|
|
|
+ (1 << BALLOON3_FEATURE_AUDIO) |
|
|
|
+ (1 << BALLOON3_FEATURE_TOPPOLY);
|
|
|
+
|
|
|
+int balloon3_has(enum balloon3_features feature)
|