From 583ddde7dae5d06fd45ca3c59439f7c67b38b0bc Mon Sep 17 00:00:00 2001 From: kettenis Date: Thu, 28 Dec 2017 18:05:09 +0000 Subject: [PATCH] Separate out Allwinner H3 and H5 pin definitions. --- sys/dev/fdt/sxipio.c | 4 +- sys/dev/fdt/sxipio_pins.h | 596 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 598 insertions(+), 2 deletions(-) diff --git a/sys/dev/fdt/sxipio.c b/sys/dev/fdt/sxipio.c index 9eb257a6a32..fe231d6bfd7 100644 --- a/sys/dev/fdt/sxipio.c +++ b/sys/dev/fdt/sxipio.c @@ -1,4 +1,4 @@ -/* $OpenBSD: sxipio.c,v 1.8 2017/12/28 11:39:11 kettenis Exp $ */ +/* $OpenBSD: sxipio.c,v 1.9 2017/12/28 18:05:09 kettenis Exp $ */ /* * Copyright (c) 2010 Miodrag Vallat. * Copyright (c) 2013 Artturi Alm @@ -171,7 +171,7 @@ struct sxipio_pins sxipio_pins[] = { }, { "allwinner,sun50i-h5-pinctrl", - sun8i_h3_pins, nitems(sun8i_h3_pins) + sun50i_h5_pins, nitems(sun50i_h5_pins) }, }; diff --git a/sys/dev/fdt/sxipio_pins.h b/sys/dev/fdt/sxipio_pins.h index b756ea62960..4bff4f0abca 100644 --- a/sys/dev/fdt/sxipio_pins.h +++ b/sys/dev/fdt/sxipio_pins.h @@ -8178,3 +8178,599 @@ struct sxipio_pin sun50i_a64_r_pins[] = { { "irq", 6 }, } }, }; + +struct sxipio_pin sun50i_h5_pins[] = { + { SXIPIO_PIN(A, 0), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "uart2", 2 }, + { "jtag", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 1), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "uart2", 2 }, + { "jtag", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 2), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "uart2", 2 }, + { "jtag", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 3), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "uart2", 2 }, + { "jtag", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 4), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "uart0", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 5), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "uart0", 2 }, + { "pwm0", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 6), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "sim", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 7), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "sim", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 8), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "sim", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 9), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "sim", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 10), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "sim", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 11), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "i2c0", 2 }, + { "di", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 12), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "i2c0", 2 }, + { "di", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 13), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "spi1", 2 }, + { "uart3", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 14), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "spi1", 2 }, + { "uart3", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 15), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "spi1", 2 }, + { "uart3", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 16), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "spi1", 2 }, + { "uart3", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 17), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "spdif", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 18), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "i2s0", 2 }, + { "i2c1", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 19), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "i2s0", 2 }, + { "i2c1", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 20), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "i2s0", 2 }, + { "sim", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(A, 21), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "i2s0", 2 }, + { "sim", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(C, 0), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "nand0", 2 }, + { "spi0", 3 }, + } }, + { SXIPIO_PIN(C, 1), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "nand0", 2 }, + { "spi0", 3 }, + { "mmc2", 4 }, + } }, + { SXIPIO_PIN(C, 2), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "nand0", 2 }, + { "spi0", 3 }, + } }, + { SXIPIO_PIN(C, 3), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "nand0", 2 }, + { "spi0", 3 }, + } }, + { SXIPIO_PIN(C, 4), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "nand0", 2 }, + { "spi0", 4 }, + } }, + { SXIPIO_PIN(C, 5), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "nand0", 2 }, + { "mmc2", 3 }, + } }, + { SXIPIO_PIN(C, 6), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "nand0", 2 }, + { "mmc2", 3 }, + } }, + { SXIPIO_PIN(C, 7), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "nand0", 2 }, + } }, + { SXIPIO_PIN(C, 8), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "nand0", 2 }, + { "mmc2", 3 }, + } }, + { SXIPIO_PIN(C, 9), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "nand0", 2 }, + { "mmc2", 3 }, + } }, + { SXIPIO_PIN(C, 10), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "nand0", 2 }, + { "mmc2", 3 }, + } }, + { SXIPIO_PIN(C, 11), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "nand0", 2 }, + { "mmc2", 3 }, + } }, + { SXIPIO_PIN(C, 12), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "nand0", 2 }, + { "mmc2", 3 }, + } }, + { SXIPIO_PIN(C, 13), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "nand0", 2 }, + { "mmc2", 3 }, + } }, + { SXIPIO_PIN(C, 14), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "nand0", 2 }, + { "mmc2", 3 }, + } }, + { SXIPIO_PIN(C, 15), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "nand0", 2 }, + { "mmc2", 3 }, + } }, + { SXIPIO_PIN(C, 16), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "nand0", 2 }, + { "mmc2", 3 }, + } }, + { SXIPIO_PIN(D, 0), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "emac", 2 }, + { "di", 3 }, + { "ts2", 4 }, + } }, + { SXIPIO_PIN(D, 1), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "emac", 2 }, + { "di", 3 }, + { "ts2", 4 }, + } }, + { SXIPIO_PIN(D, 2), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "emac", 2 }, + { "ts2", 4 }, + } }, + { SXIPIO_PIN(D, 3), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "emac", 2 }, + { "ts2", 4 }, + } }, + { SXIPIO_PIN(D, 4), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "emac", 2 }, + { "ts2", 4 }, + } }, + { SXIPIO_PIN(D, 5), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "emac", 2 }, + { "ts2", 4 }, + } }, + { SXIPIO_PIN(D, 6), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "emac", 2 }, + { "ts2", 4 }, + } }, + { SXIPIO_PIN(D, 7), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "emac", 2 }, + { "ts2", 4 }, + { "ts3", 5 }, + } }, + { SXIPIO_PIN(D, 8), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "emac", 2 }, + { "ts2", 4 }, + { "ts3", 5 }, + } }, + { SXIPIO_PIN(D, 9), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "emac", 2 }, + { "ts2", 4 }, + { "ts3", 5 }, + } }, + { SXIPIO_PIN(D, 10), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "emac", 2 }, + { "ts2", 4 }, + { "ts3", 5 }, + } }, + { SXIPIO_PIN(D, 11), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "emac", 2 }, + { "ts2", 4 }, + { "ts3", 5 }, + } }, + { SXIPIO_PIN(D, 12), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "emac", 2 }, + { "sim", 4 }, + } }, + { SXIPIO_PIN(D, 13), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "emac", 2 }, + { "sim", 4 }, + } }, + { SXIPIO_PIN(D, 14), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "emac", 2 }, + { "sim", 4 }, + } }, + { SXIPIO_PIN(D, 15), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "emac", 2 }, + { "sim", 4 }, + } }, + { SXIPIO_PIN(D, 16), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "emac", 2 }, + { "sim", 4 }, + } }, + { SXIPIO_PIN(D, 17), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "emac", 2 }, + } }, + { SXIPIO_PIN(E, 0), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "csi", 2 }, + { "ts0", 3 }, + } }, + { SXIPIO_PIN(E, 1), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "csi", 2 }, + { "ts0", 3 }, + } }, + { SXIPIO_PIN(E, 2), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "csi", 2 }, + { "ts0", 3 }, + } }, + { SXIPIO_PIN(E, 3), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "csi", 2 }, + { "ts0", 3 }, + } }, + { SXIPIO_PIN(E, 4), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "csi", 2 }, + { "ts0", 3 }, + } }, + { SXIPIO_PIN(E, 5), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "csi", 2 }, + { "ts0", 3 }, + } }, + { SXIPIO_PIN(E, 6), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "csi", 2 }, + { "ts0", 3 }, + } }, + { SXIPIO_PIN(E, 7), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "csi", 2 }, + { "ts0", 3 }, + { "ts1", 4 }, + } }, + { SXIPIO_PIN(E, 8), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "csi", 2 }, + { "ts0", 3 }, + { "ts1", 4 }, + } }, + { SXIPIO_PIN(E, 9), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "csi", 2 }, + { "ts0", 3 }, + { "ts1", 4 }, + } }, + { SXIPIO_PIN(E, 10), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "csi", 2 }, + { "ts0", 3 }, + { "ts1", 4 }, + } }, + { SXIPIO_PIN(E, 11), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "csi", 2 }, + { "ts", 3 }, + { "ts1", 4 }, + } }, + { SXIPIO_PIN(E, 12), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "csi", 2 }, + { "i2c2", 3 }, + } }, + { SXIPIO_PIN(E, 13), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "csi", 2 }, + { "i2c2", 3 }, + } }, + { SXIPIO_PIN(E, 14), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "sim", 3 }, + } }, + { SXIPIO_PIN(E, 15), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "sim", 3 }, + } }, + { SXIPIO_PIN(F, 0), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "mmc0", 2 }, + { "jtag", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(F, 1), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "mmc0", 2 }, + { "jtag", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(F, 2), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "mmc0", 2 }, + { "uart0", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(F, 3), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "mmc0", 2 }, + { "jtag", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(F, 4), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "mmc0", 2 }, + { "uart0", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(F, 5), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "mmc0", 2 }, + { "jtag", 3 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(F, 6), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(G, 0), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "mmc1", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(G, 1), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "mmc1", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(G, 2), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "mmc1", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(G, 3), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "mmc1", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(G, 4), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "mmc1", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(G, 5), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "mmc1", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(G, 6), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "uart1", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(G, 7), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "uart1", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(G, 8), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "uart1", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(G, 9), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "uart1", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(G, 10), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "i2s1", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(G, 11), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "i2s1", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(G, 12), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "i2s1", 2 }, + { "irq", 6 }, + } }, + { SXIPIO_PIN(G, 13), { + { "gpio_in", 0 }, + { "gpio_out", 1 }, + { "i2s1", 2 }, + { "irq", 6 }, + } }, +}; -- 2.20.1