NAND is always at function 2 on port C.

Pin lists and mux values were taken from the Linux drivers.

Reviewed-by: Andre Przywara <andre.przyw...@arm.com>
Reviewed-by: Jagan Teki <ja...@amarulasolutions.com>
Signed-off-by: Samuel Holland <sam...@sholland.org>
---

(no changes since v1)

 drivers/pinctrl/sunxi/pinctrl-sunxi.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/drivers/pinctrl/sunxi/pinctrl-sunxi.c 
b/drivers/pinctrl/sunxi/pinctrl-sunxi.c
index c4fbda7a92..e510218090 100644
--- a/drivers/pinctrl/sunxi/pinctrl-sunxi.c
+++ b/drivers/pinctrl/sunxi/pinctrl-sunxi.c
@@ -269,6 +269,7 @@ static const struct sunxi_pinctrl_function 
sun4i_a10_pinctrl_functions[] = {
 #endif
        { "mmc2",       3 },    /* PC6-PC15 */
        { "mmc3",       2 },    /* PI4-PI9 */
+       { "nand0",      2 },    /* PC0-PC24 */
        { "spi0",       3 },    /* PC0-PC2, PC23 */
 #if IS_ENABLED(CONFIG_UART0_PORT_F)
        { "uart0",      4 },    /* PF2-PF4 */
@@ -293,6 +294,7 @@ static const struct sunxi_pinctrl_function 
sun5i_a13_pinctrl_functions[] = {
        { "mmc0",       2 },    /* PF0-PF5 */
        { "mmc1",       2 },    /* PG3-PG8 */
        { "mmc2",       3 },    /* PC6-PC15 */
+       { "nand0",      2 },    /* PC0-PC19 */
        { "spi0",       3 },    /* PC0-PC3 */
 #if IS_ENABLED(CONFIG_UART0_PORT_F)
        { "uart0",      4 },    /* PF2-PF4 */
@@ -319,6 +321,7 @@ static const struct sunxi_pinctrl_function 
sun6i_a31_pinctrl_functions[] = {
        { "mmc1",       2 },    /* PG0-PG5 */
        { "mmc2",       3 },    /* PC6-PC15, PC24 */
        { "mmc3",       4 },    /* PC6-PC15, PC24 */
+       { "nand0",      2 },    /* PC0-PC26 */
        { "spi0",       3 },    /* PC0-PC2, PC27 */
 #if IS_ENABLED(CONFIG_UART0_PORT_F)
        { "uart0",      3 },    /* PF2-PF4 */
@@ -363,6 +366,7 @@ static const struct sunxi_pinctrl_function 
sun7i_a20_pinctrl_functions[] = {
        { "mmc1",       4 },    /* PG0-PG5 */
 #endif
        { "mmc2",       3 },    /* PC5-PC15, PC24 */
+       { "nand0",      2 },    /* PC0-PC24 */
        { "spi0",       3 },    /* PC0-PC2, PC23 */
 #if IS_ENABLED(CONFIG_UART0_PORT_F)
        { "uart0",      4 },    /* PF2-PF4 */
@@ -386,6 +390,7 @@ static const struct sunxi_pinctrl_function 
sun8i_a23_pinctrl_functions[] = {
        { "mmc0",       2 },    /* PF0-PF5 */
        { "mmc1",       2 },    /* PG0-PG5 */
        { "mmc2",       3 },    /* PC5-PC16 */
+       { "nand0",      2 },    /* PC0-PC16 */
        { "spi0",       3 },    /* PC0-PC3 */
 #if IS_ENABLED(CONFIG_UART0_PORT_F)
        { "uart0",      3 },    /* PF2-PF4 */
@@ -424,6 +429,7 @@ static const struct sunxi_pinctrl_function 
sun8i_a33_pinctrl_functions[] = {
        { "mmc0",       2 },    /* PF0-PF5 */
        { "mmc1",       2 },    /* PG0-PG5 */
        { "mmc2",       3 },    /* PC5-PC16 */
+       { "nand0",      2 },    /* PC0-PC16 */
        { "spi0",       3 },    /* PC0-PC3 */
 #if IS_ENABLED(CONFIG_UART0_PORT_F)
        { "uart0",      3 },    /* PF2-PF4 */
@@ -450,6 +456,7 @@ static const struct sunxi_pinctrl_function 
sun8i_a83t_pinctrl_functions[] = {
        { "mmc0",       2 },    /* PF0-PF5 */
        { "mmc1",       2 },    /* PG0-PG5 */
        { "mmc2",       3 },    /* PC5-PC16 */
+       { "nand0",      2 },    /* PC0-PC18 */
        { "spi0",       3 },    /* PC0-PC3 */
 #if IS_ENABLED(CONFIG_UART0_PORT_F)
        { "uart0",      3 },    /* PF2-PF4 */
@@ -491,6 +498,7 @@ static const struct sunxi_pinctrl_function 
sun8i_h3_pinctrl_functions[] = {
        { "mmc0",       2 },    /* PF0-PF5 */
        { "mmc1",       2 },    /* PG0-PG5 */
        { "mmc2",       3 },    /* PC5-PC16 */
+       { "nand0",      2 },    /* PC0-PC16 */
        { "spi0",       3 },    /* PC0-PC3 */
 #if IS_ENABLED(CONFIG_UART0_PORT_F)
        { "uart0",      3 },    /* PF2-PF4 */
@@ -557,6 +565,7 @@ static const struct sunxi_pinctrl_function 
sun9i_a80_pinctrl_functions[] = {
        { "mmc0",       2 },    /* PF0-PF5 */
        { "mmc1",       2 },    /* PG0-PG5 */
        { "mmc2",       3 },    /* PC6-PC16 */
+       { "nand0",      2 },    /* PC0-PC18 */
        { "spi0",       3 },    /* PC0-PC2, PC19 */
 #if IS_ENABLED(CONFIG_UART0_PORT_F)
        { "uart0",      4 },    /* PF2-PF4 */
@@ -597,6 +606,7 @@ static const struct sunxi_pinctrl_function 
sun50i_a64_pinctrl_functions[] = {
        { "mmc0",       2 },    /* PF0-PF5 */
        { "mmc1",       2 },    /* PG0-PG5 */
        { "mmc2",       3 },    /* PC1-PC16 */
+       { "nand0",      2 },    /* PC0-PC16 */
        { "pwm",        2 },    /* PD22 */
        { "spi0",       4 },    /* PC0-PC3 */
 #if IS_ENABLED(CONFIG_UART0_PORT_F)
@@ -639,6 +649,7 @@ static const struct sunxi_pinctrl_function 
sun50i_h5_pinctrl_functions[] = {
        { "mmc0",       2 },    /* PF0-PF5 */
        { "mmc1",       2 },    /* PG0-PG5 */
        { "mmc2",       3 },    /* PC1-PC16 */
+       { "nand0",      2 },    /* PC0-PC16 */
        { "spi0",       3 },    /* PC0-PC3 */
 #if IS_ENABLED(CONFIG_UART0_PORT_F)
        { "uart0",      3 },    /* PF2-PF4 */
@@ -665,6 +676,7 @@ static const struct sunxi_pinctrl_function 
sun50i_h6_pinctrl_functions[] = {
        { "mmc0",       2 },    /* PF0-PF5 */
        { "mmc1",       2 },    /* PG0-PG5 */
        { "mmc2",       3 },    /* PC1-PC14 */
+       { "nand0",      2 },    /* PC0-PC16 */
        { "spi0",       4 },    /* PC0-PC7 */
 #if IS_ENABLED(CONFIG_UART0_PORT_F)
        { "uart0",      3 },    /* PF2-PF4 */
@@ -703,6 +715,7 @@ static const struct sunxi_pinctrl_function 
sun50i_h616_pinctrl_functions[] = {
        { "mmc0",       2 },    /* PF0-PF5 */
        { "mmc1",       2 },    /* PG0-PG5 */
        { "mmc2",       3 },    /* PC0-PC16 */
+       { "nand0",      2 },    /* PC0-PC16 */
        { "spi0",       4 },    /* PC0-PC7, PC15-PC16 */
 #if IS_ENABLED(CONFIG_UART0_PORT_F)
        { "uart0",      3 },    /* PF2-PF4 */
-- 
2.37.4

Reply via email to