| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 | /* * linux/arch/arm/mach-omap2/board-n8x0.c * * Copyright (C) 2005-2009 Nokia Corporation * Author: Juha Yrjola <juha.yrjola@nokia.com> * * Modified from mach-omap2/board-generic.c * * 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/clk.h>#include <linux/delay.h>#include <linux/gpio.h>#include <linux/init.h>#include <linux/io.h>#include <linux/irq.h>#include <linux/stddef.h>#include <linux/i2c.h>#include <linux/spi/spi.h>#include <linux/usb/musb.h>#include <linux/platform_data/i2c-cbus-gpio.h>#include <linux/platform_data/spi-omap2-mcspi.h>#include <linux/platform_data/mtd-onenand-omap2.h>#include <linux/mfd/menelaus.h>#include <sound/tlv320aic3x.h>#include <asm/mach/arch.h>#include <asm/mach-types.h>#include "common.h"#include "mmc.h"#include "mux.h"#include "gpmc-onenand.h"#define TUSB6010_ASYNC_CS	1#define TUSB6010_SYNC_CS	4#define TUSB6010_GPIO_INT	58#define TUSB6010_GPIO_ENABLE	0#define TUSB6010_DMACHAN	0x3f#if defined(CONFIG_I2C_CBUS_GPIO) || defined(CONFIG_I2C_CBUS_GPIO_MODULE)static struct i2c_cbus_platform_data n8x0_cbus_data = {	.clk_gpio = 66,	.dat_gpio = 65,	.sel_gpio = 64,};static struct platform_device n8x0_cbus_device = {	.name	= "i2c-cbus-gpio",	.id	= 3,	.dev	= {		.platform_data = &n8x0_cbus_data,	},};static struct i2c_board_info n8x0_i2c_board_info_3[] __initdata = {	{		I2C_BOARD_INFO("retu-mfd", 0x01),	},};static void __init n8x0_cbus_init(void){	const int retu_irq_gpio = 108;	if (gpio_request_one(retu_irq_gpio, GPIOF_IN, "Retu IRQ"))		return;	irq_set_irq_type(gpio_to_irq(retu_irq_gpio), IRQ_TYPE_EDGE_RISING);	n8x0_i2c_board_info_3[0].irq = gpio_to_irq(retu_irq_gpio);	i2c_register_board_info(3, n8x0_i2c_board_info_3,				ARRAY_SIZE(n8x0_i2c_board_info_3));	platform_device_register(&n8x0_cbus_device);}#else /* CONFIG_I2C_CBUS_GPIO */static void __init n8x0_cbus_init(void){}#endif /* CONFIG_I2C_CBUS_GPIO */#if defined(CONFIG_USB_MUSB_TUSB6010) || defined(CONFIG_USB_MUSB_TUSB6010_MODULE)/* * Enable or disable power to TUSB6010. When enabling, turn on 3.3 V and * 1.5 V voltage regulators of PM companion chip. Companion chip will then * provide then PGOOD signal to TUSB6010 which will release it from reset. */
 |