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

Commit 126d4576 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull i2c fixes from Wolfram Sang:
 "Two i2c driver bugfixes"

* 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
  i2c: qup: Fix order of runtime pm initialization
  i2c: rk3x: fix 0 length write transfers
parents 03900197 86b59bbf
Loading
Loading
Loading
Loading
+8 −4
Original line number Original line Diff line number Diff line
@@ -674,16 +674,20 @@ static int qup_i2c_probe(struct platform_device *pdev)
	qup->adap.dev.of_node = pdev->dev.of_node;
	qup->adap.dev.of_node = pdev->dev.of_node;
	strlcpy(qup->adap.name, "QUP I2C adapter", sizeof(qup->adap.name));
	strlcpy(qup->adap.name, "QUP I2C adapter", sizeof(qup->adap.name));


	ret = i2c_add_adapter(&qup->adap);
	if (ret)
		goto fail;

	pm_runtime_set_autosuspend_delay(qup->dev, MSEC_PER_SEC);
	pm_runtime_set_autosuspend_delay(qup->dev, MSEC_PER_SEC);
	pm_runtime_use_autosuspend(qup->dev);
	pm_runtime_use_autosuspend(qup->dev);
	pm_runtime_set_active(qup->dev);
	pm_runtime_set_active(qup->dev);
	pm_runtime_enable(qup->dev);
	pm_runtime_enable(qup->dev);

	ret = i2c_add_adapter(&qup->adap);
	if (ret)
		goto fail_runtime;

	return 0;
	return 0;


fail_runtime:
	pm_runtime_disable(qup->dev);
	pm_runtime_set_suspended(qup->dev);
fail:
fail:
	qup_i2c_disable_clocks(qup);
	qup_i2c_disable_clocks(qup);
	return ret;
	return ret;
+1 −1
Original line number Original line Diff line number Diff line
@@ -238,7 +238,7 @@ static void rk3x_i2c_fill_transmit_buf(struct rk3x_i2c *i2c)
	for (i = 0; i < 8; ++i) {
	for (i = 0; i < 8; ++i) {
		val = 0;
		val = 0;
		for (j = 0; j < 4; ++j) {
		for (j = 0; j < 4; ++j) {
			if (i2c->processed == i2c->msg->len)
			if ((i2c->processed == i2c->msg->len) && (cnt != 0))
				break;
				break;


			if (i2c->processed == 0 && cnt == 0)
			if (i2c->processed == 0 && cnt == 0)