mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-10 04:48:04 +09:00
1.make sure power key can wake up system and light lcd even though pressure time is short.
2.mask some unused log.
This commit is contained in:
@@ -41,6 +41,8 @@ struct wm831x_on {
|
||||
struct input_dev *dev;
|
||||
struct delayed_work work;
|
||||
struct wm831x *wm831x;
|
||||
int flag_resume;
|
||||
spinlock_t flag_lock;
|
||||
struct wake_lock wm831x_on_wake;
|
||||
};
|
||||
|
||||
@@ -63,24 +65,39 @@ void rk28_send_wakeup_key(void)
|
||||
}
|
||||
#endif
|
||||
|
||||
#if 0
|
||||
#if 1
|
||||
|
||||
static int wm831x_on_suspend_noirq(struct device *dev)
|
||||
{
|
||||
DBG("%s\n",__FUNCTION__);
|
||||
|
||||
if(!g_wm831x_on)
|
||||
{
|
||||
printk("%s:addr err!\n",__FUNCTION__);
|
||||
return -1;
|
||||
}
|
||||
|
||||
spin_lock(&g_wm831x_on->flag_lock);
|
||||
g_wm831x_on->flag_resume = 0;
|
||||
spin_unlock(&g_wm831x_on->flag_lock);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int wm831x_on_resume_noirq(struct device *dev)
|
||||
{
|
||||
int poll, ret;
|
||||
//int poll, ret;
|
||||
|
||||
if(!g_wm831x_on)
|
||||
{
|
||||
printk("%s:addr err!\n",__FUNCTION__);
|
||||
return;
|
||||
return -1;
|
||||
}
|
||||
|
||||
spin_lock(&g_wm831x_on->flag_lock);
|
||||
g_wm831x_on->flag_resume = 1;
|
||||
spin_unlock(&g_wm831x_on->flag_lock);
|
||||
|
||||
#if 0
|
||||
ret = wm831x_reg_read(g_wm831x_on->wm831x, WM831X_ON_PIN_CONTROL);
|
||||
if (ret >= 0) {
|
||||
poll = !(ret & WM831X_ON_PIN_STS);
|
||||
@@ -89,7 +106,7 @@ static int wm831x_on_resume_noirq(struct device *dev)
|
||||
input_sync(g_wm831x_on->dev);
|
||||
DBG("%s:poll=%d,ret=0x%x\n",__FUNCTION__,poll,ret);
|
||||
}
|
||||
|
||||
#endif
|
||||
DBG("%s\n",__FUNCTION__);
|
||||
return 0;
|
||||
}
|
||||
@@ -173,11 +190,17 @@ static irqreturn_t wm831x_on_irq(int irq, void *data)
|
||||
int poll, ret;
|
||||
|
||||
//wake_lock(&wm831x_on->wm831x_on_wake);
|
||||
|
||||
read_again:
|
||||
|
||||
ret = wm831x_reg_read(wm831x, WM831X_ON_PIN_CONTROL);
|
||||
|
||||
ret = wm831x_reg_read(wm831x, WM831X_ON_PIN_CONTROL);//it may be unpress if start to read register now
|
||||
if (ret >= 0) {
|
||||
if(wm831x_on->flag_resume)
|
||||
{
|
||||
poll = 1;
|
||||
spin_lock(&wm831x_on->flag_lock);
|
||||
wm831x_on->flag_resume = 0;
|
||||
spin_unlock(&wm831x_on->flag_lock);
|
||||
}
|
||||
else
|
||||
poll = !(ret & WM831X_ON_PIN_STS);
|
||||
input_report_key(wm831x_on->dev, KEY_POWER, poll);
|
||||
input_sync(wm831x_on->dev);
|
||||
@@ -200,8 +223,8 @@ read_again:
|
||||
|
||||
static int __devinit wm831x_on_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct wm831x *wm831x = dev_get_drvdata(pdev->dev.parent);;
|
||||
struct wm831x_on *wm831x_on;
|
||||
struct wm831x *wm831x = dev_get_drvdata(pdev->dev.parent);
|
||||
struct wm831x_on *wm831x_on = NULL;
|
||||
int irq = platform_get_irq(pdev, 0);
|
||||
int ret;
|
||||
printk("%s irq=%d\n", __FUNCTION__,irq);
|
||||
@@ -230,7 +253,7 @@ static int __devinit wm831x_on_probe(struct platform_device *pdev)
|
||||
wm831x_on->dev->dev.parent = &pdev->dev;
|
||||
g_wm831x_on = wm831x_on;
|
||||
|
||||
// wm831x_on_pm_init();
|
||||
wm831x_on_pm_init();
|
||||
|
||||
ret = request_threaded_irq(irq, NULL, wm831x_on_irq,
|
||||
IRQF_TRIGGER_RISING, "wm831x_on",
|
||||
|
||||
@@ -810,7 +810,7 @@ static void ili2102_ts_resume_work_func(struct work_struct *work)
|
||||
printk("%s:request irq=%d failed,ret=%d\n",__FUNCTION__,ts->client->irq,ret);
|
||||
|
||||
PREPARE_DELAYED_WORK(&ts->work, ili2102_ts_work_func);
|
||||
printk("%s,irq=%d\n",__FUNCTION__,ts->client->irq);
|
||||
DBG("%s,irq=%d\n",__FUNCTION__,ts->client->irq);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -143,7 +143,7 @@ static int wm831x_gp_ldo_set_voltage(struct regulator_dev *rdev,
|
||||
{
|
||||
struct wm831x_ldo *ldo = rdev_get_drvdata(rdev);
|
||||
int reg = ldo->base + WM831X_LDO_ON_CONTROL;
|
||||
printk("%s base=%x,%d,%d\n", __FUNCTION__,ldo->base,min_uV,max_uV);
|
||||
//printk("%s base=%x,%d,%d\n", __FUNCTION__,ldo->base,min_uV,max_uV);
|
||||
return wm831x_gp_ldo_set_voltage_int(rdev, reg, min_uV, max_uV);
|
||||
}
|
||||
|
||||
@@ -166,7 +166,7 @@ static int wm831x_gp_ldo_get_voltage(struct regulator_dev *rdev)
|
||||
ret = wm831x_reg_read(wm831x, reg);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
printk("%s base=%x,ret=%x\n", __FUNCTION__,ldo->base,ret);
|
||||
//printk("%s base=%x,ret=%x\n", __FUNCTION__,ldo->base,ret);
|
||||
ret &= WM831X_LDO1_ON_VSEL_MASK;
|
||||
|
||||
return wm831x_gp_ldo_list_voltage(rdev, ret);
|
||||
|
||||
@@ -124,7 +124,7 @@ static int aw9364_backlight_update_status(struct backlight_device *bl)
|
||||
if (bl->props.state & BL_CORE_SUSPENDED)
|
||||
brightness = 0;
|
||||
|
||||
printk("backlight brightness=%d\n", brightness);
|
||||
DBG("backlight brightness=%d\n", brightness);
|
||||
|
||||
return aw9364_backlight_set(bl, brightness);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user