All of lore.kernel.org
 help / color / mirror / Atom feed
From: Guenter Roeck <linux@roeck-us.net>
To: "Stéphan Kochen"
	<stephan-j6uo2F6POYhmR6Xm/wNWPw@public.gmane.org>,
	"Jean Delvare" <jdelvare-IBi9RG/b67k@public.gmane.org>
Cc: Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	Pawel Moll <pawel.moll-5wv7dgnIgG8@public.gmane.org>,
	Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>,
	Ian Campbell
	<ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org>,
	Kumar Gala <galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>,
	lm-sensors-GZX6beZjE8VD60Wz+7aTrA@public.gmane.org,
	devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [lm-sensors] [PATCH 2/3] lm90: initialize parameters from devicetree
Date: Fri, 22 Jan 2016 14:53:44 +0000	[thread overview]
Message-ID: <56A24278.8050909@roeck-us.net> (raw)
In-Reply-To: <1453404877-17897-3-git-send-email-stephan-j6uo2F6POYhmR6Xm/wNWPw@public.gmane.org>

T24gMDEvMjEvMjAxNiAxMTozNCBBTSwgU3TDqXBoYW4gS29jaGVuIHdyb3RlOgo+IEFsbG93IGEg
ZGV2aWNlIHRyZWUgdG8gc2V0IGluaXRpYWwgdGVtcGVyYXR1cmUgc2Vuc29yIHBhcmFtZXRlcnMu
Cj4KPiBVc2Vyc3BhY2UgY2FuIHN0aWxsIG92ZXJyaWRlIGFjdHVhbCB2YWx1ZXMgdGhyb3VnaCBz
eXNmcy4KPgo+IFNpZ25lZC1vZmYtYnk6IFN0w6lwaGFuIEtvY2hlbiA8c3RlcGhhbkBrb2NoZW4u
bmw+Cj4gLS0tCj4gICBEb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvaHdtb24vbG05
MC50eHQgfCA0MCArKysrKysrKysrKysrKysrKwo+ICAgZHJpdmVycy9od21vbi9sbTkwLmMgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwgNTUgKysrKysrKysrKysrKysrKysrKysrKy0tCj4g
ICAyIGZpbGVzIGNoYW5nZWQsIDkyIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCj4KPiBk
aWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL2h3bW9uL2xtOTAu
dHh0IGIvRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL2h3bW9uL2xtOTAudHh0Cj4g
aW5kZXggZTg2MzI0OC4uMDQ1ZTk0YiAxMDA2NDQKPiAtLS0gYS9Eb2N1bWVudGF0aW9uL2Rldmlj
ZXRyZWUvYmluZGluZ3MvaHdtb24vbG05MC50eHQKPiArKysgYi9Eb2N1bWVudGF0aW9uL2Rldmlj
ZXRyZWUvYmluZGluZ3MvaHdtb24vbG05MC50eHQKPiBAQCAtMzMsNiArMzMsMzggQEAgT3B0aW9u
YWwgcHJvcGVydGllczoKPiAgICAgICAgICAgICAgICAgTE05MCAiLUFMRVJUIiBwaW4gb3V0cHV0
Lgo+ICAgICAgICAgICAgICAgICBTZWUgaW50ZXJydXB0LWNvbnRyb2xsZXIvaW50ZXJydXB0cy50
eHQgZm9yIHRoZSBmb3JtYXQuCj4KPiArLSB1cGRhdGUtaW50ZXJ2YWw6IEludGVydmFsIGF0IHdo
aWNoIHRlbXBlcmF0dXJlcyBhcmUgc2FtcGxlZCwKPiArICBUeXBlOiB1bnNpZ25lZCAgIGluIG1p
bGxpc2Vjb25kcy4KPiArICBTaXplOiBvbmUgY2VsbAo+ICsKPiArLSBsb2NhbC1sb3c6ICAgICAg
VmFsaWQgdGVtcGVyYXR1cmUgcmFuZ2UgZm9yIHRoZSBjaGlwIGludGVybmFsIHNlbnNvciwKPiAr
ICBsb2NhbC1oaWdoOiAgICAgb3V0c2lkZSB3aGljaCB0aGUgYWxlcnQgd2lsbCBiZSBzZXQuIFZh
bHVlcyBhcmUgaW4KPiArICBsb2NhbC1jcml0aWNhbDogbWlsbGljZWxjaXVzLgo+ICsgIFR5cGU6
IHNpZ25lZAo+ICsgIFNpemU6IG9uZSBjZWxsCj4gKwo+ICstIHJlbW90ZS1sb3c6ICAgICAgVmFs
aWQgdGVtcGVyYXR1cmUgcmFuZ2UgZm9yIHRoZSBleHRlcm5hbCBzZW5zb3IsCj4gKyAgcmVtb3Rl
LWhpZ2g6ICAgICBvdXRzaWRlIHdoaWNoIHRoZSBhbGVydCB3aWxsIGJlIHNldC4gVmFsdWVzIGFy
ZSBpbgo+ICsgIHJlbW90ZS1jcml0aWNhbDogbWlsbGljZWxjaWl1cy4KPiArICBUeXBlOiBzaWdu
ZWQKPiArICBTaXplOiBvbmUgY2VsbAo+ICsKPiArLSByZW1vdGUtb2Zmc2V0OiAgIFdoZXJlIGF2
YWlsYWJsZSwgYW4gZXh0ZXJuYWwgc2Vuc29yIHRlbXBlcmF0dXJlIG9mZnNldC4KPiArICBUeXBl
OiBzaWduZWQKPiArICBTaXplOiBvbmUgY2VsbAo+ICsKPiArLSBsb2NhbC1lbWVyZ2VuY3k6ICBP
biBtYXg2NjU5LCBtYXg2Njk1IGFuZCBtYXg2Njk2LCBhIGNvbmZpZ3VyYWJsZQo+ICsgIHJlbW90
ZS1lbWVyZ2VuY3k6IDNyZCB1cHBlciBib3VuZCBvbiB0ZW1wZXJhdHVyZS4KPiArICBUeXBlOiBz
aWduZWQKPiArICBTaXplOiBvbmUgY2VsbAo+ICsKPiArLSByZW1vdGUyLWxvdzogICAgICBPbiBt
YXg2Njk1IGFuZCBtYXg2Njk2LCBhIHNlY29uZCBleHRlcm5hbCBzZW5zb3IuCj4gKyAgcmVtb3Rl
Mi1oaWdoOgo+ICsgIHJlbW90ZTItY3JpdGljYWw6Cj4gKyAgcmVtb3RlMi1lbWVyZ2VuY3k6Cj4g
KyAgVHlwZTogc2lnbmVkCj4gKyAgU2l6ZTogb25lIGNlbGwKPiArCgpUaGlzIHZlcnkgbXVjaCBz
bWVsbHMgbGlrZSBjb25maWd1cmF0aW9uLCBub3QgaGFyZHdhcmUgZGVzY3JpcHRpb24uCgpIYXZp
bmcgc2FpZCB0aGF0LCB0aGUgdGhlcm1hbCBzdWJzeXN0ZW0gZG9lcyBzb21ldGhpbmcgc2ltaWxh
ci4gVGhpcyByYWlzZXMgZXZlbiBtb3JlCnF1ZXN0aW9ucywgdGhvdWdoLiBTaW5jZSBwYXRjaCAz
IG9mIHRoZSBzZXJpZXMgaW50cm9kdWNlcyByZWdpc3RyYXRpb24gd2l0aCB0aGUgdGhlcm1hbApz
dWJzeXN0ZW0sIGl0IHNlZW1zIHRvIG1lIHRoYXQgdGhlIHRoZXJtYWwgc3Vic3lzdGVtIHNob3Vs
ZCBwcm92aWRlIGFueSBsaW1pdHMgdXNlZAp0byBwcm9ncmFtIHRoZSBjaGlwcywgYW5kIHRoYXQg
dGhlcmUgc2hvdWxkIGJlIGEgbWVjaGFuaXNtIGZvciB0aGUgdGhlcm1hbCBzdWJzeXN0ZW0KdG8g
aW50ZXJhY3Qgd2l0aCB0aGUgZHJpdmVyIHRvIGJvdGggc2V0IHRoZSBsaW1pdHMgYW5kIHRvIGJl
IGluZm9ybWVkIGlmIGEgbGltaXQKaXMgZXhjZWVkZWQuCgpBbHNvLCBfaWZfIHN1Y2ggYSBzZXQg
b2YgcHJvcGVydGllcyBpcyBpbnRyb2R1Y2VkIGFuZCBhY2NlcHRlZCBieSB0aGUgZGV2aWNldHJl
ZQpyZXZpZXdlcnMsIGl0IHNob3VsZCBwcm9iYWJseSBiZSBhIHNldCBvZiBwcm9wZXJ0aWVzIHdo
aWNoIGFwcGxpZXMgdG8gX2FsbF8gaGFyZHdhcmUKbW9uaXRvcmluZyBkcml2ZXJzLCBub3QganVz
dCB0byBvbmUuIEV2ZW4gaWYgc3VwcG9ydCBpcyBub3QgaW1wbGVtZW50ZWQgaW1tZWRpYXRlbHkK
aW4gdGhlIGh3bW9uIGNvcmUsIHRoZSBwcm9wZXJ0aWVzIHNob3VsZCBiZSB1c2FibGUgaW4gYSBn
ZW5lcmljIHdheSwgYW5kIG5vdApyZWZsZWN0IHN5c2ZzIGF0dHJpYnV0ZSBuYW1lcyB1c2VkIGJ5
IHRoZSBod21vbiBzdWJzeXN0ZW0uCgpUaGFua3MsCkd1ZW50ZXIKCj4gICBFeGFtcGxlIExNOTAg
bm9kZToKPgo+ICAgdGVtcC1zZW5zb3Igewo+IEBAIC00MSw0ICs3MywxMiBAQCB0ZW1wLXNlbnNv
ciB7Cj4gICAJdmNjLXN1cHBseSA9IDwmcGFsbWFzX2xkbzZfcmVnPjsKPiAgIAlpbnRlcnJ1cHQt
cGFyZW50ID0gPCZncGlvPjsKPiAgIAlpbnRlcnJ1cHRzID0gPFRFR1JBX0dQSU8oTywgNCkgSVJR
X1RZUEVfTEVWRUxfTE9XPjsKPiArCXVwZGF0ZS1pbnRlcnZhbCA9IDw1MDA+Owo+ICsJbG9jYWwt
bG93ID0gPDUwMDA+Owo+ICsJbG9jYWwtaGlnaCA9IDw4MDAwMD47Cj4gKwlsb2NhbC1jcml0aWNh
bCA9IDw5MDAwMD47Cj4gKwlyZW1vdGUtbG93ID0gPDUwMDA+Owo+ICsJcmVtb3RlLWhpZ2ggPSA8
ODAwMDA+Owo+ICsJcmVtb3RlLWNyaXRpY2FsID0gPDkwMDAwPjsKPiArCXJlbW90ZS1vZmZzZXQg
PSA8KC02MjEyNSk+Owo+ICAgfQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2h3bW9uL2xtOTAuYyBi
L2RyaXZlcnMvaHdtb24vbG05MC5jCj4gaW5kZXggODhkYWY3Mi4uOGFlODc5MSAxMDA2NDQKPiAt
LS0gYS9kcml2ZXJzL2h3bW9uL2xtOTAuYwo+ICsrKyBiL2RyaXZlcnMvaHdtb24vbG05MC5jCj4g
QEAgLTkzLDYgKzkzLDcgQEAKPiAgICNpbmNsdWRlIDxsaW51eC9od21vbi5oPgo+ICAgI2luY2x1
ZGUgPGxpbnV4L2Vyci5oPgo+ICAgI2luY2x1ZGUgPGxpbnV4L211dGV4Lmg+Cj4gKyNpbmNsdWRl
IDxsaW51eC9vZi5oPgo+ICAgI2luY2x1ZGUgPGxpbnV4L3N5c2ZzLmg+Cj4gICAjaW5jbHVkZSA8
bGludXgvaW50ZXJydXB0Lmg+Cj4gICAjaW5jbHVkZSA8bGludXgvcmVndWxhdG9yL2NvbnN1bWVy
Lmg+Cj4gQEAgLTE1MDQsOCArMTUwNSwxNiBAQCBzdGF0aWMgdm9pZCBsbTkwX3Jlc3RvcmVfY29u
ZihzdHJ1Y3QgaTJjX2NsaWVudCAqY2xpZW50LCBzdHJ1Y3QgbG05MF9kYXRhICpkYXRhKQo+ICAg
c3RhdGljIHZvaWQgbG05MF9pbml0X2NsaWVudChzdHJ1Y3QgbG05MF9kYXRhICpkYXRhKQo+ICAg
ewo+ICAgCXN0cnVjdCBpMmNfY2xpZW50ICpjbGllbnQgPSBkYXRhLT5jbGllbnQ7Cj4gKwlzdHJ1
Y3QgZGV2aWNlICpkZXYgPSAmY2xpZW50LT5kZXY7Cj4gICAJdTggY29uZmlnLCBjb252cmF0ZTsK
PiArCXUzMiBtczsKPiArI2lmZGVmIENPTkZJR19PRgo+ICsJczMyIHRlbXA7Cj4gKyNlbmRpZgo+
Cj4gKwkvKgo+ICsJICogU2F2ZSBvbGQgY29udmVyc2lvbiByYXRlLgo+ICsJICovCj4gICAJaWYg
KGxtOTBfcmVhZF9yZWcoY2xpZW50LCBMTTkwX1JFR19SX0NPTlZSQVRFLCAmY29udnJhdGUpIDwg
MCkgewo+ICAgCQlkZXZfd2FybigmY2xpZW50LT5kZXYsICJGYWlsZWQgdG8gcmVhZCBjb252cmF0
ZSByZWdpc3RlciFcbiIpOwo+ICAgCQljb252cmF0ZSA9IExNOTBfREVGX0NPTlZSQVRFX1JWQUw7
Cj4gQEAgLTE1MTUsMTQgKzE1MjQsMjQgQEAgc3RhdGljIHZvaWQgbG05MF9pbml0X2NsaWVudChz
dHJ1Y3QgbG05MF9kYXRhICpkYXRhKQo+ICAgCS8qCj4gICAJICogU3RhcnQgdGhlIGNvbnZlcnNp
b25zLgo+ICAgCSAqLwo+IC0JbG05MF9zZXRfY29udnJhdGVfbG9ja2VkKGRhdGEsIDUwMCk7ICAv
KiA1MDBtcyAvIDJIeiAgKi8KPiArI2lmZGVmIENPTkZJR19PRgo+ICsJaWYgKG9mX3Byb3BlcnR5
X3JlYWRfdTMyKGRldi0+b2Zfbm9kZSwgInVwZGF0ZS1pbnRlcnZhbCIsICZtcykgPCAwKQo+ICsj
ZW5kaWYKPiArCQltcyA9IDUwMDsgIC8qIGRlZmF1bHQgcmF0ZTogMkh6ICovCj4gKwlsbTkwX3Nl
dF9jb252cmF0ZV9sb2NrZWQoZGF0YSwgbXMpOwo+ICsKPiArCS8qCj4gKwkgKiBTYXZlIG9sZCBj
b25maWcKPiArCSAqLwo+ICAgCWlmIChsbTkwX3JlYWRfcmVnKGNsaWVudCwgTE05MF9SRUdfUl9D
T05GSUcxLCAmY29uZmlnKSA8IDApIHsKPiAtCQlkZXZfd2FybigmY2xpZW50LT5kZXYsICJJbml0
aWFsaXphdGlvbiBmYWlsZWQhXG4iKTsKPiArCQlkZXZfd2FybihkZXYsICJJbml0aWFsaXphdGlv
biBmYWlsZWQhXG4iKTsKPiAgIAkJcmV0dXJuOwo+ICAgCX0KPiAgIAlkYXRhLT5jb25maWdfb3Jp
ZyA9IGNvbmZpZzsKPgo+IC0JLyogQ2hlY2sgVGVtcGVyYXR1cmUgUmFuZ2UgU2VsZWN0ICovCj4g
KwkvKgo+ICsJICogQ2hlY2sgVGVtcGVyYXR1cmUgUmFuZ2UgU2VsZWN0Cj4gKwkgKi8KPiAgIAlp
ZiAoZGF0YS0+a2luZCA9PSBhZHQ3NDYxIHx8IGRhdGEtPmtpbmQgPT0gdG1wNDUxKSB7Cj4gICAJ
CWlmIChjb25maWcgJiAweDA0KQo+ICAgCQkJZGF0YS0+ZmxhZ3MgfD0gTE05MF9GTEFHX0FEVDc0
NjFfRVhUOwo+IEBAIC0xNTQ1LDYgKzE1NjQsMzYgQEAgc3RhdGljIHZvaWQgbG05MF9pbml0X2Ns
aWVudChzdHJ1Y3QgbG05MF9kYXRhICpkYXRhKQo+ICAgCWNvbmZpZyAmPSAweEJGOwkvKiBydW4g
Ki8KPiAgIAlpZiAoY29uZmlnICE9IGRhdGEtPmNvbmZpZ19vcmlnKSAvKiBPbmx5IHdyaXRlIGlm
IGNoYW5nZWQgKi8KPiAgIAkJaTJjX3NtYnVzX3dyaXRlX2J5dGVfZGF0YShjbGllbnQsIExNOTBf
UkVHX1dfQ09ORklHMSwgY29uZmlnKTsKPiArCj4gKyNpZmRlZiBDT05GSUdfT0YKPiArCS8qCj4g
KwkgKiBTZXQgaW5pdGlhbCB2YWx1ZXMgZnJvbSBkZXZpY2V0cmVlCj4gKwkgKi8KPiArI2RlZmlu
ZSBJTklUX1JFRyhfcHJvcGVydHksIF9pbmRleCwgX2JpdHMpIHsgXAo+ICsJaWYgKG9mX3Byb3Bl
cnR5X3JlYWRfczMyKGRldi0+b2Zfbm9kZSwgX3Byb3BlcnR5LCAmdGVtcCkgPT0gMCkgXAo+ICsJ
CWxtOTBfc2V0X3RlbXAjI19iaXRzIyNfbG9ja2VkKGRhdGEsIF9pbmRleCwgdGVtcCk7IFwKPiAr
fQo+ICsJSU5JVF9SRUcoImxvY2FsLWxvdyIsIExPQ0FMX0xPVywgOCk7Cj4gKwlJTklUX1JFRygi
bG9jYWwtaGlnaCIsIExPQ0FMX0hJR0gsIDgpOwo+ICsJSU5JVF9SRUcoImxvY2FsLWNyaXRpY2Fs
IiwgTE9DQUxfQ1JJVCwgOCk7Cj4gKwlJTklUX1JFRygicmVtb3RlLWxvdyIsIFJFTU9URV9MT1cs
IDExKTsKPiArCUlOSVRfUkVHKCJyZW1vdGUtaGlnaCIsIFJFTU9URV9ISUdILCAxMSk7Cj4gKwlJ
TklUX1JFRygicmVtb3RlLWNyaXRpY2FsIiwgUkVNT1RFX0NSSVQsIDgpOwo+ICsJaWYgKGRhdGEt
PmZsYWdzICYgTE05MF9IQVZFX09GRlNFVCkgewo+ICsJCUlOSVRfUkVHKCJyZW1vdGUtb2Zmc2V0
IiwgUkVNT1RFX09GRlNFVCwgMTEpOwo+ICsJfQo+ICsJaWYgKGRhdGEtPmZsYWdzICYgTE05MF9I
QVZFX0VNRVJHRU5DWSkgewo+ICsJCUlOSVRfUkVHKCJsb2NhbC1lbWVyZ2VuY3kiLCBMT0NBTF9F
TUVSRywgOCk7Cj4gKwkJSU5JVF9SRUcoInJlbW90ZS1lbWVyZ2VuY3kiLCBSRU1PVEVfRU1FUkcs
IDgpOwo+ICsJfQo+ICsJaWYgKGRhdGEtPmZsYWdzICYgTE05MF9IQVZFX1RFTVAzKSB7Cj4gKwkJ
SU5JVF9SRUcoInJlbW90ZTItbG93IiwgUkVNT1RFMl9MT1csIDExKTsKPiArCQlJTklUX1JFRygi
cmVtb3RlMi1oaWdoIiwgUkVNT1RFMl9ISUdILCAxMSk7Cj4gKwkJSU5JVF9SRUcoInJlbW90ZTIt
Y3JpdGljYWwiLCBSRU1PVEUyX0NSSVQsIDgpOwo+ICsJCUlOSVRfUkVHKCJyZW1vdGUyLWVtZXJn
ZW5jeSIsIFJFTU9URTJfRU1FUkcsIDgpOwo+ICsJfQo+ICsjdW5kZWYgSU5JVF9SRUcKPiArI2Vu
ZGlmCj4gICB9Cj4KPiAgIHN0YXRpYyBib29sIGxtOTBfaXNfdHJpcHBlZChzdHJ1Y3QgaTJjX2Ns
aWVudCAqY2xpZW50LCB1MTYgKnN0YXR1cykKPgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fCmxtLXNlbnNvcnMgbWFpbGluZyBsaXN0CmxtLXNlbnNvcnNA
bG0tc2Vuc29ycy5vcmcKaHR0cDovL2xpc3RzLmxtLXNlbnNvcnMub3JnL21haWxtYW4vbGlzdGlu
Zm8vbG0tc2Vuc29ycw=

WARNING: multiple messages have this Message-ID (diff)
From: Guenter Roeck <linux-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org>
To: "Stéphan Kochen"
	<stephan-j6uo2F6POYhmR6Xm/wNWPw@public.gmane.org>,
	"Jean Delvare" <jdelvare-IBi9RG/b67k@public.gmane.org>
Cc: Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	Pawel Moll <pawel.moll-5wv7dgnIgG8@public.gmane.org>,
	Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>,
	Ian Campbell
	<ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org>,
	Kumar Gala <galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>,
	lm-sensors-GZX6beZjE8VD60Wz+7aTrA@public.gmane.org,
	devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH 2/3] lm90: initialize parameters from devicetree
Date: Fri, 22 Jan 2016 06:53:44 -0800	[thread overview]
Message-ID: <56A24278.8050909@roeck-us.net> (raw)
In-Reply-To: <1453404877-17897-3-git-send-email-stephan-j6uo2F6POYhmR6Xm/wNWPw@public.gmane.org>

On 01/21/2016 11:34 AM, Stéphan Kochen wrote:
> Allow a device tree to set initial temperature sensor parameters.
>
> Userspace can still override actual values through sysfs.
>
> Signed-off-by: Stéphan Kochen <stephan-j6uo2F6POYhmR6Xm/wNWPw@public.gmane.org>
> ---
>   Documentation/devicetree/bindings/hwmon/lm90.txt | 40 +++++++++++++++++
>   drivers/hwmon/lm90.c                             | 55 ++++++++++++++++++++++--
>   2 files changed, 92 insertions(+), 3 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/hwmon/lm90.txt b/Documentation/devicetree/bindings/hwmon/lm90.txt
> index e863248..045e94b 100644
> --- a/Documentation/devicetree/bindings/hwmon/lm90.txt
> +++ b/Documentation/devicetree/bindings/hwmon/lm90.txt
> @@ -33,6 +33,38 @@ Optional properties:
>                 LM90 "-ALERT" pin output.
>                 See interrupt-controller/interrupts.txt for the format.
>
> +- update-interval: Interval at which temperatures are sampled,
> +  Type: unsigned   in milliseconds.
> +  Size: one cell
> +
> +- local-low:      Valid temperature range for the chip internal sensor,
> +  local-high:     outside which the alert will be set. Values are in
> +  local-critical: millicelcius.
> +  Type: signed
> +  Size: one cell
> +
> +- remote-low:      Valid temperature range for the external sensor,
> +  remote-high:     outside which the alert will be set. Values are in
> +  remote-critical: millicelciius.
> +  Type: signed
> +  Size: one cell
> +
> +- remote-offset:   Where available, an external sensor temperature offset.
> +  Type: signed
> +  Size: one cell
> +
> +- local-emergency:  On max6659, max6695 and max6696, a configurable
> +  remote-emergency: 3rd upper bound on temperature.
> +  Type: signed
> +  Size: one cell
> +
> +- remote2-low:      On max6695 and max6696, a second external sensor.
> +  remote2-high:
> +  remote2-critical:
> +  remote2-emergency:
> +  Type: signed
> +  Size: one cell
> +

This very much smells like configuration, not hardware description.

Having said that, the thermal subsystem does something similar. This raises even more
questions, though. Since patch 3 of the series introduces registration with the thermal
subsystem, it seems to me that the thermal subsystem should provide any limits used
to program the chips, and that there should be a mechanism for the thermal subsystem
to interact with the driver to both set the limits and to be informed if a limit
is exceeded.

Also, _if_ such a set of properties is introduced and accepted by the devicetree
reviewers, it should probably be a set of properties which applies to _all_ hardware
monitoring drivers, not just to one. Even if support is not implemented immediately
in the hwmon core, the properties should be usable in a generic way, and not
reflect sysfs attribute names used by the hwmon subsystem.

Thanks,
Guenter

>   Example LM90 node:
>
>   temp-sensor {
> @@ -41,4 +73,12 @@ temp-sensor {
>   	vcc-supply = <&palmas_ldo6_reg>;
>   	interrupt-parent = <&gpio>;
>   	interrupts = <TEGRA_GPIO(O, 4) IRQ_TYPE_LEVEL_LOW>;
> +	update-interval = <500>;
> +	local-low = <5000>;
> +	local-high = <80000>;
> +	local-critical = <90000>;
> +	remote-low = <5000>;
> +	remote-high = <80000>;
> +	remote-critical = <90000>;
> +	remote-offset = <(-62125)>;
>   }
> diff --git a/drivers/hwmon/lm90.c b/drivers/hwmon/lm90.c
> index 88daf72..8ae8791 100644
> --- a/drivers/hwmon/lm90.c
> +++ b/drivers/hwmon/lm90.c
> @@ -93,6 +93,7 @@
>   #include <linux/hwmon.h>
>   #include <linux/err.h>
>   #include <linux/mutex.h>
> +#include <linux/of.h>
>   #include <linux/sysfs.h>
>   #include <linux/interrupt.h>
>   #include <linux/regulator/consumer.h>
> @@ -1504,8 +1505,16 @@ static void lm90_restore_conf(struct i2c_client *client, struct lm90_data *data)
>   static void lm90_init_client(struct lm90_data *data)
>   {
>   	struct i2c_client *client = data->client;
> +	struct device *dev = &client->dev;
>   	u8 config, convrate;
> +	u32 ms;
> +#ifdef CONFIG_OF
> +	s32 temp;
> +#endif
>
> +	/*
> +	 * Save old conversion rate.
> +	 */
>   	if (lm90_read_reg(client, LM90_REG_R_CONVRATE, &convrate) < 0) {
>   		dev_warn(&client->dev, "Failed to read convrate register!\n");
>   		convrate = LM90_DEF_CONVRATE_RVAL;
> @@ -1515,14 +1524,24 @@ static void lm90_init_client(struct lm90_data *data)
>   	/*
>   	 * Start the conversions.
>   	 */
> -	lm90_set_convrate_locked(data, 500);  /* 500ms / 2Hz  */
> +#ifdef CONFIG_OF
> +	if (of_property_read_u32(dev->of_node, "update-interval", &ms) < 0)
> +#endif
> +		ms = 500;  /* default rate: 2Hz */
> +	lm90_set_convrate_locked(data, ms);
> +
> +	/*
> +	 * Save old config
> +	 */
>   	if (lm90_read_reg(client, LM90_REG_R_CONFIG1, &config) < 0) {
> -		dev_warn(&client->dev, "Initialization failed!\n");
> +		dev_warn(dev, "Initialization failed!\n");
>   		return;
>   	}
>   	data->config_orig = config;
>
> -	/* Check Temperature Range Select */
> +	/*
> +	 * Check Temperature Range Select
> +	 */
>   	if (data->kind == adt7461 || data->kind == tmp451) {
>   		if (config & 0x04)
>   			data->flags |= LM90_FLAG_ADT7461_EXT;
> @@ -1545,6 +1564,36 @@ static void lm90_init_client(struct lm90_data *data)
>   	config &= 0xBF;	/* run */
>   	if (config != data->config_orig) /* Only write if changed */
>   		i2c_smbus_write_byte_data(client, LM90_REG_W_CONFIG1, config);
> +
> +#ifdef CONFIG_OF
> +	/*
> +	 * Set initial values from devicetree
> +	 */
> +#define INIT_REG(_property, _index, _bits) { \
> +	if (of_property_read_s32(dev->of_node, _property, &temp) == 0) \
> +		lm90_set_temp##_bits##_locked(data, _index, temp); \
> +}
> +	INIT_REG("local-low", LOCAL_LOW, 8);
> +	INIT_REG("local-high", LOCAL_HIGH, 8);
> +	INIT_REG("local-critical", LOCAL_CRIT, 8);
> +	INIT_REG("remote-low", REMOTE_LOW, 11);
> +	INIT_REG("remote-high", REMOTE_HIGH, 11);
> +	INIT_REG("remote-critical", REMOTE_CRIT, 8);
> +	if (data->flags & LM90_HAVE_OFFSET) {
> +		INIT_REG("remote-offset", REMOTE_OFFSET, 11);
> +	}
> +	if (data->flags & LM90_HAVE_EMERGENCY) {
> +		INIT_REG("local-emergency", LOCAL_EMERG, 8);
> +		INIT_REG("remote-emergency", REMOTE_EMERG, 8);
> +	}
> +	if (data->flags & LM90_HAVE_TEMP3) {
> +		INIT_REG("remote2-low", REMOTE2_LOW, 11);
> +		INIT_REG("remote2-high", REMOTE2_HIGH, 11);
> +		INIT_REG("remote2-critical", REMOTE2_CRIT, 8);
> +		INIT_REG("remote2-emergency", REMOTE2_EMERG, 8);
> +	}
> +#undef INIT_REG
> +#endif
>   }
>
>   static bool lm90_is_tripped(struct i2c_client *client, u16 *status)
>

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  parent reply	other threads:[~2016-01-22 14:53 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-21 19:34 [PATCH 0/3] lm90: device tree and thermal zone support Stéphan Kochen
     [not found] ` <1453404877-17897-1-git-send-email-stephan-j6uo2F6POYhmR6Xm/wNWPw@public.gmane.org>
2016-01-21 19:34   ` [PATCH 1/3] lm90: separate register accessors from sysfs Stéphan Kochen
     [not found]     ` <1453404877-17897-2-git-send-email-stephan-j6uo2F6POYhmR6Xm/wNWPw@public.gmane.org>
2016-01-22 14:42       ` [lm-sensors] " Guenter Roeck
2016-01-22 14:42         ` Guenter Roeck
     [not found]         ` <56A23FD2.9040009-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org>
2016-01-22 22:00           ` [lm-sensors] " Stéphan Kochen
2016-01-22 22:00             ` Stéphan Kochen
     [not found]             ` <20160122220056.GA21534-3Ql6wuUqVi7fKcxHm0zdRv8+0UxHXcjY@public.gmane.org>
2016-01-25  9:41               ` [lm-sensors] " Jean Delvare
2016-01-21 19:34   ` [PATCH 2/3] lm90: initialize parameters from devicetree Stéphan Kochen
     [not found]     ` <1453404877-17897-3-git-send-email-stephan-j6uo2F6POYhmR6Xm/wNWPw@public.gmane.org>
2016-01-22 14:53       ` Guenter Roeck [this message]
2016-01-22 14:53         ` Guenter Roeck
     [not found]         ` <56A24278.8050909-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org>
2016-01-22 22:32           ` [lm-sensors] " Stéphan Kochen
2016-01-22 22:32             ` Stéphan Kochen
2016-01-23  2:53             ` Guenter Roeck
     [not found]               ` <56A2EB3E.4080002-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org>
2016-01-27 21:18                 ` Interrupt driven thermal OF sensors (was: [PATCH 2/3] lm90: initialize parameters from devicetree) Stéphan Kochen
2016-01-28  5:05                   ` Interrupt driven thermal OF sensors Guenter Roeck
2016-01-29  0:16                     ` Stéphan Kochen
2016-01-21 19:34   ` [PATCH 3/3] lm90: register with thermal zones Stéphan Kochen
     [not found]     ` <1453404877-17897-4-git-send-email-stephan-j6uo2F6POYhmR6Xm/wNWPw@public.gmane.org>
2016-01-22 22:45       ` [lm-sensors] " Rob Herring
2016-01-22 22:45         ` Rob Herring
2016-01-22 23:02         ` [lm-sensors] " Stéphan Kochen
2016-01-22 23:02           ` Stéphan Kochen
     [not found]           ` <20160122230239.GA22301-3Ql6wuUqVi7fKcxHm0zdRv8+0UxHXcjY@public.gmane.org>
2016-01-22 23:11             ` [lm-sensors] " Rob Herring
2016-01-22 23:11               ` Rob Herring

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=56A24278.8050909@roeck-us.net \
    --to=linux@roeck-us.net \
    --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
    --cc=ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org \
    --cc=jdelvare-IBi9RG/b67k@public.gmane.org \
    --cc=lm-sensors-GZX6beZjE8VD60Wz+7aTrA@public.gmane.org \
    --cc=mark.rutland-5wv7dgnIgG8@public.gmane.org \
    --cc=pawel.moll-5wv7dgnIgG8@public.gmane.org \
    --cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
    --cc=stephan-j6uo2F6POYhmR6Xm/wNWPw@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.