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

Commit 109a2990 authored by Antti Palosaari's avatar Antti Palosaari Committed by Mauro Carvalho Chehab
Browse files

[media] af9013: download FW earlier in attach()



Quick test shows that FW must be running before other checks
so make it happen earlier.

Signed-off-by: default avatarAntti Palosaari <crope@iki.fi>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent 582e565c
Loading
Loading
Loading
Loading
+14 −14
Original line number Diff line number Diff line
@@ -1466,20 +1466,6 @@ struct dvb_frontend *af9013_attach(const struct af9013_config *config,
	state->i2c = i2c;
	memcpy(&state->config, config, sizeof(struct af9013_config));

	/* chip version */
	ret = af9013_read_reg_bits(state, 0xd733, 4, 4, &buf[2]);
	if (ret)
		goto error;

	/* ROM version */
	for (i = 0; i < 2; i++) {
		ret = af9013_read_reg(state, 0x116b + i, &buf[i]);
		if (ret)
			goto error;
	}
	deb_info("%s: chip version:%d ROM version:%d.%d\n", __func__,
		buf[2], buf[0], buf[1]);

	/* download firmware */
	if (state->config.output_mode != AF9013_OUTPUT_MODE_USB) {
		ret = af9013_download_firmware(state);
@@ -1495,6 +1481,20 @@ struct dvb_frontend *af9013_attach(const struct af9013_config *config,
	}
	info("firmware version:%d.%d.%d.%d", buf[0], buf[1], buf[2], buf[3]);

	/* chip version */
	ret = af9013_read_reg_bits(state, 0xd733, 4, 4, &buf[2]);
	if (ret)
		goto error;

	/* ROM version */
	for (i = 0; i < 2; i++) {
		ret = af9013_read_reg(state, 0x116b + i, &buf[i]);
		if (ret)
			goto error;
	}
	deb_info("%s: chip version:%d ROM version:%d.%d\n", __func__,
		buf[2], buf[0], buf[1]);

	/* settings for mp2if */
	if (state->config.output_mode == AF9013_OUTPUT_MODE_USB) {
		/* AF9015 split PSB to 1.5k + 0.5k */