ARM: tegra12: set CPU rate to 2.2GHz for sku 0x87
[linux-3.10.git] / arch / arm / mach-tegra / board-vcm30_t124.h
1 /*
2  * arch/arm/mach-tegra/board-vcm30_t124.h
3  *
4  * Copyright (c) 2013, 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  * You should have received a copy of the GNU General Public License
16  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
17  */
18
19 #ifndef _MACH_TEGRA_BOARD_VCM30_T124_H
20 #define _MACH_TEGRA_BOARD_VCM30_T124_H
21
22 #include <linux/mfd/as3722-plat.h>
23 #include <mach/gpio-tegra.h>
24 #include <mach/irqs.h>
25 #include <linux/mfd/max77663-core.h>
26 #include "gpio-names.h"
27
28 int vcm30_t124_panel_init(void);
29 int vcm30_t124_sdhci_init(void);
30 int vcm30_t124_sensors_init(void);
31 int vcm30_t124_regulator_init(void);
32 int vcm30_t124_suspend_init(void);
33 int vcm30_t124_pmon_init(void);
34 int vcm30_t124_panel_init(void);
35 int vcm30_t124_pca953x_init(void);
36
37 /* FIXME: Needed? */
38 #define AS3722_GPIO_BASE        TEGRA_NR_GPIOS
39 #define AS3722_GPIO_END (AS3722_GPIO_BASE + AS3722_NUM_GPIO)
40
41 /* PMU_TCA6416 GPIOs */
42 #define PMU_TCA6416_GPIO_BASE   (AS3722_GPIO_END)
43 #define PMU_TCA6416_GPIO(x)     (PMU_TCA6416_GPIO_BASE + x)
44 #define PMU_TCA6416_NR_GPIOS    18
45
46 #define UTMI1_PORT_OWNER_XUSB   0x1
47 #define UTMI2_PORT_OWNER_XUSB   0x2
48 #define UTMI3_PORT_OWNER_XUSB   0x4
49 #define HSIC1_PORT_OWNER_XUSB   0x8
50
51 /* FIXME: Confirm these GPIOs */
52 /* Audio-related GPIOs */
53 #define TEGRA_GPIO_CDC_IRQ      TEGRA_GPIO_PH4
54 #define TEGRA_GPIO_HP_DET               TEGRA_GPIO_PR7
55 /*LDO_EN signal is required only for RT5639 and not for RT5645,
56 on Laguna the LDO_EN signal comes from a GPIO expander and
57 this is exposed as a fixed regulator directly handeled from
58 machine driver of rt5639 and for ardebeg we use the below tegra
59 GPIO, also the GPIO is same for T114 interposer and T124*/
60 #define TEGRA_GPIO_LDO_EN       TEGRA_GPIO_PR2
61
62 /* I2C related GPIOs */
63 #define TEGRA_GPIO_I2C1_SCL     TEGRA_GPIO_PC4
64 #define TEGRA_GPIO_I2C1_SDA     TEGRA_GPIO_PC5
65 #define TEGRA_GPIO_I2C2_SCL     TEGRA_GPIO_PT5
66 #define TEGRA_GPIO_I2C2_SDA     TEGRA_GPIO_PT6
67 #define TEGRA_GPIO_I2C3_SCL     TEGRA_GPIO_PK5
68 #define TEGRA_GPIO_I2C3_SDA     TEGRA_GPIO_PK6
69 #define TEGRA_GPIO_I2C4_SCL     TEGRA_GPIO_PV4
70 #define TEGRA_GPIO_I2C4_SDA     TEGRA_GPIO_PV5
71 #define TEGRA_GPIO_I2C5_SCL     TEGRA_GPIO_PZ6
72 #define TEGRA_GPIO_I2C5_SDA     TEGRA_GPIO_PZ7
73
74 /* External peripheral act as gpio */
75 #define MAX77663_IRQ_BASE       TEGRA_NR_IRQS
76 #define MAX77663_IRQ_END        (MAX77663_IRQ_BASE + MAX77663_IRQ_NR)
77 #define MAX77663_GPIO_BASE      TEGRA_NR_GPIOS
78 #define MAX77663_GPIO_END       (MAX77663_GPIO_BASE + MAX77663_GPIO_NR)
79
80 /* PCA953X - MISC SYSTEM IO */
81 #define PCA953X_MISCIO_GPIO_BASE        (MAX77663_GPIO_END + 1)
82 #define MISCIO_BT_RST_GPIO              (PCA953X_MISCIO_GPIO_BASE + 0)
83 #define MISCIO_GPS_RST_GPIO             (PCA953X_MISCIO_GPIO_BASE + 1)
84 #define MISCIO_GPS_EN_GPIO              (PCA953X_MISCIO_GPIO_BASE + 2)
85 #define MISCIO_WF_EN_GPIO               (PCA953X_MISCIO_GPIO_BASE + 3)
86 #define MISCIO_WF_RST_GPIO              (PCA953X_MISCIO_GPIO_BASE + 4)
87 #define MISCIO_BT_EN_GPIO               (PCA953X_MISCIO_GPIO_BASE + 5)
88 /* GPIO6 is not used */
89 #define MISCIO_NOT_USED0                (PCA953X_MISCIO_GPIO_BASE + 6)
90 #define MISCIO_BT_WAKEUP_GPIO           (PCA953X_MISCIO_GPIO_BASE + 7)
91 #define MISCIO_FAN_SEL_GPIO             (PCA953X_MISCIO_GPIO_BASE + 8)
92 #define MISCIO_EN_MISC_BUF_GPIO         (PCA953X_MISCIO_GPIO_BASE + 9)
93 #define MISCIO_EN_MSATA_GPIO            (PCA953X_MISCIO_GPIO_BASE + 10)
94 #define MISCIO_EN_SDCARD_GPIO           (PCA953X_MISCIO_GPIO_BASE + 11)
95 /* GPIO12 is not used */
96 #define MISCIO_NOT_USED1                (PCA953X_MISCIO_GPIO_BASE + 12)
97 #define MISCIO_ABB_RST_GPIO             (PCA953X_MISCIO_GPIO_BASE + 13)
98 #define MISCIO_USER_LED2_GPIO           (PCA953X_MISCIO_GPIO_BASE + 14)
99 #define MISCIO_USER_LED1_GPIO           (PCA953X_MISCIO_GPIO_BASE + 15)
100 #define PCA953X_MISCIO_GPIO_END         (PCA953X_MISCIO_GPIO_BASE + 16)
101
102 /* PCA953X I2C IO expander bus addresses */
103 #define PCA953X_MISCIO_ADDR             0x75
104
105 #endif