ARM: tegra12: set CPU rate to 2.2GHz for sku 0x87
[linux-3.10.git] / arch / arm / mach-tegra / include / mach / pinconf-tegra.h
1 /*
2  * pinctrl configuration definitions for the NVIDIA Tegra pinmux
3  *
4  * Copyright (c) 2011-2012, NVIDIA CORPORATION.  All rights reserved.
5  *
6  * This program is free software; you can redistribute it and/or modify it
7  * under the terms and conditions of the GNU General Public License,
8  * version 2, as published by the Free Software Foundation.
9  *
10  * This program is distributed in the hope it will be useful, but WITHOUT
11  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
13  * more details.
14  */
15
16 #ifndef __PINCONF_TEGRA_H__
17 #define __PINCONF_TEGRA_H__
18
19 enum tegra_pinconf_param {
20         /* argument: tegra_pinconf_pull */
21         TEGRA_PINCONF_PARAM_PULL,
22         /* argument: tegra_pinconf_tristate */
23         TEGRA_PINCONF_PARAM_TRISTATE,
24         /* argument: Boolean */
25         TEGRA_PINCONF_PARAM_ENABLE_INPUT,
26         /* argument: Boolean */
27         TEGRA_PINCONF_PARAM_OPEN_DRAIN,
28         /* argument: Boolean */
29         TEGRA_PINCONF_PARAM_LOCK,
30         /* argument: Boolean */
31         TEGRA_PINCONF_PARAM_IORESET,
32         /* argument: Boolean */
33         TEGRA_PINCONF_PARAM_RCV_SEL,
34         /* argument: Boolean */
35         TEGRA_PINCONF_PARAM_HIGH_SPEED_MODE,
36         /* argument: Boolean */
37         TEGRA_PINCONF_PARAM_SCHMITT,
38         /* argument: Boolean */
39         TEGRA_PINCONF_PARAM_LOW_POWER_MODE,
40         /* argument: Integer, range is HW-dependant */
41         TEGRA_PINCONF_PARAM_DRIVE_DOWN_STRENGTH,
42         /* argument: Integer, range is HW-dependant */
43         TEGRA_PINCONF_PARAM_DRIVE_UP_STRENGTH,
44         /* argument: Integer, range is HW-dependant */
45         TEGRA_PINCONF_PARAM_SLEW_RATE_FALLING,
46         /* argument: Integer, range is HW-dependant */
47         TEGRA_PINCONF_PARAM_SLEW_RATE_RISING,
48         /* argument: Integer, range is HW-dependant */
49         TEGRA_PINCONF_PARAM_DRIVE_TYPE,
50 };
51
52 enum tegra_pinconf_pull {
53         TEGRA_PINCONFIG_PULL_NONE,
54         TEGRA_PINCONFIG_PULL_DOWN,
55         TEGRA_PINCONFIG_PULL_UP,
56 };
57
58 enum tegra_pinconf_tristate {
59         TEGRA_PINCONFIG_DRIVEN,
60         TEGRA_PINCONFIG_TRISTATE,
61 };
62
63 #define TEGRA_PINCONF_PACK(_param_, _arg_) ((_param_) << 16 | (_arg_))
64 #define TEGRA_PINCONF_UNPACK_PARAM(_conf_) ((_conf_) >> 16)
65 #define TEGRA_PINCONF_UNPACK_ARG(_conf_) ((_conf_) & 0xffff)
66
67 #endif