Exemplo n.º 1
0
static int uart_wakeup(pm_wakeup_src_t src, int enable)
{
	unsigned int ret = 0;
	mfp_cfg_t m;

	if (enable) {
		if (src.bits.uart1) {
			if (is_uart_gpio()) {
				m = MFP_CFG(GPIO53, AF0) | MFP_LPM_EDGE_FALL;
				pxa3xx_mfp_config(&m, 1);
				ret |= PXA95x_PM_WE_GENERIC(13);
			} else {
				m = GPIO53_UART1_RXD | MFP_LPM_EDGE_FALL;
				pxa3xx_mfp_config(&m, 1);
				ret |= PXA95x_PM_WE_GENERIC(9);
			}
		}
		if (src.bits.uart2) {
			if (is_uart_gpio()) {
				m = MFP_CFG(GPIO45, AF0) | MFP_LPM_EDGE_FALL;
				pxa3xx_mfp_config(&m, 1);
				ret |= PXA95x_PM_WE_GENERIC(13);
			} else {
				m = GPIO45_UART3_RXD | MFP_LPM_EDGE_FALL;
				pxa3xx_mfp_config(&m, 1);
				/* note: on pxa930, uart2 use this bit */
				ret |= PXA95x_PM_WE_GENERIC(2);
			}
		}
	} else {
		if (src.bits.uart1) {
			m = GPIO53_UART1_RXD | MFP_LPM_EDGE_NONE;
			pxa3xx_mfp_config(&m, 1);
		}
		if (src.bits.uart2) {
			m = GPIO45_UART3_RXD | MFP_LPM_EDGE_NONE;
			pxa3xx_mfp_config(&m, 1);
		}
	}
	return ret;
}
Exemplo n.º 2
0
	GPIO111_UART2_TXD,

	/* UART 3 configuration */
	GPIO30_UART3_RXD,
	GPIO31_UART3_TXD,

	/* UHC */
	GPIO2_2_USBH_PEN,
	GPIO3_2_USBH_PWR,

	/* I2C */
	GPIO32_I2C_SCL,
	GPIO33_I2C_SDA,

	/* PCMCIA */
	MFP_CFG(GPIO59, AF7),	/* PRST ; AF7 to tristate */
	MFP_CFG(GPIO61, AF7),	/* PCE1 ; AF7 to tristate */
	MFP_CFG(GPIO60, AF7),	/* PCE2 ; AF7 to tristate */
	MFP_CFG(GPIO62, AF7),	/* PCD ; AF7 to tristate */
	MFP_CFG(GPIO56, AF7),	/* PSKTSEL ; AF7 to tristate */
	GPIO27_GPIO,		/* RDnWR ; input/tristate */
	GPIO50_GPIO,		/* PREG ; input/tristate */
	GPIO2_RDY,
	GPIO5_NPIOR,
	GPIO6_NPIOW,
	GPIO7_NPIOS16,
	GPIO8_NPWAIT,
	GPIO29_GPIO,		/* PRDY (READY GPIO) */
	GPIO57_GPIO,		/* PPEN (POWER GPIO) */
	GPIO81_GPIO,		/* PCD (DETECT GPIO) */
	GPIO77_GPIO,		/* PRST (RESET GPIO) */
	/* Keypad */
	GPIO16_KP_DKIN0 | MFP_PULL_HIGH,
	GPIO17_KP_DKIN1 | MFP_PULL_HIGH,
	GPIO18_KP_DKIN2 | MFP_PULL_HIGH,
	GPIO19_KP_DKIN3 | MFP_PULL_HIGH,
	GPIO20_KP_DKIN4 | MFP_PULL_HIGH,
	GPIO22_KP_DKIN6 | MFP_PULL_HIGH,

	PMIC_PMIC_INT | MFP_LPM_EDGE_FALL,

	/* HDMI */
	GPIO59_HDMI_DET,
	GPIO54_HDMI_CEC,

	/* OTG vbus enable signal */
	MFP_CFG(GPIO82, AF0),

	/* HSIC1 reset pin*/
	MFP_CFG_LPM(GPIO96, AF0, DRIVE_LOW),

	GPIO101_GPIO, /* TS INT*/
	GPIO85_GPIO, /* TS_IO_EN */
};

static unsigned long mmc1_pin_config[] __initdata = {
	GPIO131_MMC1_DAT3,
	GPIO132_MMC1_DAT2,
	GPIO133_MMC1_DAT1,
	GPIO134_MMC1_DAT0,
	GPIO136_MMC1_CMD,
	GPIO135_MMC1_CLK,
	CSM_GPIO85_XotgDRV_VBUS,


	// [email protected] -these two were left out before
	/* i2c bus */
	GPIO105_CI2C_SDA,
	GPIO106_CI2C_SCL,

	/* UART1 */
	/*********
	GPIO107_UART1_RXD,
	GPIO108_UART1_TXD,
	**********/

	//Added to ensure UART1 input works
	MFP_CFG(GPIO109, AF0),

	/* SSP0 */
	GPIO113_I2S_MCLK,
	GPIO114_I2S_FRM,
	GPIO115_I2S_BCLK,
	GPIO116_I2S_RXD,
	GPIO117_I2S_TXD,

#if defined(CONFIG_WLAN_8688_SDIO) || defined(CONFIG_WLAN_8688_SDIO_MODULE)

	/* sdh MMC2, wlan*/

	// [email protected] - the Silvermoon board with eSD boot uses MMC2
#if defined(CONFIG_CHUMBY_SILVERMOON_MMC2_WIFI)
 	GPIO90_MMC2_DAT3,
Exemplo n.º 5
0
#include <mach/irqs.h>
#include <plat/pxa3xx_pmic.h>
#include <plat/pxa_u2o.h>

#include <plat/generic.h>
#include <mach/mmc.h>
#include <mach/camera.h>
#include <mach/ov529.h>

#include "common.h"
#include <linux/delay.h>

/* MFP configurations */
static unsigned long ipcam_pin_config[] __initdata = {
	/* DEBUG UART3 */
	MFP_CFG(GPIO30, AF2),
	MFP_CFG(GPIO31, AF2),

	/* MMC3_CD */
	MFP_CFG(GPIO2, AF5),

	/* MMC3 DAT3-0/CLK/CMD */
	MFP_CFG(GPIO4,	AF6),
	MFP_CFG(GPIO5,	AF6),
	MFP_CFG(GPIO6,	AF6),
	MFP_CFG(GPIO7,	AF6),
	MFP_CFG(GPIO35,	AF6),
	MFP_CFG(GPIO36,	AF6),

	/* MMC4_CD */
	MFP_CFG(GPIO77, AF0),