Based on this raspi-gpio commit[1] the 2711 chip uses a different method
for pull up/down. This change implements that same method.
With this change, wiringPi now works for the Pi4B with the subset of
functionality used by zynthian.
[1] 80fa7d04ea?diff=unified
This change make the following commands correctly detect the 4B
however there may be an issue with reading GPIO inputs on the 4B
as they are always returning zero.
The aim of this change is to be the source-equivalent of the binary
package release 2.52[1] which was the last release before upstream
development ceased.
[1] http://wiringpi.com/wiringpi-updated-to-2-52-for-the-raspberry-pi-4b/
for kernels 4.8 onwards.
Some very old stuff might break.
Additional fixes for the ISR code and some tweaks here and
there. I've removed the checks for some operations that might
fail when using the gpiomem interface - which is now the default
way of doing things - if your program segfaults, then you
may need to use sudo on it.
Added support for the ADS1115 16-bit ADC
Updated the gpio readall command to correctly with with the Compute Module
and fixed a resulting bug in wiringPi...
Also affects the Pi v2 which also uses the new Revision
encoding scheme (It was slightly bodged before) This ought
to be relatively future proof, but who knows.
Fixed a minor thing in the examples Makefile
(not that anyone bothers to use it, judging by the emails I get )-:
the same as everyone elses.
This is an interim version which will work on both Pi v1 and v2
boards until I have a bit more time to implement the correct
stuff for v2.
Moved the extensions into wiringPi from gpio and made it more general purpose
more so that RTB and anything else can dymanically add devices
into wiringPi.
Changes to GPIO to updates for the SPI and I2C module loads
Added gpio unload for SPI and I2C.
Added a new way to setup SPI - by passing the mode in.
Support for the new Pi2 thing too
to produce a nicer 'readall' output too.
It also understands new pins 53,54,55 and 56 in wiringPiSetupPhys()
mode to represent the pins on the P5 connector on the Rev 2 Pi's
Changes to pinMode() to allow new modes SOFT_PWM and SOFT_TONE.
with wiringPiISR.
Added the ability to readall/reset from extension modules.
Changed the build script to use /bin/sh rather than /bin/bash as it seems
some installations don't have /bin/bash (or if they do, then the people who
are telling me that ./build gives them command not found are wrong)
Added in generic 'blink' programs in the examples in C, RTB and Shell.
Updated wiringPi with a little big-file on the millis() function and
added in a new micros() function too.
Updated the examples with standard LGPL headers.
Added a new isr-osc.c test program - just for ISR timing purposes.
on non Raspbian systems (and even on some Raspbian systems it would appear ):
fixed a timing issue on softTone
fixed some issues in wiringPisetup introduced when optimising the mmap calls.
and developed the new ISR - Interrupt Service Routine
handler - much easier than the old waitForInterrupt code!
Minor tweaks to the gpio program to recognise the environment variable
WIRINGPI_DEBUG too, and removed the printing of the errors from the
main wiringPi setup routines (and added some new ones!)
delayMicrosecondsHard re-written - again.
Added a serialRead example program, and added in the okLed
to the examples too.
Updated/checked some of the GPIO/PWM code.
Added in some experimental servo and tone generating code and
and example or 2.
Tweaks to the gpio command to correctly load the I2C modules too.
Also Makefile tweaks to help improve things somewhat - decided to
read the Makefile manual after some 15 years to updated my make
grey cells somewhat.
New command in the gpio command - readall