coreboot/Documentation
Michael Niewöhner 6d2fbba0ed docs: correct and rewrite documentation regarding n/c / unused pads
Intel PDGs starting from Skylake / Sunrise Point state that, different
from the general recommendation in digital electronics, unconnected
GPIOs defaulting to GPIO mode do explicitly not require termination.

The reason for this is, that these GPIOs have the `GPIORXDIS` bit set,
which effectively disconnects the pad from the internal logic by
disabling the input buffer.

This bit - besides `GPIOTXDIS` - can also be set explicitly by using
the gpio macro `PAD_NC(pad, NONE)`.

In some cases, a pull resistor may be required due to bad board design
or when a vendor sets the RX/TX disable bits together with a pull
resistor and schematics are not available to check if the pad is really
unconnected or just unused. In this case the pull resistor should be
kept.

Pads defaulting to native functions usually don't need special handling.
However, when pads requiring external pull-ups are missing these due to
bad board design, they should be configured with `PAD_NC` to disconnect
them internally.

Rewrite the documentation to reflect these new findings.

Also clarify the comment in soc/intel gpio code accordingly.

Change-Id: Id01b197ebe8f2b8bb4ecf3d119ec2298b26d9be0
Signed-off-by: Michael Niewöhner <foss@mniewoehner.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/52139
Reviewed-by: Tim Crawford <tcrawford@system76.com>
Reviewed-by:  Felix Singer <felixsinger@posteo.net>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2021-05-11 13:14:53 +00:00
..
_static Documentation: Add static CSS file to fix tables 2018-05-14 17:21:37 +00:00
acpi drivers/i2c/generic: Set S0W to D3hot for wake device 2021-05-05 01:16:29 +00:00
arch Documentation: Add known bugs of x86_64 code on real hardware 2021-01-12 13:36:30 +00:00
cbfstool Docs/cbfstool: Add details about memory mapped window handling 2020-12-11 01:11:16 +00:00
community Documentation: List the leadership meeting as one of our forums 2021-04-15 19:11:01 +00:00
contributing Documentation/coding_style: Issues not mentioned and cleanup patches 2021-03-26 05:09:40 +00:00
doxygen Documentation: Add doxygen_platform target 2017-03-23 21:19:34 +01:00
drivers Documentation: Fix toctree and remove dead links 2021-01-12 13:36:36 +00:00
flash_tutorial Documentation: Use inline code block for kernel parameter 2020-02-19 12:09:53 +00:00
getting_started docs: correct and rewrite documentation regarding n/c / unused pads 2021-05-11 13:14:53 +00:00
gfx drivers/intel/gma: Add override for presence straps 2020-05-20 23:38:05 +00:00
ifdtool Documentation: Use correct KiB/MiB units instead of KB/MB 2021-02-09 07:47:41 +00:00
infrastructure Documentation: Add documentation on jenkins builders 2021-01-25 08:56:27 +00:00
Intel mb,soc/intel: Rename acpi_fill_in_fadt() to acpi_fill_fadt() 2020-06-07 21:45:45 +00:00
lib util/sconfig: Add support for discontiguous FW_CONFIG fields 2021-05-03 07:40:57 +00:00
mainboard docs/mb/supermicro/x11ssm-f: rework flashing section 2021-04-29 05:23:38 +00:00
northbridge Documentation: Add tutorial for me_cleaner on Lenovo devices 2020-03-02 11:39:05 +00:00
releases Documentation/releases: Fill in coreboot 4.14 release notes 2021-05-10 20:32:07 +00:00
RFC [RFC] Address the leftover TODO in soc/intel/cannonlake 2021-04-16 17:42:12 +00:00
security google/trogdor: Add new variant Marzipan 2021-03-20 01:31:06 +00:00
soc sc7280: Provide initial SoC support 2021-04-15 19:07:26 +00:00
superio superio/nuvoton/nct5539d: Update documentation and remove DSDT 2020-03-11 15:03:39 +00:00
technotes Documentation: Add ASan documentation 2020-09-21 07:45:37 +00:00
tutorial Documentation: Describe the site-local hook in our config/build system 2021-03-17 23:07:07 +00:00
vendorcode Documentation/vendorcode/eltan: Update security document 2020-01-30 13:28:24 +00:00
.gitignore .gitignore: Split into subdirectory files 2020-10-30 07:05:27 +00:00
AMD-S3.txt Documentation: change coreboot to lowercase 2017-06-12 04:06:40 +02:00
beginverbatim.tex Rename documentation -> Documentation 2015-05-06 19:09:47 +02:00
cbfs.txt Fix typos involving "the the" 2018-12-18 13:24:28 +00:00
codeflow.svg Documentation: Remove whitespace before tab 2018-06-04 11:48:23 +00:00
conf.py Documentation: Fix sphinx configuration 2020-08-04 12:18:29 +00:00
COPYING Documentation/COPYING: Remove trailing whitespace 2018-04-27 09:10:20 +00:00
coreboot_logo.png Rename documentation -> Documentation 2015-05-06 19:09:47 +02:00
corebootBuildingGuide.tex Use git HTTP URLs without /p in it 2018-04-17 10:38:06 +00:00
distributions.md docs/distributions: remove entry for John Lewis' ROMs 2019-08-02 09:59:44 +00:00
Doxyfile.coreboot Documentation: Update doxygen config files 2018-05-22 07:27:58 +00:00
Doxyfile.coreboot_simple Documentation: Update doxygen config files 2018-05-22 07:27:58 +00:00
endverbatim.tex Rename documentation -> Documentation 2015-05-06 19:09:47 +02:00
gcov.txt Rename documentation -> Documentation 2015-05-06 19:09:47 +02:00
hypertransport.svg Rename documentation -> Documentation 2015-05-06 19:09:47 +02:00
index.md Documentation: move coding_style.md inside contributing/ 2021-02-22 07:20:59 +00:00
mainboard_io_trap_handler_sample.c ACPI GNVS: Replace uses of smm_get_gnvs() 2020-07-01 05:14:24 +00:00
Makefile Documentation: Allow passing arguments into make livesphinx 2019-02-05 21:15:37 +00:00
Makefile.sphinx Documentation: Add several fixes 2020-07-01 21:51:26 +00:00
payloads.md Documentation: Add Heads to payloads 2020-03-02 11:39:16 +00:00
POSTCODES post_code: add post code for video initialization failure 2019-05-22 17:45:11 +00:00
util.md Update util.md documentation 2021-01-28 20:17:11 +00:00