Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions
gpio-ab8500.c File Reference
#include <linux/kernel.h>
#include <linux/types.h>
#include <linux/slab.h>
#include <linux/init.h>
#include <linux/module.h>
#include <linux/err.h>
#include <linux/platform_device.h>
#include <linux/gpio.h>
#include <linux/irq.h>
#include <linux/interrupt.h>
#include <linux/mfd/ab8500.h>
#include <linux/mfd/abx500.h>
#include <linux/mfd/ab8500/gpio.h>

Go to the source code of this file.

Data Structures

struct  ab8500_gpio
 

Macros

#define AB8500_GPIO_SEL1_REG   0x00
 
#define AB8500_GPIO_SEL2_REG   0x01
 
#define AB8500_GPIO_SEL3_REG   0x02
 
#define AB8500_GPIO_SEL4_REG   0x03
 
#define AB8500_GPIO_SEL5_REG   0x04
 
#define AB8500_GPIO_SEL6_REG   0x05
 
#define AB8500_GPIO_DIR1_REG   0x10
 
#define AB8500_GPIO_DIR2_REG   0x11
 
#define AB8500_GPIO_DIR3_REG   0x12
 
#define AB8500_GPIO_DIR4_REG   0x13
 
#define AB8500_GPIO_DIR5_REG   0x14
 
#define AB8500_GPIO_DIR6_REG   0x15
 
#define AB8500_GPIO_OUT1_REG   0x20
 
#define AB8500_GPIO_OUT2_REG   0x21
 
#define AB8500_GPIO_OUT3_REG   0x22
 
#define AB8500_GPIO_OUT4_REG   0x23
 
#define AB8500_GPIO_OUT5_REG   0x24
 
#define AB8500_GPIO_OUT6_REG   0x25
 
#define AB8500_GPIO_PUD1_REG   0x30
 
#define AB8500_GPIO_PUD2_REG   0x31
 
#define AB8500_GPIO_PUD3_REG   0x32
 
#define AB8500_GPIO_PUD4_REG   0x33
 
#define AB8500_GPIO_PUD5_REG   0x34
 
#define AB8500_GPIO_PUD6_REG   0x35
 
#define AB8500_GPIO_IN1_REG   0x40
 
#define AB8500_GPIO_IN2_REG   0x41
 
#define AB8500_GPIO_IN3_REG   0x42
 
#define AB8500_GPIO_IN4_REG   0x43
 
#define AB8500_GPIO_IN5_REG   0x44
 
#define AB8500_GPIO_IN6_REG   0x45
 
#define AB8500_GPIO_ALTFUN_REG   0x45
 
#define ALTFUN_REG_INDEX   6
 
#define AB8500_NUM_GPIO   42
 
#define AB8500_NUM_VIR_GPIO_IRQ   16
 

Enumerations

enum  ab8500_gpio_action {
  NONE, STARTUP, SHUTDOWN, MASK,
  UNMASK
}
 

Functions

unsigned int ab8500_gpio_irq_startup (unsigned int irq)
 
void ab8500_gpio_irq_shutdown (unsigned int irq)
 
 arch_initcall (ab8500_gpio_init)
 
 module_exit (ab8500_gpio_exit)
 
 MODULE_AUTHOR ("BIBEK BASU <[email protected]>")
 
 MODULE_DESCRIPTION ("Driver allows to use AB8500 unused pins to be used as GPIO")
 
 MODULE_ALIAS ("platform:ab8500-gpio")
 
 MODULE_LICENSE ("GPL v2")
 

Macro Definition Documentation

#define AB8500_GPIO_ALTFUN_REG   0x45

Definition at line 63 of file gpio-ab8500.c.

#define AB8500_GPIO_DIR1_REG   0x10

Definition at line 36 of file gpio-ab8500.c.

#define AB8500_GPIO_DIR2_REG   0x11

Definition at line 37 of file gpio-ab8500.c.

#define AB8500_GPIO_DIR3_REG   0x12

Definition at line 38 of file gpio-ab8500.c.

#define AB8500_GPIO_DIR4_REG   0x13

Definition at line 39 of file gpio-ab8500.c.

#define AB8500_GPIO_DIR5_REG   0x14

Definition at line 40 of file gpio-ab8500.c.

#define AB8500_GPIO_DIR6_REG   0x15

Definition at line 41 of file gpio-ab8500.c.

#define AB8500_GPIO_IN1_REG   0x40

Definition at line 57 of file gpio-ab8500.c.

#define AB8500_GPIO_IN2_REG   0x41

Definition at line 58 of file gpio-ab8500.c.

#define AB8500_GPIO_IN3_REG   0x42

Definition at line 59 of file gpio-ab8500.c.

#define AB8500_GPIO_IN4_REG   0x43

Definition at line 60 of file gpio-ab8500.c.

#define AB8500_GPIO_IN5_REG   0x44

Definition at line 61 of file gpio-ab8500.c.

#define AB8500_GPIO_IN6_REG   0x45

Definition at line 62 of file gpio-ab8500.c.

#define AB8500_GPIO_OUT1_REG   0x20

Definition at line 43 of file gpio-ab8500.c.

#define AB8500_GPIO_OUT2_REG   0x21

Definition at line 44 of file gpio-ab8500.c.

#define AB8500_GPIO_OUT3_REG   0x22

Definition at line 45 of file gpio-ab8500.c.

#define AB8500_GPIO_OUT4_REG   0x23

Definition at line 46 of file gpio-ab8500.c.

#define AB8500_GPIO_OUT5_REG   0x24

Definition at line 47 of file gpio-ab8500.c.

#define AB8500_GPIO_OUT6_REG   0x25

Definition at line 48 of file gpio-ab8500.c.

#define AB8500_GPIO_PUD1_REG   0x30

Definition at line 50 of file gpio-ab8500.c.

#define AB8500_GPIO_PUD2_REG   0x31

Definition at line 51 of file gpio-ab8500.c.

#define AB8500_GPIO_PUD3_REG   0x32

Definition at line 52 of file gpio-ab8500.c.

#define AB8500_GPIO_PUD4_REG   0x33

Definition at line 53 of file gpio-ab8500.c.

#define AB8500_GPIO_PUD5_REG   0x34

Definition at line 54 of file gpio-ab8500.c.

#define AB8500_GPIO_PUD6_REG   0x35

Definition at line 55 of file gpio-ab8500.c.

#define AB8500_GPIO_SEL1_REG   0x00

Definition at line 29 of file gpio-ab8500.c.

#define AB8500_GPIO_SEL2_REG   0x01

Definition at line 30 of file gpio-ab8500.c.

#define AB8500_GPIO_SEL3_REG   0x02

Definition at line 31 of file gpio-ab8500.c.

#define AB8500_GPIO_SEL4_REG   0x03

Definition at line 32 of file gpio-ab8500.c.

#define AB8500_GPIO_SEL5_REG   0x04

Definition at line 33 of file gpio-ab8500.c.

#define AB8500_GPIO_SEL6_REG   0x05

Definition at line 34 of file gpio-ab8500.c.

#define AB8500_NUM_GPIO   42

Definition at line 65 of file gpio-ab8500.c.

#define AB8500_NUM_VIR_GPIO_IRQ   16

Definition at line 66 of file gpio-ab8500.c.

#define ALTFUN_REG_INDEX   6

Definition at line 64 of file gpio-ab8500.c.

Enumeration Type Documentation

Enumerator:
NONE 
STARTUP 
SHUTDOWN 
MASK 
UNMASK 

Definition at line 68 of file gpio-ab8500.c.

Function Documentation

void ab8500_gpio_irq_shutdown ( unsigned int  irq)

Definition at line 354 of file gpio-ab8500.c.

unsigned int ab8500_gpio_irq_startup ( unsigned int  irq)

Definition at line 347 of file gpio-ab8500.c.

arch_initcall ( ab8500_gpio_init  )
MODULE_ALIAS ( "platform:ab8500-gpio )
MODULE_AUTHOR ( "BIBEK BASU <[email protected]>"  )
MODULE_DESCRIPTION ( "Driver allows to use AB8500 unused pins to be used as GPIO )
module_exit ( ab8500_gpio_exit  )
MODULE_LICENSE ( "GPL v2 )