| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 | /* * KZM-A9-GT board support * * Copyright (C) 2012	Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; version 2 of the License. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */#include <linux/delay.h>#include <linux/gpio.h>#include <linux/gpio_keys.h>#include <linux/io.h>#include <linux/irq.h>#include <linux/i2c.h>#include <linux/i2c/pcf857x.h>#include <linux/input.h>#include <linux/mmc/host.h>#include <linux/mmc/sh_mmcif.h>#include <linux/mmc/sh_mobile_sdhi.h>#include <linux/mfd/tmio.h>#include <linux/platform_device.h>#include <linux/regulator/fixed.h>#include <linux/regulator/machine.h>#include <linux/smsc911x.h>#include <linux/usb/r8a66597.h>#include <linux/usb/renesas_usbhs.h>#include <linux/videodev2.h>#include <sound/sh_fsi.h>#include <sound/simple_card.h>#include <mach/irqs.h>#include <mach/sh73a0.h>#include <mach/common.h>#include <asm/hardware/cache-l2x0.h>#include <asm/hardware/gic.h>#include <asm/mach-types.h>#include <asm/mach/arch.h>#include <video/sh_mobile_lcdc.h>/* * external GPIO */#define GPIO_PCF8575_BASE	(GPIO_NR)#define GPIO_PCF8575_PORT10	(GPIO_NR + 8)#define GPIO_PCF8575_PORT11	(GPIO_NR + 9)#define GPIO_PCF8575_PORT12	(GPIO_NR + 10)#define GPIO_PCF8575_PORT13	(GPIO_NR + 11)#define GPIO_PCF8575_PORT14	(GPIO_NR + 12)#define GPIO_PCF8575_PORT15	(GPIO_NR + 13)#define GPIO_PCF8575_PORT16	(GPIO_NR + 14)/* Dummy supplies, where voltage doesn't matter */static struct regulator_consumer_supply dummy_supplies[] = {	REGULATOR_SUPPLY("vddvario", "smsc911x"),	REGULATOR_SUPPLY("vdd33a", "smsc911x"),};/* * FSI-AK4648 * * this command is required when playback. * * # amixer set "LINEOUT Mixer DACL" on *//* SMSC 9221 */static struct resource smsc9221_resources[] = {	[0] = {		.start	= 0x10000000, /* CS4 */		.end	= 0x100000ff,		.flags	= IORESOURCE_MEM,	},	[1] = {		.start	= intcs_evt2irq(0x260), /* IRQ3 */		.flags	= IORESOURCE_IRQ,	},};static struct smsc911x_platform_config smsc9221_platdata = {	.flags		= SMSC911X_USE_32BIT | SMSC911X_SAVE_MAC_ADDRESS,	.phy_interface	= PHY_INTERFACE_MODE_MII,	.irq_polarity	= SMSC911X_IRQ_POLARITY_ACTIVE_LOW,	.irq_type	= SMSC911X_IRQ_TYPE_PUSH_PULL,};static struct platform_device smsc_device = {	.name		= "smsc911x",
 |