Re: UIO device name

Joakim Tjernlund
2008-09-25T10:06:08Z

On Thu, 2008-09-25 at 08:57 +1000, Ben Nizette wrote:
> On Wed, 2008-09-24 at 14:38 +0200, Joakim Tjernlund wrote:
> > On Wed, 2008-09-24 at 20:47 +0900, Paul Mundt wrote:
> > > >
> > > Nonsense, there is nothing wrong with UIO's interface as it is today.
> > > It is no different from sound cards, cdroms, and so on. If you want the
> >
> > It is different, cdroms and audio are named differently. If they were
> > using UIO they would all be named /dev/uio%d.
> >
> > Consider uio_cif and uio_smx, is it impossible to image that such
> > devices could use another name such as crypto_smx%d instead?
> >
>
> My system does use uio_smx and uio_pdrv, they both appear as /dev/uioX.
> This to me is just like having /dev/hda, /dev/hdb rather
> than /dev/myrootpartition, /dev/somebackupspace or whatever. In this
> case you do have a /dev/cdrom symlink but it's just that, a symlink set
> up by scripts. The kernel doesn't (and shouldn't) make that naming
> decision for you.
>
> My software just walks /sys/class/uio/uioX/name, finds the one which
> matches then opens the corresponding device. No scripts needed, no
> in-kernel hackery or policy making, just the interface used as the maker
> intended. What's your problem with this approach?

My problem is this, uio is a generic container for any user space device
and by itself it doesn't mean much. You put some protocol driver on top
of uio, such as uio_smx, to make it mean something.

Comparing uio with hdX is wrong as hdX means something, it is a block
device for a disk.
A better comparison would be if all kernel devices were named kio%d and
you had to scan /sys to find the name hdX.

Look at the spi subsystem, the protocol drivers name them self.

Jocke