From mboxrd@z Thu Jan 1 00:00:00 1970 From: Linus Walleij Subject: Re: [patch v6 0/3] JTAG driver introduction Date: Mon, 28 Aug 2017 00:25:14 +0200 Message-ID: References: <1503418256-5215-1-git-send-email-oleksandrs@mellanox.com> <593cd0d3-8e06-0992-c155-1322014c0477@longlandclan.id.au> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Return-path: In-Reply-To: <593cd0d3-8e06-0992-c155-1322014c0477-3e+Fe6x+DsgJbe36r25VNhCuuivNXqWP@public.gmane.org> Sender: devicetree-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: Stuart Longland Cc: Rick Altherr , Oleksandr Shamray , "devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , =?UTF-8?B?SmnFmcOtIFDDrXJrbw==?= , Arnd Bergmann , system-sw-low-level-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org, Greg KH , OpenBMC Maillist , "linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , openocd-devel-owner-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org, mec-WqBc5aa1uDFeoWH0uzbU5w@public.gmane.org, Rob Herring , "linux-serial-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , Tobias Klauser , "linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , "linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org" List-Id: devicetree@vger.kernel.org On Fri, Aug 25, 2017 at 10:50 AM, Stuart Longland wrote: > [Note: dropping vadimp-45czdsxZ+A5DPfheJLI6IQ@public.gmane.org as SMTP server complained about the > DNS server returning NXDOMAIN. Apologies.] > On 25/08/17 18:32, Linus Walleij wrote: >> Gnah! >> Whoever writes a slot-in replacement making the character device >> take precendence wins lots of karma. > > What would such a replacement look like though? Something that looks for /dev/gpiochipN and if it exists open the GPIOs from there and make that take precedence over any /sys/gpio/* poking. > Some sort of system whereby you can read/write single-line commands as > if talking to a GPIO expander over a UART? I don't really understand the question. All GPIO expanders become a gpiochip, and have their own character device in /dev. > Would you access the GPIOs one by one, or would you perhaps map them > into a bitmap (maybe arbitrarily, up to 64-bits wide) and perform masked > operations on the bitmap? The character device supports up to 64bits of simultaneous line switches, but the in-kernel API can only handle 32bits in a single register write. > I'm no fan of the sysfs GPIO interface, but it beats poking around at > registers behind the kernel's back. Have a look at libgpiod and tools/gpio/* in the kernel. Yours, Linus Walleij -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html