mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-03 17:14:14 +08:00
4818f44898
Add new macros for describing pins without GPIO functionality: - NOGP_ALL() expands to a list of PIN_id values, to be used for generating symbolic enum values, - PINMUX_NOGP_ALL() expands to a list of sh_pfc_pin entries, to list all pins and their capabilities. Both macros depend on an SoC-specific CPU_ALL_NOGP() macro, to be provided by each individual SoC pin control driver. The new macros offer two advantages over the existing SH_PFC_PIN_NAMED() and SH_PFC_PIN_NAMED_CFG() macros: 1. They do not rely on PIN_NUMBER() macros and physical pin numbering, hence do not suffer from pin numbering confusion among different SoC/SiP packages. 2. They are similar in spirit to the existing scheme for handling pins with GPIO functionality. Note that internal to the driver, non-GPIO pins use a sequential numbering scheme which starts after the highest GPIO pin number in use. This value is calculated automatically, using two new helper macros, for systems with either 32-port bank (GP port style) or linear (PORT style) pin space. Sample expansion: GP_LAST = sizeof(union { char dummy[0] __attribute__((deprecated, deprecated)); char GP_0_0[(0 * 32) + 0] __attribute__((deprecated, deprecated)); char GP_0_1[(0 * 32) + 1] __attribute__((deprecated, deprecated)); ... char GP_7_3[(7 * 32) + 3] __attribute__((deprecated, deprecated)); }) Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Reviewed-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se> |
||
---|---|---|
.. | ||
core.c | ||
core.h | ||
gpio.c | ||
Kconfig | ||
Makefile | ||
pfc-emev2.c | ||
pfc-r8a73a4.c | ||
pfc-r8a7740.c | ||
pfc-r8a7778.c | ||
pfc-r8a7779.c | ||
pfc-r8a7790.c | ||
pfc-r8a7791.c | ||
pfc-r8a7792.c | ||
pfc-r8a7794.c | ||
pfc-r8a7795-es1.c | ||
pfc-r8a7795.c | ||
pfc-r8a7796.c | ||
pfc-r8a77470.c | ||
pfc-r8a77965.c | ||
pfc-r8a77970.c | ||
pfc-r8a77980.c | ||
pfc-r8a77990.c | ||
pfc-r8a77995.c | ||
pfc-sh73a0.c | ||
pfc-sh7203.c | ||
pfc-sh7264.c | ||
pfc-sh7269.c | ||
pfc-sh7720.c | ||
pfc-sh7722.c | ||
pfc-sh7723.c | ||
pfc-sh7724.c | ||
pfc-sh7734.c | ||
pfc-sh7757.c | ||
pfc-sh7785.c | ||
pfc-sh7786.c | ||
pfc-shx3.c | ||
pinctrl.c | ||
sh_pfc.h |