[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240318122953.000013f3@Huawei.com>
Date: Mon, 18 Mar 2024 12:29:53 +0000
From: Jonathan Cameron <Jonathan.Cameron@...wei.com>
To: Dominique Martinet <dominique.martinet@...ark-techno.com>
CC: David Lechner <dlechner@...libre.com>, Krzysztof Kozlowski
<krzysztof.kozlowski@...aro.org>, Jonathan Cameron <jic23@...nel.org>, Syunya
Ohshio <syunya.ohshio@...ark-techno.com>, Guido Günther <agx@...xcpu.org>, Lars-Peter Clausen
<lars@...afoo.de>, Rob Herring <robh+dt@...nel.org>, Krzysztof Kozlowski
<krzysztof.kozlowski+dt@...aro.org>, Conor Dooley <conor+dt@...nel.org>,
<linux-iio@...r.kernel.org>, <devicetree@...r.kernel.org>,
<linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] iio: industrialio-core: look for aliases to request
device index
On Mon, 18 Mar 2024 11:15:36 +0900
Dominique Martinet <dominique.martinet@...ark-techno.com> wrote:
> David Lechner wrote on Fri, Mar 15, 2024 at 10:53:36AM -0500:
> > How about using udev rules to create symlinks for each device based on
> > the label attribute? No changes to the kernel are needed.
>
> Right, it's definitely possible to make symlinks for each "device" -- my
> patch comment links to such an udev script "solution":
> https://git.toradex.com/cgit/meta-toradex-bsp-common.git/tree/recipes-core/udev/files/verdin-imx8mm/toradex-adc.sh?h=kirkstone-6.x.y
> (the script is launched by udev here:
> https://git.toradex.com/cgit/meta-toradex-bsp-common.git/tree/recipes-core/udev/files/verdin-imx8mm/99-toradex.rules
> )
>
> My conceptual problem with this is that this makes symlinks in /dev to
> files in /sys and it feels like we're crossing boundaries.
> As far as I can tell there is no way for userspace to create arbitrary
> symlinks in /sys, so I think we could have an interface more
> user-friendly by allowing paths to be static for users with multiple
> devices.
> (I guess that's a weak argument given e.g. disks etc will also have an
> unreliable name in /sys in the general case, but simple programs don't
> interact with them in /sys and can use stable links in /dev so my
> expectations here aren't quite the same)
>
>
> Ultimately, the problem might run deeper in that we're having userspace
> interact with the device through /sys and not the /dev char dev... As
> far as I could see /dev/iio:deviceX only allows reading buffered values
> and doesn't have any ioctl or other way of reading immediate values as
> is possible in /sys though, so that'd require quite a bit of work to
> duplicate the interface there...
Don't. The sysfs interface as only control is entirely intentional and
we do not want IOCTL based duplication.
Just addressing this bit as I'm still a bit snowed under to think about this
more generally.
Powered by blists - more mailing lists