Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fad9cd45 authored by Mark Brown's avatar Mark Brown
Browse files

Merge remote-tracking branches 'regulator/topic/s2mpa01',...

Merge remote-tracking branches 'regulator/topic/s2mpa01', 'regulator/topic/supplies' and 'regulator/topic/tps65217' into regulator-next
Loading
Loading
Loading
Loading
+13 −0
Original line number Original line Diff line number Diff line
@@ -1556,6 +1556,19 @@ static int regulator_resolve_supply(struct regulator_dev *rdev)
		}
		}
	}
	}


	/*
	 * If the supply's parent device is not the same as the
	 * regulator's parent device, then ensure the parent device
	 * is bound before we resolve the supply, in case the parent
	 * device get probe deferred and unregisters the supply.
	 */
	if (r->dev.parent && r->dev.parent != rdev->dev.parent) {
		if (!device_is_bound(r->dev.parent)) {
			put_device(&r->dev);
			return -EPROBE_DEFER;
		}
	}

	/* Recursively resolve the supply of the supply */
	/* Recursively resolve the supply of the supply */
	ret = regulator_resolve_supply(r);
	ret = regulator_resolve_supply(r);
	if (ret < 0) {
	if (ret < 0) {
+3 −1
Original line number Original line Diff line number Diff line
@@ -26,6 +26,7 @@
#define S2MPA01_REGULATOR_CNT ARRAY_SIZE(regulators)
#define S2MPA01_REGULATOR_CNT ARRAY_SIZE(regulators)


struct s2mpa01_info {
struct s2mpa01_info {
	struct of_regulator_match rdata[S2MPA01_REGULATOR_MAX];
	int ramp_delay24;
	int ramp_delay24;
	int ramp_delay3;
	int ramp_delay3;
	int ramp_delay5;
	int ramp_delay5;
@@ -341,9 +342,9 @@ static int s2mpa01_pmic_probe(struct platform_device *pdev)
{
{
	struct sec_pmic_dev *iodev = dev_get_drvdata(pdev->dev.parent);
	struct sec_pmic_dev *iodev = dev_get_drvdata(pdev->dev.parent);
	struct sec_platform_data *pdata = dev_get_platdata(iodev->dev);
	struct sec_platform_data *pdata = dev_get_platdata(iodev->dev);
	struct of_regulator_match rdata[S2MPA01_REGULATOR_MAX] = { };
	struct device_node *reg_np = NULL;
	struct device_node *reg_np = NULL;
	struct regulator_config config = { };
	struct regulator_config config = { };
	struct of_regulator_match *rdata;
	struct s2mpa01_info *s2mpa01;
	struct s2mpa01_info *s2mpa01;
	int i;
	int i;


@@ -351,6 +352,7 @@ static int s2mpa01_pmic_probe(struct platform_device *pdev)
	if (!s2mpa01)
	if (!s2mpa01)
		return -ENOMEM;
		return -ENOMEM;


	rdata = s2mpa01->rdata;
	for (i = 0; i < S2MPA01_REGULATOR_CNT; i++)
	for (i = 0; i < S2MPA01_REGULATOR_CNT; i++)
		rdata[i].name = regulators[i].name;
		rdata[i].name = regulators[i].name;


+4 −2
Original line number Original line Diff line number Diff line
@@ -179,7 +179,8 @@ static const struct regulator_desc regulators[] = {
	TPS65217_REGULATOR("DCDC1", TPS65217_DCDC_1, "dcdc1",
	TPS65217_REGULATOR("DCDC1", TPS65217_DCDC_1, "dcdc1",
			   tps65217_pmic_ops, 64, TPS65217_REG_DEFDCDC1,
			   tps65217_pmic_ops, 64, TPS65217_REG_DEFDCDC1,
			   TPS65217_DEFDCDCX_DCDC_MASK, TPS65217_ENABLE_DC1_EN,
			   TPS65217_DEFDCDCX_DCDC_MASK, TPS65217_ENABLE_DC1_EN,
			   NULL, tps65217_uv1_ranges, 2, TPS65217_REG_SEQ1,
			   NULL, tps65217_uv1_ranges,
			   ARRAY_SIZE(tps65217_uv1_ranges), TPS65217_REG_SEQ1,
			   TPS65217_SEQ1_DC1_SEQ_MASK),
			   TPS65217_SEQ1_DC1_SEQ_MASK),
	TPS65217_REGULATOR("DCDC2", TPS65217_DCDC_2, "dcdc2",
	TPS65217_REGULATOR("DCDC2", TPS65217_DCDC_2, "dcdc2",
			   tps65217_pmic_ops, 64, TPS65217_REG_DEFDCDC2,
			   tps65217_pmic_ops, 64, TPS65217_REG_DEFDCDC2,
@@ -190,7 +191,8 @@ static const struct regulator_desc regulators[] = {
	TPS65217_REGULATOR("DCDC3", TPS65217_DCDC_3, "dcdc3",
	TPS65217_REGULATOR("DCDC3", TPS65217_DCDC_3, "dcdc3",
			   tps65217_pmic_ops, 64, TPS65217_REG_DEFDCDC3,
			   tps65217_pmic_ops, 64, TPS65217_REG_DEFDCDC3,
			   TPS65217_DEFDCDCX_DCDC_MASK, TPS65217_ENABLE_DC3_EN,
			   TPS65217_DEFDCDCX_DCDC_MASK, TPS65217_ENABLE_DC3_EN,
			   NULL, tps65217_uv1_ranges, 1, TPS65217_REG_SEQ2,
			   NULL, tps65217_uv1_ranges,
			   ARRAY_SIZE(tps65217_uv1_ranges), TPS65217_REG_SEQ2,
			   TPS65217_SEQ2_DC3_SEQ_MASK),
			   TPS65217_SEQ2_DC3_SEQ_MASK),
	TPS65217_REGULATOR("LDO1", TPS65217_LDO_1, "ldo1",
	TPS65217_REGULATOR("LDO1", TPS65217_LDO_1, "ldo1",
			   tps65217_pmic_ldo1_ops, 16, TPS65217_REG_DEFLDO1,
			   tps65217_pmic_ldo1_ops, 16, TPS65217_REG_DEFLDO1,