static void sep0611_ts_setup(void)
{
//	disable_irq(SEP0611_TOUCH_INTSRC);
   	sep0611_gpio_setirq(SEP0611_TOUCH_INT, LOW_TRIG);

	sep0611_gpio_cfgpin(SEP0611_GPE12, SSI1_RXD);
	sep0611_gpio_cfgpin(SEP0611_GPE13, SSI1_TXD);
	sep0611_gpio_cfgpin(SEP0611_GPE14, SSI1_CS);
	sep0611_gpio_cfgpin(SEP0611_GPE15, SSI1_CLK);

	/* spi寄存器的配置  */
	writel(0x0, base + SSI_ENR);
	writel(0xcB, base + SSI_CONTROL0);
	writel(0x00, base + SSI_CONTROL1);
	writel(0x200, base + SSI_BAUDR);
	writel(0x1, base + SSI_TXFTLR);
	writel(0x0, base + SSI_RXFTLR);
	writel(0x0, base + SSI_DMACR);
	writel(0x0, base + SSI_IMR);
	writel(0x1, base + SSI_SER);
	writel(0x0, base + SSI_ENR);

	mdelay(2);

	sep0611_gpio_clrirq(SEP0611_TOUCH_INT); /* 清除中断  */
//	enable_irq(SEP0611_TOUCH_INTSRC);
}
Beispiel #2
0
static __inline void sep0611_spk_gpio_init(void)
{
	alsa_dbg("%s\n", __func__);

    sep0611_gpio_cfgpin(SEP0611_SPK_CTL, SEP0611_GPIO_IO);	/* GPIO */
    sep0611_gpio_dirpin(SEP0611_SPK_CTL, SEP0611_GPIO_OUT);	/* output */		
}
Beispiel #3
0
static __inline void sep0611_codec_gpio_init(void)
{
	alsa_dbg("%s\n", __func__);
	
    sep0611_gpio_cfgpin(SEP0611_AUDIO_EN, SEP0611_GPIO_IO);	/* GPIO */
    sep0611_gpio_dirpin(SEP0611_AUDIO_EN, SEP0611_GPIO_OUT);/* output */
}
/*init USB phy ,enable irq */    
void musb_platform_enable(struct musb *musb)
{
#ifdef SEP0611_PHY_RESET	
    sep0611_gpio_cfgpin(SEP0611_PHY_RESET, SEP0611_GPIO_IO);   /*AO_PORT general purpose  */
    sep0611_gpio_dirpin(SEP0611_PHY_RESET, SEP0611_GPIO_OUT);   /* AO_PORT output    */
    sep0611_gpio_setpin(SEP0611_PHY_RESET, 1);                 /* AO_PORT output data */
#endif   
 
#ifdef SEP0611_PHY_RST

    sep0611_gpio_cfgpin(SEP0611_USB_EN, SEP0611_GPIO_IO);          
    sep0611_gpio_dirpin(SEP0611_USB_EN, SEP0611_GPIO_OUT);
    sep0611_gpio_setpin(SEP0611_USB_EN, 1);
    
    sep0611_gpio_cfgpin(SEP0611_PHY_RST, SEP0611_GPIO_IO);        
    sep0611_gpio_dirpin(SEP0611_PHY_RST, SEP0611_GPIO_OUT);
    sep0611_gpio_setpin(SEP0611_PHY_RST, 1);  
    
    sep0611_gpio_cfgpin(SEP0611_USB5V_EN, SEP0611_GPIO_IO);       
    sep0611_gpio_dirpin(SEP0611_USB5V_EN, SEP0611_GPIO_OUT);
    sep0611_gpio_setpin(SEP0611_USB5V_EN, 1); 

    sep0611_gpio_cfgpin(SEP0611_USB_DE_SEL, SEP0611_GPIO_IO);    
    sep0611_gpio_dirpin(SEP0611_USB_DE_SEL, SEP0611_GPIO_OUT);
    sep0611_gpio_setpin(SEP0611_USB_DE_SEL, 0);

    sep0611_gpio_cfgpin(SEP0611_VBUS_IN_SEL, SEP0611_GPIO_IO);   
    sep0611_gpio_dirpin(SEP0611_VBUS_IN_SEL, SEP0611_GPIO_OUT);
    sep0611_gpio_setpin(SEP0611_VBUS_IN_SEL, 1);
	
    sep0611_gpio_cfgpin(SEP0611_HVBUS_ON, SEP0611_GPIO_IO);        
    sep0611_gpio_dirpin(SEP0611_HVBUS_ON, SEP0611_GPIO_OUT);
    sep0611_gpio_setpin(SEP0611_HVBUS_ON, 0);

    sep0611_gpio_cfgpin(SEP0611_HID_VAL, SEP0611_GPIO_IO);       
    sep0611_gpio_dirpin(SEP0611_HID_VAL, SEP0611_GPIO_OUT);
    sep0611_gpio_setpin(SEP0611_HID_VAL, 0);
    
    sep0611_gpio_cfgpin(SEP0611_OTG_VBUS_ON, SEP0611_GPIO_IO);       
    sep0611_gpio_dirpin(SEP0611_OTG_VBUS_ON, SEP0611_GPIO_IN);
    sep0611_gpio_setpin(SEP0611_OTG_VBUS_ON, 0); 
   
#endif
    
#ifdef SEP0611_ULPI_RST
    sep0611_gpio_cfgpin(SEP0611_USB_EN, SEP0611_GPIO_IO);          
    sep0611_gpio_dirpin(SEP0611_USB_EN, SEP0611_GPIO_OUT);
    sep0611_gpio_setpin(SEP0611_USB_EN, 1);

    sep0611_gpio_cfgpin(SEP0611_ULPI_RST, SEP0611_GPIO_IO);          
    sep0611_gpio_dirpin(SEP0611_ULPI_RST, SEP0611_GPIO_OUT);
    sep0611_gpio_setpin(SEP0611_ULPI_RST, 1);

    sep0611_gpio_cfgpin(SEP0611_HID_VAL, SEP0611_GPIO_IO);          
    sep0611_gpio_dirpin(SEP0611_HID_VAL, SEP0611_GPIO_OUT);
    sep0611_gpio_setpin(SEP0611_HID_VAL, 0);

    sep0611_gpio_cfgpin(SEP0611_USB_DE_SEL, SEP0611_GPIO_IO);          
    sep0611_gpio_dirpin(SEP0611_USB_DE_SEL, SEP0611_GPIO_OUT);
    sep0611_gpio_setpin(SEP0611_USB_DE_SEL, 0);

#endif

    SEP0611_INT_ENABLE(INTSRC_USB);
    SEP0611_INT_ENABLE(INTSRC_USBDMA);
}