regulator: Fixes for v3.15

A few driver specific fixes that have come in over the merge window,
 all only relevant for the specific driver.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJTR8B/AAoJELSic+t+oim9+EoQAJjRksEJnlSTxKPd7AaYH/CD
 PiDYSqK5vgmOgEFJW83Dcf94EM75G11W4bWK6JvWcd2eq8j65+cZRjmjcVvhClKj
 2iI8vz1gkEKoZb8MeVQsH1e1QNp4sZXPvrPsvQ0O56apw7oyI1dAkpYkHFR5D/C9
 d3btXtPu6rlCLCyIn9XsCXe9ZD4rgeYdLF5mA8ouYwHja8Ou0xyeZGUO6rI30ZMo
 3DVJ2yq8GGDHbtoAaL4G2aY0l8//bAg3VxrmR9q8TQLnvZTXFpmvbgGszmHLqSRl
 PGcNDF87zzwLEclOuJNJLF7dmFMwhg3Ejn+G1cDPZF0dkdisDKk8Rzqo4bkQ2a/u
 Xja7W/Lhnc61j04Sx01wN6suv8jKqHfrHMmK5rM6wPe2KaAnkpPc0ACSwJ+OKO+u
 GruHdDS+bgY2839XCLR7+kds8Rs7gGl8H3qo68Jha3Wn2Uw0TIOZSbVJnGiYkjP5
 4KndZDj1DoJGk+7OGYVEKj+W36C6ubN9dPdfqlX64s4ARbScX2pTaYJPov7DcROK
 Frllv1wfJ0UILpdjp43hJRvYPSewROPxxUydKObG46hk8IDq1lOhim414tbuDNCp
 IvPMstIFqxXb83iqMYRzsUWw7Fmbq81zJaq0OUfjRpz4BfzAyG1gavtua11pFMvE
 AKbU/j/GTNljh69mr9GK
 =mEb8
 -----END PGP SIGNATURE-----

Merge tag 'regulator-v3.15-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator

Pull regulator fixes from Mark Brown:
 "A few driver specific fixes that have come in over the merge window,
  all only relevant for the specific driver"

* tag 'regulator-v3.15-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator:
  regulator: bcm590xx: Set n_voltages for linear reg
  regulator: s5m8767: Fix carried over ena_gpio assignment
  regulator: s2mps11: Don't check enable_shift before setting enable ramp rate
  regulator: s2mpa01: Don't check enable_shift before setting enable ramp rate
This commit is contained in:
Linus Torvalds 2014-04-11 13:30:05 -07:00
commit c0c4cf0645
4 changed files with 12 additions and 14 deletions

View File

@ -123,6 +123,7 @@ struct bcm590xx_info {
#define BCM590XX_REG_RANGES(_name, _ranges) \ #define BCM590XX_REG_RANGES(_name, _ranges) \
{ \ { \
.name = #_name, \ .name = #_name, \
.n_voltages = 64, \
.n_linear_ranges = ARRAY_SIZE(_ranges), \ .n_linear_ranges = ARRAY_SIZE(_ranges), \
.linear_ranges = _ranges, \ .linear_ranges = _ranges, \
} }

View File

@ -192,13 +192,11 @@ static int s2mpa01_set_ramp_delay(struct regulator_dev *rdev, int ramp_delay)
if (!ramp_enable) if (!ramp_enable)
goto ramp_disable; goto ramp_disable;
if (enable_shift) { ret = regmap_update_bits(rdev->regmap, S2MPA01_REG_RAMP1,
ret = regmap_update_bits(rdev->regmap, S2MPA01_REG_RAMP1, 1 << enable_shift, 1 << enable_shift);
1 << enable_shift, 1 << enable_shift); if (ret) {
if (ret) { dev_err(&rdev->dev, "failed to enable ramp rate\n");
dev_err(&rdev->dev, "failed to enable ramp rate\n"); return ret;
return ret;
}
} }
ramp_val = get_ramp_delay(ramp_delay); ramp_val = get_ramp_delay(ramp_delay);

View File

@ -202,13 +202,11 @@ static int s2mps11_set_ramp_delay(struct regulator_dev *rdev, int ramp_delay)
if (!ramp_enable) if (!ramp_enable)
goto ramp_disable; goto ramp_disable;
if (enable_shift) { ret = regmap_update_bits(rdev->regmap, S2MPS11_REG_RAMP,
ret = regmap_update_bits(rdev->regmap, S2MPS11_REG_RAMP, 1 << enable_shift, 1 << enable_shift);
1 << enable_shift, 1 << enable_shift); if (ret) {
if (ret) { dev_err(&rdev->dev, "failed to enable ramp rate\n");
dev_err(&rdev->dev, "failed to enable ramp rate\n"); return ret;
return ret;
}
} }
ramp_val = get_ramp_delay(ramp_delay); ramp_val = get_ramp_delay(ramp_delay);

View File

@ -964,6 +964,7 @@ static int s5m8767_pmic_probe(struct platform_device *pdev)
config.driver_data = s5m8767; config.driver_data = s5m8767;
config.regmap = iodev->regmap_pmic; config.regmap = iodev->regmap_pmic;
config.of_node = pdata->regulators[i].reg_node; config.of_node = pdata->regulators[i].reg_node;
config.ena_gpio = config.ena_gpio_flags = 0;
if (pdata->regulators[i].ext_control_gpio) if (pdata->regulators[i].ext_control_gpio)
s5m8767_regulator_config_ext_control(s5m8767, s5m8767_regulator_config_ext_control(s5m8767,
&pdata->regulators[i], &config); &pdata->regulators[i], &config);