| #
1.40 |
|
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.39 |
|
11-Mar-2025 |
brad |
Mention emcfan(4) and emcfanctl(8)
|
| #
1.38 |
|
23-Jan-2025 |
brad |
Mention ds28e17iic(4)
|
| #
1.37 |
|
16-Dec-2024 |
brad |
Mention umcpmio(4)
|
| #
1.36 |
|
04-Nov-2024 |
brad |
Mention ds2482ow
|
|
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.35 |
|
21-Nov-2022 |
brad |
branches: 1.35.4;
Mention the driver for the Bosch BMP280/BME280
|
| #
1.34 |
|
17-Nov-2022 |
brad |
Mention the AHT20 driver
|
| #
1.33 |
|
07-Dec-2021 |
brad |
Mention the SCMD device
|
| #
1.32 |
|
05-Dec-2021 |
msaitoh |
s/covert/convert/ in comment.
|
| #
1.31 |
|
06-Nov-2021 |
brad |
Mention sht3xtemp(4)
|
| #
1.30 |
|
14-Oct-2021 |
nia |
Add sgp40mox(4)
|
| #
1.29 |
|
05-Oct-2021 |
nia |
Add sht4xtemp(4). Sort.
|
| #
1.28 |
|
10-Sep-2021 |
nia |
sort
|
| #
1.27 |
|
10-Sep-2021 |
nia |
iic.4: add missing client devs (those with man pages, many don't have one)
|
|
Revision tags: cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base
|
| #
1.26 |
|
11-Mar-2021 |
nia |
Remove dead references
|
| #
1.25 |
|
27-Feb-2021 |
nia |
iic.4: Add FILES section. Fix copypasto.
|
| #
1.24 |
|
27-Feb-2021 |
nia |
Describe the i2c ioctl interface
|
| #
1.23 |
|
27-Feb-2021 |
nia |
iic.4: add ssdfb
|
|
Revision tags: netbsd-9-1-RELEASE phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 pgoyette-compat-merge-20190127 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 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.22 |
|
26-Feb-2018 |
wiz |
branches: 1.22.6; Fix comment.
|
| #
1.21 |
|
26-Feb-2018 |
pgoyette |
Finally, remove extraneous entries for macppc's "iic at cuda". We don't need three entries that differ only in wildcarding.
|
| #
1.20 |
|
26-Feb-2018 |
pgoyette |
Ooopppsss! Put the .Sh DESCRIPTION where it belongs, _after_ the list of config attachments.
|
| #
1.19 |
|
26-Feb-2018 |
pgoyette |
Hmmm, for some reason the first entry in the generated list is not in collating-sequence order. Move it to the proper place in the list.
|
| #
1.18 |
|
25-Feb-2018 |
pgoyette |
Bump date for previous two changes.
|
| #
1.17 |
|
25-Feb-2018 |
pgoyette |
Fix the commands-to-generate-the-attachment list to use tab's instead of multiple spaces in the regex bracket expressions, and alert the reader to this. Otherwise, a cut-and-paste might simply expand the tab characters to some number of spaces, and the result won't find what you're looking for!
XXX Despite the indication that these commands should be run in csh (or derivative), they seem to run just fine under /bin/sh as well.
|
| #
1.16 |
|
25-Feb-2018 |
pgoyette |
Regen attachment list, since we just added "iic* at imcsmb?"
This regen also caught a few other missing entries.
|
| #
1.15 |
|
24-Jan-2018 |
wiz |
Remove Tn.
|
| #
1.14 |
|
24-Jan-2018 |
skrll |
Remove port-acorn26
OK core@
|
|
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
|
| #
1.13 |
|
26-Jul-2016 |
msaitoh |
Update supported masters and slaves.
|
|
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 pgoyette-localcount-20160726 pgoyette-localcount-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.12 |
|
18-Mar-2014 |
riastradh |
branches: 1.12.8; Merge riastradh-drm2 to HEAD.
|
|
Revision tags: riastradh-drm2-base3 riastradh-drm2-base2 riastradh-drm2-base1
|
| #
1.11 |
|
20-Jul-2013 |
wiz |
Use Mt for email addresses.
|
|
Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE yamt-pagecache-tag8 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 riastradh-drm2-base netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 agc-symver-base netbsd-6-1-RC2 netbsd-6-1-RC1 yamt-pagecache-base8 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 yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base
|
| #
1.10 |
|
15-Oct-2011 |
jruoho |
branches: 1.10.2; 1.10.8; 1.10.12; Xref i2cscan(8).
|
| #
1.9 |
|
02-Oct-2011 |
jmcneill |
Install dev/i2c/i2c_io.h and implement the API in the iic(4) driver. Obsolete the I2C_SCAN option as this can now be done from userland.
|
| #
1.8 |
|
30-Aug-2011 |
mbalmer |
Also mention gpioiic(4).
|
| #
1.7 |
|
30-Aug-2011 |
wiz |
Sort SEE ALSO.
|
| #
1.6 |
|
30-Aug-2011 |
jruoho |
Xref dtviic(4).
|
|
Revision tags: cherry-xenmp-base uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231
|
| #
1.5 |
|
20-Dec-2010 |
jruoho |
Note options I2C_SCAN.
|
|
Revision tags: uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 uebayasi-xip-base2 uebayasi-xip-base1
|
| #
1.4 |
|
06-Feb-2010 |
pgoyette |
Add man page and cross-refs for experimental acpismbus(4)
|
|
Revision tags: matt-premerge-20091211
|
| #
1.3 |
|
22-Aug-2009 |
joerg |
Kill empty lines.
|
| #
1.2 |
|
05-Jun-2009 |
wiz |
Drop trailing whitespace. Add a missing continuation line. Use more .An.
|
| #
1.1 |
|
05-Jun-2009 |
hubertf |
Add iic(4) manpage, partly taken from OpenBSD.
|