Skip to content

Commit

Permalink
ARM: 7841/1: sa1100: remove complex GPIO interface
Browse files Browse the repository at this point in the history
The SA1100 was implementing its own variants of gpio_get_value()
and gpio_set_value() and only selectively falling back to
gpiolib for extended (EGPIO) handling. However the driver in
gpio/gpio-sa1100.c already handles the same functionality for
these lines, yet remain unused.

The only upside would be things like a timing-critical hotpath
on bit-banged GPIO, but that kind of things does not seem to
happen on these GPIOs, so it is not worth having the extra
complexity.

Tested with some buttons on the Compaq iPAQ H3630.

Cc: Kristoffer Ericson <kristoffer.ericson@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  • Loading branch information
Linus Walleij authored and Russell King committed Oct 29, 2013
1 parent 9a48aa4 commit 40ca061
Show file tree
Hide file tree
Showing 4 changed files with 3 additions and 57 deletions.
1 change: 0 additions & 1 deletion arch/arm/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -692,7 +692,6 @@ config ARCH_SA1100
select GENERIC_CLOCKEVENTS
select HAVE_IDE
select ISA
select NEED_MACH_GPIO_H
select NEED_MACH_MEMORY_H
select SPARSE_IRQ
help
Expand Down
55 changes: 0 additions & 55 deletions arch/arm/mach-sa1100/include/mach/gpio.h

This file was deleted.

2 changes: 2 additions & 0 deletions arch/arm/mach-sa1100/include/mach/h3xxx.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@
#ifndef _INCLUDE_H3XXX_H_
#define _INCLUDE_H3XXX_H_

#include "hardware.h" /* Gives GPIO_MAX */

/* Physical memory regions corresponding to chip selects */
#define H3600_EGPIO_PHYS (SA1100_CS5_PHYS + 0x01000000)
#define H3600_BANK_2_PHYS SA1100_CS2_PHYS
Expand Down
2 changes: 1 addition & 1 deletion drivers/gpio/gpio-sa1100.c
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
#include <linux/gpio.h>
#include <linux/init.h>
#include <linux/module.h>

#include <linux/io.h>
#include <mach/hardware.h>
#include <mach/irqs.h>

Expand Down

0 comments on commit 40ca061

Please sign in to comment.