18c2ecf20Sopenharmony_ci=========================== 28c2ecf20Sopenharmony_ciSamsung GPIO implementation 38c2ecf20Sopenharmony_ci=========================== 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_ciIntroduction 68c2ecf20Sopenharmony_ci------------ 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_ciThis outlines the Samsung GPIO implementation and the architecture 98c2ecf20Sopenharmony_cispecific calls provided alongside the drivers/gpio core. 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_ciS3C24XX (Legacy) 138c2ecf20Sopenharmony_ci---------------- 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ciSee Documentation/arm/samsung-s3c24xx/gpio.rst for more information 168c2ecf20Sopenharmony_ciabout these devices. Their implementation has been brought into line 178c2ecf20Sopenharmony_ciwith the core samsung implementation described in this document. 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ciGPIOLIB integration 218c2ecf20Sopenharmony_ci------------------- 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_ciThe gpio implementation uses gpiolib as much as possible, only providing 248c2ecf20Sopenharmony_cispecific calls for the items that require Samsung specific handling, such 258c2ecf20Sopenharmony_cias pin special-function or pull resistor control. 268c2ecf20Sopenharmony_ci 278c2ecf20Sopenharmony_ciGPIO numbering is synchronised between the Samsung and gpiolib system. 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ci 308c2ecf20Sopenharmony_ciPIN configuration 318c2ecf20Sopenharmony_ci----------------- 328c2ecf20Sopenharmony_ci 338c2ecf20Sopenharmony_ciPin configuration is specific to the Samsung architecture, with each SoC 348c2ecf20Sopenharmony_ciregistering the necessary information for the core gpio configuration 358c2ecf20Sopenharmony_ciimplementation to configure pins as necessary. 368c2ecf20Sopenharmony_ci 378c2ecf20Sopenharmony_ciThe s3c_gpio_cfgpin() and s3c_gpio_setpull() provide the means for a 388c2ecf20Sopenharmony_cidriver or machine to change gpio configuration. 398c2ecf20Sopenharmony_ci 408c2ecf20Sopenharmony_ciSee arch/arm/plat-samsung/include/plat/gpio-cfg.h for more information 418c2ecf20Sopenharmony_cion these functions. 42