]> git.sur5r.net Git - u-boot/commitdiff
gpio: Drop sx151x driver
authorSimon Glass <sjg@chromium.org>
Fri, 4 Aug 2017 22:34:53 +0000 (16:34 -0600)
committerTom Rini <trini@konsulko.com>
Fri, 11 Aug 2017 19:42:00 +0000 (15:42 -0400)
This driver is not used in U-Boot. Drop it and its associated CONFIG
options.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
drivers/gpio/Makefile
drivers/gpio/sx151x.c [deleted file]
include/sx151x.h [deleted file]
scripts/config_whitelist.txt

index 8937e99b4734146cb3d637d72ef2f89507822dce..1396467ab61576412e3eecf17fa2cb8b4166922a 100644 (file)
@@ -45,7 +45,6 @@ obj-$(CONFIG_BCM2835_GPIO)    += bcm2835_gpio.o
 obj-$(CONFIG_XILINX_GPIO)      += xilinx_gpio.o
 obj-$(CONFIG_ADI_GPIO2)        += adi_gpio2.o
 obj-$(CONFIG_TCA642X)          += tca642x.o
-oby-$(CONFIG_SX151X)           += sx151x.o
 obj-$(CONFIG_SUNXI_GPIO)       += sunxi_gpio.o
 obj-$(CONFIG_LPC32XX_GPIO)     += lpc32xx_gpio.o
 obj-$(CONFIG_STM32_GPIO)       += stm32_gpio.o
diff --git a/drivers/gpio/sx151x.c b/drivers/gpio/sx151x.c
deleted file mode 100644 (file)
index 167cf40..0000000
+++ /dev/null
@@ -1,242 +0,0 @@
-/*
- * (C) Copyright 2013
- * Viktar Palstsiuk, Promwad, viktar.palstsiuk@promwad.com
- *
- * SPDX-License-Identifier:    GPL-2.0+
- */
-
-/*
- * Driver for Semtech SX151x SPI GPIO Expanders
- */
-
-#include <common.h>
-#include <spi.h>
-#include <sx151x.h>
-
-#ifndef CONFIG_SX151X_SPI_BUS
-#define CONFIG_SX151X_SPI_BUS 0
-#endif
-
-/*
- * The SX151x registers
- */
-
-#ifdef CONFIG_SX151X_GPIO_COUNT_8
-/* 8bit: SX1511 */
-#define SX151X_REG_DIR         0x07
-#define SX151X_REG_DATA                0x08
-#else
-/* 16bit: SX1512 */
-#define SX151X_REG_DIR         0x0F
-#define SX151X_REG_DATA                0x11
-#endif
-#define SX151X_REG_RESET       0x7D
-
-static int sx151x_spi_write(int chip, unsigned char reg, unsigned char val)
-{
-       struct spi_slave *slave;
-       unsigned char buf[2];
-       int ret;
-
-       slave = spi_setup_slave(CONFIG_SX151X_SPI_BUS, chip, 1000000,
-                               SPI_MODE_0);
-       if (!slave)
-               return 0;
-
-       spi_claim_bus(slave);
-
-       buf[0] = reg;
-       buf[1] = val;
-
-       ret = spi_xfer(slave, 16, buf, NULL, SPI_XFER_BEGIN | SPI_XFER_END);
-       if (ret < 0)
-               printf("spi%d.%d write fail: can't write %02x to %02x: %d\n",
-                       CONFIG_SX151X_SPI_BUS, chip, val, reg, ret);
-       else
-               printf("spi%d.%d write 0x%02x to register 0x%02x\n",
-                      CONFIG_SX151X_SPI_BUS, chip, val, reg);
-       spi_release_bus(slave);
-       spi_free_slave(slave);
-
-       return ret;
-}
-
-static int sx151x_spi_read(int chip, unsigned char reg)
-{
-       struct spi_slave *slave;
-       int ret;
-
-       slave = spi_setup_slave(CONFIG_SX151X_SPI_BUS, chip, 1000000,
-                               SPI_MODE_0);
-       if (!slave)
-               return 0;
-
-       spi_claim_bus(slave);
-
-       ret = spi_w8r8(slave, reg | 0x80);
-       if (ret < 0)
-               printf("spi%d.%d read fail: can't read %02x: %d\n",
-                       CONFIG_SX151X_SPI_BUS, chip, reg, ret);
-       else
-               printf("spi%d.%d read register 0x%02x: 0x%02x\n",
-                      CONFIG_SX151X_SPI_BUS, chip, reg, ret);
-
-       spi_release_bus(slave);
-       spi_free_slave(slave);
-
-       return ret;
-}
-
-static inline void sx151x_find_cfg(int gpio, unsigned char *reg, unsigned char *mask)
-{
-       *reg   -= gpio / 8;
-       *mask   = 1 << (gpio % 8);
-}
-
-static int sx151x_write_cfg(int chip, unsigned char gpio, unsigned char reg, int val)
-{
-       unsigned char  mask;
-       unsigned char  data;
-       int ret;
-
-       sx151x_find_cfg(gpio, &reg, &mask);
-       ret = sx151x_spi_read(chip, reg);
-       if (ret < 0)
-               return ret;
-       else
-               data = ret;
-       data &= ~mask;
-       data |= (val << (gpio % 8)) & mask;
-       return sx151x_spi_write(chip, reg, data);
-}
-
-int sx151x_get_value(int chip, int gpio)
-{
-       unsigned char  reg = SX151X_REG_DATA;
-       unsigned char  mask;
-       int ret;
-
-       sx151x_find_cfg(gpio, &reg, &mask);
-       ret = sx151x_spi_read(chip, reg);
-       if (ret >= 0)
-               ret = (ret & mask) != 0 ? 1 : 0;
-
-       return ret;
-}
-
-int sx151x_set_value(int chip, int gpio, int val)
-{
-       return sx151x_write_cfg(chip, gpio, SX151X_REG_DATA, (val ? 1 : 0));
-}
-
-int sx151x_direction_input(int chip, int gpio)
-{
-       return sx151x_write_cfg(chip, gpio, SX151X_REG_DIR, 1);
-}
-
-int sx151x_direction_output(int chip, int gpio)
-{
-       return sx151x_write_cfg(chip, gpio, SX151X_REG_DIR, 0);
-}
-
-int sx151x_reset(int chip)
-{
-       int err;
-
-       err = sx151x_spi_write(chip, SX151X_REG_RESET, 0x12);
-       if (err < 0)
-               return err;
-
-       err = sx151x_spi_write(chip, SX151X_REG_RESET, 0x34);
-       return err;
-}
-
-#ifdef CONFIG_CMD_SX151X
-
-int do_sx151x(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
-{
-       int ret = CMD_RET_USAGE, chip = 0, gpio = 0, val = 0;
-
-       if (argc < 3)
-               return CMD_RET_USAGE;
-
-       /* arg2 used as chip number */
-       chip = simple_strtoul(argv[2], NULL, 10);
-
-       if (strcmp(argv[1], "reset") == 0) {
-               ret = sx151x_reset(chip);
-               if (!ret) {
-                       printf("Device at spi%d.%d was reset\n",
-                              CONFIG_SX151X_SPI_BUS, chip);
-               }
-               return ret;
-       }
-
-       if (argc < 4)
-               return CMD_RET_USAGE;
-
-       /* arg3 used as gpio number */
-       gpio = simple_strtoul(argv[3], NULL, 10);
-
-       if (strcmp(argv[1], "get") == 0) {
-               ret = sx151x_get_value(chip, gpio);
-               if (ret < 0)
-                       printf("Failed to get value at spi%d.%d gpio %d\n",
-                              CONFIG_SX151X_SPI_BUS, chip, gpio);
-               else {
-                       printf("Value at spi%d.%d gpio %d is %d\n",
-                              CONFIG_SX151X_SPI_BUS, chip, gpio, ret);
-                       ret = 0;
-               }
-               return ret;
-       }
-
-       if (argc < 5)
-               return CMD_RET_USAGE;
-
-       /* arg4 used as value or direction */
-       val = simple_strtoul(argv[4], NULL, 10);
-
-       if (strcmp(argv[1], "set") == 0) {
-               ret = sx151x_set_value(chip, gpio, val);
-               if (ret < 0)
-                       printf("Failed to set value at spi%d.%d gpio %d\n",
-                              CONFIG_SX151X_SPI_BUS, chip, gpio);
-               else
-                       printf("New value at spi%d.%d gpio %d is %d\n",
-                              CONFIG_SX151X_SPI_BUS, chip, gpio, val);
-               return ret;
-       } else if (strcmp(argv[1], "dir") == 0) {
-               if (val == 0)
-                       ret = sx151x_direction_output(chip, gpio);
-               else
-                       ret = sx151x_direction_input(chip, gpio);
-
-               if (ret < 0)
-                       printf("Failed to set direction of spi%d.%d gpio %d\n",
-                              CONFIG_SX151X_SPI_BUS, chip, gpio);
-               else
-                       printf("New direction of spi%d.%d gpio %d is %d\n",
-                              CONFIG_SX151X_SPI_BUS, chip, gpio, val);
-               return ret;
-       }
-
-       printf("Please see usage\n");
-
-       return ret;
-}
-
-U_BOOT_CMD(
-       sx151x, 5,      1,      do_sx151x,
-       "sx151x gpio access",
-       "dir chip gpio 0|1\n"
-       "       - set gpio direction (0 for output, 1 for input)\n"
-       "sx151x get chip gpio\n"
-       "       - get gpio value\n"
-       "sx151x set chip gpio 0|1\n"
-       "       - set gpio value\n"
-       "sx151x reset chip\n"
-       "       - reset chip"
-);
-
-#endif /* CONFIG_CMD_SX151X */
diff --git a/include/sx151x.h b/include/sx151x.h
deleted file mode 100644 (file)
index be42b06..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-/*
- * (C) Copyright 2013
- * Viktar Palstsiuk, Promwad, viktar.palstsiuk@promwad.com
- *
- * SPDX-License-Identifier:    GPL-2.0+
- */
-
-#ifndef __SX151X_H_
-#define __SX151X_H_
-
-int sx151x_get_value(int chip, int gpio);
-int sx151x_set_value(int chip, int gpio, int val);
-int sx151x_direction_input(int chip, int gpio);
-int sx151x_direction_output(int chip, int gpio);
-int sx151x_reset(int chip);
-
-#endif /* __SX151X_H_ */
index e59f9ac7b03d5446973897b0e994995b8b6df38b..ebe2daeb27ff86a5f441c3d5aef12aa3841fe0c2 100644 (file)
@@ -293,7 +293,6 @@ CONFIG_CM922T_XA10
 CONFIG_CMDLINE_EDITING
 CONFIG_CMDLINE_PS_SUPPORT
 CONFIG_CMDLINE_TAG
-CONFIG_CMD_SX151X
 CONFIG_CMD_TCA642X
 CONFIG_CMD_TERMINAL
 CONFIG_CMD_TFTP
@@ -2335,8 +2334,6 @@ CONFIG_SUPPORT_EMMC_RPMB
 CONFIG_SUPPORT_RAW_INITRD
 CONFIG_SUPPORT_VFAT
 CONFIG_SUVD3
-CONFIG_SX151X_GPIO_COUNT_8
-CONFIG_SX151X_SPI_BUS
 CONFIG_SXNI855T
 CONFIG_SYSCOUNTER_TIMER
 CONFIG_SYSFLAGS_ADDR