Merge tag 'v3.15-rc5' into next
Merge with Linux 3.15-rc5 to sync up Wacom and other changes.
This commit is contained in:
@@ -156,7 +156,7 @@ config INPUT_MAX8925_ONKEY
|
||||
|
||||
config INPUT_MAX8997_HAPTIC
|
||||
tristate "MAXIM MAX8997 haptic controller support"
|
||||
depends on PWM && HAVE_PWM && MFD_MAX8997
|
||||
depends on PWM && MFD_MAX8997
|
||||
select INPUT_FF_MEMLESS
|
||||
help
|
||||
This option enables device driver support for the haptic controller
|
||||
@@ -470,7 +470,7 @@ config INPUT_PCF8574
|
||||
|
||||
config INPUT_PWM_BEEPER
|
||||
tristate "PWM beeper support"
|
||||
depends on PWM && HAVE_PWM
|
||||
depends on PWM
|
||||
help
|
||||
Say Y here to get support for PWM based beeper devices.
|
||||
|
||||
|
@@ -37,7 +37,6 @@ static void arizona_haptics_work(struct work_struct *work)
|
||||
struct arizona_haptics,
|
||||
work);
|
||||
struct arizona *arizona = haptics->arizona;
|
||||
struct mutex *dapm_mutex = &arizona->dapm->card->dapm_mutex;
|
||||
int ret;
|
||||
|
||||
if (!haptics->arizona->dapm) {
|
||||
@@ -67,13 +66,10 @@ static void arizona_haptics_work(struct work_struct *work)
|
||||
return;
|
||||
}
|
||||
|
||||
mutex_lock_nested(dapm_mutex, SND_SOC_DAPM_CLASS_RUNTIME);
|
||||
|
||||
ret = snd_soc_dapm_enable_pin(arizona->dapm, "HAPTICS");
|
||||
if (ret != 0) {
|
||||
dev_err(arizona->dev, "Failed to start HAPTICS: %d\n",
|
||||
ret);
|
||||
mutex_unlock(dapm_mutex);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -81,21 +77,14 @@ static void arizona_haptics_work(struct work_struct *work)
|
||||
if (ret != 0) {
|
||||
dev_err(arizona->dev, "Failed to sync DAPM: %d\n",
|
||||
ret);
|
||||
mutex_unlock(dapm_mutex);
|
||||
return;
|
||||
}
|
||||
|
||||
mutex_unlock(dapm_mutex);
|
||||
|
||||
} else {
|
||||
/* This disable sequence will be a noop if already enabled */
|
||||
mutex_lock_nested(dapm_mutex, SND_SOC_DAPM_CLASS_RUNTIME);
|
||||
|
||||
ret = snd_soc_dapm_disable_pin(arizona->dapm, "HAPTICS");
|
||||
if (ret != 0) {
|
||||
dev_err(arizona->dev, "Failed to disable HAPTICS: %d\n",
|
||||
ret);
|
||||
mutex_unlock(dapm_mutex);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -103,12 +92,9 @@ static void arizona_haptics_work(struct work_struct *work)
|
||||
if (ret != 0) {
|
||||
dev_err(arizona->dev, "Failed to sync DAPM: %d\n",
|
||||
ret);
|
||||
mutex_unlock(dapm_mutex);
|
||||
return;
|
||||
}
|
||||
|
||||
mutex_unlock(dapm_mutex);
|
||||
|
||||
ret = regmap_update_bits(arizona->regmap,
|
||||
ARIZONA_HAPTICS_CONTROL_1,
|
||||
ARIZONA_HAP_CTRL_MASK,
|
||||
@@ -155,16 +141,11 @@ static int arizona_haptics_play(struct input_dev *input, void *data,
|
||||
static void arizona_haptics_close(struct input_dev *input)
|
||||
{
|
||||
struct arizona_haptics *haptics = input_get_drvdata(input);
|
||||
struct mutex *dapm_mutex = &haptics->arizona->dapm->card->dapm_mutex;
|
||||
|
||||
cancel_work_sync(&haptics->work);
|
||||
|
||||
mutex_lock_nested(dapm_mutex, SND_SOC_DAPM_CLASS_RUNTIME);
|
||||
|
||||
if (haptics->arizona->dapm)
|
||||
snd_soc_dapm_disable_pin(haptics->arizona->dapm, "HAPTICS");
|
||||
|
||||
mutex_unlock(dapm_mutex);
|
||||
}
|
||||
|
||||
static int arizona_haptics_probe(struct platform_device *pdev)
|
||||
|
@@ -70,6 +70,7 @@
|
||||
#define BMA150_CFG_5_REG 0x11
|
||||
|
||||
#define BMA150_CHIP_ID 2
|
||||
#define BMA180_CHIP_ID 3
|
||||
#define BMA150_CHIP_ID_REG BMA150_DATA_0_REG
|
||||
|
||||
#define BMA150_ACC_X_LSB_REG BMA150_DATA_2_REG
|
||||
@@ -539,7 +540,7 @@ static int bma150_probe(struct i2c_client *client,
|
||||
}
|
||||
|
||||
chip_id = i2c_smbus_read_byte_data(client, BMA150_CHIP_ID_REG);
|
||||
if (chip_id != BMA150_CHIP_ID) {
|
||||
if (chip_id != BMA150_CHIP_ID && chip_id != BMA180_CHIP_ID) {
|
||||
dev_err(&client->dev, "BMA150 chip id error: %d\n", chip_id);
|
||||
return -EINVAL;
|
||||
}
|
||||
@@ -643,6 +644,7 @@ static UNIVERSAL_DEV_PM_OPS(bma150_pm, bma150_suspend, bma150_resume, NULL);
|
||||
|
||||
static const struct i2c_device_id bma150_id[] = {
|
||||
{ "bma150", 0 },
|
||||
{ "bma180", 0 },
|
||||
{ "smb380", 0 },
|
||||
{ "bma023", 0 },
|
||||
{ }
|
||||
|
@@ -109,7 +109,6 @@ static int da9055_onkey_probe(struct platform_device *pdev)
|
||||
|
||||
INIT_DELAYED_WORK(&onkey->work, da9055_onkey_work);
|
||||
|
||||
irq = regmap_irq_get_virq(da9055->irq_data, irq);
|
||||
err = request_threaded_irq(irq, NULL, da9055_onkey_irq,
|
||||
IRQF_TRIGGER_HIGH | IRQF_ONESHOT,
|
||||
"ONKEY", onkey);
|
||||
|
@@ -67,7 +67,7 @@ static int ixp4xx_spkr_event(struct input_dev *dev, unsigned int type, unsigned
|
||||
}
|
||||
|
||||
if (value > 20 && value < 32767)
|
||||
count = (IXP4XX_TIMER_FREQ / (value * 4)) - 1;
|
||||
count = (ixp4xx_timer_freq / (value * 4)) - 1;
|
||||
|
||||
ixp4xx_spkr_control(pin, count);
|
||||
|
||||
|
@@ -169,6 +169,7 @@ static int soc_button_pnp_probe(struct pnp_dev *pdev,
|
||||
soc_button_remove(pdev);
|
||||
return error;
|
||||
}
|
||||
continue;
|
||||
}
|
||||
|
||||
priv->children[i] = pd;
|
||||
|
Reference in New Issue
Block a user