linux-gpio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Kent Gibson <warthog618@gmail.com>
To: Viresh Kumar <viresh.kumar@linaro.org>
Cc: "Bartosz Golaszewski" <brgl@bgdev.pl>,
	"Linus Walleij" <linus.walleij@linaro.org>,
	"Vincent Guittot" <vincent.guittot@linaro.org>,
	"open list:GPIO SUBSYSTEM" <linux-gpio@vger.kernel.org>,
	"Miguel Ojeda" <miguel.ojeda.sandonis@gmail.com>,
	"Wedson Almeida Filho" <wedsonaf@google.com>,
	"Alex Bennée" <alex.bennee@linaro.org>,
	stratos-dev@op-lists.linaro.org
Subject: Re: [PATCH V2 2/4] libgpiod: Add rust wrappers
Date: Thu, 6 Jan 2022 23:47:24 +0800	[thread overview]
Message-ID: <20220106154724.GA109697@sol> (raw)
In-Reply-To: <20211217051133.c6pipmhxxysyxdrx@vireshk-i7>

On Fri, Dec 17, 2021 at 10:41:33AM +0530, Viresh Kumar wrote:
> On 17-12-21, 08:12, Kent Gibson wrote:
> > I'm of the opinion that a rust implementation would be better targetting
> > the ioctls directly rather than libgpiod, as my Go library does and for
> > essentially the same reasons.
> 
> I remember asking Linus initially about this and I was suggested to use libgpiod
> instead :)
> 
> > To test that theory, and as an exercise to learn rust, I've been writing
> > one, and so far I've been calling it gpiod :-|.
> > 

In case you are interested, the first pass of my take on a Rust GPIO
library[1] has finally gotten to the point of being core feature complete,
and may be usable, although it is sorely lacking any integration tests.
And the documentation is still pretty light, or even non-existant for
github.
And the event interface is either polled or blocking - haven't gotten to
an async interface yet.

Anyway, there are three crates there:
 - gpiod-uapi provides a thin and safe wrapper around the ioctls and
   file reads, for both uAPI versions.
 - gpiod provides a more idiomatic abstraction, and hides the uAPI
   version being used - unless you need v2 specific features.
 - gpiodctl provides a binary that bundles all the gpio tools into one.

There are a couple of minimal example apps in the gpiod crate, in
addition to the example that gpiodctl provides.

Cheers,
Kent.

[1] https://github.com/warthog618/gpiod-rs


  reply	other threads:[~2022-01-06 15:47 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-02 11:22 [PATCH V2 0/4] libgpiod: Add Rust bindings Viresh Kumar
2021-12-02 11:22 ` [PATCH V2 1/4] libgpiod: Generate rust FFI bindings Viresh Kumar
2021-12-02 11:22 ` [PATCH V2 2/4] libgpiod: Add rust wrappers Viresh Kumar
2021-12-16 13:59   ` Bartosz Golaszewski
2021-12-17  0:12     ` Kent Gibson
2021-12-17  5:11       ` Viresh Kumar
2022-01-06 15:47         ` Kent Gibson [this message]
2022-01-07  7:37           ` Viresh Kumar
2021-12-17  5:01     ` Viresh Kumar
2021-12-17  5:52       ` Wedson Almeida Filho
2021-12-17  6:29         ` Viresh Kumar
2021-12-17  7:48       ` Viresh Kumar
2021-12-17  9:12       ` Bartosz Golaszewski
2021-12-17  9:32         ` Viresh Kumar
2021-12-17  9:43           ` Bartosz Golaszewski
2021-12-17  9:54             ` Viresh Kumar
2021-12-17 12:02               ` Bartosz Golaszewski
2021-12-20  5:28                 ` Viresh Kumar
2021-12-17  9:44       ` Miguel Ojeda
2021-12-17 10:04         ` Viresh Kumar
2021-12-17  9:21     ` Miguel Ojeda
2021-12-17  9:43       ` Viresh Kumar
2021-12-02 11:22 ` [PATCH V2 3/4] rust: Add examples Viresh Kumar
2021-12-02 11:22 ` [PATCH V2 4/4] rust: Integrate building of rust bindings with make Viresh Kumar
2022-04-11  3:33 ` [PATCH V2 0/4] libgpiod: Add Rust bindings Viresh Kumar
2022-04-11  8:57   ` Bartosz Golaszewski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220106154724.GA109697@sol \
    --to=warthog618@gmail.com \
    --cc=alex.bennee@linaro.org \
    --cc=brgl@bgdev.pl \
    --cc=linus.walleij@linaro.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=miguel.ojeda.sandonis@gmail.com \
    --cc=stratos-dev@op-lists.linaro.org \
    --cc=vincent.guittot@linaro.org \
    --cc=viresh.kumar@linaro.org \
    --cc=wedsonaf@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).