Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Enumerations
machine.h File Reference
#include <linux/bug.h>
#include <linux/pinctrl/pinctrl-state.h>

Go to the source code of this file.

Data Structures

struct  pinctrl_map_mux
 
struct  pinctrl_map_configs
 
struct  pinctrl_map
 

Enumerations

enum  pinctrl_map_type {
  PIN_MAP_TYPE_INVALID, PIN_MAP_TYPE_DUMMY_STATE, PIN_MAP_TYPE_MUX_GROUP, PIN_MAP_TYPE_CONFIGS_PIN,
  PIN_MAP_TYPE_CONFIGS_GROUP
}
 

: the name of this specific map entry for the particular machine.

struct pinctrl_map - boards/machines shall provide this map for devices : the name of the device using this specific mapping, the name must be the same as in your struct device*. If this name is set to the same name as the pin controllers own dev_name(), the map entry will be hogged by the driver itself upon registration

This is the parameter passed to pinmux_lookup_state() : the type of mapping table entry : the name of the device controlling this specific mapping, the name must be the same as in your struct device*. This field is not used for PIN_MAP_TYPE_DUMMY_STATE : Data specific to the mapping type

#define PIN_MAP_DUMMY_STATE(dev, state)
 
#define PIN_MAP_MUX_GROUP(dev, state, pinctrl, grp, func)
 
#define PIN_MAP_MUX_GROUP_DEFAULT(dev, pinctrl, grp, func)   PIN_MAP_MUX_GROUP(dev, PINCTRL_STATE_DEFAULT, pinctrl, grp, func)
 
#define PIN_MAP_MUX_GROUP_HOG(dev, state, grp, func)   PIN_MAP_MUX_GROUP(dev, state, dev, grp, func)
 
#define PIN_MAP_MUX_GROUP_HOG_DEFAULT(dev, grp, func)   PIN_MAP_MUX_GROUP(dev, PINCTRL_STATE_DEFAULT, dev, grp, func)
 
#define PIN_MAP_CONFIGS_PIN(dev, state, pinctrl, pin, cfgs)
 
#define PIN_MAP_CONFIGS_PIN_DEFAULT(dev, pinctrl, pin, cfgs)   PIN_MAP_CONFIGS_PIN(dev, PINCTRL_STATE_DEFAULT, pinctrl, pin, cfgs)
 
#define PIN_MAP_CONFIGS_PIN_HOG(dev, state, pin, cfgs)   PIN_MAP_CONFIGS_PIN(dev, state, dev, pin, cfgs)
 
#define PIN_MAP_CONFIGS_PIN_HOG_DEFAULT(dev, pin, cfgs)   PIN_MAP_CONFIGS_PIN(dev, PINCTRL_STATE_DEFAULT, dev, pin, cfgs)
 
#define PIN_MAP_CONFIGS_GROUP(dev, state, pinctrl, grp, cfgs)
 
#define PIN_MAP_CONFIGS_GROUP_DEFAULT(dev, pinctrl, grp, cfgs)   PIN_MAP_CONFIGS_GROUP(dev, PINCTRL_STATE_DEFAULT, pinctrl, grp, cfgs)
 
#define PIN_MAP_CONFIGS_GROUP_HOG(dev, state, grp, cfgs)   PIN_MAP_CONFIGS_GROUP(dev, state, dev, grp, cfgs)
 
#define PIN_MAP_CONFIGS_GROUP_HOG_DEFAULT(dev, grp, cfgs)   PIN_MAP_CONFIGS_GROUP(dev, PINCTRL_STATE_DEFAULT, dev, grp, cfgs)
 

Macro Definition Documentation

#define PIN_MAP_CONFIGS_GROUP (   dev,
  state,
  pinctrl,
  grp,
  cfgs 
)
Value:
{ \
.dev_name = dev, \
.name = state, \
.ctrl_dev_name = pinctrl, \
.data.configs = { \
.group_or_pin = grp, \
.configs = cfgs, \
.num_configs = ARRAY_SIZE(cfgs), \
}, \
}

Definition at line 131 of file machine.h.

#define PIN_MAP_CONFIGS_GROUP_DEFAULT (   dev,
  pinctrl,
  grp,
  cfgs 
)    PIN_MAP_CONFIGS_GROUP(dev, PINCTRL_STATE_DEFAULT, pinctrl, grp, cfgs)

Definition at line 144 of file machine.h.

#define PIN_MAP_CONFIGS_GROUP_HOG (   dev,
  state,
  grp,
  cfgs 
)    PIN_MAP_CONFIGS_GROUP(dev, state, dev, grp, cfgs)

Definition at line 147 of file machine.h.

#define PIN_MAP_CONFIGS_GROUP_HOG_DEFAULT (   dev,
  grp,
  cfgs 
)    PIN_MAP_CONFIGS_GROUP(dev, PINCTRL_STATE_DEFAULT, dev, grp, cfgs)

Definition at line 150 of file machine.h.

#define PIN_MAP_CONFIGS_PIN (   dev,
  state,
  pinctrl,
  pin,
  cfgs 
)
Value:
{ \
.dev_name = dev, \
.name = state, \
.ctrl_dev_name = pinctrl, \
.data.configs = { \
.group_or_pin = pin, \
.configs = cfgs, \
.num_configs = ARRAY_SIZE(cfgs), \
}, \
}

Definition at line 109 of file machine.h.

#define PIN_MAP_CONFIGS_PIN_DEFAULT (   dev,
  pinctrl,
  pin,
  cfgs 
)    PIN_MAP_CONFIGS_PIN(dev, PINCTRL_STATE_DEFAULT, pinctrl, pin, cfgs)

Definition at line 122 of file machine.h.

#define PIN_MAP_CONFIGS_PIN_HOG (   dev,
  state,
  pin,
  cfgs 
)    PIN_MAP_CONFIGS_PIN(dev, state, dev, pin, cfgs)

Definition at line 125 of file machine.h.

#define PIN_MAP_CONFIGS_PIN_HOG_DEFAULT (   dev,
  pin,
  cfgs 
)    PIN_MAP_CONFIGS_PIN(dev, PINCTRL_STATE_DEFAULT, dev, pin, cfgs)

Definition at line 128 of file machine.h.

#define PIN_MAP_DUMMY_STATE (   dev,
  state 
)
Value:
{ \
.dev_name = dev, \
.name = state, \
}

Definition at line 81 of file machine.h.

#define PIN_MAP_MUX_GROUP (   dev,
  state,
  pinctrl,
  grp,
  func 
)
Value:
{ \
.dev_name = dev, \
.name = state, \
.ctrl_dev_name = pinctrl, \
.data.mux = { \
.group = grp, \
.function = func, \
}, \
}

Definition at line 88 of file machine.h.

#define PIN_MAP_MUX_GROUP_DEFAULT (   dev,
  pinctrl,
  grp,
  func 
)    PIN_MAP_MUX_GROUP(dev, PINCTRL_STATE_DEFAULT, pinctrl, grp, func)

Definition at line 100 of file machine.h.

#define PIN_MAP_MUX_GROUP_HOG (   dev,
  state,
  grp,
  func 
)    PIN_MAP_MUX_GROUP(dev, state, dev, grp, func)

Definition at line 103 of file machine.h.

#define PIN_MAP_MUX_GROUP_HOG_DEFAULT (   dev,
  grp,
  func 
)    PIN_MAP_MUX_GROUP(dev, PINCTRL_STATE_DEFAULT, dev, grp, func)

Definition at line 106 of file machine.h.

Enumeration Type Documentation

Enumerator:
PIN_MAP_TYPE_INVALID 
PIN_MAP_TYPE_DUMMY_STATE 
PIN_MAP_TYPE_MUX_GROUP 
PIN_MAP_TYPE_CONFIGS_PIN 
PIN_MAP_TYPE_CONFIGS_GROUP 

Definition at line 19 of file machine.h.