|
Linux Kernel
3.7.1
|
Go to the source code of this file.
Data Structures | |
| struct | pinmux_gpio |
| struct | pinmux_cfg_reg |
| struct | pinmux_data_reg |
| struct | pinmux_irq |
| struct | pinmux_range |
| struct | pfc_window |
| struct | sh_pfc |
Macros | |
| #define | PINMUX_FLAG_DBIT_SHIFT 5 |
| #define | PINMUX_FLAG_DBIT (0x1f << PINMUX_FLAG_DBIT_SHIFT) |
| #define | PINMUX_FLAG_DREG_SHIFT 10 |
| #define | PINMUX_FLAG_DREG (0x3f << PINMUX_FLAG_DREG_SHIFT) |
| #define | PINMUX_GPIO(gpio, data_or_mark) [gpio] = { .name = __stringify(gpio), .enum_id = data_or_mark, .flags = PINMUX_TYPE_NONE } |
| #define | PINMUX_DATA(data_or_mark, ids...) data_or_mark, ids, 0 |
| #define | PINMUX_CFG_REG(name, r, r_width, f_width) |
| #define | PINMUX_CFG_REG_VAR(name, r, r_width, var_fw0, var_fwn...) |
| #define | PINMUX_DATA_REG(name, r, r_width) |
| #define | PINMUX_IRQ(irq_nr, ids...) { .irq = irq_nr, .enum_ids = (pinmux_enum_t []) { ids, 0 } } \ |
| #define | pinmux_info sh_pfc |
| #define | PORT_1(fn, pfx, sfx) fn(pfx, sfx) |
| #define | PORT_10(fn, pfx, sfx) |
| #define | PORT_90(fn, pfx, sfx) |
| #define | _PORT_ALL(pfx, sfx) pfx##_##sfx |
| #define | _GPIO_PORT(pfx, sfx) PINMUX_GPIO(GPIO_PORT##pfx, PORT##pfx##_DATA) |
| #define | PORT_ALL(str) CPU_ALL_PORT(_PORT_ALL, PORT, str) |
| #define | GPIO_PORT_ALL() CPU_ALL_PORT(_GPIO_PORT, , unused) |
| #define | GPIO_FN(str) PINMUX_GPIO(GPIO_FN_##str, str##_MARK) |
| #define | PORT_DATA_I(nr) PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, PORT##nr##_IN) |
| #define | PORT_DATA_I_PD(nr) |
| #define | PORT_DATA_I_PU(nr) |
| #define | PORT_DATA_I_PU_PD(nr) |
| #define | PORT_DATA_O(nr) PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, PORT##nr##_OUT) |
| #define | PORT_DATA_IO(nr) |
| #define | PORT_DATA_IO_PD(nr) |
| #define | PORT_DATA_IO_PU(nr) |
| #define | PORT_DATA_IO_PU_PD(nr) |
| #define | _PCRH(in, in_pd, in_pu, out) |
| #define | PORTCR(nr, reg) |
Typedefs | |
| typedef unsigned short | pinmux_enum_t |
| typedef unsigned short | pinmux_flag_t |
Enumerations | |
| enum | { PINMUX_TYPE_NONE, PINMUX_TYPE_FUNCTION, PINMUX_TYPE_GPIO, PINMUX_TYPE_OUTPUT, PINMUX_TYPE_INPUT, PINMUX_TYPE_INPUT_PULLUP, PINMUX_TYPE_INPUT_PULLDOWN, PINMUX_FLAG_TYPE } |
| enum | { GPIO_CFG_DRYRUN, GPIO_CFG_REQ, GPIO_CFG_FREE } |
Functions | |
| int | sh_pfc_register_gpiochip (struct sh_pfc *pfc) |
| int | sh_pfc_register_pinctrl (struct sh_pfc *pfc) |
| int | register_sh_pfc (struct sh_pfc *pfc) |
| int | sh_pfc_read_bit (struct pinmux_data_reg *dr, unsigned long in_pos) |
| void | sh_pfc_write_bit (struct pinmux_data_reg *dr, unsigned long in_pos, unsigned long value) |
| int | sh_pfc_get_data_reg (struct sh_pfc *pfc, unsigned gpio, struct pinmux_data_reg **drp, int *bitp) |
| int | sh_pfc_gpio_to_enum (struct sh_pfc *pfc, unsigned gpio, int pos, pinmux_enum_t *enum_idp) |
| int | sh_pfc_config_gpio (struct sh_pfc *pfc, unsigned gpio, int pinmux_type, int cfg_mode) |
| #define _GPIO_PORT | ( | pfx, | |
| sfx | |||
| ) | PINMUX_GPIO(GPIO_PORT##pfx, PORT##pfx##_DATA) |
| #define GPIO_FN | ( | str | ) | PINMUX_GPIO(GPIO_FN_##str, str##_MARK) |
| #define GPIO_PORT_ALL | ( | ) | CPU_ALL_PORT(_GPIO_PORT, , unused) |
| #define PINMUX_DATA | ( | data_or_mark, | |
| ids... | |||
| ) | data_or_mark, ids, 0 |
| #define PINMUX_GPIO | ( | gpio, | |
| data_or_mark | |||
| ) | [gpio] = { .name = __stringify(gpio), .enum_id = data_or_mark, .flags = PINMUX_TYPE_NONE } |
| #define PINMUX_IRQ | ( | irq_nr, | |
| ids... | |||
| ) | { .irq = irq_nr, .enum_ids = (pinmux_enum_t []) { ids, 0 } } \ |
| #define PORT_10 | ( | fn, | |
| pfx, | |||
| sfx | |||
| ) |
| #define PORT_90 | ( | fn, | |
| pfx, | |||
| sfx | |||
| ) |
| #define PORT_DATA_I_PD | ( | nr | ) |
| #define PORT_DATA_I_PU | ( | nr | ) |
| #define PORT_DATA_I_PU_PD | ( | nr | ) |
| #define PORT_DATA_IO | ( | nr | ) |
| #define PORT_DATA_IO_PD | ( | nr | ) |
| #define PORT_DATA_IO_PU | ( | nr | ) |
| #define PORT_DATA_IO_PU_PD | ( | nr | ) |
| typedef unsigned short pinmux_enum_t |
| typedef unsigned short pinmux_flag_t |
| anonymous enum |
| anonymous enum |
| int sh_pfc_gpio_to_enum | ( | struct sh_pfc * | pfc, |
| unsigned | gpio, | ||
| int | pos, | ||
| pinmux_enum_t * | enum_idp | ||
| ) |
| int sh_pfc_read_bit | ( | struct pinmux_data_reg * | dr, |
| unsigned long | in_pos | ||
| ) |
1.8.2