| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 | /* * linux/arch/arm/mach-omap2/board-omap3touchbook.c * * Copyright (C) 2009 Always Innovating * * Modified from mach-omap2/board-omap3beagleboard.c * * Initial code: Grégoire Gentil, Tim Yamin * * 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/kernel.h>#include <linux/init.h>#include <linux/platform_device.h>#include <linux/delay.h>#include <linux/err.h>#include <linux/clk.h>#include <linux/io.h>#include <linux/leds.h>#include <linux/gpio.h>#include <linux/input.h>#include <linux/gpio_keys.h>#include <linux/mtd/mtd.h>#include <linux/mtd/partitions.h>#include <linux/mtd/nand.h>#include <linux/mmc/host.h>#include <linux/platform_data/spi-omap2-mcspi.h>#include <linux/spi/spi.h>#include <linux/spi/ads7846.h>#include <linux/regulator/machine.h>#include <linux/i2c/twl.h>#include <asm/mach-types.h>#include <asm/mach/arch.h>#include <asm/mach/map.h>#include <asm/mach/flash.h>#include <asm/system_info.h>#include "common.h"#include "gpmc.h"#include <linux/platform_data/mtd-nand-omap2.h>#include "mux.h"#include "hsmmc.h"#include "board-flash.h"#include "common-board-devices.h"#include <asm/setup.h>#define OMAP3_AC_GPIO		136#define OMAP3_TS_GPIO		162#define TB_BL_PWM_TIMER		9#define TB_KILL_POWER_GPIO	168#define	NAND_CS			0static unsigned long touchbook_revision;static struct mtd_partition omap3touchbook_nand_partitions[] = {	/* All the partition sizes are listed in terms of NAND block size */	{		.name		= "X-Loader",		.offset		= 0,		.size		= 4 * NAND_BLOCK_SIZE,		.mask_flags	= MTD_WRITEABLE,	/* force read-only */	},	{		.name		= "U-Boot",		.offset		= MTDPART_OFS_APPEND,	/* Offset = 0x80000 */		.size		= 15 * NAND_BLOCK_SIZE,		.mask_flags	= MTD_WRITEABLE,	/* force read-only */	},	{		.name		= "U-Boot Env",		.offset		= MTDPART_OFS_APPEND,	/* Offset = 0x260000 */		.size		= 1 * NAND_BLOCK_SIZE,	},	{		.name		= "Kernel",		.offset		= MTDPART_OFS_APPEND,	/* Offset = 0x280000 */		.size		= 32 * NAND_BLOCK_SIZE,	},	{		.name		= "File System",		.offset		= MTDPART_OFS_APPEND,	/* Offset = 0x680000 */		.size		= MTDPART_SIZ_FULL,
 |