Merge branch 'master' of git://gitorious.org/linux-on-wince-htc/linux_on_wince_htc

This commit is contained in:
Jon Benson 2010-10-15 22:00:03 +11:00
commit ff2cf1bbcd
8 changed files with 74 additions and 53 deletions

View File

@ -43,12 +43,11 @@ CONFIG_SWAP=y
#
# RCU Subsystem
#
CONFIG_TREE_RCU=y
# CONFIG_TREE_PREEMPT_RCU is not set
# CONFIG_RCU_TRACE is not set
CONFIG_RCU_FANOUT=32
# CONFIG_RCU_FANOUT_EXACT is not set
CONFIG_CLASSIC_RCU=y
# CONFIG_TREE_RCU is not set
# CONFIG_PREEMPT_RCU is not set
# CONFIG_TREE_RCU_TRACE is not set
# CONFIG_PREEMPT_RCU_TRACE is not set
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_LOG_BUF_SHIFT=20
@ -328,12 +327,11 @@ CONFIG_CPU_32v6K=y
CONFIG_CPU_V7=y
CONFIG_CPU_32v7=y
CONFIG_CPU_ABRT_EV7=y
CONFIG_CPU_PABRT_V7=y
CONFIG_CPU_PABRT_IFAR=y
CONFIG_CPU_CACHE_V7=y
CONFIG_CPU_CACHE_VIPT=y
CONFIG_CPU_COPY_V6=y
CONFIG_CPU_TLB_V7=y
CONFIG_VERIFY_PERMISSION_FAULT=y
CONFIG_CPU_HAS_ASID=y
CONFIG_CPU_CP15=y
CONFIG_CPU_CP15_MMU=y
@ -347,7 +345,8 @@ CONFIG_ARM_THUMBEE=y
# CONFIG_CPU_DCACHE_DISABLE is not set
# CONFIG_CPU_BPREDICT_DISABLE is not set
CONFIG_HAS_TLS_REG=y
CONFIG_ARM_L1_CACHE_SHIFT=5
# CONFIG_OUTER_CACHE is not set
# ONFIG_ARM_L1_CACHE_SHIFT is not set
# CONFIG_ARM_ERRATA_430973 is not set
# CONFIG_ARM_ERRATA_458693 is not set
# CONFIG_ARM_ERRATA_460075 is not set
@ -377,6 +376,7 @@ CONFIG_HZ=100
# CONFIG_THUMB2_KERNEL is not set
CONFIG_AEABI=y
# CONFIG_OABI_COMPAT is not set
# CONFIG_ARCH_FLATMEM_HAS_HOLES is not set
# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
CONFIG_HIGHMEM=y
@ -392,14 +392,10 @@ CONFIG_PAGEFLAGS_EXTENDED=y
CONFIG_SPLIT_PTLOCK_CPUS=4
# CONFIG_PHYS_ADDR_T_64BIT is not set
CONFIG_ZONE_DMA_FLAG=0
CONFIG_BOUNCE=y
CONFIG_VIRT_TO_BUS=y
CONFIG_HAVE_MLOCK=y
CONFIG_HAVE_MLOCKED_PAGE_BIT=y
# CONFIG_KSM is not set
CONFIG_DEFAULT_MMAP_MIN_ADDR=32768
CONFIG_UNEVICTABLE_LRU=y
CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
CONFIG_ALIGNMENT_TRAP=y
# CONFIG_UACCESS_WITH_MEMCPY is not set
#
# Boot options
@ -455,10 +451,10 @@ CONFIG_HAVE_AOUT=y
# Power management options
#
CONFIG_PM=y
CONFIG_PM_DEBUG=y
CONFIG_PM_VERBOSE=y
CONFIG_CAN_PM_TRACE=y
# CONFIG_PM_TRACE is not set
# CONFIG_PM_DEBUG is not set
# CONFIG_PM_VERBOSE is not set
# CONFIG_CAN_PM_TRACE is not set
CONFIG_PM_TRACE=y
CONFIG_PM_SLEEP=y
CONFIG_SUSPEND=y
# CONFIG_PM_TEST_SUSPEND is not set
@ -480,6 +476,7 @@ CONFIG_NET=y
#
# Networking options
#
CONFIG_COMPAT_NET_DEV_OPS=y
CONFIG_PACKET=y
# CONFIG_PACKET_MMAP is not set
CONFIG_UNIX=y
@ -493,8 +490,11 @@ CONFIG_NET_KEY=y
# CONFIG_NET_KEY_MIGRATE is not set
CONFIG_INET=y
# CONFIG_IP_MULTICAST is not set
# CONFIG_IP_ADVANCED_ROUTER is not set
CONFIG_IP_ADVANCED_ROUTER=y
CONFIG_IP_FIB_HASH=y
# CONFIG_ASK_IP_FIB_HASH is not set
CONFIG_IP_MULTIPLE_TABLES=y
CONFIG_IP_ROUTE_VERBOSE=y
# CONFIG_IP_PNP is not set
# CONFIG_NET_IPIP is not set
# CONFIG_NET_IPGRE is not set
@ -518,7 +518,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
CONFIG_IPV6=y
CONFIG_IPV6_PRIVACY=y
CONFIG_IPV6_ROUTER_PREF=y
# CONFIG_IPV6_ROUTE_INFO is not set
CONFIG_IPV6_ROUTE_INFO=y
CONFIG_IPV6_OPTIMISTIC_DAD=y
CONFIG_INET6_AH=y
CONFIG_INET6_ESP=y
@ -529,13 +529,14 @@ CONFIG_INET6_TUNNEL=y
CONFIG_INET6_XFRM_MODE_TRANSPORT=y
CONFIG_INET6_XFRM_MODE_TUNNEL=y
CONFIG_INET6_XFRM_MODE_BEET=y
# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=y
CONFIG_IPV6_SIT=y
CONFIG_IPV6_NDISC_NODETYPE=y
CONFIG_IPV6_TUNNEL=y
CONFIG_IPV6_MULTIPLE_TABLES=y
# CONFIG_IPV6_SUBTREES is not set
# CONFIG_IPV6_MROUTE is not set
CONFIG_IPV6_SUBTREES=y
CONFIG_IPV6_MROUTE=y
CONFIG_IPV6_PIMSM_V2=y
CONFIG_ANDROID_PARANOID_NETWORK=y
# CONFIG_NETWORK_SECMARK is not set
CONFIG_NETFILTER=y
@ -754,7 +755,7 @@ CONFIG_BT_HIDP=y
CONFIG_BT_HCIUART=y
CONFIG_BT_HCIUART_H4=y
# CONFIG_BT_HCIUART_BCSP is not set
# CONFIG_BT_HCIUART_LL is not set
CONFIG_BT_HCIUART_LL=y
# CONFIG_BT_HCIVHCI is not set
# CONFIG_BT_MRVL is not set
# CONFIG_AF_RXRPC is not set
@ -1216,7 +1217,7 @@ CONFIG_MEDIA_SUPPORT=y
#
CONFIG_VIDEO_DEV=y
CONFIG_VIDEO_V4L2_COMMON=y
# CONFIG_VIDEO_ALLOW_V4L1 is not set
CONFIG_VIDEO_ALLOW_V4L1=y
CONFIG_VIDEO_V4L1_COMPAT=y
# CONFIG_DVB_CORE is not set
CONFIG_VIDEO_MEDIA=y
@ -1237,6 +1238,7 @@ CONFIG_MEDIA_TUNER_XC2028=y
CONFIG_MEDIA_TUNER_XC5000=y
CONFIG_MEDIA_TUNER_MC44S803=y
CONFIG_VIDEO_V4L2=y
CONFIG_VIDEO_V4L1=y
CONFIG_VIDEO_CAPTURE_DRIVERS=y
# CONFIG_VIDEO_ADV_DEBUG is not set
# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set

View File

@ -56,7 +56,7 @@ int htcleo_brightness_set_bkl(uint8_t value)
int ret;
uint8_t cmd[2], data[2];
printk("microp_set_bkl(%d)\n", value);
LCMDBG("microp_set_bkl(%d)\n", value);
if (value > 9)
{

View File

@ -58,7 +58,7 @@ int htcleo_brightness_set_bkl(uint8_t value)
int ret;
uint8_t cmd[2], data[2];
pr_debug("microp_set_bkl(%d)\n", value);
LCMDBG("microp_set_bkl(%d)\n", value);
if (value > 9)
{

View File

@ -55,7 +55,9 @@ user may be able to adjust time in future
static uint16_t lsensor_adc_table[10] =
{
0x000, 0x001, 0x00F, 0x01E, 0x03C, 0x121, 0x190, 0x2BA, 0x26E, 0x3FF
0, 10, 30, 60, 100, 160, 250, 355, 465, 598
};
@ -226,7 +228,7 @@ static long lightsensor_ioctl(struct file *file, unsigned int cmd, unsigned long
mutex_lock(&api_lock);
pr_debug("%s cmd %d\n", __func__, _IOC_NR(cmd));
D("%s cmd %d\n", __func__, _IOC_NR(cmd));
if (!the_data.opened)
{
return -EIO;
@ -240,12 +242,12 @@ static long lightsensor_ioctl(struct file *file, unsigned int cmd, unsigned long
rc = -EFAULT;
break;
}
pr_info("%s ls set to: %d\n", __func__, val);
D("%s ls set to: %d\n", __func__, val);
rc = val ? lightsensor_enable() : lightsensor_disable();
break;
case LIGHTSENSOR_IOCTL_GET_ENABLED:
val = p->enabled;
pr_debug("%s enabled %d\n", __func__, val);
D("%s enabled %d\n", __func__, val);
rc = put_user(val, (unsigned long __user *)arg);
break;
default:

View File

@ -373,7 +373,7 @@ EXPORT_SYMBOL(microp_gpo_disable);
int __capella_cm3602_power(int on)
{
int rc;
printk(KERN_DEBUG "%s: Turn the capella_cm3602 power %s\n",
pr_debug("%s: Turn the capella_cm3602 power %s\n",
__func__, (on) ? "on" : "off");
if (on) {
rc = microp_gpo_enable(GPO_CM3602);

View File

@ -32,6 +32,8 @@
#define INT_PSENSOR (1<<4)
#define GPO_PROXIMITY 0x3
#define D(x...) pr_debug(x)
static int misc_opened;
static void p_sensor_do_work(struct work_struct *w);
@ -50,14 +52,14 @@ static int report_psensor_data(void)
{
int ret, ps_data = 0;
uint8_t data[3] = {0, 0, 0};
pr_info("%s\n", __func__);
D("%s\n", __func__);
ret = microp_i2c_read(MICROP_I2C_RCMD_GPIO_STATUS, data, 3);
if (ret < 0)
pr_err("%s: read data failed\n", __func__);
else {
ps_data = (data[1] & 0x1) ? 1 : 0;
pr_info("proximity %s\n", ps_data ? "FAR" : "NEAR");
D("proximity %s\n", ps_data ? "FAR" : "NEAR");
/* 0 is close, 1 is far */
input_report_abs(the_data.input_dev, ABS_DISTANCE, ps_data);
@ -73,7 +75,7 @@ static int capella_cm3602_enable(struct capella_cm3602_data *data)
{
int rc;
if (data->enabled) {
pr_info("%s: already enabled\n", __func__);
D("%s: already enabled\n", __func__);
return 0;
}
@ -95,7 +97,7 @@ static int capella_cm3602_disable(struct capella_cm3602_data *data)
{
int rc = -EIO;
if (!data->enabled) {
pr_info("%s: already disabled\n", __func__);
D("%s: already disabled\n", __func__);
return 0;
}
@ -161,7 +163,7 @@ static long capella_cm3602_ioctl(struct file *file,
unsigned int cmd, unsigned long arg)
{
int val;
pr_info("%s cmd %d\n", __func__, _IOC_NR(cmd));
D("%s cmd %d\n", __func__, _IOC_NR(cmd));
switch (cmd) {
case CAPELLA_CM3602_IOCTL_ENABLE:
if (get_user(val, (unsigned long __user *)arg))

View File

@ -870,7 +870,18 @@ static void __init htcleo_init(void)
perflock_init(&htcleo_perflock_data);
init_dex_comm();
#ifdef CONFIG_SERIAL_MSM_HS
msm_device_uart_dm1.dev.platform_data = &msm_uart_dm1_pdata;
msm_device_uart_dm1.name = "msm_serial_hs_bcm"; /* for bcm */
msm_device_uart_dm1.resource[3].end = 6;
#endif
bt_export_bd_address();
htcleo_audio_init();
msm_device_i2c_init();
/* set the gpu power rail to manual mode so clk en/dis will not
* turn off gpu power, and hang it on resume */
@ -879,20 +890,10 @@ static void __init htcleo_init(void)
mdelay(100);
htcleo_kgsl_power(true);
#ifdef CONFIG_MICROP_COMMON
htcleo_microp_init();
#endif
htcleo_init_panel();
msm_device_i2c_init();
platform_add_devices(devices, ARRAY_SIZE(devices));
#ifdef CONFIG_SERIAL_MSM_HS
msm_device_uart_dm1.dev.platform_data = &msm_uart_dm1_pdata;
msm_device_uart_dm1.name = "msm_serial_hs_bcm"; /* for bcm */
msm_device_uart_dm1.resource[3].end = 6;
#endif
htcleo_init_panel();
i2c_register_board_info(0, base_i2c_devices, ARRAY_SIZE(base_i2c_devices));
@ -903,8 +904,6 @@ static void __init htcleo_init(void)
htcleo_init_mmc(0);
platform_device_register(&htcleo_timed_gpios);
bt_export_bd_address();
htcleo_audio_init();
#ifdef CONFIG_USB_ANDROID
msm_hsusb_set_vbus_state(htcleo_get_vbus_state());

View File

@ -1802,10 +1802,12 @@ static long msm_ioctl_common(struct msm_device *pmsm,
int msm_camera_flash(struct msm_sync *sync, int level)
{
#if defined(CONFIG_MACH_HTCLEO)
static int last_level = -1;
#endif
int flash_level = 0;
uint8_t phy_flash = 0;
int ret = 0;
if (!sync->sdata->flash_cfg) {
pr_err("%s: camera flash is not supported.\n", __func__);
return -EINVAL;
@ -1834,6 +1836,13 @@ int msm_camera_flash(struct msm_sync *sync, int level)
phy_flash = 1;
break;
case MSM_CAMERA_LED_OFF:
#if defined(CONFIG_MACH_HTCLEO)
//--patch for missing flash---
if (last_level == MSM_CAMERA_LED_LOW)
sync->sdata->flash_cfg->postpone_led_mode = MSM_CAMERA_LED_HIGH;
//--------------------
#endif
flash_level = 0;
phy_flash = 1;
break;
@ -1841,10 +1850,12 @@ int msm_camera_flash(struct msm_sync *sync, int level)
pr_err("%s: invalid flash level %d.\n", __func__, level);
return -EINVAL;
}
if (phy_flash)
ret = sync->sdata->flash_cfg->camera_flash(flash_level);
#if defined(CONFIG_MACH_HTCLEO)
last_level = level;
#endif
return ret;
}
@ -2236,6 +2247,11 @@ static void msm_vfe_sync(struct msm_vfe_resp *vdata,
sync->sdata->flash_cfg->postpone_led_mode);
sync->sdata->flash_cfg->camera_flash(
sync->sdata->flash_cfg->postpone_led_mode);
#if defined(CONFIG_MACH_HTCLEO)
//--patch form missing flash-------------
sync->sdata->flash_cfg->postpone_led_mode=MSM_CAMERA_LED_OFF;
//----------------------------
#endif
}
}
}