| #
1.39 |
|
24-Oct-2025 |
brad |
A driver for the NXP SC16IS7xx family of UART chips. This family is mostly a 16C450 with features from the 16C550, 16C650 and 16C750 and makes use of src/sys/dev/ic/com.c for much of the heavy lifting.
A BIG difference is that the chip family is attached via a I2C or SPI bus and is in no way, shape or form, attached to the computer via a computer bus.
Since spin locks are not allowed to be held while calling to the I2C or SPI framework com.c grew a new hw feature flag where it could be run at something other than a hard IP level and doesn't hold spin lock (for very long). In particular, IPL_SOFTSERIAL. This method is enabled via a hw feature flag and should not effect any other use of com.c. Other changes with this new method of use include the use of workqueues and such.
A further feature added to com.c was the abilty to take advantage of the MCR prescaler that is present in the SC16IS7xx family and likely present in the 16C650. This prescaler is tried if the baud rate requested can not be met with the frequency oscillator that the chip is built with.
The chip family does not use any particular frequency oscillator for the baud rate generator. In order to deal with this the frequency can be set via sysctl, a kernel option or with a FDT overlay if that is supported.
Most of the features of the chip family are supported including the gpio pins via gpiobus(4) that are present with some of the family members.
The chip can attach via I2C or SPI and can make sure of FDT if that is present in the system.
This chip family has been around for quite some time and there are a number of breakout boards on Amazon. It is also reasonably priced and you can roll your own board if you can perform simple SMD soldering as very few additional components are required.
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base
|
| #
1.38 |
|
16-Dec-2024 |
brad |
Mention umcpmio(4)
|
|
Revision tags: netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 netbsd-10-0-RC1 netbsd-10-base
|
| #
1.37 |
|
10-Dec-2021 |
andvar |
branches: 1.37.4; s/unaccessible/inaccessible/
|
|
Revision tags: cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base
|
| #
1.36 |
|
04-May-2021 |
christos |
Fix incorrect structure name (Rocky Hotas)
|
|
Revision tags: phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406
|
| #
1.35 |
|
13-Feb-2020 |
sevan |
grammar
|
|
Revision tags: phil-wifi-20191119
|
| #
1.34 |
|
02-Nov-2019 |
tnn |
expand section on GPIOREAD
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 netbsd-9-base phil-wifi-20190609 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521
|
| #
1.33 |
|
19-May-2018 |
thorpej |
branches: 1.33.2; Overhaul of GPIO interrupt support (that wasn't even used by anything). - Remove the old, not-expressive-enough interrupt flags, and replace them with a new set of interrupt-specific flags that can express a wide variety of interrupt configurations (pos, neg, and double-edge, high and low level). - Remove old, unused gpio_pin_ctl_intr() and gpio_pin_irqen(), and replace them with gpio_intr_establish(), gpio_intr_disestablish(), and gpio_intr_str(). Corresponding fields in the gpio_chipset_tag are also added for back-end controllers, which now handle the actual dispatch of GPIO interrupts in order to properly support level-triggered interrupts as well as interoperate properly with FDT-registered interrupts.
Piggy-back on the 8.99.18 version bump.
Inspired by initial work from Brad Spencer. PR kern/51676
|
|
Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
|
| #
1.32 |
|
20-Feb-2018 |
wiz |
branches: 1.32.2; Whitespace improvements. Remove unnecessary Tn.
|
| #
1.31 |
|
20-Feb-2018 |
pgoyette |
Update to include wbsio as a possible parent for a gpio device.
XXX Should we really list all the possible parents? Or should we replace XXX this entire list with a single entry for "gpio* at gpiobus?"
|
|
Revision tags: netbsd-8-3-RELEASE netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 bouyer-socketcan-base pgoyette-localcount-20170107 pgoyette-localcount-20161104 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base
|
| #
1.30 |
|
06-Dec-2015 |
wiz |
Bump date for previous.
|
| #
1.29 |
|
06-Dec-2015 |
mlelstv |
document new pin configuration flags
|
|
Revision tags: netbsd-7-2-RELEASE netbsd-7-1-2-RELEASE netbsd-7-1-1-RELEASE netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 netbsd-7-1-RC1 netbsd-7-0-2-RELEASE netbsd-7-nhusb-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 tls-maxphys-base
|
| #
1.28 |
|
18-Mar-2014 |
riastradh |
Merge riastradh-drm2 to HEAD.
|
|
Revision tags: riastradh-drm2-base3 riastradh-drm2-base2 riastradh-drm2-base1
|
| #
1.27 |
|
20-Jul-2013 |
wiz |
Use Mt for email addresses.
|
|
Revision tags: riastradh-drm2-base
|
| #
1.26 |
|
10-Jun-2013 |
wiz |
branches: 1.26.2; Bump date for previous.
|
| #
1.25 |
|
10-Jun-2013 |
kardel |
adjust soekrisgpio driver to NetBSD
|
|
Revision tags: agc-symver-base yamt-pagecache-base8
|
| #
1.24 |
|
16-Dec-2012 |
mbalmer |
Mention ptcd(4) in the synopsis.
|
|
Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 netbsd-6-1-RC2 netbsd-6-1-RC1 netbsd-6-0-1-RELEASE yamt-pagecache-base7 matt-nb6-plus-nbase yamt-pagecache-base6 netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 yamt-pagecache-base5 yamt-pagecache-base4 netbsd-6-base
|
| #
1.23 |
|
13-Nov-2011 |
mbalmer |
branches: 1.23.2; 1.23.6; Bring up to reality.
|
|
Revision tags: yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base
|
| #
1.22 |
|
06-Oct-2011 |
wiz |
branches: 1.22.2; Sort SEE ALSO.
|
| #
1.21 |
|
03-Oct-2011 |
mbalmer |
Remove the GPIODETACH gpio(4) ioctl (it is still available in COMPAT_50) and the 'detach' command line option from gpioctl(8). Drivers that are attached to gpio pins can be detached using the drvctl(8) command.
|
| #
1.20 |
|
02-Oct-2011 |
mbalmer |
Add a ga_flags field to the gpio_attach structure to hand driver specific flags to drivers being attached at gpio pins. gpioiic(4) uses this to reverse the SDA/SCL signal order. gpioctl(8) accepts the flag values as optional argument to the attach command. While here, make sure we retain backwards compatability and wrap compat code in #ifdef COMPAT_50/#endif.
|
| #
1.19 |
|
28-Aug-2011 |
mbalmer |
Add a new ioctl, GPIOPULSE to gpio(4) to allow for pulsing a pin. If a pin can pulse in hardware, that will be used, else it will be pulsed in software. There is no way yet to set the pulse frequency for pins that pulse in hardware. While here, make the code mpsafe and allow more than one thread in the driver (access to ioctl is serialized).
|
|
Revision tags: cherry-xenmp-base uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 uebayasi-xip-base2 uebayasi-xip-base1
|
| #
1.18 |
|
22-Mar-2010 |
joerg |
branches: 1.18.2; Use .In instead of .Aq Pa for header files.
|
|
Revision tags: matt-premerge-20091211
|
| #
1.17 |
|
27-Sep-2009 |
wiz |
Bump date for today's changes.
|
| #
1.16 |
|
27-Sep-2009 |
jakllsch |
gpio(4) support for Intel ICH southbridges.
Tested on Intel SS4200-E (ICH7), and Acorp 6A815EPD (ICH2) motherboards, on amd64 and i386 ports respectively.
It should be noted that the majority of boards with ICH chips do not expose the GPIO pins for off-board use. For instance, aside from the three exposed-on-a-header pins on the 6A815EPD, another pin is also used to control write protect on the FWH. The SS4200 exposes the GPIO on a header that connects to the 10 LEDs on the front panel, as well as a tact switch on the back panel.
|
| #
1.15 |
|
25-Sep-2009 |
mbalmer |
Jonatha Kollasch has a GPIO device that can pulse the output lines. Support it wuth the GPIO_PIN_PULSE attribute and the 'pulse' paramater to gpioctl. Discussed with Jonathan.
|
| #
1.14 |
|
23-Aug-2009 |
wiz |
Reword slightly so I can understand it more easily.
|
| #
1.13 |
|
23-Aug-2009 |
mbalmer |
Mention that defining the GPIO layout is subject to kauth(9) auhtorization. Suggested by Elad Efrat.
|
| #
1.12 |
|
01-Aug-2009 |
mbalmer |
Sprinkle a few .Pps.
|
| #
1.11 |
|
01-Aug-2009 |
mbalmer |
Sort SYNOPSIS, add gpio* at gpiosim?.
|
| #
1.10 |
|
25-Jul-2009 |
wiz |
Reword for better HTML output.
|
| #
1.9 |
|
25-Jul-2009 |
mbalmer |
Document recent gpio(4) changes and introduce a new config file for GPIO. Integrate with the startup scripts in /etc/rc.d. Introduce new variable "gpio" for /etc/rc.conf.
|
|
Revision tags: jym-xensuspend-nbase jym-xensuspend-base
|
| #
1.8 |
|
27-Feb-2009 |
kenh |
Improved support for GPIO support on the EP93xx ARM processors. Specifically:
Support disabling specific pins on specific ports. Modification of TS7200 kernel config file for GPIO support. Documentatin for the current and improved GPIO interface (epgpio).
|
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 wrstuden-revivesa-base mjf-devfs2-base
|
| #
1.7 |
|
29-Apr-2008 |
cegger |
branches: 1.7.4; 1.7.6; gpio(4): Extend with open/close to request/release the ppbus(4) on open/close. ppbus(4): Extend to attach on gpiobus. From Hans Rosenfeld from tech-kern: http://mail-index.netbsd.org/tech-kern/2008/04/28/msg001168.html Hint: Hans sent me this diff which differs in the one from tech-kern in: - 2-clause license - sprinkled some consts
|
|
Revision tags: yamt-pf42-baseX yamt-pf42-base keiichi-mipv6-nbase keiichi-mipv6-base matt-armv6-nbase hpcarm-cleanup-base
|
| #
1.6 |
|
09-Jan-2008 |
xtraeme |
branches: 1.6.4; 1.6.6; Mention GPIO_PIN_PULLDOWN, GPIO_PIN_INVIN and GPIO_PIN_INVOUT; from OpenBSD.
|
| #
1.5 |
|
09-Jan-2008 |
xtraeme |
<wizd> bump date!
|
| #
1.4 |
|
09-Jan-2008 |
xtraeme |
Mention gcscpcib(4), reorder entries, just mention gpioctl(8) and not all drivers again.
|
|
Revision tags: netbsd-4-0-1-RELEASE wrstuden-fixsa-newbase matt-armv6-prevmlocking wrstuden-fixsa-base-1 netbsd-4-0-RELEASE cube-autoconf-base netbsd-4-0-RC5 netbsd-4-0-RC4 netbsd-4-0-RC3 netbsd-4-0-RC2 netbsd-4-0-RC1 matt-armv6-base matt-mips64-base wrstuden-fixsa-base abandoned-netbsd-4-base netbsd-4-base chap-midi-nbase chap-midi-base
|
| #
1.3 |
|
05-Jan-2006 |
bouyer |
branches: 1.3.12; Note that gpio can attach to elansc, and xref elansc(4). Bump date.
|
| #
1.2 |
|
27-Sep-2005 |
wiz |
Use .In. Mention NetBSD import. Use .Nx.
|
| #
1.1 |
|
27-Sep-2005 |
jmcneill |
Add man page for gpio framework (from OpenBSD)
|
| #
1.39 |
|
24-Oct-2025 |
brad |
A driver for the NXP SC16IS7xx family of UART chips. This family is mostly a 16C450 with features from the 16C550, 16C650 and 16C750 and makes use of src/sys/dev/ic/com.c for much of the heavy lifting.
A BIG difference is that the chip family is attached via a I2C or SPI bus and is in no way, shape or form, attached to the computer via a computer bus.
Since spin locks are not allowed to be held while calling to the I2C or SPI framework com.c grew a new hw feature flag where it could be run at something other than a hard IP level and doesn't hold spin lock (for very long). In particular, IPL_SOFTSERIAL. This method is enabled via a hw feature flag and should not effect any other use of com.c. Other changes with this new method of use include the use of workqueues and such.
A further feature added to com.c was the abilty to take advantage of the MCR prescaler that is present in the SC16IS7xx family and likely present in the 16C650. This prescaler is tried if the baud rate requested can not be met with the frequency oscillator that the chip is built with.
The chip family does not use any particular frequency oscillator for the baud rate generator. In order to deal with this the frequency can be set via sysctl, a kernel option or with a FDT overlay if that is supported.
Most of the features of the chip family are supported including the gpio pins via gpiobus(4) that are present with some of the family members.
The chip can attach via I2C or SPI and can make sure of FDT if that is present in the system.
This chip family has been around for quite some time and there are a number of breakout boards on Amazon. It is also reasonably priced and you can roll your own board if you can perform simple SMD soldering as very few additional components are required.
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base
|
| #
1.38 |
|
16-Dec-2024 |
brad |
Mention umcpmio(4)
|
|
Revision tags: netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 netbsd-10-0-RC1 netbsd-10-base
|
| #
1.37 |
|
10-Dec-2021 |
andvar |
branches: 1.37.4; s/unaccessible/inaccessible/
|
|
Revision tags: cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base
|
| #
1.36 |
|
04-May-2021 |
christos |
Fix incorrect structure name (Rocky Hotas)
|
|
Revision tags: phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406
|
| #
1.35 |
|
13-Feb-2020 |
sevan |
grammar
|
|
Revision tags: phil-wifi-20191119
|
| #
1.34 |
|
02-Nov-2019 |
tnn |
expand section on GPIOREAD
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 netbsd-9-base phil-wifi-20190609 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521
|
| #
1.33 |
|
19-May-2018 |
thorpej |
branches: 1.33.2; Overhaul of GPIO interrupt support (that wasn't even used by anything). - Remove the old, not-expressive-enough interrupt flags, and replace them with a new set of interrupt-specific flags that can express a wide variety of interrupt configurations (pos, neg, and double-edge, high and low level). - Remove old, unused gpio_pin_ctl_intr() and gpio_pin_irqen(), and replace them with gpio_intr_establish(), gpio_intr_disestablish(), and gpio_intr_str(). Corresponding fields in the gpio_chipset_tag are also added for back-end controllers, which now handle the actual dispatch of GPIO interrupts in order to properly support level-triggered interrupts as well as interoperate properly with FDT-registered interrupts.
Piggy-back on the 8.99.18 version bump.
Inspired by initial work from Brad Spencer. PR kern/51676
|
|
Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
|
| #
1.32 |
|
20-Feb-2018 |
wiz |
branches: 1.32.2; Whitespace improvements. Remove unnecessary Tn.
|
| #
1.31 |
|
20-Feb-2018 |
pgoyette |
Update to include wbsio as a possible parent for a gpio device.
XXX Should we really list all the possible parents? Or should we replace XXX this entire list with a single entry for "gpio* at gpiobus?"
|
|
Revision tags: netbsd-8-3-RELEASE netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 bouyer-socketcan-base pgoyette-localcount-20170107 pgoyette-localcount-20161104 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base
|
| #
1.30 |
|
06-Dec-2015 |
wiz |
Bump date for previous.
|
| #
1.29 |
|
06-Dec-2015 |
mlelstv |
document new pin configuration flags
|
|
Revision tags: netbsd-7-2-RELEASE netbsd-7-1-2-RELEASE netbsd-7-1-1-RELEASE netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 netbsd-7-1-RC1 netbsd-7-0-2-RELEASE netbsd-7-nhusb-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 tls-maxphys-base
|
| #
1.28 |
|
18-Mar-2014 |
riastradh |
Merge riastradh-drm2 to HEAD.
|
|
Revision tags: riastradh-drm2-base3 riastradh-drm2-base2 riastradh-drm2-base1
|
| #
1.27 |
|
20-Jul-2013 |
wiz |
Use Mt for email addresses.
|
|
Revision tags: riastradh-drm2-base
|
| #
1.26 |
|
10-Jun-2013 |
wiz |
branches: 1.26.2; Bump date for previous.
|
| #
1.25 |
|
10-Jun-2013 |
kardel |
adjust soekrisgpio driver to NetBSD
|
|
Revision tags: agc-symver-base yamt-pagecache-base8
|
| #
1.24 |
|
16-Dec-2012 |
mbalmer |
Mention ptcd(4) in the synopsis.
|
|
Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 netbsd-6-1-RC2 netbsd-6-1-RC1 netbsd-6-0-1-RELEASE yamt-pagecache-base7 matt-nb6-plus-nbase yamt-pagecache-base6 netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 yamt-pagecache-base5 yamt-pagecache-base4 netbsd-6-base
|
| #
1.23 |
|
13-Nov-2011 |
mbalmer |
branches: 1.23.2; 1.23.6; Bring up to reality.
|
|
Revision tags: yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base
|
| #
1.22 |
|
06-Oct-2011 |
wiz |
branches: 1.22.2; Sort SEE ALSO.
|
| #
1.21 |
|
03-Oct-2011 |
mbalmer |
Remove the GPIODETACH gpio(4) ioctl (it is still available in COMPAT_50) and the 'detach' command line option from gpioctl(8). Drivers that are attached to gpio pins can be detached using the drvctl(8) command.
|
| #
1.20 |
|
02-Oct-2011 |
mbalmer |
Add a ga_flags field to the gpio_attach structure to hand driver specific flags to drivers being attached at gpio pins. gpioiic(4) uses this to reverse the SDA/SCL signal order. gpioctl(8) accepts the flag values as optional argument to the attach command. While here, make sure we retain backwards compatability and wrap compat code in #ifdef COMPAT_50/#endif.
|
| #
1.19 |
|
28-Aug-2011 |
mbalmer |
Add a new ioctl, GPIOPULSE to gpio(4) to allow for pulsing a pin. If a pin can pulse in hardware, that will be used, else it will be pulsed in software. There is no way yet to set the pulse frequency for pins that pulse in hardware. While here, make the code mpsafe and allow more than one thread in the driver (access to ioctl is serialized).
|
|
Revision tags: cherry-xenmp-base uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 uebayasi-xip-base2 uebayasi-xip-base1
|
| #
1.18 |
|
22-Mar-2010 |
joerg |
branches: 1.18.2; Use .In instead of .Aq Pa for header files.
|
|
Revision tags: matt-premerge-20091211
|
| #
1.17 |
|
27-Sep-2009 |
wiz |
Bump date for today's changes.
|
| #
1.16 |
|
27-Sep-2009 |
jakllsch |
gpio(4) support for Intel ICH southbridges.
Tested on Intel SS4200-E (ICH7), and Acorp 6A815EPD (ICH2) motherboards, on amd64 and i386 ports respectively.
It should be noted that the majority of boards with ICH chips do not expose the GPIO pins for off-board use. For instance, aside from the three exposed-on-a-header pins on the 6A815EPD, another pin is also used to control write protect on the FWH. The SS4200 exposes the GPIO on a header that connects to the 10 LEDs on the front panel, as well as a tact switch on the back panel.
|
| #
1.15 |
|
25-Sep-2009 |
mbalmer |
Jonatha Kollasch has a GPIO device that can pulse the output lines. Support it wuth the GPIO_PIN_PULSE attribute and the 'pulse' paramater to gpioctl. Discussed with Jonathan.
|
| #
1.14 |
|
23-Aug-2009 |
wiz |
Reword slightly so I can understand it more easily.
|
| #
1.13 |
|
23-Aug-2009 |
mbalmer |
Mention that defining the GPIO layout is subject to kauth(9) auhtorization. Suggested by Elad Efrat.
|
| #
1.12 |
|
01-Aug-2009 |
mbalmer |
Sprinkle a few .Pps.
|
| #
1.11 |
|
01-Aug-2009 |
mbalmer |
Sort SYNOPSIS, add gpio* at gpiosim?.
|
| #
1.10 |
|
25-Jul-2009 |
wiz |
Reword for better HTML output.
|
| #
1.9 |
|
25-Jul-2009 |
mbalmer |
Document recent gpio(4) changes and introduce a new config file for GPIO. Integrate with the startup scripts in /etc/rc.d. Introduce new variable "gpio" for /etc/rc.conf.
|
|
Revision tags: jym-xensuspend-nbase jym-xensuspend-base
|
| #
1.8 |
|
27-Feb-2009 |
kenh |
Improved support for GPIO support on the EP93xx ARM processors. Specifically:
Support disabling specific pins on specific ports. Modification of TS7200 kernel config file for GPIO support. Documentatin for the current and improved GPIO interface (epgpio).
|
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 wrstuden-revivesa-base mjf-devfs2-base
|
| #
1.7 |
|
29-Apr-2008 |
cegger |
branches: 1.7.4; 1.7.6; gpio(4): Extend with open/close to request/release the ppbus(4) on open/close. ppbus(4): Extend to attach on gpiobus. From Hans Rosenfeld from tech-kern: http://mail-index.netbsd.org/tech-kern/2008/04/28/msg001168.html Hint: Hans sent me this diff which differs in the one from tech-kern in: - 2-clause license - sprinkled some consts
|
|
Revision tags: yamt-pf42-baseX yamt-pf42-base keiichi-mipv6-nbase keiichi-mipv6-base matt-armv6-nbase hpcarm-cleanup-base
|
| #
1.6 |
|
09-Jan-2008 |
xtraeme |
branches: 1.6.4; 1.6.6; Mention GPIO_PIN_PULLDOWN, GPIO_PIN_INVIN and GPIO_PIN_INVOUT; from OpenBSD.
|
| #
1.5 |
|
09-Jan-2008 |
xtraeme |
<wizd> bump date!
|
| #
1.4 |
|
09-Jan-2008 |
xtraeme |
Mention gcscpcib(4), reorder entries, just mention gpioctl(8) and not all drivers again.
|
|
Revision tags: netbsd-4-0-1-RELEASE wrstuden-fixsa-newbase matt-armv6-prevmlocking wrstuden-fixsa-base-1 netbsd-4-0-RELEASE cube-autoconf-base netbsd-4-0-RC5 netbsd-4-0-RC4 netbsd-4-0-RC3 netbsd-4-0-RC2 netbsd-4-0-RC1 matt-armv6-base matt-mips64-base wrstuden-fixsa-base abandoned-netbsd-4-base netbsd-4-base chap-midi-nbase chap-midi-base
|
| #
1.3 |
|
05-Jan-2006 |
bouyer |
branches: 1.3.12; Note that gpio can attach to elansc, and xref elansc(4). Bump date.
|
| #
1.2 |
|
27-Sep-2005 |
wiz |
Use .In. Mention NetBSD import. Use .Nx.
|
| #
1.1 |
|
27-Sep-2005 |
jmcneill |
Add man page for gpio framework (from OpenBSD)
|