Re: file2alias for pnp (Re: modules.pnpmap output support)

From: Andrey Borzenkov
Date: Thu Nov 27 2003 - 14:05:05 EST


On Thursday 27 November 2003 17:41, Takashi Iwai wrote:
> Hi,
>
> the attached is the patch to add pnp entries to file2alias.c.
> i moved the definitions of pnp_device_id and pnp_card_device_id into
> mod_devicetable.h as other devices do. if you don't like it, i'll try
> to revert them and put definitions inside file2alias.c to keep the
> changes minimum.
>
> the format of pnp alias is:
> pnp:dXXXYYYY
> or
> pnp:cXXXYYYYdXXXYYYY[dXXXYYYY...]
> where XXXYYYY is the pnp id with 7 letters (e.g. CTL0031), c shows the
> card id, and d means the device id. multiple device ids will be
> listed depending on the driver.
>
> for example,
>
> alias pnp:dYMH0021* opl3sa2
> alias pnp:cALS0001d@@@0001d@X@0001d@H@0001* snd_als100
>
> Andrey, would it be feasible for hotplug stuff?
>

Will then every d be passed as separate parameter to hotplug? It means agent
has to deal with unknown number of parameters or are there always fixed
number of devs? apparently not as max is 8 and in your example only 3 are
defined.

If number is variable I guess better would be

alias pnp:cXXXXXXdYYYYYYY[:YYYYYY...]

i.e. put all devs IDs in one field; actually may be even separator is
redundant as IDs have strict format to my knowledge.

Then hotplug agent gets two parameters - PNPID and PNPDEVS - and it is quite
easy to build alias.

can you give example how entries in sysfs look like (I do not have any ISA
card). Is it possible to list them in the same order as in pnp_card_device_id
table? Otherwise coldplugging becomes quite complicated. coldplugging script
has to build the same string as hotplug invocation gets.

Oh, BTW, what are those `@' in your example? If they mean single char
wildcard, you should build them using `?' because modprobe is using normal
fnmatch to match module name against aliases.

thank you

-andrey

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/