From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ezequiel Garcia Subject: Re: [PATCH v3 02/23] thermal: armada: remove useless register accesses Date: Fri, 27 Jul 2018 13:13:20 -0300 Message-ID: References: <20180716144206.30985-1-miquel.raynal@bootlin.com> <20180716144206.30985-3-miquel.raynal@bootlin.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180716144206.30985-3-miquel.raynal@bootlin.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=m.gmane.org@lists.infradead.org To: Miquel Raynal Cc: Mark Rutland , Andrew Lunn , Jason Cooper , Nadav Haklai , devicetree@vger.kernel.org, Antoine Tenart , Catalin Marinas , Gregory Clement , linux-pm@vger.kernel.org, Will Deacon , Rob Herring , Maxime Chevallier , Eduardo Valentin , David Sniatkiwicz , Thomas Petazzoni , Zhang Rui , linux-arm-kernel , Sebastian Hesselbarth List-Id: devicetree@vger.kernel.org SGkgTWlxdWVsLAoKWW91IGtub3csIGl0IGlzIHVzdWFsbHkgdXNlZnVsIHRvIENjIHRoZSBhdXRo b3Igb2YgdGhlIGxpbmVzIGEgcGF0Y2ggdG91Y2hlcyA6LSkKCk9uIDE2IEp1bHkgMjAxOCBhdCAx MTo0MSwgTWlxdWVsIFJheW5hbCA8bWlxdWVsLnJheW5hbEBib290bGluLmNvbT4gd3JvdGU6Cj4g UHJlcGFyZSB0aGUgbWlncmF0aW9uIHRvIHVzZSByZWdtYXBzIGJ5IGZpcnN0IHNpbXBsaWZ5aW5n IHRoZQo+IGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uczogYXZvaWQgdW5uZWNlc3Nhcnkgd3JpdGUv cmVhZCBjeWNsZXMgb24KPiBjb25maWd1cmF0aW9uIHJlZ2lzdGVycy4KPgo+IFNpZ25lZC1vZmYt Ynk6IE1pcXVlbCBSYXluYWwgPG1pcXVlbC5yYXluYWxAYm9vdGxpbi5jb20+Cj4gLS0tCj4gIGRy aXZlcnMvdGhlcm1hbC9hcm1hZGFfdGhlcm1hbC5jIHwgOCArKy0tLS0tLQo+ICAxIGZpbGUgY2hh bmdlZCwgMiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQo+Cj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvdGhlcm1hbC9hcm1hZGFfdGhlcm1hbC5jIGIvZHJpdmVycy90aGVybWFsL2FybWFkYV90 aGVybWFsLmMKPiBpbmRleCAwNzdlOGU1NjIzMDYuLjZmZGI5MGIzYzAwMSAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL3RoZXJtYWwvYXJtYWRhX3RoZXJtYWwuYwo+ICsrKyBiL2RyaXZlcnMvdGhlcm1h bC9hcm1hZGFfdGhlcm1hbC5jCj4gQEAgLTEwMywxNiArMTAzLDEzIEBAIHN0YXRpYyB2b2lkIGFy bWFkYXhwX2luaXRfc2Vuc29yKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4KPiAgICAg ICAgIHJlZyA9IHJlYWRsX3JlbGF4ZWQocHJpdi0+Y29udHJvbDEpOwo+ICAgICAgICAgcmVnIHw9 IFBNVV9UREMwX09URl9DQUxfTUFTSzsKPiAtICAgICAgIHdyaXRlbChyZWcsIHByaXYtPmNvbnRy b2wxKTsKPgo+ICAgICAgICAgLyogUmVmZXJlbmNlIGNhbGlicmF0aW9uIHZhbHVlICovCj4gICAg ICAgICByZWcgJj0gflBNVV9UREMwX1JFRl9DQUxfQ05UX01BU0s7Cj4gICAgICAgICByZWcgfD0g KDB4ZjEgPDwgUE1VX1REQzBfUkVGX0NBTF9DTlRfT0ZGUyk7Cj4gLSAgICAgICB3cml0ZWwocmVn LCBwcml2LT5jb250cm9sMSk7Cj4KPiAgICAgICAgIC8qIFJlc2V0IHRoZSBzZW5zb3IgKi8KPiAt ICAgICAgIHJlZyA9IHJlYWRsX3JlbGF4ZWQocHJpdi0+Y29udHJvbDEpOwo+IC0gICAgICAgd3Jp dGVsKChyZWcgfCBQTVVfVERDMF9TV19SU1RfTUFTSyksIHByaXYtPmNvbnRyb2wxKTsKPiArICAg ICAgIHJlZyB8PSBQTVVfVERDMF9TV19SU1RfTUFTSzsKPgo+ICAgICAgICAgd3JpdGVsKHJlZywg cHJpdi0+Y29udHJvbDEpOwo+Cj4gQEAgLTEyOSwxNCArMTI2LDEzIEBAIHN0YXRpYyB2b2lkIGFy bWFkYTM3MF9pbml0X3NlbnNvcihzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+Cj4gICAg ICAgICByZWcgPSByZWFkbF9yZWxheGVkKHByaXYtPmNvbnRyb2wxKTsKPiAgICAgICAgIHJlZyB8 PSBQTVVfVERDMF9PVEZfQ0FMX01BU0s7Cj4gLSAgICAgICB3cml0ZWwocmVnLCBwcml2LT5jb250 cm9sMSk7Cj4KPiAgICAgICAgIC8qIFJlZmVyZW5jZSBjYWxpYnJhdGlvbiB2YWx1ZSAqLwo+ICAg ICAgICAgcmVnICY9IH5QTVVfVERDMF9SRUZfQ0FMX0NOVF9NQVNLOwo+ICAgICAgICAgcmVnIHw9 ICgweGYxIDw8IFBNVV9UREMwX1JFRl9DQUxfQ05UX09GRlMpOwo+IC0gICAgICAgd3JpdGVsKHJl ZywgcHJpdi0+Y29udHJvbDEpOwo+Cj4gICAgICAgICByZWcgJj0gflBNVV9UREMwX1NUQVJUX0NB TF9NQVNLOwo+ICsKPiAgICAgICAgIHdyaXRlbChyZWcsIHByaXYtPmNvbnRyb2wxKTsKPgoKSUlS QywgdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoaXMgaGFyZHdhcmUgYmxvY2sgd2FzIGEgbWVhZ2Vy LgoKQXJlIHlvdSBzdXJlIHRoZXJlIGlzbid0IGFueSByZXF1aXJlbWVudCBmb3IgdGhlIGNhbGli cmF0aW9uCnN0YXJ0IHRvIGJlIGlzc3VlZCBzZXBhcmF0ZWx5IG9yIHNvbWV0aGluZyBsaWtlIHRo YXQ/Ci0tIApFemVxdWllbCBHYXJjw61hLCBWYW5ndWFyZGlhU3VyCnd3dy52YW5ndWFyZGlhc3Vy LmNvbS5hcgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K bGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZy YWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGlu dXgtYXJtLWtlcm5lbAo= From mboxrd@z Thu Jan 1 00:00:00 1970 From: ezequiel@vanguardiasur.com.ar (Ezequiel Garcia) Date: Fri, 27 Jul 2018 13:13:20 -0300 Subject: [PATCH v3 02/23] thermal: armada: remove useless register accesses In-Reply-To: <20180716144206.30985-3-miquel.raynal@bootlin.com> References: <20180716144206.30985-1-miquel.raynal@bootlin.com> <20180716144206.30985-3-miquel.raynal@bootlin.com> Message-ID: To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi Miquel, You know, it is usually useful to Cc the author of the lines a patch touches :-) On 16 July 2018 at 11:41, Miquel Raynal wrote: > Prepare the migration to use regmaps by first simplifying the > initialization functions: avoid unnecessary write/read cycles on > configuration registers. > > Signed-off-by: Miquel Raynal > --- > drivers/thermal/armada_thermal.c | 8 ++------ > 1 file changed, 2 insertions(+), 6 deletions(-) > > diff --git a/drivers/thermal/armada_thermal.c b/drivers/thermal/armada_thermal.c > index 077e8e562306..6fdb90b3c001 100644 > --- a/drivers/thermal/armada_thermal.c > +++ b/drivers/thermal/armada_thermal.c > @@ -103,16 +103,13 @@ static void armadaxp_init_sensor(struct platform_device *pdev, > > reg = readl_relaxed(priv->control1); > reg |= PMU_TDC0_OTF_CAL_MASK; > - writel(reg, priv->control1); > > /* Reference calibration value */ > reg &= ~PMU_TDC0_REF_CAL_CNT_MASK; > reg |= (0xf1 << PMU_TDC0_REF_CAL_CNT_OFFS); > - writel(reg, priv->control1); > > /* Reset the sensor */ > - reg = readl_relaxed(priv->control1); > - writel((reg | PMU_TDC0_SW_RST_MASK), priv->control1); > + reg |= PMU_TDC0_SW_RST_MASK; > > writel(reg, priv->control1); > > @@ -129,14 +126,13 @@ static void armada370_init_sensor(struct platform_device *pdev, > > reg = readl_relaxed(priv->control1); > reg |= PMU_TDC0_OTF_CAL_MASK; > - writel(reg, priv->control1); > > /* Reference calibration value */ > reg &= ~PMU_TDC0_REF_CAL_CNT_MASK; > reg |= (0xf1 << PMU_TDC0_REF_CAL_CNT_OFFS); > - writel(reg, priv->control1); > > reg &= ~PMU_TDC0_START_CAL_MASK; > + > writel(reg, priv->control1); > IIRC, the documentation for this hardware block was a meager. Are you sure there isn't any requirement for the calibration start to be issued separately or something like that? -- Ezequiel Garc?a, VanguardiaSur www.vanguardiasur.com.ar