Logo Search packages:      
Sourcecode: linux version File versions

gpio.c File Reference

Detailed Description

This file contains the GPIO implementation details.

Definition in file gpio.c.

#include <linux/init.h>
#include <linux/module.h>
#include <linux/sched.h>
#include <linux/interrupt.h>
#include <linux/sysdev.h>
#include <linux/ptrace.h>
#include <mach/hardware.h>
#include <asm/irq.h>
#include <mach/irqs.h>
#include <asm/mach/irq.h>
#include <linux/io.h>
#include <mach/gpio.h>
#include <asm/mach-types.h>

Go to the source code of this file.


struct  gpio_port


#define mxc_gpio_resume   NULL
#define mxc_gpio_suspend   NULL
#define PORT_SIG_TO_GPIO(p, s)   (p * 32 + s)


enum  gpio_reg {
  GPIO_DR = 0x00, GPIO_GDIR = 0x04, GPIO_PSR = 0x08, GPIO_ICR1 = 0x0C,
  GPIO_ICR2 = 0x10, GPIO_IMR = 0x14, GPIO_ISR = 0x18


static void _clear_gpio_irqstatus (struct gpio_port *port, u32 index)
static int __init _mxc_gpio_init (void)
static int _request_gpio (struct gpio_port *port, u32 index)
static void _set_gpio_dataout (struct gpio_port *port, u32 index, u32 data)
static void _set_gpio_direction (struct gpio_port *port, u32 index, int is_input)
static void _set_gpio_edge_ctrl (struct gpio_port *port, u32 index, gpio_edge_t edge)
static void _set_gpio_irqenable (struct gpio_port *port, u32 index, bool enable)
static int check_gpio (u32 gpio)
 EXPORT_SYMBOL (gpio_free_irq)
 EXPORT_SYMBOL (gpio_request_irq)
 EXPORT_SYMBOL (gpio_clear_int)
 EXPORT_SYMBOL (gpio_get_data)
 EXPORT_SYMBOL (gpio_set_data)
 EXPORT_SYMBOL (gpio_config)
 EXPORT_SYMBOL (mxc_get_gpio_datain)
 EXPORT_SYMBOL (mxc_set_gpio_dataout)
 EXPORT_SYMBOL (mxc_set_gpio_direction)
 EXPORT_SYMBOL (mxc_free_gpio)
 EXPORT_SYMBOL (mxc_request_gpio)
static struct gpio_port * get_gpio_port (u32 gpio)
static void gpio_ack_irq (u32 irq)
void gpio_clear_int (u32 port, u32 sig_no)
void gpio_config (u32 port, u32 sig_no, bool out, gpio_edge_t icr)
void gpio_free_irq (u32 port, u32 sig_no, enum gpio_prio prio)
u32 gpio_get_data (u32 port, u32 sig_no)
static void gpio_mask_irq (u32 irq)
int gpio_request_irq (u32 port, u32 sig_no, enum gpio_prio prio, gpio_irq_handler handler, u32 irq_flags, const char *devname, void *dev_id)
void gpio_set_data (u32 port, u32 sig_no, u32 data)
static int gpio_set_irq_type (u32 irq, u32 type)
static int gpio_set_wake_irq (u32 irq, u32 enable)
static void gpio_unmask_irq (u32 irq)
void mxc_free_gpio (iomux_pin_name_t pin)
int mxc_get_gpio_datain (iomux_pin_name_t pin)
int __init mxc_gpio_init (void)
static void mxc_gpio_irq_handler (u32 irq, struct irq_desc *desc)
int mxc_request_gpio (iomux_pin_name_t pin)
void mxc_set_gpio_dataout (iomux_pin_name_t pin, u32 data)
void mxc_set_gpio_direction (iomux_pin_name_t pin, int is_input)


static struct irq_chip gpio_irq_chip
static struct gpio_port gpio_port [GPIO_PORT_NUM]
static struct sys_device mxc_gpio_device
struct mxc_gpio_port mxc_gpio_ports []
static struct sysdev_class mxc_gpio_sysclass

Generated by  Doxygen 1.6.0   Back to index