Commit 9d9ae341 authored by Angus Ainslie (Purism)'s avatar Angus Ainslie (Purism) Committed by Sebastian Reichel
Browse files

power: supply: bq25890_charger: Add debugging output of failed initialization



To ease adding a new part variant some debugging is handy.

Reviewed-by: default avatarKrzysztof Kozlowski <krzk@kernel.org>
Signed-off-by: default avatarAngus Ainslie (Purism) <angus@akkea.ca>
Signed-off-by: default avatarSebastian Reichel <sebastian.reichel@collabora.com>
parent 7b38ebdf
Loading
Loading
Loading
Loading
+18 −5
Original line number Diff line number Diff line
@@ -608,30 +608,40 @@ static int bq25890_hw_init(struct bq25890_device *bq)
	};

	ret = bq25890_chip_reset(bq);
	if (ret < 0)
	if (ret < 0) {
		dev_dbg(bq->dev, "Reset failed %d\n", ret);
		return ret;
	};

	/* disable watchdog */
	ret = bq25890_field_write(bq, F_WD, 0);
	if (ret < 0)
	if (ret < 0) {
		dev_dbg(bq->dev, "Disabling watchdog failed %d\n", ret);
		return ret;
	};

	/* initialize currents/voltages and other parameters */
	for (i = 0; i < ARRAY_SIZE(init_data); i++) {
		ret = bq25890_field_write(bq, init_data[i].id,
					  init_data[i].value);
		if (ret < 0)
		if (ret < 0) {
			dev_dbg(bq->dev, "Writing init data failed %d\n", ret);
			return ret;
		};
	}

	/* Configure ADC for continuous conversions. This does not enable it. */
	ret = bq25890_field_write(bq, F_CONV_RATE, 1);
	if (ret < 0)
	if (ret < 0) {
		dev_dbg(bq->dev, "Config ADC failed %d\n", ret);
		return ret;
	};

	ret = bq25890_get_chip_state(bq, &state);
	if (ret < 0)
	if (ret < 0) {
		dev_dbg(bq->dev, "Get state failed %d\n", ret);
		return ret;
	};

	mutex_lock(&bq->lock);
	bq->state = state;
@@ -767,6 +777,9 @@ static int bq25890_fw_read_u32_props(struct bq25890_device *bq)
			if (props[i].optional)
				continue;

			dev_err(bq->dev, "Unable to read property %d %s\n", ret,
				props[i].name);

			return ret;
		}