pinctrl: sunxi: Add NAND pinmuxes
authorSamuel Holland <samuel@sholland.org>
Sun, 22 Jan 2023 22:06:32 +0000 (16:06 -0600)
committerAndre Przywara <andre.przywara@arm.com>
Fri, 28 Apr 2023 00:06:57 +0000 (01:06 +0100)
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.przywara@arm.com>
Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
Signed-off-by: Samuel Holland <samuel@sholland.org>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
drivers/pinctrl/sunxi/pinctrl-sunxi.c

index c4fbda7..e510218 100644 (file)
@@ -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 */