Linux Kernel
3.7.1
|
#include <linux/init.h>
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/io.h>
#include <linux/slab.h>
#include <linux/err.h>
#include <linux/pinctrl/pinctrl.h>
#include <linux/pinctrl/pinmux.h>
#include <linux/pinctrl/pinconf.h>
#include <linux/pinctrl/pinconf-generic.h>
#include "pinctrl-coh901.h"
Go to the source code of this file.
Data Structures | |
struct | u300_pmx |
struct | u300_pin_group |
struct | u300_pmx_mask |
struct | u300_pmx_func |
Variables | |
const u32 | u300_pmx_registers [] |
: the name of this specific function | |
struct u300_pmx_func - describes U300 pinmux functions : corresponding pin groups : bits to set to enable this when doing pin muxing | |
#define | U300_GPIO_RANGE(a, b, c) |
int | u300_pin_config_get (struct pinctrl_dev *pctldev, unsigned pin, unsigned long *config) |
int | u300_pin_config_set (struct pinctrl_dev *pctldev, unsigned pin, unsigned long config) |
arch_initcall (u300_pmx_init) | |
module_exit (u300_pmx_exit) | |
MODULE_AUTHOR ("Linus Walleij <[email protected]>") | |
MODULE_DESCRIPTION ("U300 pin control driver") | |
MODULE_LICENSE ("GPL v2") | |
#define DRIVER_NAME "pinctrl-u300" |
Definition at line 168 of file pinctrl-u300.c.
#define U300_NUM_PADS 467 |
Definition at line 182 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR 0x007E |
Definition at line 77 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_GPIO_1_AAIF 0x0C00 |
Definition at line 93 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_GPIO_1_APP_GPIO 0x0000 |
Definition at line 90 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_GPIO_1_DSP 0x0800 |
Definition at line 92 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_GPIO_1_MASK 0x0C00 |
Definition at line 89 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_GPIO_1_MMC 0x0400 |
Definition at line 91 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_GPIO_2_AAIF 0x3000 |
Definition at line 88 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_GPIO_2_APP_GPIO 0x0000 |
Definition at line 85 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_GPIO_2_DSP 0x2000 |
Definition at line 87 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_GPIO_2_MASK 0x3000 |
Definition at line 84 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_GPIO_2_NFIF 0x1000 |
Definition at line 86 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_SPI_2_AAIF 0x0030 |
Definition at line 106 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_SPI_2_APP_GPIO 0x0000 |
Definition at line 103 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_SPI_2_DSP 0x0020 |
Definition at line 105 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_SPI_2_MASK 0x0030 |
Definition at line 102 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_SPI_2_SPI 0x0010 |
Definition at line 104 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_SPI_CS_1_AAIF 0x00C0 |
Definition at line 101 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_SPI_CS_1_APP_GPIO 0x0000 |
Definition at line 99 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_SPI_CS_1_MASK 0x00C0 |
Definition at line 98 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_SPI_CS_1_SPI 0x0040 |
Definition at line 100 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_SPI_CS_2_AAIF 0x0300 |
Definition at line 97 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_SPI_CS_2_APP_GPIO 0x0000 |
Definition at line 95 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_SPI_CS_2_MASK 0x0300 |
Definition at line 94 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_SPI_CS_2_SPI 0x0100 |
Definition at line 96 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_UART0_1_AAIF 0x0003 |
Definition at line 115 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_UART0_1_APP_GPIO 0x0000 |
Definition at line 113 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_UART0_1_MASK 0x0003 |
Definition at line 112 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_UART0_1_UART0 0x0001 |
Definition at line 114 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_UART0_2_AAIF 0x000C |
Definition at line 111 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_UART0_2_APP_GPIO 0x0000 |
Definition at line 108 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_UART0_2_MASK 0x000C |
Definition at line 107 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_UART0_2_NFIF_CS 0x0008 |
Definition at line 110 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_APP_UART0_2_UART0 0x0004 |
Definition at line 109 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_MASK 0xFFFF |
Definition at line 78 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_MISC_2_AAIF 0xC000 |
Definition at line 83 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_MISC_2_APP_GPIO 0x0000 |
Definition at line 80 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_MISC_2_DSP 0x8000 |
Definition at line 82 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_MISC_2_MASK 0xC000 |
Definition at line 79 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1HR_MISC_2_MSPRO 0x4000 |
Definition at line 81 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR 0x007C |
Definition at line 32 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_CDI_CDI 0x0000 |
Definition at line 35 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_CDI_CDI2 0x8000 |
Definition at line 38 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_CDI_EMIF 0x4000 |
Definition at line 36 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_CDI_GPIO 0x8000 |
Definition at line 41 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_CDI_MASK 0xC000 |
Definition at line 34 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_CDI_WCDMA 0xC000 |
Definition at line 42 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_CDI_WCDMA_APP_GPIO 0xC000 |
Definition at line 39 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1 0x0003 |
Definition at line 75 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1_CS0_MASK 0x000C |
Definition at line 66 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1_CS0_NFIF 0x0004 |
Definition at line 68 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1_CS0_SDRAM 0x0008 |
Definition at line 69 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1_CS0_SEMI 0x000C |
Definition at line 70 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1_CS0_STATIC 0x0000 |
Definition at line 67 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1_CS1_MASK 0x0030 |
Definition at line 61 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1_CS1_NFIF 0x0010 |
Definition at line 63 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1_CS1_SDRAM 0x0020 |
Definition at line 64 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1_CS1_SEMI 0x0030 |
Definition at line 65 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1_CS1_STATIC 0x0000 |
Definition at line 62 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1_CS2_MASK 0x00C0 |
Definition at line 56 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1_CS2_NFIF 0x0040 |
Definition at line 58 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1_CS2_SDRAM 0x0080 |
Definition at line 59 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1_CS2_STATIC 0x0000 |
Definition at line 57 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1_CS2_STATIC_2GB 0x00C0 |
Definition at line 60 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1_MASK 0x0003 |
Definition at line 71 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1_SDRAM0 0x0001 |
Definition at line 73 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1_SDRAM1 0x0002 |
Definition at line 74 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_EMIF_1_STATIC 0x0000 |
Definition at line 72 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_ETM_ACC 0x0000 |
Definition at line 54 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_ETM_APP 0x0100 |
Definition at line 55 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_ETM_MASK 0x0300 |
Definition at line 53 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_MASK 0xFFFF |
Definition at line 33 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_MMCSD_DSP 0x0800 |
Definition at line 51 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_MMCSD_MASK 0x0C00 |
Definition at line 48 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_MMCSD_MMCSD 0x0000 |
Definition at line 49 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_MMCSD_MSPRO 0x0400 |
Definition at line 50 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_MMCSD_WCDMA 0x0C00 |
Definition at line 52 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_PDI_EGG 0x1000 |
Definition at line 46 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_PDI_MASK 0x3000 |
Definition at line 44 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_PDI_PDI 0x0000 |
Definition at line 45 of file pinctrl-u300.c.
#define U300_SYSCON_PMC1LR_PDI_WCDMA 0x3000 |
Definition at line 47 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R 0x100 |
Definition at line 117 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_0_APP_GPIO 0x0000 |
Definition at line 119 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_0_CDI2 0x00C0 |
Definition at line 122 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_0_EMIF_SDRAM 0x0040 |
Definition at line 120 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_0_MASK 0x00C0 |
Definition at line 118 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_0_MMC 0x0080 |
Definition at line 121 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_1_APP_GPIO 0x0000 |
Definition at line 124 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_1_CDI2 0x0300 |
Definition at line 127 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_1_EMIF_SDRAM 0x0100 |
Definition at line 125 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_1_MASK 0x0300 |
Definition at line 123 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_1_MMC 0x0200 |
Definition at line 126 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_2_APP_GPIO 0x0000 |
Definition at line 129 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_2_CDI2 0x0C00 |
Definition at line 132 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_2_EMIF_SDRAM 0x0400 |
Definition at line 130 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_2_MASK 0x0C00 |
Definition at line 128 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_2_MMC 0x0800 |
Definition at line 131 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_3_APP_GPIO 0x0000 |
Definition at line 134 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_3_CDI2 0x3000 |
Definition at line 137 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_3_EMIF_SDRAM 0x1000 |
Definition at line 135 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_3_MASK 0x3000 |
Definition at line 133 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_3_MMC 0x2000 |
Definition at line 136 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_4_ACC_GPIO 0xC000 |
Definition at line 142 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_4_APP_GPIO 0x0000 |
Definition at line 139 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_4_EMIF_SDRAM 0x4000 |
Definition at line 140 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_4_MASK 0xC000 |
Definition at line 138 of file pinctrl-u300.c.
#define U300_SYSCON_PMC2R_APP_MISC_4_MMC 0x8000 |
Definition at line 141 of file pinctrl-u300.c.
#define U300_SYSCON_PMC3R 0x10C |
Definition at line 144 of file pinctrl-u300.c.
#define U300_SYSCON_PMC3R_APP_MISC_10_MASK 0x3000 |
Definition at line 147 of file pinctrl-u300.c.
#define U300_SYSCON_PMC3R_APP_MISC_10_SPI 0x1000 |
Definition at line 148 of file pinctrl-u300.c.
#define U300_SYSCON_PMC3R_APP_MISC_11_MASK 0xC000 |
Definition at line 145 of file pinctrl-u300.c.
#define U300_SYSCON_PMC3R_APP_MISC_11_SPI 0x4000 |
Definition at line 146 of file pinctrl-u300.c.
#define U300_SYSCON_PMC4R 0x168 |
Definition at line 150 of file pinctrl-u300.c.
#define U300_SYSCON_PMC4R_APP_MISC_12_APP_GPIO 0x0000 |
Definition at line 152 of file pinctrl-u300.c.
#define U300_SYSCON_PMC4R_APP_MISC_12_MASK 0x0003 |
Definition at line 151 of file pinctrl-u300.c.
#define U300_SYSCON_PMC4R_APP_MISC_13_APP_GPIO 0x000C |
Definition at line 157 of file pinctrl-u300.c.
#define U300_SYSCON_PMC4R_APP_MISC_13_CDI 0x0000 |
Definition at line 154 of file pinctrl-u300.c.
#define U300_SYSCON_PMC4R_APP_MISC_13_MASK 0x000C |
Definition at line 153 of file pinctrl-u300.c.
#define U300_SYSCON_PMC4R_APP_MISC_13_SMIA 0x0004 |
Definition at line 155 of file pinctrl-u300.c.
#define U300_SYSCON_PMC4R_APP_MISC_13_SMIA2 0x0008 |
Definition at line 156 of file pinctrl-u300.c.
#define U300_SYSCON_PMC4R_APP_MISC_14_APP_GPIO 0x0030 |
Definition at line 162 of file pinctrl-u300.c.
#define U300_SYSCON_PMC4R_APP_MISC_14_CDI 0x0000 |
Definition at line 159 of file pinctrl-u300.c.
#define U300_SYSCON_PMC4R_APP_MISC_14_CDI2 0x0020 |
Definition at line 161 of file pinctrl-u300.c.
#define U300_SYSCON_PMC4R_APP_MISC_14_MASK 0x0030 |
Definition at line 158 of file pinctrl-u300.c.
#define U300_SYSCON_PMC4R_APP_MISC_14_SMIA 0x0010 |
Definition at line 160 of file pinctrl-u300.c.
#define U300_SYSCON_PMC4R_APP_MISC_16_APP_GPIO_13 0x0000 |
Definition at line 164 of file pinctrl-u300.c.
#define U300_SYSCON_PMC4R_APP_MISC_16_APP_UART1_CTS 0x0100 |
Definition at line 165 of file pinctrl-u300.c.
#define U300_SYSCON_PMC4R_APP_MISC_16_EMIF_1_STATIC_CS5_N 0x0200 |
Definition at line 166 of file pinctrl-u300.c.
#define U300_SYSCON_PMC4R_APP_MISC_16_MASK 0x0300 |
Definition at line 163 of file pinctrl-u300.c.
arch_initcall | ( | u300_pmx_init | ) |
MODULE_AUTHOR | ( | "Linus Walleij <[email protected]>" | ) |
module_exit | ( | u300_pmx_exit | ) |
MODULE_LICENSE | ( | "GPL v2" | ) |
int u300_pin_config_get | ( | struct pinctrl_dev * | pctldev, |
unsigned | pin, | ||
unsigned long * | config | ||
) |
Definition at line 1057 of file pinctrl-u300.c.
int u300_pin_config_set | ( | struct pinctrl_dev * | pctldev, |
unsigned | pin, | ||
unsigned long | config | ||
) |
Definition at line 1072 of file pinctrl-u300.c.
u300_pmx_registers - the array of registers read/written for each pinmux shunt setting
Definition at line 675 of file pinctrl-u300.c.