summaryrefslogtreecommitdiffstats
path: root/drivers/pinctrl
diff options
context:
space:
mode:
authorJerome Brunet <jbrunet@baylibre.com>2016-09-13 11:12:22 -0400
committerLinus Walleij <linus.walleij@linaro.org>2016-09-15 08:14:51 -0400
commitcd1e3b01c7d30ce5e69cbd760e1edbd4d682c30d (patch)
treea7332da03ef5e1ade28d5e9e4a27670c31bab504 /drivers/pinctrl
parent49cf2f29acab4ab0f14ff0d574cd4d3a76bdce53 (diff)
pinctrl: amlogic: gxbb: add nand pins
Add EE domains pins for the NAND flash controller. Even tough we have no driver for the NAND flash controller yet, we need to have these pins in pinctrl as the actual pin are shared with the spifc controller. The bootloader on the S905-P200 setup pinmux for the NAND controller so we need the kernel to properly deactivate this if necessary. Acked-by: Kevin Hilman <khilman@baylibre.com> Signed-off-by: Jerome Brunet <jbrunet@baylibre.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/pinctrl')
-rw-r--r--drivers/pinctrl/meson/pinctrl-meson-gxbb.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/drivers/pinctrl/meson/pinctrl-meson-gxbb.c b/drivers/pinctrl/meson/pinctrl-meson-gxbb.c
index 573901887cee..b06cc12f2500 100644
--- a/drivers/pinctrl/meson/pinctrl-meson-gxbb.c
+++ b/drivers/pinctrl/meson/pinctrl-meson-gxbb.c
@@ -176,6 +176,15 @@ static const unsigned int sdio_cmd_pins[] = { PIN(GPIOX_4, EE_OFF) };
176static const unsigned int sdio_clk_pins[] = { PIN(GPIOX_5, EE_OFF) }; 176static const unsigned int sdio_clk_pins[] = { PIN(GPIOX_5, EE_OFF) };
177static const unsigned int sdio_irq_pins[] = { PIN(GPIOX_7, EE_OFF) }; 177static const unsigned int sdio_irq_pins[] = { PIN(GPIOX_7, EE_OFF) };
178 178
179static const unsigned int nand_ce0_pins[] = { PIN(BOOT_8, EE_OFF) };
180static const unsigned int nand_ce1_pins[] = { PIN(BOOT_9, EE_OFF) };
181static const unsigned int nand_rb0_pins[] = { PIN(BOOT_10, EE_OFF) };
182static const unsigned int nand_ale_pins[] = { PIN(BOOT_11, EE_OFF) };
183static const unsigned int nand_cle_pins[] = { PIN(BOOT_12, EE_OFF) };
184static const unsigned int nand_wen_clk_pins[] = { PIN(BOOT_13, EE_OFF) };
185static const unsigned int nand_ren_wr_pins[] = { PIN(BOOT_14, EE_OFF) };
186static const unsigned int nand_dqs_pins[] = { PIN(BOOT_15, EE_OFF) };
187
179static const unsigned int uart_tx_a_pins[] = { PIN(GPIOX_12, EE_OFF) }; 188static const unsigned int uart_tx_a_pins[] = { PIN(GPIOX_12, EE_OFF) };
180static const unsigned int uart_rx_a_pins[] = { PIN(GPIOX_13, EE_OFF) }; 189static const unsigned int uart_rx_a_pins[] = { PIN(GPIOX_13, EE_OFF) };
181static const unsigned int uart_cts_a_pins[] = { PIN(GPIOX_14, EE_OFF) }; 190static const unsigned int uart_cts_a_pins[] = { PIN(GPIOX_14, EE_OFF) };
@@ -439,6 +448,14 @@ static struct meson_pmx_group meson_gxbb_periphs_groups[] = {
439 GROUP(nor_q, 5, 3), 448 GROUP(nor_q, 5, 3),
440 GROUP(nor_c, 5, 2), 449 GROUP(nor_c, 5, 2),
441 GROUP(nor_cs, 5, 0), 450 GROUP(nor_cs, 5, 0),
451 GROUP(nand_ce0, 4, 26),
452 GROUP(nand_ce1, 4, 27),
453 GROUP(nand_rb0, 4, 25),
454 GROUP(nand_ale, 4, 24),
455 GROUP(nand_cle, 4, 23),
456 GROUP(nand_wen_clk, 4, 22),
457 GROUP(nand_ren_wr, 4, 21),
458 GROUP(nand_dqs, 4, 20),
442 459
443 /* Bank CARD */ 460 /* Bank CARD */
444 GROUP(sdcard_d1, 2, 14), 461 GROUP(sdcard_d1, 2, 14),
@@ -540,6 +557,11 @@ static const char * const sdio_groups[] = {
540 "sdio_cmd", "sdio_clk", "sdio_irq", 557 "sdio_cmd", "sdio_clk", "sdio_irq",
541}; 558};
542 559
560static const char * const nand_groups[] = {
561 "nand_ce0", "nand_ce1", "nand_rb0", "nand_ale", "nand_cle",
562 "nand_wen_clk", "nand_ren_wr", "nand_dqs",
563};
564
543static const char * const uart_a_groups[] = { 565static const char * const uart_a_groups[] = {
544 "uart_tx_a", "uart_rx_a", "uart_cts_a", "uart_rts_a", 566 "uart_tx_a", "uart_rx_a", "uart_cts_a", "uart_rts_a",
545}; 567};
@@ -635,6 +657,7 @@ static struct meson_pmx_func meson_gxbb_periphs_functions[] = {
635 FUNCTION(nor), 657 FUNCTION(nor),
636 FUNCTION(sdcard), 658 FUNCTION(sdcard),
637 FUNCTION(sdio), 659 FUNCTION(sdio),
660 FUNCTION(nand),
638 FUNCTION(uart_a), 661 FUNCTION(uart_a),
639 FUNCTION(uart_b), 662 FUNCTION(uart_b),
640 FUNCTION(uart_c), 663 FUNCTION(uart_c),