.flags = 0,
},
#endif
+#if defined (CONFIG_SND_SOC_alc5621)
+ {
+ .type = "ALC5621",
+ .addr = 0x1a,
+ .flags = 0,
+ },
+#endif
+#if defined (CONFIG_SND_SOC_alc5631)
+ {
+ .type = "rt5631",
+ .addr = 0x1a,
+ .flags = 0,
+ },
+#endif
#if defined (CONFIG_SND_SOC_RK1000)
{
.type = "rk1000_i2c_codec",
{
.type = "p1003_touch",
.addr = 0x04,
- .flags = 0,
+ .flags = 0, //I2C_M_NEED_DELAY
.irq = RK29_PIN0_PA2,
.platform_data = &p1003_info,
+ //.udelay = 100
},
#endif
#if defined (CONFIG_EETI_EGALAX)
{
if (camera_flash != INVALID_GPIO) {
if (camera_io_init & RK29_CAM_FLASHACTIVE_MASK) {
- if (on) {
- gpio_set_value(camera_flash, ((camera_ioflag&RK29_CAM_FLASHACTIVE_MASK)>>RK29_CAM_FLASHACTIVE_BITPOS));
- //printk("\n%s..%s..FlashPin=%d ..PinLevel = %x \n",__FUNCTION__,dev_name(dev),camera_flash, ((camera_ioflag&RK29_CAM_FLASHACTIVE_MASK)>>RK29_CAM_FLASHACTIVE_BITPOS));
- } else {
- gpio_set_value(camera_flash,(((~camera_ioflag)&RK29_CAM_FLASHACTIVE_MASK)>>RK29_CAM_FLASHACTIVE_BITPOS));
- //printk("\n%s..%s..FlashPin= %d..PinLevel = %x \n",__FUNCTION__,dev_name(dev), camera_flash, (((~camera_ioflag)&RK29_CAM_FLASHACTIVE_MASK)>>RK29_CAM_FLASHACTIVE_BITPOS));
- }
+ switch (on)
+ {
+ case Flash_Off:
+ {
+ gpio_set_value(camera_flash,(((~camera_ioflag)&RK29_CAM_FLASHACTIVE_MASK)>>RK29_CAM_FLASHACTIVE_BITPOS));
+ //printk("\n%s..%s..FlashPin= %d..PinLevel = %x \n",__FUNCTION__,dev_name(dev), camera_flash, (((~camera_ioflag)&RK29_CAM_FLASHACTIVE_MASK)>>RK29_CAM_FLASHACTIVE_BITPOS));
+ break;
+ }
+
+ case Flash_On:
+ {
+ gpio_set_value(camera_flash, ((camera_ioflag&RK29_CAM_FLASHACTIVE_MASK)>>RK29_CAM_FLASHACTIVE_BITPOS));
+ //printk("\n%s..%s..FlashPin=%d ..PinLevel = %x \n",__FUNCTION__,dev_name(dev),camera_flash, ((camera_ioflag&RK29_CAM_FLASHACTIVE_MASK)>>RK29_CAM_FLASHACTIVE_BITPOS));
+ break;
+ }
+
+ case Flash_Torch:
+ {
+ gpio_set_value(camera_flash, ((camera_ioflag&RK29_CAM_FLASHACTIVE_MASK)>>RK29_CAM_FLASHACTIVE_BITPOS));
+ //printk("\n%s..%s..FlashPin=%d ..PinLevel = %x \n",__FUNCTION__,dev_name(dev),camera_flash, ((camera_ioflag&RK29_CAM_FLASHACTIVE_MASK)>>RK29_CAM_FLASHACTIVE_BITPOS));
+ break;
+ }
+
+ default:
+ {
+ printk("\n%s..%s..Flash command(%d) is invalidate \n",__FUNCTION__,dev_name(dev),on);
+ break;
+ }
+ }
} else {
ret = RK29_CAM_EIO_REQUESTFAIL;
printk("\n%s..%s..FlashPin=%d request failed!\n",__FUNCTION__,dev_name(dev),camera_flash);
#define FB_LCD_STANDBY_VALUE GPIO_HIGH
//#endif
+/*****************************************************************************************
+* touch screen devices
+* author: cf@rock-chips.com
+*****************************************************************************************/
+#define TOUCH_SCREEN_STANDBY_PIN INVALID_GPIO
+#define TOUCH_SCREEN_STANDBY_VALUE GPIO_HIGH
+
static int rk29_lcd_io_init(void)
{
int ret = 0;
}
}
- if(fb_setting->disp_on_en && (FB_LCD_STANDBY_PIN != INVALID_GPIO))
+ if(fb_setting->disp_on_en)
{
- ret = gpio_request(FB_LCD_STANDBY_PIN, NULL);
- if(ret != 0)
+ if(FB_LCD_STANDBY_PIN != INVALID_GPIO)
{
- gpio_free(FB_LCD_STANDBY_PIN);
- printk(">>>>>> FB_LCD_STANDBY_PIN gpio_request err \n ");
+ ret = gpio_request(FB_LCD_STANDBY_PIN, NULL);
+ if(ret != 0)
+ {
+ gpio_free(FB_LCD_STANDBY_PIN);
+ printk(">>>>>> FB_LCD_STANDBY_PIN gpio_request err \n ");
+ }
}
+ else
+ {
+ ret = gpio_request(TOUCH_SCREEN_STANDBY_PIN, NULL);
+ if(ret != 0)
+ {
+ gpio_free(TOUCH_SCREEN_STANDBY_PIN);
+ printk(">>>>>> TOUCH_SCREEN_STANDBY_PIN gpio_request err \n ");
+ }
+ gpio_direction_output(TOUCH_SCREEN_STANDBY_PIN, 0);
+ gpio_set_value(TOUCH_SCREEN_STANDBY_PIN, TOUCH_SCREEN_STANDBY_VALUE);
+ }
}
if(FB_LCD_CABC_EN_PIN != INVALID_GPIO)
static struct eeti_egalax_platform_data eeti_egalax_info = {
.model= 1003,
.init_platform_hw= EETI_EGALAX_init_platform_hw,
-
+ .standby_pin = TOUCH_SCREEN_STANDBY_PIN,
+ .standby_value = TOUCH_SCREEN_STANDBY_VALUE,
};
#endif
/*MMA8452 gsensor*/