Tags: chewr/periph
Tags
Remove go.mod TL;DR: A project with: - a valid semver tag equal or above v3.0.0 - with a go.mod file - but not using versioned imports is not supported by Go in modules mode; GO111MODULE=on on previous version, and anything but GO111MODULE=off on likely 1.13 or newer when the default is switched. The only way to keep it working simultaneously on versions below 1.9.7 and above 1.11 in go module mode is to remove the go.mod file. It is currently expected that v4.0.0 will be released with a go.mod file, which will break Go toolchains before 1.9.7. As a note, the minimum tested version is currently 1.7.6. Even then, there's some fun. This is because of the source files using '// +build periphextra'. The tag 'periphextra' only has effect when building executables under cmd/ and experimental/cmd/. When set, these executables call hostextra.Init() from periph.io/x/extra/hostextra instead of host.Init() from periph.io/x/periph/host. The reason is that periph.io/x/extra contains all drivers that have external dependencies, while periph.io/x/periph itself aims to not have any external dependencies. Yet, it's useful to be able to use, let's say, a FT232H with cmd/gpio-read. Hence the optional build tag. The problem is that then go mod complains, because it sees the periph.io/x/extra/hostextra import, and wants to add it as a dependency in go.sum. Hello circular dependency! I'm not yet sure how I'll handle this beside hacking manually the go.sum file or removing this option at all.
fs/sysfs: MIPS: Don't translate all IOCTLs (google#402) Some IOCTLs are fixed, e.g. i2c-dev. There, we must not translate the IOCTLs. Instead, the IOCTLs are generated arch-dependent in the fs package. - fs: add IO() IOR() IOW() IORW() functions for the equivalent linux macros. - videocore: Replace ioctl magic with derived value. Beside being clearer, the comment in the code was incorrect. The message box magic is in fact 'd' = 100 = 0x64, not 0x100. - videocore: Use dynamic pointer size for ioctl.
i2c: Adds i2c.Addr type and flag.Value interface. (google#362) * i2c: Adds i2c.Addr type and flag.Value interface. Add i2c.Addr Add i2c.Addr Set() Add Tests.
headers drivers: use After instead of Prerequisites Now that the allwinner and bcm283x Pin can work even if the driver failed by falling back into sysfs-gpio, the header should load even if the CPU GPIO drivers failed. allwinner-gpio-pl is now after sysfs-gpio instead of allwinner-gpio as a prerequisite. This will enable cases like running Arch on a RPi3 where gpiomem kernel driver is not loaded, the process is not running as root, so /dev/mem cannot be memory mapped, but sysfs-gpio loaded successfully.
PreviousNext