From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kay Sievers Subject: Re: [PATCH 1/2] i2c: Add support for device alias names Date: Mon, 28 Apr 2008 18:16:17 +0200 Message-ID: <1209399377.3666.30.camel@linux.site> References: <20080428113052.6d024bda@hyperion.delvare> <20080428113901.2772e9d9@hyperion.delvare> <1209395245.3666.9.camel@linux.site> <20080428174010.5a40c2c0@hyperion.delvare> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20080428174010.5a40c2c0@hyperion.delvare> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: linuxppc-dev-bounces+glppd-linuxppc64-dev=m.gmane.org@ozlabs.org Errors-To: linuxppc-dev-bounces+glppd-linuxppc64-dev=m.gmane.org@ozlabs.org To: Jean Delvare Cc: linuxppc-dev list , Paul Mundt , Scott Wood , Linux I2C List-Id: linux-i2c@vger.kernel.org T24gTW9uLCAyMDA4LTA0LTI4IGF0IDE3OjQwICswMjAwLCBKZWFuIERlbHZhcmUgd3JvdGU6Cj4g T24gTW9uLCAyOCBBcHIgMjAwOCAxNzowNzoyNSArMDIwMCwgS2F5IFNpZXZlcnMgd3JvdGU6Cj4g PiBPbiBNb24sIDIwMDgtMDQtMjggYXQgMTE6MzkgKzAyMDAsIEplYW4gRGVsdmFyZSB3cm90ZToK PiA+ID4gT25lIHRoaW5nIEkgYW0gc3RpbGwgbm90IGhhcHB5IHdpdGggaXMgdGhhdCB0aGUgYWxp YXNlcyBjcmVhdGVkIGhhdmUgYQo+ID4gPiB0cmFpbGluZyAiKiI6Cj4gPiA+IAo+ID4gPiAkIC9z YmluL21vZGluZm8gbG05MAo+ID4gPiBmaWxlbmFtZTogICAgICAgL2xpYi9tb2R1bGVzLzIuNi4y NS1naXQxMS9rZXJuZWwvZHJpdmVycy9od21vbi9sbTkwLmtvCj4gPiA+IGF1dGhvcjogICAgICAg ICBKZWFuIERlbHZhcmUgPGtoYWxpQGxpbnV4LWZyLm9yZz4KPiA+ID4gZGVzY3JpcHRpb246ICAg IExNOTAvQURNMTAzMiBkcml2ZXIKPiA+ID4gbGljZW5zZTogICAgICAgIEdQTAo+ID4gPiB2ZXJt YWdpYzogICAgICAgMi42LjI1LWdpdDExIG1vZF91bmxvYWQKPiA+ID4gZGVwZW5kczogICAgICAg IGh3bW9uCj4gPiA+IGFsaWFzOiAgICAgICAgICBpMmM6bG05MCoKPiA+ID4gYWxpYXM6ICAgICAg ICAgIGkyYzphZG0xMDMyKgo+ID4gPiBhbGlhczogICAgICAgICAgaTJjOmxtOTkqCj4gPiA+IGFs aWFzOiAgICAgICAgICBpMmM6bG04NioKPiA+ID4gYWxpYXM6ICAgICAgICAgIGkyYzptYXg2NjU3 Kgo+ID4gPiBhbGlhczogICAgICAgICAgaTJjOmFkdDc0NjEqCj4gPiA+IGFsaWFzOiAgICAgICAg ICBpMmM6bWF4NjY4MCoKPiA+ID4gJAo+ID4gPiAKPiA+ID4gVGhpcyB3b3VsZCBjYXVzZSB0cm91 YmxlIGlmIG9uZSBJMkMgY2hpcCBuYW1lIG1hdGNoZXMgdGhlIGJlZ2lubmluZyBvZgo+ID4gPiBh bm90aGVyIEkyQyBjaGlwIG5hbWUgYW5kIGJvdGggY2hpcHMgYXJlIHN1cHBvcnRlZCBieSBkaWZm ZXJlbnQKPiA+ID4gZHJpdmVycy4gVGhpcyBoYXMgeWV0IHRvIGJlIHNlZW4sIGJ1dCBzdGlsbCwg SSdkIGxpa2UgdG8gc2VlIHRoaXMKPiA+ID4gcHJvYmxlbSBmaXhlZCBxdWlja2x5Lgo+ID4gCj4g PiDvu79SaWdodCwgdGhlIHRyYWlsaW5nICIqIiBpcyBub3QgbmljZS4KPiA+IAo+ID4gV2Ugc2hv dWxkIHRlcm1pbmF0ZSB0aGUgc3RyaW5nLCBzbyB0aGUgdHJhaWxpbmcgIioiIHdpbGwgbm90IG1h dGNoCj4gPiBsb25nZXIgc3RyaW5ncy4gVGhlIHVzdWFsIHRoaW5nIGlzIHRvIGFkZCBhICI6IiB0 byB0aGUgZW5kLCB3aGljaCB3b3VsZAo+ID4gdGhlbiBzaG93IHVwIGFzCj4gPiAgIGFsaWFzOiBp MmM6bWF4NjY4MDoqCj4gPiAKPiA+IFNlZSBETUkgYW5kIEFDUEk6Cj4gPiAgIGFsaWFzIGRtaToq OnN2bkZVSklUU1U6cG5MaWZlQm9vayo6cHZyKjpydm5GVUpJVFNVOiogYXBhbmVsCj4gPiAgIGFs aWFzIGFjcGkqOkFTSU0wMDAwOiogYXRsYXNfYnRucwo+IAo+IEkgZGlkbid0IGtub3cgYWJvdXQg dGhlc2UgY2FzZXMsIHRoYW5rcyBmb3IgdGhlIGhpbnQuCj4gCj4gPiAKPiA+IElmIGkyYyBkZXZp Y2UgbW9kYWxpYXNlcyBjb3VsZCBldmVyIGNvbnRhaW4gbXVsdGlwbGUgc3RyaW5ncywgaXQgc2hv dWxkCj4gPiBiZToKPiA+ICAgYWxpYXM6IGkyYyo6bWF4NjY4MDoqCj4gPiDvu790byBtYXRjaCB0 aGUgbW9kdWxlLCByZWdhcmRsZXNzIG9mIHRoZSBvcmRlciBvZiB0aGUgc3RyaW5ncyBpbiB0aGUK PiA+IG1vZGFsaWFzOgo+IAo+IFdoeSB3b3VsZCBpMmMgZGV2aWNlIG1vZGFsaWFzZXMgZXZlciBj b250YWluIG11bHRpcGxlIHN0cmluZ3M/IEEgZGV2aWNlCj4gY2FuJ3QgaGF2ZSBtdWx0aXBsZSBu YW1lcywgY2FuIGl0PwoKTGlrZSBBQ1BJL1BOUCBkZXZpY2VzLCB3aGljaCBjYW4gaGF2ZSBzZXZl cmFsIGNvbXBhdCBpZCdzLCB3aGljaCBtZWFucwp0aGF0IGEgc2luZ2xlIGRldmljZSBjYW4gaGF2 ZSAibXVsdGlwbGUgbmFtZXMiOgogICQgY2F0IC9zeXMvYnVzL3BucC9kZXZpY2VzLzAwOjA5L2lk CiAgSUJNMDA1NwogIFBOUDBmMTMKCj4gQWRkaW5nIGEgIjoiIGF0IHRoZSBlbmQgb2YgdGhlIGky YyBkZXZpY2UgbmFtZXMgc29sdmVzIHRoZSBwcm9ibGVtIEkKPiB3YXMgbWVudGlvbmluZywgc3Vy ZSwgYnV0IHdoeSBkb24ndCB3ZSBzaW1wbHkgcmVtb3ZlIHRoZSB0cmFpbGluZyAiKiIsCj4gaW5z dGVhZCBvZiB0cnlpbmcgdG8gd29yayBhcm91bmQgaXQ/IEEgdHJhaWxpbmcgIioiIHNpbXBseSBt YWtlcyBubwo+IHNlbnNlIGZvciBhbGlhc2VzIHdoaWNoIGFyZSBzaW1wbGUgZGV2aWNlIG5hbWVz LgoKU3VyZSwgaWYgdGhlcmUgaXMgb25seSBvbmUgc2luZ2xlIHN0cmluZywgaXQncyBub3QgdXNl ZnVsLgoKPiBUaGlzIGlzIG5vdCBvbmx5IGkyYwo+IGRldmljZXMsIGJ1dCBhbHNvIHBsYXRmb3Jt IGRldmljZXMsIGFjcGksIGRtaSwgcG5wLi4uCgpBQ1BJLCBETUksIFBOUCAoUE5QIGRvZXMgbm90 IGRvIG1vZGFsaWFzKSBuZWVkcyB0byBiZSBhYmxlIHRvIG1hdGNoIG9ubHkKb25lIHN0cmluZyBp biBhIGdpdmVuIGxpc3QsIHNvIHRoZSB0cmFpbGluZyAiKiIgaXMgbmVlZGVkLgoKPiBMb29raW5n IGF0IHRoZQo+IHZhcmlvdXMgZGV2aWNlIHR5cGVzIGhhbmRsZWQgYnkgZmlsZTJhbGlhcy5jLCBp dCBzZWVtcyB0aGF0IG1vc3Qgb2YKPiB0aGVtIGRvbid0IG5lZWQgdGhlIHRyYWlsaW5nICIqIiwg YW5kIG1hbnkgb2YgdGhlbSBoYXZlIHRoZSBwcm9ibGVtIEkKPiB3YXMgbWVudGlvbmluZy4KPiAK PiBDYW4ndCB3ZSBqdXN0IHN0b3AgaGFuZGxlX21vZGRldnRhYmxlKCkgZnJvbSBhZGRpbmcgYSB0 YWlsaW5nICIqIgo+IGF1dG9tYXRpY2FsbHksIGFuZCBqdXN0IGxldCB0aGUgZGV2aWNlIHR5cGVz IHdoaWNoIG5lZWQgaXQsIGFkZCBpdCBvbgo+IHRoZWlyIG93bj8KCkZvciBhIGxvdCBzdWJzeXN0 ZW1zIGl0J3MgZmluZSB0byBoYXZlIGl0IGFwcGVuZGVkLCBhcyB0aGVyZSBpcyBhCmRlZmluZWQg bGlzdCBvZiBpZGVudGlmaWVycywgd2hpY2ggbXVzdCBhcHBlYXIgaW4gdGhlIHNhbWUgb3JkZXIs IGFuZApuZXcgaWRlbnRpZmllcnMgYXJlIGFwcGVuZGVkIHRvIHRoZSBlbmQuIFNvIHRoZSAiKiIg c3RpbGwgbWF0Y2hlcwptb2R1bGVzIHdpdGggcG9zc2libHkgZXh0ZW5kZWQgbW9kYWxpYXMgc3Ry aW5ncy4KCldlIHdvdWxkIGFsc28gbmVlZCB0byByZXZpZXcgYWxsIGJ1c2VzIHdoaWNoIGV4cG9y dCBtb2RhbGlhcywgaWYgdGhleQpuZWVkIHRoZSAiKiIgb3Igbm90LCBhbmQgYWRkIHRoZW0gYnkg aGFuZCwgaWYgbmVlZGVkLgoKSSBndWVzcywgaXQncyBlYXNpZXIgdG8gaW50cm9kdWNlIGFuIGFk ZGl0aW9uYWwgcGFyYW1ldGVyIHRvCmZpbGUyYWxpYXM6OmRvX3RhYmxlKCkgYW5kIHN1cHByZXNz IHRoZSB0cmFpbGluZyAiKiIgZm9yIGkyYz8KClRoYW5rcywKS2F5CgpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpMaW51eHBwYy1kZXYgbWFpbGluZyBsaXN0 CkxpbnV4cHBjLWRldkBvemxhYnMub3JnCmh0dHBzOi8vb3psYWJzLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2xpbnV4cHBjLWRldg== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from moutng.kundenserver.de (moutng.kundenserver.de [212.227.126.183]) by ozlabs.org (Postfix) with ESMTP id 1961FDDFE6 for ; Tue, 29 Apr 2008 02:17:32 +1000 (EST) Subject: Re: [PATCH 1/2] i2c: Add support for device alias names From: Kay Sievers To: Jean Delvare In-Reply-To: <20080428174010.5a40c2c0@hyperion.delvare> References: <20080428113052.6d024bda@hyperion.delvare> <20080428113901.2772e9d9@hyperion.delvare> <1209395245.3666.9.camel@linux.site> <20080428174010.5a40c2c0@hyperion.delvare> Content-Type: text/plain; charset=utf-8 Date: Mon, 28 Apr 2008 18:16:17 +0200 Message-Id: <1209399377.3666.30.camel@linux.site> Mime-Version: 1.0 Cc: linuxppc-dev list , Paul Mundt , Scott Wood , Linux I2C List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , On Mon, 2008-04-28 at 17:40 +0200, Jean Delvare wrote: > On Mon, 28 Apr 2008 17:07:25 +0200, Kay Sievers wrote: > > On Mon, 2008-04-28 at 11:39 +0200, Jean Delvare wrote: > > > One thing I am still not happy with is that the aliases created have = a > > > trailing "*": > > >=20 > > > $ /sbin/modinfo lm90 > > > filename: /lib/modules/2.6.25-git11/kernel/drivers/hwmon/lm90.k= o > > > author: Jean Delvare > > > description: LM90/ADM1032 driver > > > license: GPL > > > vermagic: 2.6.25-git11 mod_unload > > > depends: hwmon > > > alias: i2c:lm90* > > > alias: i2c:adm1032* > > > alias: i2c:lm99* > > > alias: i2c:lm86* > > > alias: i2c:max6657* > > > alias: i2c:adt7461* > > > alias: i2c:max6680* > > > $ > > >=20 > > > This would cause trouble if one I2C chip name matches the beginning o= f > > > another I2C chip name and both chips are supported by different > > > drivers. This has yet to be seen, but still, I'd like to see this > > > problem fixed quickly. > >=20 > > =EF=BB=BFRight, the trailing "*" is not nice. > >=20 > > We should terminate the string, so the trailing "*" will not match > > longer strings. The usual thing is to add a ":" to the end, which would > > then show up as > > alias: i2c:max6680:* > >=20 > > See DMI and ACPI: > > alias dmi:*:svnFUJITSU:pnLifeBook*:pvr*:rvnFUJITSU:* apanel > > alias acpi*:ASIM0000:* atlas_btns >=20 > I didn't know about these cases, thanks for the hint. >=20 > >=20 > > If i2c device modaliases could ever contain multiple strings, it should > > be: > > alias: i2c*:max6680:* > > =EF=BB=BFto match the module, regardless of the order of the strings in= the > > modalias: >=20 > Why would i2c device modaliases ever contain multiple strings? A device > can't have multiple names, can it? Like ACPI/PNP devices, which can have several compat id's, which means that a single device can have "multiple names": $ cat /sys/bus/pnp/devices/00:09/id IBM0057 PNP0f13 > Adding a ":" at the end of the i2c device names solves the problem I > was mentioning, sure, but why don't we simply remove the trailing "*", > instead of trying to work around it? A trailing "*" simply makes no > sense for aliases which are simple device names. Sure, if there is only one single string, it's not useful. > This is not only i2c > devices, but also platform devices, acpi, dmi, pnp... ACPI, DMI, PNP (PNP does not do modalias) needs to be able to match only one string in a given list, so the trailing "*" is needed. > Looking at the > various device types handled by file2alias.c, it seems that most of > them don't need the trailing "*", and many of them have the problem I > was mentioning. >=20 > Can't we just stop handle_moddevtable() from adding a tailing "*" > automatically, and just let the device types which need it, add it on > their own? For a lot subsystems it's fine to have it appended, as there is a defined list of identifiers, which must appear in the same order, and new identifiers are appended to the end. So the "*" still matches modules with possibly extended modalias strings. We would also need to review all buses which export modalias, if they need the "*" or not, and add them by hand, if needed. I guess, it's easier to introduce an additional parameter to file2alias::do_table() and suppress the trailing "*" for i2c? Thanks, Kay