Commit f689332b authored by Alban Bedel's avatar Alban Bedel Committed by Ralf Baechle

MIPS: Ath79: Remove the unused GPIO function API

To prepare moving the GPIO driver to drivers/gpio remove the
platform specific pinmux API. As it is not used by any board,
and such functionality should better be implemented using the
pinmux subsystem just removing it seems to be the best option.
Signed-off-by: default avatarAlban Bedel <albeu@free.fr>
Acked-by: default avatarLinus Walleij <linus.walleij@linaro.org>
Cc: linux-gpio@vger.kernel.org
Cc: Alexandre Courbot <gnurou@gmail.com>
Cc: Gabor Juhos <juhosg@openwrt.org>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/10596/Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
parent 5fac4f7a
...@@ -25,9 +25,6 @@ unsigned long ath79_get_sys_clk_rate(const char *id); ...@@ -25,9 +25,6 @@ unsigned long ath79_get_sys_clk_rate(const char *id);
void ath79_ddr_ctrl_init(void); void ath79_ddr_ctrl_init(void);
void ath79_ddr_wb_flush(unsigned int reg); void ath79_ddr_wb_flush(unsigned int reg);
void ath79_gpio_function_enable(u32 mask);
void ath79_gpio_function_disable(u32 mask);
void ath79_gpio_function_setup(u32 set, u32 clear);
void ath79_gpio_init(void); void ath79_gpio_init(void);
#endif /* __ATH79_COMMON_H */ #endif /* __ATH79_COMMON_H */
...@@ -24,8 +24,6 @@ ...@@ -24,8 +24,6 @@
#include <linux/of_device.h> #include <linux/of_device.h>
#include <asm/mach-ath79/ar71xx_regs.h> #include <asm/mach-ath79/ar71xx_regs.h>
#include <asm/mach-ath79/ath79.h>
#include "common.h"
static void __iomem *ath79_gpio_base; static void __iomem *ath79_gpio_base;
static u32 ath79_gpio_count; static u32 ath79_gpio_count;
...@@ -139,47 +137,6 @@ static struct gpio_chip ath79_gpio_chip = { ...@@ -139,47 +137,6 @@ static struct gpio_chip ath79_gpio_chip = {
.base = 0, .base = 0,
}; };
static void __iomem *ath79_gpio_get_function_reg(void)
{
u32 reg = 0;
if (soc_is_ar71xx() ||
soc_is_ar724x() ||
soc_is_ar913x() ||
soc_is_ar933x())
reg = AR71XX_GPIO_REG_FUNC;
else if (soc_is_ar934x())
reg = AR934X_GPIO_REG_FUNC;
else
BUG();
return ath79_gpio_base + reg;
}
void ath79_gpio_function_setup(u32 set, u32 clear)
{
void __iomem *reg = ath79_gpio_get_function_reg();
unsigned long flags;
spin_lock_irqsave(&ath79_gpio_lock, flags);
__raw_writel((__raw_readl(reg) & ~clear) | set, reg);
/* flush write */
__raw_readl(reg);
spin_unlock_irqrestore(&ath79_gpio_lock, flags);
}
void ath79_gpio_function_enable(u32 mask)
{
ath79_gpio_function_setup(mask, 0);
}
void ath79_gpio_function_disable(u32 mask)
{
ath79_gpio_function_setup(0, mask);
}
static const struct of_device_id ath79_gpio_of_match[] = { static const struct of_device_id ath79_gpio_of_match[] = {
{ .compatible = "qca,ar7100-gpio" }, { .compatible = "qca,ar7100-gpio" },
{ .compatible = "qca,ar9340-gpio" }, { .compatible = "qca,ar9340-gpio" },
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment