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