From mboxrd@z Thu Jan 1 00:00:00 1970 From: Russell King Subject: [PATCH 3/6] drm/i2c: tda998x: fix error cleanup paths Date: Tue, 28 Nov 2017 23:17:50 +0000 Message-ID: References: <20171128231712.GB8356@n2100.armlinux.org.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from pandora.armlinux.org.uk (pandora.armlinux.org.uk [IPv6:2001:4d48:ad52:3201:214:fdff:fe10:1be6]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4B25C6E748 for ; Tue, 28 Nov 2017 23:17:56 +0000 (UTC) In-Reply-To: <20171128231712.GB8356@n2100.armlinux.org.uk> Content-Disposition: inline List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: David Airlie , Hans Verkuil Cc: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org SWYgdGRhOTk4eF9nZXRfYXVkaW9fcG9ydHMoKSBmYWlscywgYW5kIHdlIHJlcXVlc3RlZCB0aGUg aW50ZXJydXB0LCB3ZQpmYWlsIHRvIGZyZWUgdGhlIGludGVycnVwdCBiZWZvcmUgcmV0dXJuaW5n IGZhaWx1cmUuICBSZXdvcmsgdGhlIGZhaWx1cmUKY2xlYW51cCBjb2RlIGFuZCBleGl0IHBhdGhz IHNvIHRoYXQgd2UgYWx3YXlzIGNsZWFuIHVwIHByb3Blcmx5IGFmdGVyIGFuCmVycm9yLCBhbmQg YWx3YXlzIHByb3BhZ2F0ZSB0aGUgZXJyb3IgY29kZS4KClNpZ25lZC1vZmYtYnk6IFJ1c3NlbGwg S2luZyA8cm1rK2tlcm5lbEBhcm1saW51eC5vcmcudWs+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2ky Yy90ZGE5OTh4X2Rydi5jIHwgMzEgKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQogMSBm aWxlIGNoYW5nZWQsIDE4IGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pMmMvdGRhOTk4eF9kcnYuYyBiL2RyaXZlcnMvZ3B1L2RybS9p MmMvdGRhOTk4eF9kcnYuYwppbmRleCA0YWVhYzIxMjc5NzQuLjY2MWNiODkxNWYyZiAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2kyYy90ZGE5OTh4X2Rydi5jCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pMmMvdGRhOTk4eF9kcnYuYwpAQCAtMTQ5OSwxMCArMTQ5OSwxNSBAQCBzdGF0aWMgaW50 IHRkYTk5OHhfY3JlYXRlKHN0cnVjdCBpMmNfY2xpZW50ICpjbGllbnQsIHN0cnVjdCB0ZGE5OTh4 X3ByaXYgKnByaXYpCiAKIAkvKiByZWFkIHZlcnNpb246ICovCiAJcmV2X2xvID0gcmVnX3JlYWQo cHJpdiwgUkVHX1ZFUlNJT05fTFNCKTsKKwlpZiAocmV2X2xvIDwgMCkgeworCQlkZXZfZXJyKCZj bGllbnQtPmRldiwgImZhaWxlZCB0byByZWFkIHZlcnNpb246ICVkXG4iLCByZXZfbG8pOworCQly ZXR1cm4gcmV2X2xvOworCX0KKwogCXJldl9oaSA9IHJlZ19yZWFkKHByaXYsIFJFR19WRVJTSU9O X01TQik7Ci0JaWYgKHJldl9sbyA8IDAgfHwgcmV2X2hpIDwgMCkgewotCQlyZXQgPSByZXZfbG8g PCAwID8gcmV2X2xvIDogcmV2X2hpOwotCQlnb3RvIGZhaWw7CisJaWYgKHJldl9oaSA8IDApIHsK KwkJZGV2X2VycigmY2xpZW50LT5kZXYsICJmYWlsZWQgdG8gcmVhZCB2ZXJzaW9uOiAlZFxuIiwg cmV2X2hpKTsKKwkJcmV0dXJuIHJldl9oaTsKIAl9CiAKIAlwcml2LT5yZXYgPSByZXZfbG8gfCBy ZXZfaGkgPDwgODsKQEAgLTE1MjYsNyArMTUzMSw3IEBAIHN0YXRpYyBpbnQgdGRhOTk4eF9jcmVh dGUoc3RydWN0IGkyY19jbGllbnQgKmNsaWVudCwgc3RydWN0IHRkYTk5OHhfcHJpdiAqcHJpdikK IAlkZWZhdWx0OgogCQlkZXZfZXJyKCZjbGllbnQtPmRldiwgImZvdW5kIHVuc3VwcG9ydGVkIGRl dmljZTogJTA0eFxuIiwKIAkJCXByaXYtPnJldik7Ci0JCWdvdG8gZmFpbDsKKwkJcmV0dXJuIC1F TlhJTzsKIAl9CiAKIAkvKiBhZnRlciByZXNldCwgZW5hYmxlIEREQzogKi8KQEAgLTE1NjgsNyAr MTU3Myw3IEBAIHN0YXRpYyBpbnQgdGRhOTk4eF9jcmVhdGUoc3RydWN0IGkyY19jbGllbnQgKmNs aWVudCwgc3RydWN0IHRkYTk5OHhfcHJpdiAqcHJpdikKIAkJCWRldl9lcnIoJmNsaWVudC0+ZGV2 LAogCQkJCSJmYWlsZWQgdG8gcmVxdWVzdCBJUlEjJXU6ICVkXG4iLAogCQkJCWNsaWVudC0+aXJx LCByZXQpOwotCQkJZ290byBmYWlsOworCQkJZ290byBlcnJfaXJxOwogCQl9CiAKIAkJLyogZW5h YmxlIEhQRCBpcnEgKi8KQEAgLTE1OTEsMTkgKzE1OTYsMTkgQEAgc3RhdGljIGludCB0ZGE5OTh4 X2NyZWF0ZShzdHJ1Y3QgaTJjX2NsaWVudCAqY2xpZW50LCBzdHJ1Y3QgdGRhOTk4eF9wcml2ICpw cml2KQogCiAJcmV0ID0gdGRhOTk4eF9nZXRfYXVkaW9fcG9ydHMocHJpdiwgbnApOwogCWlmIChy ZXQpCi0JCWdvdG8gZmFpbDsKKwkJZ290byBlcnJfYXVkaW87CiAKIAlpZiAocHJpdi0+YXVkaW9f cG9ydFswXS5mb3JtYXQgIT0gQUZNVF9VTlVTRUQpCiAJCXRkYTk5OHhfYXVkaW9fY29kZWNfaW5p dChwcml2LCAmY2xpZW50LT5kZXYpOwogCiAJcmV0dXJuIDA7Ci1mYWlsOgotCS8qIGlmIGVuY29k ZXJfaW5pdCBmYWlscywgdGhlIGVuY29kZXIgc2xhdmUgaXMgbmV2ZXIgcmVnaXN0ZXJlZCwKLQkg KiBzbyBjbGVhbnVwIGhlcmU6Ci0JICovCi0JaWYgKHByaXYtPmNlYykKLQkJaTJjX3VucmVnaXN0 ZXJfZGV2aWNlKHByaXYtPmNlYyk7Ci0JcmV0dXJuIC1FTlhJTzsKKworZXJyX2F1ZGlvOgorCWlm IChjbGllbnQtPmlycSkKKwkJZnJlZV9pcnEoY2xpZW50LT5pcnEsIHByaXYpOworZXJyX2lycToK KwlpMmNfdW5yZWdpc3Rlcl9kZXZpY2UocHJpdi0+Y2VjKTsKKwlyZXR1cm4gcmV0OwogfQogCiBz dGF0aWMgdm9pZCB0ZGE5OTh4X2VuY29kZXJfcHJlcGFyZShzdHJ1Y3QgZHJtX2VuY29kZXIgKmVu Y29kZXIpCi0tIAoyLjcuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJp LWRldmVsCg==