diff options
author | Stephen Rothwell <sfr@canb.auug.org.au> | 2016-12-09 15:02:13 +1100 |
---|---|---|
committer | Stephen Rothwell <sfr@canb.auug.org.au> | 2016-12-09 15:02:13 +1100 |
commit | 142aa37b222a5b536bcca0f8b7c6bb247500c0a0 (patch) | |
tree | 808eb0ec0fb80444d2f8b62919d9052d93e42594 | |
parent | 08bc45127241675bc5fc85037382e99a575d65c1 (diff) | |
parent | 669ae5dabe7af6638e7f16b461e6d4a2288534c1 (diff) |
Merge remote-tracking branch 'extcon/extcon-next'
-rw-r--r-- | drivers/extcon/extcon-arizona.c | 20 | ||||
-rw-r--r-- | drivers/extcon/extcon-max14577.c | 6 | ||||
-rw-r--r-- | drivers/extcon/extcon-max77693.c | 12 | ||||
-rw-r--r-- | drivers/extcon/extcon-max77843.c | 24 | ||||
-rw-r--r-- | drivers/extcon/extcon-palmas.c | 5 | ||||
-rw-r--r-- | drivers/extcon/extcon-rt8973a.c | 6 | ||||
-rw-r--r-- | drivers/extcon/extcon-sm5502.c | 6 | ||||
-rw-r--r-- | drivers/extcon/extcon.c | 2 | ||||
-rw-r--r-- | include/linux/extcon/extcon-adc-jack.h | 2 |
9 files changed, 51 insertions, 32 deletions
diff --git a/drivers/extcon/extcon-arizona.c b/drivers/extcon/extcon-arizona.c index d836d4ce5ee4..ed78b7c26627 100644 --- a/drivers/extcon/extcon-arizona.c +++ b/drivers/extcon/extcon-arizona.c @@ -236,12 +236,8 @@ static void arizona_extcon_set_mode(struct arizona_extcon_info *info, int mode) mode %= info->micd_num_modes; - if (arizona->pdata.micd_pol_gpio > 0) - gpio_set_value_cansleep(arizona->pdata.micd_pol_gpio, - info->micd_modes[mode].gpio); - else - gpiod_set_value_cansleep(info->micd_pol_gpio, - info->micd_modes[mode].gpio); + gpiod_set_value_cansleep(info->micd_pol_gpio, + info->micd_modes[mode].gpio); regmap_update_bits(arizona->regmap, ARIZONA_MIC_DETECT_1, ARIZONA_MICD_BIAS_SRC_MASK, @@ -1412,21 +1408,21 @@ static int arizona_extcon_probe(struct platform_device *pdev) regmap_update_bits(arizona->regmap, ARIZONA_GP_SWITCH_1, ARIZONA_SW1_MODE_MASK, arizona->pdata.gpsw); - if (arizona->pdata.micd_pol_gpio > 0) { + if (pdata->micd_pol_gpio > 0) { if (info->micd_modes[0].gpio) mode = GPIOF_OUT_INIT_HIGH; else mode = GPIOF_OUT_INIT_LOW; - ret = devm_gpio_request_one(&pdev->dev, - arizona->pdata.micd_pol_gpio, - mode, - "MICD polarity"); + ret = devm_gpio_request_one(&pdev->dev, pdata->micd_pol_gpio, + mode, "MICD polarity"); if (ret != 0) { dev_err(arizona->dev, "Failed to request GPIO%d: %d\n", - arizona->pdata.micd_pol_gpio, ret); + pdata->micd_pol_gpio, ret); goto err_register; } + + info->micd_pol_gpio = gpio_to_desc(pdata->micd_pol_gpio); } else { if (info->micd_modes[0].gpio) mode = GPIOD_OUT_HIGH; diff --git a/drivers/extcon/extcon-max14577.c b/drivers/extcon/extcon-max14577.c index 12e26c4e7763..f6414b7fa5bc 100644 --- a/drivers/extcon/extcon-max14577.c +++ b/drivers/extcon/extcon-max14577.c @@ -531,8 +531,10 @@ static int max14577_parse_irq(struct max14577_muic_info *info, int irq_type) case MAX14577_IRQ_INT1_ADC: case MAX14577_IRQ_INT1_ADCLOW: case MAX14577_IRQ_INT1_ADCERR: - /* Handle all of accessory except for - type of charger accessory */ + /* + * Handle all of accessory except for + * type of charger accessory. + */ info->irq_adc = true; return 1; case MAX14577_IRQ_INT2_CHGTYP: diff --git a/drivers/extcon/extcon-max77693.c b/drivers/extcon/extcon-max77693.c index 68dbcb814b2f..62163468f205 100644 --- a/drivers/extcon/extcon-max77693.c +++ b/drivers/extcon/extcon-max77693.c @@ -188,8 +188,10 @@ enum max77693_muic_acc_type { MAX77693_MUIC_ADC_AUDIO_MODE_REMOTE, MAX77693_MUIC_ADC_OPEN, - /* The below accessories have same ADC value so ADCLow and - ADC1K bit is used to separate specific accessory */ + /* + * The below accessories have same ADC value so ADCLow and + * ADC1K bit is used to separate specific accessory. + */ /* ADC|VBVolot|ADCLow|ADC1K| */ MAX77693_MUIC_GND_USB_HOST = 0x100, /* 0x0| 0| 0| 0| */ MAX77693_MUIC_GND_USB_HOST_VB = 0x104, /* 0x0| 1| 0| 0| */ @@ -970,8 +972,10 @@ static void max77693_muic_irq_work(struct work_struct *work) case MAX77693_MUIC_IRQ_INT1_ADC_LOW: case MAX77693_MUIC_IRQ_INT1_ADC_ERR: case MAX77693_MUIC_IRQ_INT1_ADC1K: - /* Handle all of accessory except for - type of charger accessory */ + /* + * Handle all of accessory except for + * type of charger accessory. + */ ret = max77693_muic_adc_handler(info); break; case MAX77693_MUIC_IRQ_INT2_CHGTYP: diff --git a/drivers/extcon/extcon-max77843.c b/drivers/extcon/extcon-max77843.c index 5d11fdf36e94..6e722d552cf1 100644 --- a/drivers/extcon/extcon-max77843.c +++ b/drivers/extcon/extcon-max77843.c @@ -97,8 +97,10 @@ enum max77843_muic_accessory_type { MAX77843_MUIC_ADC_AUDIO_DEVICE_TYPE1, MAX77843_MUIC_ADC_OPEN, - /* The blow accessories should check - not only ADC value but also ADC1K and VBVolt value. */ + /* + * The below accessories should check + * not only ADC value but also ADC1K and VBVolt value. + */ /* Offset|ADC1K|VBVolt| */ MAX77843_MUIC_GND_USB_HOST = 0x100, /* 0x1| 0| 0| */ MAX77843_MUIC_GND_USB_HOST_VB = 0x101, /* 0x1| 0| 1| */ @@ -265,16 +267,20 @@ static int max77843_muic_get_cable_type(struct max77843_muic_info *info, /* Check GROUND accessory with charger cable */ if (adc == MAX77843_MUIC_ADC_GROUND) { if (chg_type == MAX77843_MUIC_CHG_NONE) { - /* The following state when charger cable is + /* + * The following state when charger cable is * disconnected but the GROUND accessory still - * connected */ + * connected. + */ *attached = false; cable_type = info->prev_chg_type; info->prev_chg_type = MAX77843_MUIC_CHG_NONE; } else { - /* The following state when charger cable is - * connected on the GROUND accessory */ + /* + * The following state when charger cable is + * connected on the GROUND accessory. + */ *attached = true; cable_type = MAX77843_MUIC_CHG_GND; info->prev_chg_type = MAX77843_MUIC_CHG_GND; @@ -299,11 +305,13 @@ static int max77843_muic_get_cable_type(struct max77843_muic_info *info, } else { *attached = true; - /* Offset|ADC1K|VBVolt| + /* + * Offset|ADC1K|VBVolt| * 0x1| 0| 0| USB-HOST * 0x1| 0| 1| USB-HOST with VB * 0x1| 1| 0| MHL - * 0x1| 1| 1| MHL with VB */ + * 0x1| 1| 1| MHL with VB + */ /* Get ADC1K register bit */ gnd_type = (info->status[MAX77843_MUIC_STATUS1] & MAX77843_MUIC_STATUS1_ADC1K_MASK); diff --git a/drivers/extcon/extcon-palmas.c b/drivers/extcon/extcon-palmas.c index 634ba70782de..a128fd2eb187 100644 --- a/drivers/extcon/extcon-palmas.c +++ b/drivers/extcon/extcon-palmas.c @@ -190,6 +190,11 @@ static int palmas_usb_probe(struct platform_device *pdev) struct palmas_usb *palmas_usb; int status; + if (!palmas) { + dev_err(&pdev->dev, "failed to get valid parent\n"); + return -EINVAL; + } + palmas_usb = devm_kzalloc(&pdev->dev, sizeof(*palmas_usb), GFP_KERNEL); if (!palmas_usb) return -ENOMEM; diff --git a/drivers/extcon/extcon-rt8973a.c b/drivers/extcon/extcon-rt8973a.c index 174c388739ea..3e882aa107e8 100644 --- a/drivers/extcon/extcon-rt8973a.c +++ b/drivers/extcon/extcon-rt8973a.c @@ -142,8 +142,10 @@ enum rt8973a_muic_acc_type { RT8973A_MUIC_ADC_UNKNOWN_ACC_5, RT8973A_MUIC_ADC_OPEN = 0x1f, - /* The below accessories has same ADC value (0x1f). - So, Device type1 is used to separate specific accessory. */ + /* + * The below accessories has same ADC value (0x1f). + * So, Device type1 is used to separate specific accessory. + */ /* |---------|--ADC| */ /* | [7:5]|[4:0]| */ RT8973A_MUIC_ADC_USB = 0x3f, /* | 001|11111| */ diff --git a/drivers/extcon/extcon-sm5502.c b/drivers/extcon/extcon-sm5502.c index b22325688503..106ef0297b53 100644 --- a/drivers/extcon/extcon-sm5502.c +++ b/drivers/extcon/extcon-sm5502.c @@ -135,8 +135,10 @@ enum sm5502_muic_acc_type { SM5502_MUIC_ADC_AUDIO_TYPE1, SM5502_MUIC_ADC_OPEN = 0x1f, - /* The below accessories have same ADC value (0x1f or 0x1e). - So, Device type1 is used to separate specific accessory. */ + /* + * The below accessories have same ADC value (0x1f or 0x1e). + * So, Device type1 is used to separate specific accessory. + */ /* |---------|--ADC| */ /* | [7:5]|[4:0]| */ SM5502_MUIC_ADC_AUDIO_TYPE1_FULL_REMOTE = 0x3e, /* | 001|11110| */ diff --git a/drivers/extcon/extcon.c b/drivers/extcon/extcon.c index 78298460d168..7c1e3a7b14e0 100644 --- a/drivers/extcon/extcon.c +++ b/drivers/extcon/extcon.c @@ -453,7 +453,7 @@ int extcon_sync(struct extcon_dev *edev, unsigned int id) dev_err(&edev->dev, "out of memory in extcon_set_state\n"); kobject_uevent(&edev->dev.kobj, KOBJ_CHANGE); - return 0; + return -ENOMEM; } length = name_show(&edev->dev, NULL, prop_buf); diff --git a/include/linux/extcon/extcon-adc-jack.h b/include/linux/extcon/extcon-adc-jack.h index a0e03b13b449..2aa32075bca1 100644 --- a/include/linux/extcon/extcon-adc-jack.h +++ b/include/linux/extcon/extcon-adc-jack.h @@ -59,7 +59,7 @@ struct adc_jack_pdata { const char *name; const char *consumer_channel; - const enum extcon *cable_names; + const unsigned int *cable_names; /* The last entry's state should be 0 */ struct adc_jack_cond *adc_conditions; |