From 468a60c35ee6467c44015ff13750bd2738f61f69 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=94=A1=E6=9E=AB?= Date: Fri, 22 Apr 2011 09:47:26 +0800 Subject: [PATCH 1/3] update board-rk29-ddr3sdk and board-rk29sdk --- arch/arm/mach-rk29/board-rk29-ddr3sdk.c | 53 +++++++++++++++++++++---- arch/arm/mach-rk29/board-rk29sdk.c | 34 +++++++++++++--- 2 files changed, 73 insertions(+), 14 deletions(-) diff --git a/arch/arm/mach-rk29/board-rk29-ddr3sdk.c b/arch/arm/mach-rk29/board-rk29-ddr3sdk.c index 4b5aa982f011..85bae2156d9e 100755 --- a/arch/arm/mach-rk29/board-rk29-ddr3sdk.c +++ b/arch/arm/mach-rk29/board-rk29-ddr3sdk.c @@ -534,6 +534,20 @@ static struct i2c_board_info __initdata board_i2c0_devices[] = { .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", @@ -626,9 +640,10 @@ static struct i2c_board_info __initdata board_i2c2_devices[] = { { .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) @@ -916,13 +931,35 @@ static int rk29_sensor_ioctrl(struct device *dev,enum rk29camera_ioctrl_cmd cmd, { 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); diff --git a/arch/arm/mach-rk29/board-rk29sdk.c b/arch/arm/mach-rk29/board-rk29sdk.c index 22442001d422..b6e7990a5af8 100755 --- a/arch/arm/mach-rk29/board-rk29sdk.c +++ b/arch/arm/mach-rk29/board-rk29sdk.c @@ -139,6 +139,13 @@ struct rk29_nand_platform_data rk29_nand_data = { #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; @@ -183,14 +190,28 @@ static int rk29_fb_io_init(struct rk29_fb_setting_info *fb_setting) } } - 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) @@ -387,7 +408,8 @@ static int EETI_EGALAX_init_platform_hw(void) 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*/ From 48d8ad46cf0339f15f3c0ba767a0f4a549fb5abd Mon Sep 17 00:00:00 2001 From: lyx Date: Thu, 21 Apr 2011 19:11:04 -0700 Subject: [PATCH 2/3] backlight: update bl_brightness --- drivers/video/backlight/wm831x_bl.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/video/backlight/wm831x_bl.c b/drivers/video/backlight/wm831x_bl.c index d0c1d6f38461..0f52691b04fa 100755 --- a/drivers/video/backlight/wm831x_bl.c +++ b/drivers/video/backlight/wm831x_bl.c @@ -24,6 +24,7 @@ #include #include #define BL_SET 255 +#define BL_MISC_VALUE 20 #define BL_INIT_VALUE 102 struct wm831x_backlight_data { struct wm831x *wm831x; @@ -117,8 +118,11 @@ err: static int wm831x_backlight_update_status(struct backlight_device *bl) { int brightness = bl->props.brightness; - if (brightness<=BL_INIT_VALUE) { - brightness = 111*brightness/51; + if (brightness<=BL_MISC_VALUE) { + brightness = 8*brightness; + } + else if (brightness<=BL_INIT_VALUE) { + brightness = 31*brightness/41 + 145; } else { brightness = 33*brightness/153 + 200; From 89db2521c502b3a812ca8b89f5d3874fd4b9b3eb Mon Sep 17 00:00:00 2001 From: phc Date: Fri, 22 Apr 2011 10:43:33 +0800 Subject: [PATCH 3/3] arch/arm/configs/rk29_phonesdk_defconfig --- arch/arm/configs/rk29_phonesdk_defconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/configs/rk29_phonesdk_defconfig b/arch/arm/configs/rk29_phonesdk_defconfig index fcc673d3d43b..7c4fdd8a9ace 100755 --- a/arch/arm/configs/rk29_phonesdk_defconfig +++ b/arch/arm/configs/rk29_phonesdk_defconfig @@ -992,7 +992,7 @@ CONFIG_ADC=y # CONFIG_ADC_RK28 is not set CONFIG_ADC_RK29=y # CONFIG_SPI_FPGA is not set -CONFIG_HEADSET_DET=y +# CONFIG_HEADSET_DET is not set # # PPS support