From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lucas Stach Date: Thu, 03 Mar 2011 21:56:56 +0000 Subject: Re: [lm-sensors] [Nouveau] hwmon API update Message-Id: <1299189416.2255.22.camel@workstation> List-Id: References: <4D57CC24.1040306@free.fr> <20110213171640.GB13323@ericsson.com> <20110213230833.0ee2ff16@endymion.delvare> <20110303152216.GA21667@ericsson.com> <4D6FCFF2.7040604@free.fr> <1299185295.2255.13.camel@workstation> <1299187158.18605.28.camel@groeck-laptop> In-Reply-To: <1299187158.18605.28.camel@groeck-laptop> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable To: guenter.roeck-IzeFyvvaP7pWk0Htik3J/w@public.gmane.org Cc: Jean Delvare , nouveau , "lm-sensors-GZX6beZjE8VD60Wz+7aTrA@public.gmane.org" Am Donnerstag, den 03.03.2011, 13:19 -0800 schrieb Guenter Roeck: > On Thu, 2011-03-03 at 15:48 -0500, Lucas Stach wrote: > > Am Donnerstag, den 03.03.2011, 18:29 +0100 schrieb Martin Peres: > > > Le 03/03/2011 16:22, Guenter Roeck a =C3=A9crit : > > > > On Thu, Mar 03, 2011 at 04:36:09AM -0500, Dave Airlie wrote: > > > >> On Mon, Feb 14, 2011 at 8:08 AM, Jean Delvare = wrote: > > > >>> On Sun, 13 Feb 2011 09:16:40 -0800, Guenter Roeck wrote: > > > >>>> On Sun, Feb 13, 2011 at 07:18:44AM -0500, Martin Peres wrote: > > > >>>>> Hi, > > > >>>>> > > > >>>>> I am working on power management on the nouveau driver and I ne= ed a way > > > >>>>> to get data out of and send commands to the i2c drivers from th= e kernel > > > >>>>> space. > > > >> Martin, > > > >> > > > >> you probably should have cc'ed Matthew since it was his patch you = based this on, > > > >> and I think he can provide a good explaination. > > > >> > > > >> to clarify some points, > > > >> > > > >> radeon does probably want something exactly like this, we just hav= en't gotten to > > > >> it completely yet, I'd rather not have two drivers in the kernel f= or > > > >> exact same hardware, > > > >> and I believe sharing the hwmon code to do what we want is a good = plan since you > > > >> don't go around reinventing wheels, but if hwmon/i2c maintainers h= ave > > > >> no interest > > > >> it leaves with little choice but to implement about 5-10 i2c drive= rs > > > >> again in drm codebase. > > > >> > > > >> Maybe hwmon/i2c maintainers could suggest a cleaner way to impleme= nt > > > >> what we want, > > > >> which I think I can summarize as > > > >> > > > >> a) access to monitored values in-kernel > > > >> b) no userspace access to the same values except via sanitised via= the driver. > > > >> > > > > This is not a matter of "no interest". Interest is there, but if on= e demands > > > > too much one may get nothing. > > > > > > > > Request for b) so far was "no userspace access", period. This is un= acceptable > > > > since providing userspace access to monitored values is the whole p= oint of hwmon. > >=20 > > And that is what we want to do. But it would be nice if the graphics > > drivers could provide a _single_ interface to userspace. Not all boards > > have i2c hardware monitoring chips and with a single interface we could > > fall back to the internal gpu sensor, transparently for the user. > >=20 > > > > > > > > I could imagine an API that covers both a) and b), as long as b) fo= cuses > > > > on the "sanitize" aspect and doesn't try to limit userspace access = to attributes. > > > > > > > > Guenter > > > b) was introduced by Dave, I never asked for it because I don't mind = > > > duplicating sensor data (one hwmon device named nouveau and one for t= he=20 > > > raw access to the i2c chip). > >=20 > > Sorry for the confusion Martin, I brought up the point of limiting > > userspace access and did not cc the nouveau mailing list. I think it is > > bad behaviour to expose values to userspace which are totally off the > > real values. This confuses users and should be avoided, especially since > > we can provide sanitized values. > >=20 > > Why should we push the logic and api for sanitizing the values to many > > hwmon drivers if we could easily do this at a single point in the > > graphics driver, if we provide the userspace interface ourself and use > > the hwmon driver only to instrument the monitoring chip? >=20 > I don't think the functionality (nor the internal API) should have to be > implemented in individual drivers. Instead, there should be a new API > between hwmon drivers and the hwmon core. Using this API, the hwmon core > would read/write raw values from/to hwmon drivers and make those values > available to userland and to other drivers (such as the nouveau driver). > The hwmon core would then also perform sanitizing if necessary, ie call > registered sanitizing functions. >=20 > With this approach, hwmon would report sanitized values, graphics > drivers would not have to support/generate hwmon sysfs ABI attributes, > and hwmon driver structure would be much simpler, since drivers could > concentrate on getting data from and to chips instead of having to deal > with sysfs attributes. That would be a win for everyone. >=20 > Guenter This is a bigger change than we initially aimed for and I didn't dare to ask for such a heavy modification, but I'm very happy with this solution if you prefer and support it this way. If you have no objections I will try to hack something together by this weekend so we could further discuss the issue with some real code at hand. -- Lucas _______________________________________________ lm-sensors mailing list lm-sensors@lm-sensors.org http://lists.lm-sensors.org/mailman/listinfo/lm-sensors From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lucas Stach Subject: Re: [lm-sensors] hwmon API update Date: Thu, 03 Mar 2011 22:56:56 +0100 Message-ID: <1299189416.2255.22.camel@workstation> References: <4D57CC24.1040306@free.fr> <20110213171640.GB13323@ericsson.com> <20110213230833.0ee2ff16@endymion.delvare> <20110303152216.GA21667@ericsson.com> <4D6FCFF2.7040604@free.fr> <1299185295.2255.13.camel@workstation> <1299187158.18605.28.camel@groeck-laptop> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1299187158.18605.28.camel@groeck-laptop> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: nouveau-bounces+gcfxn-nouveau=m.gmane.org-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Errors-To: nouveau-bounces+gcfxn-nouveau=m.gmane.org-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org To: guenter.roeck-IzeFyvvaP7pWk0Htik3J/w@public.gmane.org Cc: Jean Delvare , nouveau , "lm-sensors-GZX6beZjE8VD60Wz+7aTrA@public.gmane.org" List-Id: nouveau.vger.kernel.org QW0gRG9ubmVyc3RhZywgZGVuIDAzLjAzLjIwMTEsIDEzOjE5IC0wODAwIHNjaHJpZWIgR3VlbnRl ciBSb2VjazoKPiBPbiBUaHUsIDIwMTEtMDMtMDMgYXQgMTU6NDggLTA1MDAsIEx1Y2FzIFN0YWNo IHdyb3RlOgo+ID4gQW0gRG9ubmVyc3RhZywgZGVuIDAzLjAzLjIwMTEsIDE4OjI5ICswMTAwIHNj aHJpZWIgTWFydGluIFBlcmVzOgo+ID4gPiBMZSAwMy8wMy8yMDExIDE2OjIyLCBHdWVudGVyIFJv ZWNrIGEgw6ljcml0IDoKPiA+ID4gPiBPbiBUaHUsIE1hciAwMywgMjAxMSBhdCAwNDozNjowOUFN IC0wNTAwLCBEYXZlIEFpcmxpZSB3cm90ZToKPiA+ID4gPj4gT24gTW9uLCBGZWIgMTQsIDIwMTEg YXQgODowOCBBTSwgSmVhbiBEZWx2YXJlPGtoYWxpQGxpbnV4LWZyLm9yZz4gIHdyb3RlOgo+ID4g PiA+Pj4gT24gU3VuLCAxMyBGZWIgMjAxMSAwOToxNjo0MCAtMDgwMCwgR3VlbnRlciBSb2VjayB3 cm90ZToKPiA+ID4gPj4+PiBPbiBTdW4sIEZlYiAxMywgMjAxMSBhdCAwNzoxODo0NEFNIC0wNTAw LCBNYXJ0aW4gUGVyZXMgd3JvdGU6Cj4gPiA+ID4+Pj4+IEhpLAo+ID4gPiA+Pj4+Pgo+ID4gPiA+ Pj4+PiBJIGFtIHdvcmtpbmcgb24gcG93ZXIgbWFuYWdlbWVudCBvbiB0aGUgbm91dmVhdSBkcml2 ZXIgYW5kIEkgbmVlZCBhIHdheQo+ID4gPiA+Pj4+PiB0byBnZXQgZGF0YSBvdXQgb2YgYW5kIHNl bmQgY29tbWFuZHMgdG8gdGhlIGkyYyBkcml2ZXJzIGZyb20gdGhlIGtlcm5lbAo+ID4gPiA+Pj4+ PiBzcGFjZS4KPiA+ID4gPj4gTWFydGluLAo+ID4gPiA+Pgo+ID4gPiA+PiB5b3UgcHJvYmFibHkg c2hvdWxkIGhhdmUgY2MnZWQgTWF0dGhldyBzaW5jZSBpdCB3YXMgaGlzIHBhdGNoIHlvdSBiYXNl ZCB0aGlzIG9uLAo+ID4gPiA+PiBhbmQgSSB0aGluayBoZSBjYW4gcHJvdmlkZSBhIGdvb2QgZXhw bGFpbmF0aW9uLgo+ID4gPiA+Pgo+ID4gPiA+PiB0byBjbGFyaWZ5IHNvbWUgcG9pbnRzLAo+ID4g PiA+Pgo+ID4gPiA+PiByYWRlb24gZG9lcyBwcm9iYWJseSB3YW50IHNvbWV0aGluZyBleGFjdGx5 IGxpa2UgdGhpcywgd2UganVzdCBoYXZlbid0IGdvdHRlbiB0bwo+ID4gPiA+PiBpdCBjb21wbGV0 ZWx5IHlldCwgSSdkIHJhdGhlciBub3QgaGF2ZSB0d28gZHJpdmVycyBpbiB0aGUga2VybmVsIGZv cgo+ID4gPiA+PiBleGFjdCBzYW1lIGhhcmR3YXJlLAo+ID4gPiA+PiBhbmQgSSBiZWxpZXZlIHNo YXJpbmcgdGhlIGh3bW9uIGNvZGUgdG8gZG8gd2hhdCB3ZSB3YW50IGlzIGEgZ29vZCBwbGFuIHNp bmNlIHlvdQo+ID4gPiA+PiBkb24ndCBnbyBhcm91bmQgcmVpbnZlbnRpbmcgd2hlZWxzLCBidXQg aWYgaHdtb24vaTJjIG1haW50YWluZXJzIGhhdmUKPiA+ID4gPj4gbm8gaW50ZXJlc3QKPiA+ID4g Pj4gaXQgbGVhdmVzIHdpdGggbGl0dGxlIGNob2ljZSBidXQgdG8gaW1wbGVtZW50IGFib3V0IDUt MTAgaTJjIGRyaXZlcnMKPiA+ID4gPj4gYWdhaW4gaW4gZHJtIGNvZGViYXNlLgo+ID4gPiA+Pgo+ ID4gPiA+PiBNYXliZSBod21vbi9pMmMgbWFpbnRhaW5lcnMgY291bGQgc3VnZ2VzdCBhIGNsZWFu ZXIgd2F5IHRvIGltcGxlbWVudAo+ID4gPiA+PiB3aGF0IHdlIHdhbnQsCj4gPiA+ID4+IHdoaWNo IEkgdGhpbmsgSSBjYW4gc3VtbWFyaXplIGFzCj4gPiA+ID4+Cj4gPiA+ID4+IGEpIGFjY2VzcyB0 byBtb25pdG9yZWQgdmFsdWVzIGluLWtlcm5lbAo+ID4gPiA+PiBiKSBubyB1c2Vyc3BhY2UgYWNj ZXNzIHRvIHRoZSBzYW1lIHZhbHVlcyBleGNlcHQgdmlhIHNhbml0aXNlZCB2aWEgdGhlIGRyaXZl ci4KPiA+ID4gPj4KPiA+ID4gPiBUaGlzIGlzIG5vdCBhIG1hdHRlciBvZiAibm8gaW50ZXJlc3Qi LiBJbnRlcmVzdCBpcyB0aGVyZSwgYnV0IGlmIG9uZSBkZW1hbmRzCj4gPiA+ID4gdG9vIG11Y2gg b25lIG1heSBnZXQgbm90aGluZy4KPiA+ID4gPgo+ID4gPiA+IFJlcXVlc3QgZm9yIGIpIHNvIGZh ciB3YXMgIm5vIHVzZXJzcGFjZSBhY2Nlc3MiLCBwZXJpb2QuIFRoaXMgaXMgdW5hY2NlcHRhYmxl Cj4gPiA+ID4gc2luY2UgcHJvdmlkaW5nIHVzZXJzcGFjZSBhY2Nlc3MgdG8gbW9uaXRvcmVkIHZh bHVlcyBpcyB0aGUgd2hvbGUgcG9pbnQgb2YgaHdtb24uCj4gPiAKPiA+IEFuZCB0aGF0IGlzIHdo YXQgd2Ugd2FudCB0byBkby4gQnV0IGl0IHdvdWxkIGJlIG5pY2UgaWYgdGhlIGdyYXBoaWNzCj4g PiBkcml2ZXJzIGNvdWxkIHByb3ZpZGUgYSBfc2luZ2xlXyBpbnRlcmZhY2UgdG8gdXNlcnNwYWNl LiBOb3QgYWxsIGJvYXJkcwo+ID4gaGF2ZSBpMmMgaGFyZHdhcmUgbW9uaXRvcmluZyBjaGlwcyBh bmQgd2l0aCBhIHNpbmdsZSBpbnRlcmZhY2Ugd2UgY291bGQKPiA+IGZhbGwgYmFjayB0byB0aGUg aW50ZXJuYWwgZ3B1IHNlbnNvciwgdHJhbnNwYXJlbnRseSBmb3IgdGhlIHVzZXIuCj4gPiAKPiA+ ID4gPgo+ID4gPiA+IEkgY291bGQgaW1hZ2luZSBhbiBBUEkgdGhhdCBjb3ZlcnMgYm90aCBhKSBh bmQgYiksIGFzIGxvbmcgYXMgYikgZm9jdXNlcwo+ID4gPiA+IG9uIHRoZSAic2FuaXRpemUiIGFz cGVjdCBhbmQgZG9lc24ndCB0cnkgdG8gbGltaXQgdXNlcnNwYWNlIGFjY2VzcyB0byBhdHRyaWJ1 dGVzLgo+ID4gPiA+Cj4gPiA+ID4gR3VlbnRlcgo+ID4gPiBiKSB3YXMgaW50cm9kdWNlZCBieSBE YXZlLCBJIG5ldmVyIGFza2VkIGZvciBpdCBiZWNhdXNlIEkgZG9uJ3QgbWluZCAKPiA+ID4gZHVw bGljYXRpbmcgc2Vuc29yIGRhdGEgKG9uZSBod21vbiBkZXZpY2UgbmFtZWQgbm91dmVhdSBhbmQg b25lIGZvciB0aGUgCj4gPiA+IHJhdyBhY2Nlc3MgdG8gdGhlIGkyYyBjaGlwKS4KPiA+IAo+ID4g U29ycnkgZm9yIHRoZSBjb25mdXNpb24gTWFydGluLCBJIGJyb3VnaHQgdXAgdGhlIHBvaW50IG9m IGxpbWl0aW5nCj4gPiB1c2Vyc3BhY2UgYWNjZXNzIGFuZCBkaWQgbm90IGNjIHRoZSBub3V2ZWF1 IG1haWxpbmcgbGlzdC4gSSB0aGluayBpdCBpcwo+ID4gYmFkIGJlaGF2aW91ciB0byBleHBvc2Ug dmFsdWVzIHRvIHVzZXJzcGFjZSB3aGljaCBhcmUgdG90YWxseSBvZmYgdGhlCj4gPiByZWFsIHZh bHVlcy4gVGhpcyBjb25mdXNlcyB1c2VycyBhbmQgc2hvdWxkIGJlIGF2b2lkZWQsIGVzcGVjaWFs bHkgc2luY2UKPiA+IHdlIGNhbiBwcm92aWRlIHNhbml0aXplZCB2YWx1ZXMuCj4gPiAKPiA+IFdo eSBzaG91bGQgd2UgcHVzaCB0aGUgbG9naWMgYW5kIGFwaSBmb3Igc2FuaXRpemluZyB0aGUgdmFs dWVzIHRvIG1hbnkKPiA+IGh3bW9uIGRyaXZlcnMgaWYgd2UgY291bGQgZWFzaWx5IGRvIHRoaXMg YXQgYSBzaW5nbGUgcG9pbnQgaW4gdGhlCj4gPiBncmFwaGljcyBkcml2ZXIsIGlmIHdlIHByb3Zp ZGUgdGhlIHVzZXJzcGFjZSBpbnRlcmZhY2Ugb3Vyc2VsZiBhbmQgdXNlCj4gPiB0aGUgaHdtb24g ZHJpdmVyIG9ubHkgdG8gaW5zdHJ1bWVudCB0aGUgbW9uaXRvcmluZyBjaGlwPwo+IAo+IEkgZG9u J3QgdGhpbmsgdGhlIGZ1bmN0aW9uYWxpdHkgKG5vciB0aGUgaW50ZXJuYWwgQVBJKSBzaG91bGQg aGF2ZSB0byBiZQo+IGltcGxlbWVudGVkIGluIGluZGl2aWR1YWwgZHJpdmVycy4gSW5zdGVhZCwg dGhlcmUgc2hvdWxkIGJlIGEgbmV3IEFQSQo+IGJldHdlZW4gaHdtb24gZHJpdmVycyBhbmQgdGhl IGh3bW9uIGNvcmUuIFVzaW5nIHRoaXMgQVBJLCB0aGUgaHdtb24gY29yZQo+IHdvdWxkIHJlYWQv d3JpdGUgcmF3IHZhbHVlcyBmcm9tL3RvIGh3bW9uIGRyaXZlcnMgYW5kIG1ha2UgdGhvc2UgdmFs dWVzCj4gYXZhaWxhYmxlIHRvIHVzZXJsYW5kIGFuZCB0byBvdGhlciBkcml2ZXJzIChzdWNoIGFz IHRoZSBub3V2ZWF1IGRyaXZlcikuCj4gVGhlIGh3bW9uIGNvcmUgd291bGQgdGhlbiBhbHNvIHBl cmZvcm0gc2FuaXRpemluZyBpZiBuZWNlc3NhcnksIGllIGNhbGwKPiByZWdpc3RlcmVkIHNhbml0 aXppbmcgZnVuY3Rpb25zLgo+IAo+IFdpdGggdGhpcyBhcHByb2FjaCwgaHdtb24gd291bGQgcmVw b3J0IHNhbml0aXplZCB2YWx1ZXMsIGdyYXBoaWNzCj4gZHJpdmVycyB3b3VsZCBub3QgaGF2ZSB0 byBzdXBwb3J0L2dlbmVyYXRlIGh3bW9uIHN5c2ZzIEFCSSBhdHRyaWJ1dGVzLAo+IGFuZCBod21v biBkcml2ZXIgc3RydWN0dXJlIHdvdWxkIGJlIG11Y2ggc2ltcGxlciwgc2luY2UgZHJpdmVycyBj b3VsZAo+IGNvbmNlbnRyYXRlIG9uIGdldHRpbmcgZGF0YSBmcm9tIGFuZCB0byBjaGlwcyBpbnN0 ZWFkIG9mIGhhdmluZyB0byBkZWFsCj4gd2l0aCBzeXNmcyBhdHRyaWJ1dGVzLiBUaGF0IHdvdWxk IGJlIGEgd2luIGZvciBldmVyeW9uZS4KPiAKPiBHdWVudGVyCgpUaGlzIGlzIGEgYmlnZ2VyIGNo YW5nZSB0aGFuIHdlIGluaXRpYWxseSBhaW1lZCBmb3IgYW5kIEkgZGlkbid0IGRhcmUgdG8KYXNr IGZvciBzdWNoIGEgaGVhdnkgbW9kaWZpY2F0aW9uLCBidXQgSSdtIHZlcnkgaGFwcHkgd2l0aCB0 aGlzIHNvbHV0aW9uCmlmIHlvdSBwcmVmZXIgYW5kIHN1cHBvcnQgaXQgdGhpcyB3YXkuCgpJZiB5 b3UgaGF2ZSBubyBvYmplY3Rpb25zIEkgd2lsbCB0cnkgdG8gaGFjayBzb21ldGhpbmcgdG9nZXRo ZXIgYnkgdGhpcwp3ZWVrZW5kIHNvIHdlIGNvdWxkIGZ1cnRoZXIgZGlzY3VzcyB0aGUgaXNzdWUg d2l0aCBzb21lIHJlYWwgY29kZSBhdApoYW5kLgoKLS0gTHVjYXMKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk5vdXZlYXUgbWFpbGluZyBsaXN0Ck5vdXZl YXVAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9ub3V2ZWF1Cg==