blob: 795adfd88081c0aed6d320396825576b014adfb6 [file] [log] [blame]
Ben Dooksd192bae2010-05-24 12:13:30 +09001 Samsung GPIO implementation
2 ===========================
3
4Introduction
5------------
6
7This outlines the Samsung GPIO implementation and the architecture
Sylwester Nawrocki98025c82012-09-07 06:40:29 +09008specific calls provided alongside the drivers/gpio core.
Ben Dooksd192bae2010-05-24 12:13:30 +09009
10
11S3C24XX (Legacy)
12----------------
13
14See Documentation/arm/Samsung-S3C24XX/GPIO.txt for more information
Sylwester Nawrocki98025c82012-09-07 06:40:29 +090015about these devices. Their implementation has been brought into line
Ben Dooksd192bae2010-05-24 12:13:30 +090016with the core samsung implementation described in this document.
17
18
19GPIOLIB integration
20-------------------
21
22The gpio implementation uses gpiolib as much as possible, only providing
23specific calls for the items that require Samsung specific handling, such
24as pin special-function or pull resistor control.
25
26GPIO numbering is synchronised between the Samsung and gpiolib system.
27
28
29PIN configuration
30-----------------
31
Sylwester Nawrocki98025c82012-09-07 06:40:29 +090032Pin configuration is specific to the Samsung architecture, with each SoC
Ben Dooksd192bae2010-05-24 12:13:30 +090033registering the necessary information for the core gpio configuration
34implementation to configure pins as necessary.
35
36The s3c_gpio_cfgpin() and s3c_gpio_setpull() provide the means for a
37driver or machine to change gpio configuration.
38
39See arch/arm/plat-samsung/include/plat/gpio-cfg.h for more information
40on these functions.