Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions
pinctrl-lantiq.h File Reference
#include <linux/clkdev.h>
#include <linux/pinctrl/pinctrl.h>
#include <linux/pinctrl/pinconf.h>
#include <linux/pinctrl/pinmux.h>
#include <linux/pinctrl/consumer.h>
#include <linux/pinctrl/machine.h>
#include "core.h"

Go to the source code of this file.

Data Structures

struct  ltq_cfg_param
 
struct  ltq_mfp_pin
 
struct  ltq_pin_group
 
struct  ltq_pmx_func
 
struct  ltq_pinmux_info
 

Macros

#define ARRAY_AND_SIZE(x)   (x), ARRAY_SIZE(x)
 
#define LTQ_MAX_MUX   4
 
#define MFPR_FUNC_MASK   0x3
 
#define LTQ_PINCONF_PACK(param, arg)   ((param) << 16 | (arg))
 
#define LTQ_PINCONF_UNPACK_PARAM(conf)   ((conf) >> 16)
 
#define LTQ_PINCONF_UNPACK_ARG(conf)   ((conf) & 0xffff)
 

Enumerations

enum  ltq_pinconf_param { LTQ_PINCONF_PARAM_PULL, LTQ_PINCONF_PARAM_OPEN_DRAIN, LTQ_PINCONF_PARAM_DRIVE_CURRENT, LTQ_PINCONF_PARAM_SLEW_RATE }
 
enum  ltq_pin {
  GPIO0 = 0, GPIO1, GPIO2, GPIO3,
  GPIO4, GPIO5, GPIO6, GPIO7,
  GPIO8, GPIO9, GPIO10, GPIO11,
  GPIO12, GPIO13, GPIO14, GPIO15,
  GPIO16, GPIO17, GPIO18, GPIO19,
  GPIO20, GPIO21, GPIO22, GPIO23,
  GPIO24, GPIO25, GPIO26, GPIO27,
  GPIO28, GPIO29, GPIO30, GPIO31,
  GPIO32, GPIO33, GPIO34, GPIO35,
  GPIO36, GPIO37, GPIO38, GPIO39,
  GPIO40, GPIO41, GPIO42, GPIO43,
  GPIO44, GPIO45, GPIO46, GPIO47,
  GPIO48, GPIO49, GPIO50, GPIO51,
  GPIO52, GPIO53, GPIO54, GPIO55,
  GPIO64, GPIO65, GPIO66, GPIO67,
  GPIO68, GPIO69, GPIO70, GPIO71,
  GPIO72, GPIO73, GPIO74, GPIO75,
  GPIO76, GPIO77, GPIO78, GPIO79,
  GPIO80, GPIO81, GPIO82, GPIO83,
  GPIO84, GPIO85, GPIO86, GPIO87,
  GPIO88
}
 

Functions

int ltq_pinctrl_register (struct platform_device *pdev, struct ltq_pinmux_info *info)
 
int ltq_pinctrl_unregister (struct platform_device *pdev)
 

Macro Definition Documentation

#define ARRAY_AND_SIZE (   x)    (x), ARRAY_SIZE(x)

Definition at line 23 of file pinctrl-lantiq.h.

#define LTQ_MAX_MUX   4

Definition at line 25 of file pinctrl-lantiq.h.

#define LTQ_PINCONF_PACK (   param,
  arg 
)    ((param) << 16 | (arg))

Definition at line 28 of file pinctrl-lantiq.h.

#define LTQ_PINCONF_UNPACK_ARG (   conf)    ((conf) & 0xffff)

Definition at line 30 of file pinctrl-lantiq.h.

#define LTQ_PINCONF_UNPACK_PARAM (   conf)    ((conf) >> 16)

Definition at line 29 of file pinctrl-lantiq.h.

#define MFPR_FUNC_MASK   0x3

Definition at line 26 of file pinctrl-lantiq.h.

Enumeration Type Documentation

enum ltq_pin
Enumerator:
GPIO0 
GPIO1 
GPIO2 
GPIO3 
GPIO4 
GPIO5 
GPIO6 
GPIO7 
GPIO8 
GPIO9 
GPIO10 
GPIO11 
GPIO12 
GPIO13 
GPIO14 
GPIO15 
GPIO16 
GPIO17 
GPIO18 
GPIO19 
GPIO20 
GPIO21 
GPIO22 
GPIO23 
GPIO24 
GPIO25 
GPIO26 
GPIO27 
GPIO28 
GPIO29 
GPIO30 
GPIO31 
GPIO32 
GPIO33 
GPIO34 
GPIO35 
GPIO36 
GPIO37 
GPIO38 
GPIO39 
GPIO40 
GPIO41 
GPIO42 
GPIO43 
GPIO44 
GPIO45 
GPIO46 
GPIO47 
GPIO48 
GPIO49 
GPIO50 
GPIO51 
GPIO52 
GPIO53 
GPIO54 
GPIO55 
GPIO64 
GPIO65 
GPIO66 
GPIO67 
GPIO68 
GPIO69 
GPIO70 
GPIO71 
GPIO72 
GPIO73 
GPIO74 
GPIO75 
GPIO76 
GPIO77 
GPIO78 
GPIO79 
GPIO80 
GPIO81 
GPIO82 
GPIO83 
GPIO84 
GPIO85 
GPIO86 
GPIO87 
GPIO88 

Definition at line 106 of file pinctrl-lantiq.h.

Enumerator:
LTQ_PINCONF_PARAM_PULL 
LTQ_PINCONF_PARAM_OPEN_DRAIN 
LTQ_PINCONF_PARAM_DRIVE_CURRENT 
LTQ_PINCONF_PARAM_SLEW_RATE 

Definition at line 32 of file pinctrl-lantiq.h.

Function Documentation

int ltq_pinctrl_register ( struct platform_device pdev,
struct ltq_pinmux_info info 
)

Definition at line 323 of file pinctrl-lantiq.c.

int ltq_pinctrl_unregister ( struct platform_device pdev)