[PATCH] gpio: Remove mvgpio driver
Stefan Roese
sr at denx.de
Tue Aug 9 13:35:05 CEST 2022
On 04.08.22 01:43, Chris Packham wrote:
> The last user of this driver was removed in commit dee08b1999e2 ("arm:
> Remove gplugd board"). Remove the unused driver.
>
> Signed-off-by: Chris Packham <judge.packham at gmail.com>
Applied to u-boot-marvell/master
Thanks,
Stefan
> ---
>
> drivers/gpio/Makefile | 1 -
> drivers/gpio/mvgpio.c | 97 -------------------------------------------
> drivers/gpio/mvgpio.h | 53 -----------------------
> 3 files changed, 151 deletions(-)
> delete mode 100644 drivers/gpio/mvgpio.c
> delete mode 100644 drivers/gpio/mvgpio.h
>
> diff --git a/drivers/gpio/Makefile b/drivers/gpio/Makefile
> index 219f37e0e434..39762fa06ce9 100644
> --- a/drivers/gpio/Makefile
> +++ b/drivers/gpio/Makefile
> @@ -24,7 +24,6 @@ obj-$(CONFIG_INTEL_BROADWELL_GPIO) += intel_broadwell_gpio.o
> obj-$(CONFIG_IPROC_GPIO) += iproc_gpio.o
> obj-$(CONFIG_KIRKWOOD_GPIO) += kw_gpio.o
> obj-$(CONFIG_KONA_GPIO) += kona_gpio.o
> -obj-$(CONFIG_MARVELL_GPIO) += mvgpio.o
> obj-$(CONFIG_MCP230XX_GPIO) += mcp230xx_gpio.o
> obj-$(CONFIG_MXC_GPIO) += mxc_gpio.o
> obj-$(CONFIG_MXS_GPIO) += mxs_gpio.o
> diff --git a/drivers/gpio/mvgpio.c b/drivers/gpio/mvgpio.c
> deleted file mode 100644
> index 12e7197daf7b..000000000000
> --- a/drivers/gpio/mvgpio.c
> +++ /dev/null
> @@ -1,97 +0,0 @@
> -// SPDX-License-Identifier: GPL-2.0+
> -/*
> - * (C) Copyright 2011
> - * eInfochips Ltd. <www.einfochips.com>
> - * Written-by: Ajay Bhargav <contact at 8051projects.net>
> - *
> - * (C) Copyright 2010
> - * Marvell Semiconductor <www.marvell.com>
> - */
> -
> -#include <common.h>
> -#include <malloc.h>
> -#include <asm/io.h>
> -#include <linux/errno.h>
> -#include "mvgpio.h"
> -#include <asm/gpio.h>
> -
> -#ifndef MV_MAX_GPIO
> -#define MV_MAX_GPIO 128
> -#endif
> -
> -int gpio_request(unsigned gpio, const char *label)
> -{
> - if (gpio >= MV_MAX_GPIO) {
> - printf("%s: Invalid GPIO requested %d\n", __func__, gpio);
> - return -1;
> - }
> - return 0;
> -}
> -
> -int gpio_free(unsigned gpio)
> -{
> - return 0;
> -}
> -
> -int gpio_direction_input(unsigned gpio)
> -{
> - struct gpio_reg *gpio_reg_bank;
> -
> - if (gpio >= MV_MAX_GPIO) {
> - printf("%s: Invalid GPIO %d\n", __func__, gpio);
> - return -1;
> - }
> -
> - gpio_reg_bank = get_gpio_base(GPIO_TO_REG(gpio));
> - writel(GPIO_TO_BIT(gpio), &gpio_reg_bank->gcdr);
> - return 0;
> -}
> -
> -int gpio_direction_output(unsigned gpio, int value)
> -{
> - struct gpio_reg *gpio_reg_bank;
> -
> - if (gpio >= MV_MAX_GPIO) {
> - printf("%s: Invalid GPIO %d\n", __func__, gpio);
> - return -1;
> - }
> -
> - gpio_reg_bank = get_gpio_base(GPIO_TO_REG(gpio));
> - writel(GPIO_TO_BIT(gpio), &gpio_reg_bank->gsdr);
> - gpio_set_value(gpio, value);
> - return 0;
> -}
> -
> -int gpio_get_value(unsigned gpio)
> -{
> - struct gpio_reg *gpio_reg_bank;
> - u32 gpio_val;
> -
> - if (gpio >= MV_MAX_GPIO) {
> - printf("%s: Invalid GPIO %d\n", __func__, gpio);
> - return -1;
> - }
> -
> - gpio_reg_bank = get_gpio_base(GPIO_TO_REG(gpio));
> - gpio_val = readl(&gpio_reg_bank->gplr);
> -
> - return GPIO_VAL(gpio, gpio_val);
> -}
> -
> -int gpio_set_value(unsigned gpio, int value)
> -{
> - struct gpio_reg *gpio_reg_bank;
> -
> - if (gpio >= MV_MAX_GPIO) {
> - printf("%s: Invalid GPIO %d\n", __func__, gpio);
> - return -1;
> - }
> -
> - gpio_reg_bank = get_gpio_base(GPIO_TO_REG(gpio));
> - if (value)
> - writel(GPIO_TO_BIT(gpio), &gpio_reg_bank->gpsr);
> - else
> - writel(GPIO_TO_BIT(gpio), &gpio_reg_bank->gpcr);
> -
> - return 0;
> -}
> diff --git a/drivers/gpio/mvgpio.h b/drivers/gpio/mvgpio.h
> deleted file mode 100644
> index d68c48e63737..000000000000
> --- a/drivers/gpio/mvgpio.h
> +++ /dev/null
> @@ -1,53 +0,0 @@
> -/* SPDX-License-Identifier: GPL-2.0+ */
> -/*
> - * (C) Copyright 2011
> - * eInfochips Ltd. <www.einfochips.com>
> - * Written-by: Ajay Bhargav <contact at 8051projects.net>
> - *
> - * (C) Copyright 2010
> - * Marvell Semiconductor <www.marvell.com>
> - */
> -
> -#ifndef __MVGPIO_H__
> -#define __MVGPIO_H__
> -
> -#include <common.h>
> -
> -/*
> - * GPIO Register map for Marvell SOCs
> - */
> -struct gpio_reg {
> - u32 gplr; /* Pin Level Register - 0x0000 */
> - u32 pad0[2];
> - u32 gpdr; /* Pin Direction Register - 0x000C */
> - u32 pad1[2];
> - u32 gpsr; /* Pin Output Set Register - 0x0018 */
> - u32 pad2[2];
> - u32 gpcr; /* Pin Output Clear Register - 0x0024 */
> - u32 pad3[2];
> - u32 grer; /* Rising-Edge Detect Enable Register - 0x0030 */
> - u32 pad4[2];
> - u32 gfer; /* Falling-Edge Detect Enable Register - 0x003C */
> - u32 pad5[2];
> - u32 gedr; /* Edge Detect Status Register - 0x0048 */
> - u32 pad6[2];
> - u32 gsdr; /* Bitwise Set of GPIO Direction Register - 0x0054 */
> - u32 pad7[2];
> - u32 gcdr; /* Bitwise Clear of GPIO Direction Register - 0x0060 */
> - u32 pad8[2];
> - u32 gsrer; /* Bitwise Set of Rising-Edge Detect Enable
> - Register - 0x006C */
> - u32 pad9[2];
> - u32 gcrer; /* Bitwise Clear of Rising-Edge Detect Enable
> - Register - 0x0078 */
> - u32 pad10[2];
> - u32 gsfer; /* Bitwise Set of Falling-Edge Detect Enable
> - Register - 0x0084 */
> - u32 pad11[2];
> - u32 gcfer; /* Bitwise Clear of Falling-Edge Detect Enable
> - Register - 0x0090 */
> - u32 pad12[2];
> - u32 apmask; /* Bitwise Mask of Edge Detect Register - 0x009C */
> -};
> -
> -#endif /* __MVGPIO_H__ */
Viele Grüße,
Stefan Roese
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr at denx.de
More information about the U-Boot
mailing list