unix: add GPIO constants and structs

This adds everything needed to use Linux's GPIO V2 UAPI, including the
ioctls, structs and constants.
As on some architectures char is signed by default and the UAPI doesn't
make it unsigned explicitly a mkpost fixup is used to make the types
more usable (by things like unix.ByteSliceToString).

Change-Id: Icdb0ca4a225316ca5e948e21ab21789636297a57
Reviewed-on: https://go-review.googlesource.com/c/sys/+/752623
Reviewed-by: David Chase <drchase@google.com>
Auto-Submit: Tobias Klauser <tobias.klauser@gmail.com>
LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Tobias Klauser <tobias.klauser@gmail.com>
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
18 files changed
tree: 618bb716fe0222f3ca476d1b67afeeaa3a8ae9d5
  1. cpu/
  2. execabs/
  3. plan9/
  4. unix/
  5. windows/
  6. .gitattributes
  7. .gitignore
  8. codereview.cfg
  9. CONTRIBUTING.md
  10. go.mod
  11. LICENSE
  12. PATENTS
  13. README.md
README.md

sys

Go Reference

This repository holds supplemental Go packages for low-level interactions with the operating system.

Report Issues / Send Patches

This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see https://go.dev/doc/contribute.

The git repository is https://go.googlesource.com/sys.

The main issue tracker for the sys repository is located at https://go.dev/issues. Prefix your issue with “x/sys:” in the subject line, so it is easy to find.