From: jsg Date: Mon, 27 Aug 2018 10:17:35 +0000 (+0000) Subject: ompinmux has been replaced by pinctrl X-Git-Url: http://artulab.com/gitweb/?a=commitdiff_plain;h=e0ae57ef104c6da3d0b6d5743c86561a9e65aa08;p=openbsd ompinmux has been replaced by pinctrl --- diff --git a/share/man/man4/man4.armv7/Makefile b/share/man/man4/man4.armv7/Makefile index d96b23551fa..aba370d7968 100644 --- a/share/man/man4/man4.armv7/Makefile +++ b/share/man/man4/man4.armv7/Makefile @@ -1,9 +1,9 @@ -# $OpenBSD: Makefile,v 1.22 2018/06/06 02:53:44 jsg Exp $ +# $OpenBSD: Makefile,v 1.23 2018/08/27 10:17:35 jsg Exp $ MAN= agtimer.4 amdisplay.4 ampintc.4 amptimer.4 armliicc.4 \ cortex.4 cpsw.4 dmtimer.4 edma.4 gptimer.4 \ imxtemp.4 intc.4 intro.4 \ - omap.4 omdog.4 omgpio.4 ommmc.4 ompinmux.4 omwugen.4 \ + omap.4 omdog.4 omgpio.4 ommmc.4 omwugen.4 \ prcm.4 sitaracm.4 \ sunxi.4 sxidog.4 sxie.4 sxiintc.4 \ sxitimer.4 sxits.4 sysreg.4 diff --git a/share/man/man4/man4.armv7/ompinmux.4 b/share/man/man4/man4.armv7/ompinmux.4 deleted file mode 100644 index cdb987faf4a..00000000000 --- a/share/man/man4/man4.armv7/ompinmux.4 +++ /dev/null @@ -1,29 +0,0 @@ -.\" $OpenBSD: ompinmux.4,v 1.1 2016/10/03 02:21:51 jsg Exp $ -.\" -.\" Copyright (c) 2016 Jonathan Gray -.\" -.\" Permission to use, copy, modify, and distribute this software for any -.\" purpose with or without fee is hereby granted, provided that the above -.\" copyright notice and this permission notice appear in all copies. -.\" -.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF -.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. -.\" -.Dd $Mdocdate: October 3 2016 $ -.Dt OMPINMUX 4 armv7 -.Os -.Sh NAME -.Nm ompinmux -.Nd OMAP pin multiplexing -.Sh SYNOPSIS -.Cd "ompinmux* at fdt?" -.Sh DESCRIPTION -The -.Nm -driver uses pin control data from the device tree to select one of -multiple possible roles available for pins on the SoC. diff --git a/sys/arch/armv7/omap/files.omap b/sys/arch/armv7/omap/files.omap index 3a900b9e297..77d0a28ab79 100644 --- a/sys/arch/armv7/omap/files.omap +++ b/sys/arch/armv7/omap/files.omap @@ -1,4 +1,4 @@ -# $OpenBSD: files.omap,v 1.22 2018/02/14 23:51:49 jsg Exp $ +# $OpenBSD: files.omap,v 1.23 2018/08/27 10:17:35 jsg Exp $ define omap {} device omap: omap @@ -26,10 +26,6 @@ attach sitaracm at omap file arch/armv7/omap/am335x_cm_padconf.c sitaracm file arch/armv7/omap/sitara_cm.c sitaracm -device ompinmux -attach ompinmux at fdt -file arch/armv7/omap/ompinmux.c ompinmux - device omgpio: gpiobus attach omgpio at fdt file arch/armv7/omap/omgpio.c omgpio diff --git a/sys/arch/armv7/omap/ompinmux.c b/sys/arch/armv7/omap/ompinmux.c deleted file mode 100644 index 55db93c5f2f..00000000000 --- a/sys/arch/armv7/omap/ompinmux.c +++ /dev/null @@ -1,137 +0,0 @@ -/* $OpenBSD: ompinmux.c,v 1.2 2017/09/08 05:36:51 deraadt Exp $ */ -/* - * Copyright (c) 2016 Jonathan Gray - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -#include -#include -#include -#include - -#include -#include -#include - -#include -#include -#include - -struct ompinmux_softc { - struct device sc_dev; - bus_space_tag_t sc_iot; - bus_space_handle_t sc_ioh; - int sc_node; -}; - -int ompinmux_match(struct device *, void *, void *); -void ompinmux_attach(struct device *, struct device *, void *); -int ompinmux_pinctrl(uint32_t, void *); - -struct cfattach ompinmux_ca = { - sizeof (struct ompinmux_softc), ompinmux_match, ompinmux_attach -}; - -struct cfdriver ompinmux_cd = { - NULL, "ompinmux", DV_DULL -}; - -int -ompinmux_match(struct device *parent, void *match, void *aux) -{ - struct fdt_attach_args *faa = aux; - - return OF_is_compatible(faa->fa_node, "pinctrl-single"); -} - -void -ompinmux_attach(struct device *parent, struct device *self, void *aux) -{ - struct fdt_attach_args *faa = aux; - struct ompinmux_softc *sc = (struct ompinmux_softc *) self; - - sc->sc_iot = faa->fa_iot; - if (bus_space_map(sc->sc_iot, faa->fa_reg[0].addr, - faa->fa_reg[0].size, 0, &sc->sc_ioh)) - panic("%s: bus_space_map failed!", __func__); - - sc->sc_node = faa->fa_node; - pinctrl_register(faa->fa_node, ompinmux_pinctrl, sc); - - pinctrl_byname(faa->fa_node, "default"); - - printf("\n"); -} - -int -ompinmux_pinctrl(uint32_t phandle, void *cookie) -{ - struct ompinmux_softc *sc = cookie; - uint32_t *pins; - int npins; - int node; - int len; - int i, j; - int regwidth; - - if (sc == NULL) - return -1; - - node = OF_getnodebyphandle(phandle); - if (node == 0) - return -1; - - len = OF_getproplen(node, "pinctrl-single,pins"); - if (len <= 0) - return -1; - - pins = malloc(len, M_TEMP, M_WAITOK); - OF_getpropintarray(node, "pinctrl-single,pins", pins, len); - npins = len / (2 * sizeof(uint32_t)); - - regwidth = OF_getpropint(sc->sc_node, "pinctrl-single,register-width", - 0); - - if (regwidth == 16) { - uint16_t regmask = OF_getpropint(sc->sc_node, - "pinctrl-single,function-mask", 0xffff); - uint32_t conf_reg; - uint16_t conf_val; - - for (i = 0, j = 0; i < npins; i++, j += 2) { - conf_reg = pins[2 * i + 0]; - - conf_val = (bus_space_read_2(sc->sc_iot, sc->sc_ioh, - conf_reg) & ~regmask) | pins[2 * i + 1]; - bus_space_write_2(sc->sc_iot, sc->sc_ioh, conf_reg, - conf_val); - } - } else if (regwidth == 32) { - uint32_t regmask = OF_getpropint(sc->sc_node, - "pinctrl-single,function-mask", 0xffffffff); - uint32_t conf_reg, conf_val; - - for (i = 0, j = 0; i < npins; i++, j += 2) { - conf_reg = pins[2 * i + 0]; - - conf_val = (bus_space_read_4(sc->sc_iot, sc->sc_ioh, - conf_reg) & ~regmask) | pins[2 * i + 1]; - bus_space_write_4(sc->sc_iot, sc->sc_ioh, conf_reg, - conf_val); - } - } - - free(pins, M_TEMP, len); - return 0; -}