diff for duplicates of <56963392.9080101@topic.nl> diff --git a/a/1.txt b/N1/1.txt index dfc947b..541a2ec 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -1,57 +1,95 @@ -77u/T24gMDgtMDEtMTYgMTY6MDksIEd1ZW50ZXIgUm9lY2sgd3JvdGU6Cj4gT24gMDEvMDcvMjAx -NiAxMDo1OSBBTSwgTWlrZSBMb29pam1hbnMgd3JvdGU6Cj4+IFRoYW5rIHlvdSB2ZXJ5IG11Y2gg -Zm9yIHlvdXIgcmV2aWV3IGNvbW1lbnRzLCBJJ2xsIHVwZGF0ZSB0aGUgZHJpdmVyIGFuZAo+PiBw -b3N0IGEgdjIgcGF0Y2guCj4+Cj4+IElubGluZWQgc29tZSByZXBsaWVzIGJlbG93LiBBc3N1bWUg -dGhhdCBJICJ3aWxsIGRvIiBmb3IgYWxsIGNvbW1lbnRzIEkKPj4gZGlkbid0IGNvbW1lbnQgb24g -aW5saW5lLi4uCj4+Cj4+IE9uIDA2LTAxLTE2IDE2OjIyLCBHdWVudGVyIFJvZWNrIHdyb3RlOgo+ -Pj4gSGVsbG8gTWlrZSwKPj4+Cj4+PiBPbiAwMS8wNi8yMDE2IDEyOjA3IEFNLCBNaWtlIExvb2lq -bWFucyB3cm90ZToKPj4+PiBUaGlzIGFkZHMgc3VwcG9ydCBmb3IgdGhlIExpbmVhciBUZWNobm9s -b2d5IExUQzI5OTAgIEkyQyBTeXN0ZW0gTW9uaXRvci4KPj4+Cj4+PiBzLyAgLyAvCj4+Pgo+Pj4+ -IFRoZSBMVEMyOTkwIHN1cHBvcnRzIGEgY29tYmluYXRpb24gb2Ygdm9sdGFnZSwgY3VycmVudCBh -bmQgdGVtcGVyYXR1cmUKPj4+PiBtb25pdG9yaW5nLCBidXQgdGhpcyBkcml2ZXIgY3VycmVudGx5 -IG9ubHkgc3VwcG9ydHMgcmVhZGluZyB0d28gY3VycmVudHMKPj4+PiBieSBtZWFzdXJpbmcgdHdv -IGRpZmZlcmVudGlhbCB2b2x0YWdlcyBhY3Jvc3Mgc2VyaWVzIHJlc2lzdG9ycy4KPj4+Pgo+Pj4g -UGx1cyBWQ0MsIHBsdXMgdGhlIGludGVybmFsIHRlbXBlcmF0dXJlLgo+Pgo+PiBZZWFoLCBJIHNo -b3VsZCBnaXZlIG15c2VsZiBtb3JlIGNyZWRpdCA6KSBJJ2xsIGFkZCB0aGF0IGluIEtjb25maWcg -dG9vLgo+Pgo+Pj4+IFRoaXMgaXMgc3VmZmljaWVudCB0byBzdXBwb3J0IHRoZSBUb3BpYyBNaWFt -aSBTT00gd2hpY2ggdXNlcyB0aGlzIGNoaXAKPj4+PiB0byBtb25pdG9yIHRoZSBjdXJyZW50cyBm -bG93aW5nIGludG8gdGhlIEZQR0EgYW5kIHRoZSBDUFUgcGFydHMuCj4+Pj4KPj4+PiBTaWduZWQt -b2ZmLWJ5OiBNaWtlIExvb2lqbWFucyA8bWlrZS5sb29pam1hbnNAdG9waWMubmw+Cj4+Pj4gLS0t -Cj4+Pj4gICBkcml2ZXJzL2h3bW9uL0tjb25maWcgICB8ICAxNSArKysKPj4+PiAgIGRyaXZlcnMv -aHdtb24vTWFrZWZpbGUgIHwgICAxICsKPj4+PiAgIGRyaXZlcnMvaHdtb24vbHRjMjk5MC5jIHwg -MjczCj4+Pj4gKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr -Cj4+Pgo+Cj4gWyAuLi4gXQo+Cj4+Pj4gK30KPj4+PiArCj4+Pj4gK3N0YXRpYyBzdHJ1Y3QgbHRj -Mjk5MF9kYXRhICpsdGMyOTkwX3VwZGF0ZV9kZXZpY2Uoc3RydWN0IGRldmljZSAqZGV2KQo+Pj4+ -ICt7Cj4+Pj4gKyAgICBzdHJ1Y3QgaTJjX2NsaWVudCAqaTJjID0gdG9faTJjX2NsaWVudChkZXYp -Owo+Pj4+ICsgICAgc3RydWN0IGx0YzI5OTBfZGF0YSAqZGF0YSA9IGkyY19nZXRfY2xpZW50ZGF0 -YShpMmMpOwo+Pj4+ICsgICAgc3RydWN0IGx0YzI5OTBfZGF0YSAqcmV0ID0gZGF0YTsKPj4+PiAr -ICAgIHVuc2lnbmVkIGludCB0aW1lb3V0Owo+Pj4+ICsKPj4+PiArICAgIG11dGV4X2xvY2soJmRh -dGEtPnVwZGF0ZV9sb2NrKTsKPj4+PiArCj4+Pj4gKyAgICAvKiBVcGRhdGUgYWJvdXQgNCB0aW1l -cyBwZXIgc2Vjb25kIG1heCAqLwo+Pj4+ICsgICAgaWYgKHRpbWVfYWZ0ZXIoamlmZmllcywgZGF0 -YS0+bGFzdF91cGRhdGVkICsgSFogLyA0KSB8fAo+Pj4+ICFkYXRhLT52YWxpZCkgewo+Pj4+ICsg -ICAgICAgIGludCB2YWw7Cj4+Pj4gKyAgICAgICAgaW50IGk7Cj4+Pj4gKwo+Pj4KPj4+IFBsZWFz -ZSBjb25zaWRlciB1c2luZyBjb250aW51b3VzIGNvbnZlcnNpb24uIFRoaXMgd291bGQgc2ltcGxp -ZnkgdGhlCj4+PiBjb2RlIHNpZ25pZmljYW50bHkKPj4+IGFuZCByZWR1Y2UgcmVhZCBkZWxheXMu -Cj4+Cj4+IEl0IG1pZ2h0IGluY3JlYXNlIHBvd2VyIGNvbnN1bXB0aW9uIHRob3VnaCwgYXMgdHlw -aWNhbGx5IHNvbWUgdXNlciBwcm9ncmFtCj4+IHdvdWxkIHBvbGwgdGhpcyBldmVyeSAxMCBzZWNv -bmRzIG9yIHNvLiBJJ2xsIGNoZWNrIHRoZSBkYXRhIHNoZWV0Lgo+Pgo+Cj4gSSBzdXNwZWN0IHRo -YXQgdGhlIHBvd2VyIHNhdmluZ3Mgd2lsbCBiZSBsZXNzIHRoYW4gdGhlIGFkZGVkIHBvd2VyCj4g -Y29uc3VtZWQgYnkgdGhlIENQVSBkdWUgdG8gdGhlIG1vcmUgY29tcGxleCBjb2RlLgo+Cj4gUmVh -bGx5LCB1bmxlc3MgeW91IGhhdmUgYW4gYXBwbGljYXRpb24gd2hlcmUgYSBmZXcgbVcgcG93ZXIg -c2F2aW5ncwo+IGFyZSBlc3NlbnRpYWwgYW5kIHdhcnJhbnQgdGhlIGFkZGl0aW9uYWwgY29kZSBj -b21wbGV4aXR5LCB0aGlzIGlzCj4gdGhlIHdyb25nIGFwcHJvYWNoLgoKWWVhaCwgeW91J3JlIHJp -Z2h0LCBjaGVja2VkIHRoZSBkYXRhc2hlZXQgYW5kIGl0IHJlcG9ydHMgYSAxbUEgdHlwaWNhbCBw -b3dlciAKdXNhZ2Ugd2hlbiBjb252ZXJ0aW5nLiBOb3Qgd29ydGggdGhlIHRyb3VibGUuCgpDb250 -aW51b3VzIGNvbnZlcnNpb24gbWFkZSB0aGUgZHJpdmVyIGEgTE9UIHNpbXBsZXIsIGNvdWxkIGV2 -ZW4gY29tcGxldGVseSAKZHJvcCB0aGUgcHJpdmF0ZSBkYXRhIHN0cnVjdHVyZS4KCkkgc2VudCB2 -MiBhbHJlYWR5LCBidXQganVzdCBub3RpY2VkIHRoYXQgc29tZSBvZiB0aGUgI2luY2x1ZGVzIHdl -cmUgbm8gbG9uZ2VyCm5lZWRlZCwgc28gSSdsbCBzZW5kIGEgdjMgdG8gZml4IHRoYXQuCgouLi4K -CgpLaW5kIHJlZ2FyZHMsCgpNaWtlIExvb2lqbWFucwpTeXN0ZW0gRXhwZXJ0CgpUT1BJQyBFbWJl -ZGRlZCBQcm9kdWN0cwpFaW5kaG92ZW5zZXdlZyAzMi1DLCBOTC01NjgzIEtIIEJlc3QKUG9zdGJ1 -cyA0NDAsIE5MLTU2ODAgQUsgQmVzdApUZWxlZm9vbjogKzMxICgwKSA0OTkgMzMgNjkgNzkKRS1t -YWlsOiBtaWtlLmxvb2lqbWFuc0B0b3BpY3Byb2R1Y3RzLmNvbQpXZWJzaXRlOiB3d3cudG9waWNw -cm9kdWN0cy5jb20KClBsZWFzZSBjb25zaWRlciB0aGUgZW52aXJvbm1lbnQgYmVmb3JlIHByaW50 -aW5nIHRoaXMgZS1tYWlsCgoKCgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f -X19fX19fX19fX19fCmxtLXNlbnNvcnMgbWFpbGluZyBsaXN0CmxtLXNlbnNvcnNAbG0tc2Vuc29y -cy5vcmcKaHR0cDovL2xpc3RzLmxtLXNlbnNvcnMub3JnL21haWxtYW4vbGlzdGluZm8vbG0tc2Vu -c29ycw= +On 08-01-16 16:09, Guenter Roeck wrote: +> On 01/07/2016 10:59 AM, Mike Looijmans wrote: +>> Thank you very much for your review comments, I'll update the driver and +>> post a v2 patch. +>> +>> Inlined some replies below. Assume that I "will do" for all comments I +>> didn't comment on inline... +>> +>> On 06-01-16 16:22, Guenter Roeck wrote: +>>> Hello Mike, +>>> +>>> On 01/06/2016 12:07 AM, Mike Looijmans wrote: +>>>> This adds support for the Linear Technology LTC2990 I2C System Monitor. +>>> +>>> s/ / / +>>> +>>>> The LTC2990 supports a combination of voltage, current and temperature +>>>> monitoring, but this driver currently only supports reading two currents +>>>> by measuring two differential voltages across series resistors. +>>>> +>>> Plus VCC, plus the internal temperature. +>> +>> Yeah, I should give myself more credit :) I'll add that in Kconfig too. +>> +>>>> This is sufficient to support the Topic Miami SOM which uses this chip +>>>> to monitor the currents flowing into the FPGA and the CPU parts. +>>>> +>>>> Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl> +>>>> --- +>>>> drivers/hwmon/Kconfig | 15 +++ +>>>> drivers/hwmon/Makefile | 1 + +>>>> drivers/hwmon/ltc2990.c | 273 +>>>> ++++++++++++++++++++++++++++++++++++++++++++++++ +>>> +> +> [ ... ] +> +>>>> +} +>>>> + +>>>> +static struct ltc2990_data *ltc2990_update_device(struct device *dev) +>>>> +{ +>>>> + struct i2c_client *i2c = to_i2c_client(dev); +>>>> + struct ltc2990_data *data = i2c_get_clientdata(i2c); +>>>> + struct ltc2990_data *ret = data; +>>>> + unsigned int timeout; +>>>> + +>>>> + mutex_lock(&data->update_lock); +>>>> + +>>>> + /* Update about 4 times per second max */ +>>>> + if (time_after(jiffies, data->last_updated + HZ / 4) || +>>>> !data->valid) { +>>>> + int val; +>>>> + int i; +>>>> + +>>> +>>> Please consider using continuous conversion. This would simplify the +>>> code significantly +>>> and reduce read delays. +>> +>> It might increase power consumption though, as typically some user program +>> would poll this every 10 seconds or so. I'll check the data sheet. +>> +> +> I suspect that the power savings will be less than the added power +> consumed by the CPU due to the more complex code. +> +> Really, unless you have an application where a few mW power savings +> are essential and warrant the additional code complexity, this is +> the wrong approach. + +Yeah, you're right, checked the datasheet and it reports a 1mA typical power +usage when converting. Not worth the trouble. + +Continuous conversion made the driver a LOT simpler, could even completely +drop the private data structure. + +I sent v2 already, but just noticed that some of the #includes were no longer +needed, so I'll send a v3 to fix that. + +... + + +Kind regards, + +Mike Looijmans +System Expert + +TOPIC Embedded Products +Eindhovenseweg 32-C, NL-5683 KH Best +Postbus 440, NL-5680 AK Best +Telefoon: +31 (0) 499 33 69 79 +E-mail: mike.looijmans@topicproducts.com +Website: www.topicproducts.com + +Please consider the environment before printing this e-mail diff --git a/a/content_digest b/N1/content_digest index c16045a..85e1a0a 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -3,70 +3,108 @@ "ref\0568EB58C.3090701@topic.nl\0" "ref\0568FD131.4080308@roeck-us.net\0" "From\0Mike Looijmans <mike.looijmans@topic.nl>\0" - "Subject\0Re: [lm-sensors] [PATCH] hwmon: Add LTC2990 sensor driver\0" - "Date\0Wed, 13 Jan 2016 11:22:58 +0000\0" + "Subject\0Re: [PATCH] hwmon: Add LTC2990 sensor driver\0" + "Date\0Wed, 13 Jan 2016 12:22:58 +0100\0" "To\0Guenter Roeck <linux@roeck-us.net>" - " lm-sensors@lm-sensors.org\0" - "Cc\0jdelvare@suse.com" - " linux-kernel@vger.kernel.org\0" + " <lm-sensors@lm-sensors.org>\0" + "Cc\0<jdelvare@suse.com>" + " <linux-kernel@vger.kernel.org>\0" "\00:1\0" "b\0" - "77u/T24gMDgtMDEtMTYgMTY6MDksIEd1ZW50ZXIgUm9lY2sgd3JvdGU6Cj4gT24gMDEvMDcvMjAx\n" - "NiAxMDo1OSBBTSwgTWlrZSBMb29pam1hbnMgd3JvdGU6Cj4+IFRoYW5rIHlvdSB2ZXJ5IG11Y2gg\n" - "Zm9yIHlvdXIgcmV2aWV3IGNvbW1lbnRzLCBJJ2xsIHVwZGF0ZSB0aGUgZHJpdmVyIGFuZAo+PiBw\n" - "b3N0IGEgdjIgcGF0Y2guCj4+Cj4+IElubGluZWQgc29tZSByZXBsaWVzIGJlbG93LiBBc3N1bWUg\n" - "dGhhdCBJICJ3aWxsIGRvIiBmb3IgYWxsIGNvbW1lbnRzIEkKPj4gZGlkbid0IGNvbW1lbnQgb24g\n" - "aW5saW5lLi4uCj4+Cj4+IE9uIDA2LTAxLTE2IDE2OjIyLCBHdWVudGVyIFJvZWNrIHdyb3RlOgo+\n" - "Pj4gSGVsbG8gTWlrZSwKPj4+Cj4+PiBPbiAwMS8wNi8yMDE2IDEyOjA3IEFNLCBNaWtlIExvb2lq\n" - "bWFucyB3cm90ZToKPj4+PiBUaGlzIGFkZHMgc3VwcG9ydCBmb3IgdGhlIExpbmVhciBUZWNobm9s\n" - "b2d5IExUQzI5OTAgIEkyQyBTeXN0ZW0gTW9uaXRvci4KPj4+Cj4+PiBzLyAgLyAvCj4+Pgo+Pj4+\n" - "IFRoZSBMVEMyOTkwIHN1cHBvcnRzIGEgY29tYmluYXRpb24gb2Ygdm9sdGFnZSwgY3VycmVudCBh\n" - "bmQgdGVtcGVyYXR1cmUKPj4+PiBtb25pdG9yaW5nLCBidXQgdGhpcyBkcml2ZXIgY3VycmVudGx5\n" - "IG9ubHkgc3VwcG9ydHMgcmVhZGluZyB0d28gY3VycmVudHMKPj4+PiBieSBtZWFzdXJpbmcgdHdv\n" - "IGRpZmZlcmVudGlhbCB2b2x0YWdlcyBhY3Jvc3Mgc2VyaWVzIHJlc2lzdG9ycy4KPj4+Pgo+Pj4g\n" - "UGx1cyBWQ0MsIHBsdXMgdGhlIGludGVybmFsIHRlbXBlcmF0dXJlLgo+Pgo+PiBZZWFoLCBJIHNo\n" - "b3VsZCBnaXZlIG15c2VsZiBtb3JlIGNyZWRpdCA6KSBJJ2xsIGFkZCB0aGF0IGluIEtjb25maWcg\n" - "dG9vLgo+Pgo+Pj4+IFRoaXMgaXMgc3VmZmljaWVudCB0byBzdXBwb3J0IHRoZSBUb3BpYyBNaWFt\n" - "aSBTT00gd2hpY2ggdXNlcyB0aGlzIGNoaXAKPj4+PiB0byBtb25pdG9yIHRoZSBjdXJyZW50cyBm\n" - "bG93aW5nIGludG8gdGhlIEZQR0EgYW5kIHRoZSBDUFUgcGFydHMuCj4+Pj4KPj4+PiBTaWduZWQt\n" - "b2ZmLWJ5OiBNaWtlIExvb2lqbWFucyA8bWlrZS5sb29pam1hbnNAdG9waWMubmw+Cj4+Pj4gLS0t\n" - "Cj4+Pj4gICBkcml2ZXJzL2h3bW9uL0tjb25maWcgICB8ICAxNSArKysKPj4+PiAgIGRyaXZlcnMv\n" - "aHdtb24vTWFrZWZpbGUgIHwgICAxICsKPj4+PiAgIGRyaXZlcnMvaHdtb24vbHRjMjk5MC5jIHwg\n" - "MjczCj4+Pj4gKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr\n" - "Cj4+Pgo+Cj4gWyAuLi4gXQo+Cj4+Pj4gK30KPj4+PiArCj4+Pj4gK3N0YXRpYyBzdHJ1Y3QgbHRj\n" - "Mjk5MF9kYXRhICpsdGMyOTkwX3VwZGF0ZV9kZXZpY2Uoc3RydWN0IGRldmljZSAqZGV2KQo+Pj4+\n" - "ICt7Cj4+Pj4gKyAgICBzdHJ1Y3QgaTJjX2NsaWVudCAqaTJjID0gdG9faTJjX2NsaWVudChkZXYp\n" - "Owo+Pj4+ICsgICAgc3RydWN0IGx0YzI5OTBfZGF0YSAqZGF0YSA9IGkyY19nZXRfY2xpZW50ZGF0\n" - "YShpMmMpOwo+Pj4+ICsgICAgc3RydWN0IGx0YzI5OTBfZGF0YSAqcmV0ID0gZGF0YTsKPj4+PiAr\n" - "ICAgIHVuc2lnbmVkIGludCB0aW1lb3V0Owo+Pj4+ICsKPj4+PiArICAgIG11dGV4X2xvY2soJmRh\n" - "dGEtPnVwZGF0ZV9sb2NrKTsKPj4+PiArCj4+Pj4gKyAgICAvKiBVcGRhdGUgYWJvdXQgNCB0aW1l\n" - "cyBwZXIgc2Vjb25kIG1heCAqLwo+Pj4+ICsgICAgaWYgKHRpbWVfYWZ0ZXIoamlmZmllcywgZGF0\n" - "YS0+bGFzdF91cGRhdGVkICsgSFogLyA0KSB8fAo+Pj4+ICFkYXRhLT52YWxpZCkgewo+Pj4+ICsg\n" - "ICAgICAgIGludCB2YWw7Cj4+Pj4gKyAgICAgICAgaW50IGk7Cj4+Pj4gKwo+Pj4KPj4+IFBsZWFz\n" - "ZSBjb25zaWRlciB1c2luZyBjb250aW51b3VzIGNvbnZlcnNpb24uIFRoaXMgd291bGQgc2ltcGxp\n" - "ZnkgdGhlCj4+PiBjb2RlIHNpZ25pZmljYW50bHkKPj4+IGFuZCByZWR1Y2UgcmVhZCBkZWxheXMu\n" - "Cj4+Cj4+IEl0IG1pZ2h0IGluY3JlYXNlIHBvd2VyIGNvbnN1bXB0aW9uIHRob3VnaCwgYXMgdHlw\n" - "aWNhbGx5IHNvbWUgdXNlciBwcm9ncmFtCj4+IHdvdWxkIHBvbGwgdGhpcyBldmVyeSAxMCBzZWNv\n" - "bmRzIG9yIHNvLiBJJ2xsIGNoZWNrIHRoZSBkYXRhIHNoZWV0Lgo+Pgo+Cj4gSSBzdXNwZWN0IHRo\n" - "YXQgdGhlIHBvd2VyIHNhdmluZ3Mgd2lsbCBiZSBsZXNzIHRoYW4gdGhlIGFkZGVkIHBvd2VyCj4g\n" - "Y29uc3VtZWQgYnkgdGhlIENQVSBkdWUgdG8gdGhlIG1vcmUgY29tcGxleCBjb2RlLgo+Cj4gUmVh\n" - "bGx5LCB1bmxlc3MgeW91IGhhdmUgYW4gYXBwbGljYXRpb24gd2hlcmUgYSBmZXcgbVcgcG93ZXIg\n" - "c2F2aW5ncwo+IGFyZSBlc3NlbnRpYWwgYW5kIHdhcnJhbnQgdGhlIGFkZGl0aW9uYWwgY29kZSBj\n" - "b21wbGV4aXR5LCB0aGlzIGlzCj4gdGhlIHdyb25nIGFwcHJvYWNoLgoKWWVhaCwgeW91J3JlIHJp\n" - "Z2h0LCBjaGVja2VkIHRoZSBkYXRhc2hlZXQgYW5kIGl0IHJlcG9ydHMgYSAxbUEgdHlwaWNhbCBw\n" - "b3dlciAKdXNhZ2Ugd2hlbiBjb252ZXJ0aW5nLiBOb3Qgd29ydGggdGhlIHRyb3VibGUuCgpDb250\n" - "aW51b3VzIGNvbnZlcnNpb24gbWFkZSB0aGUgZHJpdmVyIGEgTE9UIHNpbXBsZXIsIGNvdWxkIGV2\n" - "ZW4gY29tcGxldGVseSAKZHJvcCB0aGUgcHJpdmF0ZSBkYXRhIHN0cnVjdHVyZS4KCkkgc2VudCB2\n" - "MiBhbHJlYWR5LCBidXQganVzdCBub3RpY2VkIHRoYXQgc29tZSBvZiB0aGUgI2luY2x1ZGVzIHdl\n" - "cmUgbm8gbG9uZ2VyCm5lZWRlZCwgc28gSSdsbCBzZW5kIGEgdjMgdG8gZml4IHRoYXQuCgouLi4K\n" - "CgpLaW5kIHJlZ2FyZHMsCgpNaWtlIExvb2lqbWFucwpTeXN0ZW0gRXhwZXJ0CgpUT1BJQyBFbWJl\n" - "ZGRlZCBQcm9kdWN0cwpFaW5kaG92ZW5zZXdlZyAzMi1DLCBOTC01NjgzIEtIIEJlc3QKUG9zdGJ1\n" - "cyA0NDAsIE5MLTU2ODAgQUsgQmVzdApUZWxlZm9vbjogKzMxICgwKSA0OTkgMzMgNjkgNzkKRS1t\n" - "YWlsOiBtaWtlLmxvb2lqbWFuc0B0b3BpY3Byb2R1Y3RzLmNvbQpXZWJzaXRlOiB3d3cudG9waWNw\n" - "cm9kdWN0cy5jb20KClBsZWFzZSBjb25zaWRlciB0aGUgZW52aXJvbm1lbnQgYmVmb3JlIHByaW50\n" - "aW5nIHRoaXMgZS1tYWlsCgoKCgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f\n" - "X19fX19fX19fX19fCmxtLXNlbnNvcnMgbWFpbGluZyBsaXN0CmxtLXNlbnNvcnNAbG0tc2Vuc29y\n" - "cy5vcmcKaHR0cDovL2xpc3RzLmxtLXNlbnNvcnMub3JnL21haWxtYW4vbGlzdGluZm8vbG0tc2Vu\n" - c29ycw= + "\357\273\277On 08-01-16 16:09, Guenter Roeck wrote:\n" + "> On 01/07/2016 10:59 AM, Mike Looijmans wrote:\n" + ">> Thank you very much for your review comments, I'll update the driver and\n" + ">> post a v2 patch.\n" + ">>\n" + ">> Inlined some replies below. Assume that I \"will do\" for all comments I\n" + ">> didn't comment on inline...\n" + ">>\n" + ">> On 06-01-16 16:22, Guenter Roeck wrote:\n" + ">>> Hello Mike,\n" + ">>>\n" + ">>> On 01/06/2016 12:07 AM, Mike Looijmans wrote:\n" + ">>>> This adds support for the Linear Technology LTC2990 I2C System Monitor.\n" + ">>>\n" + ">>> s/ / /\n" + ">>>\n" + ">>>> The LTC2990 supports a combination of voltage, current and temperature\n" + ">>>> monitoring, but this driver currently only supports reading two currents\n" + ">>>> by measuring two differential voltages across series resistors.\n" + ">>>>\n" + ">>> Plus VCC, plus the internal temperature.\n" + ">>\n" + ">> Yeah, I should give myself more credit :) I'll add that in Kconfig too.\n" + ">>\n" + ">>>> This is sufficient to support the Topic Miami SOM which uses this chip\n" + ">>>> to monitor the currents flowing into the FPGA and the CPU parts.\n" + ">>>>\n" + ">>>> Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl>\n" + ">>>> ---\n" + ">>>> drivers/hwmon/Kconfig | 15 +++\n" + ">>>> drivers/hwmon/Makefile | 1 +\n" + ">>>> drivers/hwmon/ltc2990.c | 273\n" + ">>>> ++++++++++++++++++++++++++++++++++++++++++++++++\n" + ">>>\n" + ">\n" + "> [ ... ]\n" + ">\n" + ">>>> +}\n" + ">>>> +\n" + ">>>> +static struct ltc2990_data *ltc2990_update_device(struct device *dev)\n" + ">>>> +{\n" + ">>>> + struct i2c_client *i2c = to_i2c_client(dev);\n" + ">>>> + struct ltc2990_data *data = i2c_get_clientdata(i2c);\n" + ">>>> + struct ltc2990_data *ret = data;\n" + ">>>> + unsigned int timeout;\n" + ">>>> +\n" + ">>>> + mutex_lock(&data->update_lock);\n" + ">>>> +\n" + ">>>> + /* Update about 4 times per second max */\n" + ">>>> + if (time_after(jiffies, data->last_updated + HZ / 4) ||\n" + ">>>> !data->valid) {\n" + ">>>> + int val;\n" + ">>>> + int i;\n" + ">>>> +\n" + ">>>\n" + ">>> Please consider using continuous conversion. This would simplify the\n" + ">>> code significantly\n" + ">>> and reduce read delays.\n" + ">>\n" + ">> It might increase power consumption though, as typically some user program\n" + ">> would poll this every 10 seconds or so. I'll check the data sheet.\n" + ">>\n" + ">\n" + "> I suspect that the power savings will be less than the added power\n" + "> consumed by the CPU due to the more complex code.\n" + ">\n" + "> Really, unless you have an application where a few mW power savings\n" + "> are essential and warrant the additional code complexity, this is\n" + "> the wrong approach.\n" + "\n" + "Yeah, you're right, checked the datasheet and it reports a 1mA typical power \n" + "usage when converting. Not worth the trouble.\n" + "\n" + "Continuous conversion made the driver a LOT simpler, could even completely \n" + "drop the private data structure.\n" + "\n" + "I sent v2 already, but just noticed that some of the #includes were no longer\n" + "needed, so I'll send a v3 to fix that.\n" + "\n" + "...\n" + "\n" + "\n" + "Kind regards,\n" + "\n" + "Mike Looijmans\n" + "System Expert\n" + "\n" + "TOPIC Embedded Products\n" + "Eindhovenseweg 32-C, NL-5683 KH Best\n" + "Postbus 440, NL-5680 AK Best\n" + "Telefoon: +31 (0) 499 33 69 79\n" + "E-mail: mike.looijmans@topicproducts.com\n" + "Website: www.topicproducts.com\n" + "\n" + Please consider the environment before printing this e-mail -27949b0b13995aa712f2745f044bbf5f6c3e52a0b1da395b350ec57b20e5e5de +7665912b8dff5d27d9d6219624f89386255b58a62dbee2b58a3b5946f67ef4a4
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.