From f1539b48cf949faa56ff384d8579aecd2ec5079c Mon Sep 17 00:00:00 2001 From: Gerard Marull-Paretas Date: Tue, 21 Feb 2023 10:16:54 +0100 Subject: [PATCH] drivers: pinmux: rv32m1: drop driver Drop RV32M1 pinmux driver in favor of pinctrl. Signed-off-by: Gerard Marull-Paretas --- drivers/pinctrl/pinctrl_rv32m1.c | 6 --- drivers/pinmux/CMakeLists.txt | 1 - drivers/pinmux/Kconfig | 2 - drivers/pinmux/Kconfig.rv32m1 | 10 ---- drivers/pinmux/pinmux_rv32m1.c | 86 -------------------------------- 5 files changed, 105 deletions(-) delete mode 100644 drivers/pinmux/Kconfig.rv32m1 delete mode 100644 drivers/pinmux/pinmux_rv32m1.c diff --git a/drivers/pinctrl/pinctrl_rv32m1.c b/drivers/pinctrl/pinctrl_rv32m1.c index 5108a8fa418..5660b11725b 100644 --- a/drivers/pinctrl/pinctrl_rv32m1.c +++ b/drivers/pinctrl/pinctrl_rv32m1.c @@ -42,11 +42,6 @@ int pinctrl_configure_pins(const pinctrl_soc_pin_t *pins, uint8_t pin_cnt, return 0; } -/* RV32M1 pinmux driver binds to the same DTS nodes, - * and handles clock init. Only bind to these nodes if pinmux driver - * is disabled. - */ -#ifndef CONFIG_PINMUX static int pinctrl_rv32m1_init(const struct device *dev) { const struct pinctrl_rv32m1_config *config = dev->config; @@ -70,4 +65,3 @@ static int pinctrl_rv32m1_init(const struct device *dev) NULL); DT_INST_FOREACH_STATUS_OKAY(PINCTRL_RV32M1_INIT) -#endif diff --git a/drivers/pinmux/CMakeLists.txt b/drivers/pinmux/CMakeLists.txt index ea933182b38..7debea0fe16 100644 --- a/drivers/pinmux/CMakeLists.txt +++ b/drivers/pinmux/CMakeLists.txt @@ -4,6 +4,5 @@ zephyr_sources_ifdef(CONFIG_PINMUX_LPC11U6X pinmux_lpc11u6x.c) zephyr_sources_ifdef(CONFIG_PINMUX_MCUX pinmux_mcux.c) zephyr_sources_ifdef(CONFIG_PINMUX_MCUX_LPC pinmux_mcux_lpc.c) -zephyr_sources_ifdef(CONFIG_PINMUX_RV32M1 pinmux_rv32m1.c) zephyr_sources_ifdef(CONFIG_PINMUX_STM32 pinmux_stm32.c) zephyr_sources_ifdef(CONFIG_PINMUX_XEC pinmux_mchp_xec.c) diff --git a/drivers/pinmux/Kconfig b/drivers/pinmux/Kconfig index 42e15f74b8f..414f37f98e6 100644 --- a/drivers/pinmux/Kconfig +++ b/drivers/pinmux/Kconfig @@ -30,8 +30,6 @@ source "drivers/pinmux/Kconfig.mcux" source "drivers/pinmux/Kconfig.mcux_lpc" -source "drivers/pinmux/Kconfig.rv32m1" - source "drivers/pinmux/Kconfig.stm32" source "drivers/pinmux/Kconfig.xec" diff --git a/drivers/pinmux/Kconfig.rv32m1 b/drivers/pinmux/Kconfig.rv32m1 deleted file mode 100644 index b7cfb5f2d0b..00000000000 --- a/drivers/pinmux/Kconfig.rv32m1 +++ /dev/null @@ -1,10 +0,0 @@ -# RV31M1 SDK pinmux - -# Copyright (c) 2018 Foundries.io -# SPDX-License-Identifier: Apache-2.0 - -config PINMUX_RV32M1 - bool "RV32M1 pinmux driver" - depends on SOC_OPENISA_RV32M1_RISCV32 - help - Enable the RV32M1 pinmux driver. diff --git a/drivers/pinmux/pinmux_rv32m1.c b/drivers/pinmux/pinmux_rv32m1.c deleted file mode 100644 index 470544c966b..00000000000 --- a/drivers/pinmux/pinmux_rv32m1.c +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Copyright (c) 2016 Freescale Semiconductor, Inc. - * Copyright (c) 2018 Foundries.io - * - * SPDX-License-Identifier: Apache-2.0 - */ - -#define DT_DRV_COMPAT openisa_rv32m1_pinmux - -#include -#include -#include - -#include -#include - -struct pinmux_rv32m1_config { - clock_ip_name_t clock_ip_name; - PORT_Type *base; -}; - -static int pinmux_rv32m1_set(const struct device *dev, uint32_t pin, - uint32_t func) -{ - const struct pinmux_rv32m1_config *config = dev->config; - PORT_Type *base = config->base; - - base->PCR[pin] = (base->PCR[pin] & ~PORT_PCR_MUX_MASK) | func; - - return 0; -} - -static int pinmux_rv32m1_get(const struct device *dev, uint32_t pin, - uint32_t *func) -{ - const struct pinmux_rv32m1_config *config = dev->config; - PORT_Type *base = config->base; - - *func = base->PCR[pin] & ~PORT_PCR_MUX_MASK; - - return 0; -} - -static int pinmux_rv32m1_pullup(const struct device *dev, uint32_t pin, - uint8_t func) -{ - return -ENOTSUP; -} - -static int pinmux_rv32m1_input(const struct device *dev, uint32_t pin, - uint8_t func) -{ - return -ENOTSUP; -} - -static int pinmux_rv32m1_init(const struct device *dev) -{ - const struct pinmux_rv32m1_config *config = dev->config; - - CLOCK_EnableClock(config->clock_ip_name); - - return 0; -} - -static const struct pinmux_driver_api pinmux_rv32m1_driver_api = { - .set = pinmux_rv32m1_set, - .get = pinmux_rv32m1_get, - .pullup = pinmux_rv32m1_pullup, - .input = pinmux_rv32m1_input, -}; - -#define PINMUX_RV32M1_INIT(n) \ - static const struct pinmux_rv32m1_config pinmux_rv32m1_##n##_config = {\ - .base = (PORT_Type *)DT_INST_REG_ADDR(n), \ - .clock_ip_name = INST_DT_CLOCK_IP_NAME(n), \ - }; \ - \ - DEVICE_DT_INST_DEFINE(n, \ - &pinmux_rv32m1_init, \ - NULL, \ - NULL, &pinmux_rv32m1_##n##_config, \ - PRE_KERNEL_1, \ - CONFIG_KERNEL_INIT_PRIORITY_DEFAULT, \ - &pinmux_rv32m1_driver_api); - -DT_INST_FOREACH_STATUS_OKAY(PINMUX_RV32M1_INIT)