Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(261)

Unified Diff: arch/arm/mach-tegra/nv/include/nvodm_query_pins_ap15.h

Issue 3256004: [ARM] tegra: add nvos/nvrm/nvmap drivers (Closed) Base URL: ssh://git@gitrw.chromium.org/kernel.git
Patch Set: remove ap15 headers Created 10 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: arch/arm/mach-tegra/nv/include/nvodm_query_pins_ap15.h
diff --git a/arch/arm/mach-tegra/nv/include/nvodm_query_pins_ap15.h b/arch/arm/mach-tegra/nv/include/nvodm_query_pins_ap15.h
new file mode 100644
index 0000000000000000000000000000000000000000..e1ebe11741bd158310f07d319f64331a937877c5
--- /dev/null
+++ b/arch/arm/mach-tegra/nv/include/nvodm_query_pins_ap15.h
@@ -0,0 +1,422 @@
+/*
+ * Copyright (c) 2008-2009 NVIDIA Corporation.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * Neither the name of the NVIDIA Corporation nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+/** @file
+ * <b>NVIDIA Tegra ODM Kit:
+ * Pin configurations for NVIDIA APX 2300, APX 2500, Tegra 600 and Tegra 650 processors</b>
+ *
+ * @b Description: Defines the names and configurable settings for pin electrical
+ * attributes, such as drive strength and slew.
+ */
+
+// This is an auto-generated file. Do not edit.
+// Regenerate with "genpadconfig.py ap15 drivers/hwinc/ap15/arapb_misc.h"
+
+#ifndef INCLUDED_NVODM_QUERY_PINS_AP15_H
+#define INCLUDED_NVODM_QUERY_PINS_AP15_H
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/**
+ * This specifies the list of pin configuration registers supported by
+ * AP15-compatible products. This should be used to generate the pin
+ * pin-attribute query array.
+ * @see NvOdmQueryPinAttributes.
+ * @ingroup nvodm_pins
+ * @{
+ */
+
+typedef enum
+{
+
+ /// Pin configuration registers for NVIDIA APX 2300 products
+ NvOdmPinRegister_Apx2300_PullUpDown_A = 0x100000A0UL,
+ NvOdmPinRegister_Apx2300_PullUpDown_B = 0x100000A4UL,
+ NvOdmPinRegister_Apx2300_PullUpDown_C = 0x100000A8UL,
+ NvOdmPinRegister_Apx2300_PullUpDown_D = 0x100000ACUL,
+ NvOdmPinRegister_Apx2300_PullUpDown_E = 0x100000B0UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_AOCFG1 = 0x10000868UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_AOCFG2 = 0x1000086CUL,
+ NvOdmPinRegister_Apx2300_PadCtrl_ATCFG1 = 0x10000870UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_ATCFG2 = 0x10000874UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_CDEV1CFG = 0x10000878UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_CDEV2CFG = 0x1000087CUL,
+ NvOdmPinRegister_Apx2300_PadCtrl_CSUSCFG = 0x10000880UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_DAP1CFG = 0x10000884UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_DAP2CFG = 0x10000888UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_DAP3CFG = 0x1000088CUL,
+ NvOdmPinRegister_Apx2300_PadCtrl_DAP4CFG = 0x10000890UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_DBGCFG = 0x10000894UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_LCDCFG1 = 0x10000898UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_LCDCFG2 = 0x1000089CUL,
+ NvOdmPinRegister_Apx2300_PadCtrl_SDIO2CFG = 0x100008A0UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_SDIO3CFG = 0x100008A4UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_SPICFG = 0x100008A8UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_UAACFG = 0x100008ACUL,
+ NvOdmPinRegister_Apx2300_PadCtrl_UABCFG = 0x100008B0UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_UART2CFG = 0x100008B4UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_UART3CFG = 0x100008B8UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_VICFG1 = 0x100008BCUL,
+ NvOdmPinRegister_Apx2300_PadCtrl_VICFG2 = 0x100008C0UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_XM2CFGA = 0x100008C4UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_XM2CFGC = 0x100008C8UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_XM2CFGD = 0x100008CCUL,
+ NvOdmPinRegister_Apx2300_PadCtrl_XM2CLKCFG = 0x100008D0UL,
+ NvOdmPinRegister_Apx2300_PadCtrl_MEMCOMP = 0x100008D4UL,
+
+ /// Pin configuration registers for NVIDIA APX 2500 products
+ NvOdmPinRegister_Apx2500_PullUpDown_A = 0x100000A0UL,
+ NvOdmPinRegister_Apx2500_PullUpDown_B = 0x100000A4UL,
+ NvOdmPinRegister_Apx2500_PullUpDown_C = 0x100000A8UL,
+ NvOdmPinRegister_Apx2500_PullUpDown_D = 0x100000ACUL,
+ NvOdmPinRegister_Apx2500_PullUpDown_E = 0x100000B0UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_AOCFG1 = 0x10000868UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_AOCFG2 = 0x1000086CUL,
+ NvOdmPinRegister_Apx2500_PadCtrl_ATCFG1 = 0x10000870UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_ATCFG2 = 0x10000874UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_CDEV1CFG = 0x10000878UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_CDEV2CFG = 0x1000087CUL,
+ NvOdmPinRegister_Apx2500_PadCtrl_CSUSCFG = 0x10000880UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_DAP1CFG = 0x10000884UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_DAP2CFG = 0x10000888UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_DAP3CFG = 0x1000088CUL,
+ NvOdmPinRegister_Apx2500_PadCtrl_DAP4CFG = 0x10000890UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_DBGCFG = 0x10000894UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_LCDCFG1 = 0x10000898UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_LCDCFG2 = 0x1000089CUL,
+ NvOdmPinRegister_Apx2500_PadCtrl_SDIO2CFG = 0x100008A0UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_SDIO3CFG = 0x100008A4UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_SPICFG = 0x100008A8UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_UAACFG = 0x100008ACUL,
+ NvOdmPinRegister_Apx2500_PadCtrl_UABCFG = 0x100008B0UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_UART2CFG = 0x100008B4UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_UART3CFG = 0x100008B8UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_VICFG1 = 0x100008BCUL,
+ NvOdmPinRegister_Apx2500_PadCtrl_VICFG2 = 0x100008C0UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_XM2CFGA = 0x100008C4UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_XM2CFGC = 0x100008C8UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_XM2CFGD = 0x100008CCUL,
+ NvOdmPinRegister_Apx2500_PadCtrl_XM2CLKCFG = 0x100008D0UL,
+ NvOdmPinRegister_Apx2500_PadCtrl_MEMCOMP = 0x100008D4UL,
+
+ /// Pin configuration registers for NVIDIA Tegra 600 products
+ NvOdmPinRegister_Tegra600_PullUpDown_A = 0x100000A0UL,
+ NvOdmPinRegister_Tegra600_PullUpDown_B = 0x100000A4UL,
+ NvOdmPinRegister_Tegra600_PullUpDown_C = 0x100000A8UL,
+ NvOdmPinRegister_Tegra600_PullUpDown_D = 0x100000ACUL,
+ NvOdmPinRegister_Tegra600_PullUpDown_E = 0x100000B0UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_AOCFG1 = 0x10000868UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_AOCFG2 = 0x1000086CUL,
+ NvOdmPinRegister_Tegra600_PadCtrl_ATCFG1 = 0x10000870UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_ATCFG2 = 0x10000874UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_CDEV1CFG = 0x10000878UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_CDEV2CFG = 0x1000087CUL,
+ NvOdmPinRegister_Tegra600_PadCtrl_CSUSCFG = 0x10000880UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_DAP1CFG = 0x10000884UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_DAP2CFG = 0x10000888UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_DAP3CFG = 0x1000088CUL,
+ NvOdmPinRegister_Tegra600_PadCtrl_DAP4CFG = 0x10000890UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_DBGCFG = 0x10000894UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_LCDCFG1 = 0x10000898UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_LCDCFG2 = 0x1000089CUL,
+ NvOdmPinRegister_Tegra600_PadCtrl_SDIO2CFG = 0x100008A0UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_SDIO3CFG = 0x100008A4UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_SPICFG = 0x100008A8UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_UAACFG = 0x100008ACUL,
+ NvOdmPinRegister_Tegra600_PadCtrl_UABCFG = 0x100008B0UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_UART2CFG = 0x100008B4UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_UART3CFG = 0x100008B8UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_VICFG1 = 0x100008BCUL,
+ NvOdmPinRegister_Tegra600_PadCtrl_VICFG2 = 0x100008C0UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_XM2CFGA = 0x100008C4UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_XM2CFGC = 0x100008C8UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_XM2CFGD = 0x100008CCUL,
+ NvOdmPinRegister_Tegra600_PadCtrl_XM2CLKCFG = 0x100008D0UL,
+ NvOdmPinRegister_Tegra600_PadCtrl_MEMCOMP = 0x100008D4UL,
+
+ /// Pin configuration registers for NVIDIA Tegra 650 products
+ NvOdmPinRegister_Tegra650_PullUpDown_A = 0x100000A0UL,
+ NvOdmPinRegister_Tegra650_PullUpDown_B = 0x100000A4UL,
+ NvOdmPinRegister_Tegra650_PullUpDown_C = 0x100000A8UL,
+ NvOdmPinRegister_Tegra650_PullUpDown_D = 0x100000ACUL,
+ NvOdmPinRegister_Tegra650_PullUpDown_E = 0x100000B0UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_AOCFG1 = 0x10000868UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_AOCFG2 = 0x1000086CUL,
+ NvOdmPinRegister_Tegra650_PadCtrl_ATCFG1 = 0x10000870UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_ATCFG2 = 0x10000874UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_CDEV1CFG = 0x10000878UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_CDEV2CFG = 0x1000087CUL,
+ NvOdmPinRegister_Tegra650_PadCtrl_CSUSCFG = 0x10000880UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_DAP1CFG = 0x10000884UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_DAP2CFG = 0x10000888UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_DAP3CFG = 0x1000088CUL,
+ NvOdmPinRegister_Tegra650_PadCtrl_DAP4CFG = 0x10000890UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_DBGCFG = 0x10000894UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_LCDCFG1 = 0x10000898UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_LCDCFG2 = 0x1000089CUL,
+ NvOdmPinRegister_Tegra650_PadCtrl_SDIO2CFG = 0x100008A0UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_SDIO3CFG = 0x100008A4UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_SPICFG = 0x100008A8UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_UAACFG = 0x100008ACUL,
+ NvOdmPinRegister_Tegra650_PadCtrl_UABCFG = 0x100008B0UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_UART2CFG = 0x100008B4UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_UART3CFG = 0x100008B8UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_VICFG1 = 0x100008BCUL,
+ NvOdmPinRegister_Tegra650_PadCtrl_VICFG2 = 0x100008C0UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_XM2CFGA = 0x100008C4UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_XM2CFGC = 0x100008C8UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_XM2CFGD = 0x100008CCUL,
+ NvOdmPinRegister_Tegra650_PadCtrl_XM2CLKCFG = 0x100008D0UL,
+ NvOdmPinRegister_Tegra650_PadCtrl_MEMCOMP = 0x100008D4UL,
+
+ NvOdmPinRegister_Force32 = 0x7fffffffUL,
+} NvOdmPinRegister;
+
+/*
+ * C pre-processor macros are provided below to help ODMs specify
+ * pin electrical attributes in a more readable and maintainable fashion
+ * than hardcoding hexadecimal numbers directly. Please refer to the
+ * Electrical, Thermal and Mechanical data sheet for your product for more
+ * detailed information regarding the effects these values have
+ */
+
+/**
+ * Use this macro to program the PullUpDown_A register.
+ *
+ * @param ATA : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param ATB : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param ATC : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param ATD : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param ATE : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param DAP1 : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param DAP2 : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param DAP3 : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param DAP4 : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param DTA : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param DTB : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param DTC : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param DTD : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param DTE : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param DTF : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param GPV : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ */
+
+#define NVODM_QUERY_PIN_AP15_PULLUPDOWN_A(ATA, ATB, ATC, ATD, ATE, DAP1, DAP2, DAP3, DAP4, DTA, DTB, DTC, DTD, DTE, DTF, GPV) \
+ ((((ATA)&3UL) << 0) | (((ATB)&3UL) << 2) | (((ATC)&3UL) << 4) | \
+ (((ATD)&3UL) << 6) | (((ATE)&3UL) << 8) | (((DAP1)&3UL) << 10) | \
+ (((DAP2)&3UL) << 12) | (((DAP3)&3UL) << 14) | (((DAP4)&3UL) << 16) | \
+ (((DTA)&3UL) << 18) | (((DTB)&3UL) << 20) | (((DTC)&3UL) << 22) | \
+ (((DTD)&3UL) << 24) | (((DTE)&3UL) << 26) | (((DTF)&3UL) << 28) | \
+ (((GPV)&3UL) << 30))
+
+/**
+ * Use this macro to program the PullUpDown_B register.
+ *
+ * @param RM : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param I2CP : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param PTA : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param GPU7 : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param KBCA : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param KBCB : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param KBCC : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param KBCD : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param SPDI : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param SPDO : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param GPU : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param SLXA : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param SLXB : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param SLXC : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param SLXD : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param SLXK : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ */
+
+#define NVODM_QUERY_PIN_AP15_PULLUPDOWN_B(RM, I2CP, PTA, GPU7, KBCA, KBCB, KBCC, KBCD, SPDI, SPDO, GPU, SLXA, SLXB, SLXC, SLXD, SLXK) \
+ ((((RM)&3UL) << 0) | (((I2CP)&3UL) << 2) | (((PTA)&3UL) << 4) | \
+ (((GPU7)&3UL) << 6) | (((KBCA)&3UL) << 8) | (((KBCB)&3UL) << 10) | \
+ (((KBCC)&3UL) << 12) | (((KBCD)&3UL) << 14) | (((SPDI)&3UL) << 16) | \
+ (((SPDO)&3UL) << 18) | (((GPU)&3UL) << 20) | (((SLXA)&3UL) << 22) | \
+ (((SLXB)&3UL) << 24) | (((SLXC)&3UL) << 26) | (((SLXD)&3UL) << 28) | \
+ (((SLXK)&3UL) << 30))
+
+/**
+ * Use this macro to program the PullUpDown_C register.
+ *
+ * @param CDEV1 : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param CDEV2 : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param SPIA : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param SPIB : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param SPIC : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param SPID : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param SPIE : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param SPIF : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param SPIG : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param SPIH : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param IRTX : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param IRRX : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param XM2A : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param XM2C : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param XM2D : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param XM2S : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ */
+
+#define NVODM_QUERY_PIN_AP15_PULLUPDOWN_C(CDEV1, CDEV2, SPIA, SPIB, SPIC, SPID, SPIE, SPIF, SPIG, SPIH, IRTX, IRRX, XM2A, XM2C, XM2D, XM2S) \
+ ((((CDEV1)&3UL) << 0) | (((CDEV2)&3UL) << 2) | (((SPIA)&3UL) << 4) | \
+ (((SPIB)&3UL) << 6) | (((SPIC)&3UL) << 8) | (((SPID)&3UL) << 10) | \
+ (((SPIE)&3UL) << 12) | (((SPIF)&3UL) << 14) | (((SPIG)&3UL) << 16) | \
+ (((SPIH)&3UL) << 18) | (((IRTX)&3UL) << 20) | (((IRRX)&3UL) << 22) | \
+ (((XM2A)&3UL) << 24) | (((XM2C)&3UL) << 26) | (((XM2D)&3UL) << 28) | \
+ (((XM2S)&3UL) << 30))
+
+/**
+ * Use this macro to program the PullUpDown_D register.
+ *
+ * @param UAA : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param UAB : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param UAC : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param UAD : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param UCA : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param UCB : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param LD17_0 : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param LD19_18 : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param LD21_20 : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param LD23_22 : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param LS : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param LC : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param CSUS : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param SDB : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param SDC : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param SDD : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ */
+
+#define NVODM_QUERY_PIN_AP15_PULLUPDOWN_D(UAA, UAB, UAC, UAD, UCA, UCB, LD17_0, LD19_18, LD21_20, LD23_22, LS, LC, CSUS, SDB, SDC, SDD) \
+ ((((UAA)&3UL) << 0) | (((UAB)&3UL) << 2) | (((UAC)&3UL) << 4) | \
+ (((UAD)&3UL) << 6) | (((UCA)&3UL) << 8) | (((UCB)&3UL) << 10) | \
+ (((LD17_0)&3UL) << 12) | (((LD19_18)&3UL) << 14) | (((LD21_20)&3UL) << 16) | \
+ (((LD23_22)&3UL) << 18) | (((LS)&3UL) << 20) | (((LC)&3UL) << 22) | \
+ (((CSUS)&3UL) << 24) | (((SDB)&3UL) << 26) | (((SDC)&3UL) << 28) | \
+ (((SDD)&3UL) << 30))
+
+/**
+ * Use this macro to program the PullUpDown_E register.
+ *
+ * @param KBCF : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param KBCE : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param PMCA : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ * @param PMCB : Configure internal pull-up/down (0 = normal, 1 = pull-down, 2 = pull-up). Valid Range 0 - 3
+ */
+
+#define NVODM_QUERY_PIN_AP15_PULLUPDOWN_E(KBCF, KBCE, PMCA, PMCB) \
+ ((((KBCF)&3UL) << 0) | (((KBCE)&3UL) << 2) | (((PMCA)&3UL) << 4) | \
+ (((PMCB)&3UL) << 6))
+
+/**
+ * Use this macro to program the PadCtrl_AOCFG1, PadCtrl_AOCFG2,
+ * PadCtrl_ATCFG1, PadCtrl_ATCFG2, PadCtrl_CDEV1CFG, PadCtrl_CDEV2CFG,
+ * PadCtrl_CSUSCFG, PadCtrl_DAP1CFG, PadCtrl_DAP2CFG, PadCtrl_DAP3CFG,
+ * PadCtrl_DAP4CFG, PadCtrl_DBGCFG, PadCtrl_LCDCFG1, PadCtrl_LCDCFG2,
+ * PadCtrl_SDIO2CFG, PadCtrl_SDIO3CFG, PadCtrl_SPICFG, PadCtrl_UAACFG,
+ * PadCtrl_UABCFG, PadCtrl_UART2CFG, PadCtrl_UART3CFG, PadCtrl_VICFG1 and
+ * PadCtrl_VICFG2 registers.
+ *
+ * @param HSM_EN : Enable high-speed mode (0 = disable). Valid Range 0 - 1
+ * @param SCHMT_EN : Schmitt trigger enable (0 = disable). Valid Range 0 - 1
+ * @param LPMD : Low-power current/impedance selection (0 = 400 ohm, 1 = 200 ohm, 2 = 100 ohm, 3 = 50 ohm). Valid Range 0 - 3
+ * @param CAL_DRVDN : Pull-down drive strength. Valid Range 0 - 31
+ * @param CAL_DRVUP : Pull-up drive strength. Valid Range 0 - 31
+ * @param CAL_DRVDN_SLWR : Pull-up slew control (0 = max). Valid Range 0 - 3
+ * @param CAL_DRVUP_SLWF : Pull-down slew control (0 = max). Valid Range 0 - 3
+ */
+
+#define NVODM_QUERY_PIN_AP15_PADCTRL_AOCFG1(HSM_EN, SCHMT_EN, LPMD, CAL_DRVDN, CAL_DRVUP, CAL_DRVDN_SLWR, CAL_DRVUP_SLWF) \
+ ((((HSM_EN)&1UL) << 2) | (((SCHMT_EN)&1UL) << 3) | (((LPMD)&3UL) << 4) | \
+ (((CAL_DRVDN)&31UL) << 12) | (((CAL_DRVUP)&31UL) << 20) | \
+ (((CAL_DRVDN_SLWR)&3UL) << 28) | (((CAL_DRVUP_SLWF)&3UL) << 30))
+
+/**
+ * Use this macro to program the PadCtrl_XM2CFGA register.
+ *
+ * @param HSM_EN : Enable high-speed mode (0 = disable). Valid Range 0 - 1
+ * @param LPMD : Low-power current/impedance selection (0 = 400 ohm, 1 = 200 ohm, 2 = 100 ohm, 3 = 50 ohm). Valid Range 0 - 3
+ * @param VREF_EN : VRef enable. Valid Range 0 - 1
+ * @param CAL_DRVDN : Pull-down drive strength. Valid Range 0 - 31
+ * @param CAL_DRVUP : Pull-up drive strength. Valid Range 0 - 31
+ * @param CAL_DRVDN_SLWR : Pull-up slew control (0 = max). Valid Range 0 - 3
+ * @param CAL_DRVUP_SLWF : Pull-down slew control (0 = max). Valid Range 0 - 3
+ */
+
+#define NVODM_QUERY_PIN_AP15_PADCTRL_XM2CFGA(HSM_EN, LPMD, VREF_EN, CAL_DRVDN, CAL_DRVUP, CAL_DRVDN_SLWR, CAL_DRVUP_SLWF) \
+ ((((HSM_EN)&1UL) << 2) | (((LPMD)&3UL) << 4) | (((VREF_EN)&1UL) << 6) | \
+ (((CAL_DRVDN)&31UL) << 12) | (((CAL_DRVUP)&31UL) << 20) | \
+ (((CAL_DRVDN_SLWR)&3UL) << 28) | (((CAL_DRVUP_SLWF)&3UL) << 30))
+
+/**
+ * Use this macro to program the PadCtrl_XM2CFGC, PadCtrl_XM2CFGD and
+ * PadCtrl_XM2CLKCFG registers.
+ *
+ * @param HSM_EN : Enable high-speed mode (0 = disable). Valid Range 0 - 1
+ * @param SCHMT_EN : Schmitt trigger enable (0 = disable). Valid Range 0 - 1
+ * @param LPMD : Low-power current/impedance selection (0 = 400 ohm, 1 = 200 ohm, 2 = 100 ohm, 3 = 50 ohm). Valid Range 0 - 3
+ * @param VREF_EN : VRef enable. Valid Range 0 - 1
+ * @param CAL_DRVDN : Pull-down drive strength. Valid Range 0 - 31
+ * @param CAL_DRVUP : Pull-up drive strength. Valid Range 0 - 31
+ * @param CAL_DRVDN_SLWR : Pull-up slew control (0 = max). Valid Range 0 - 3
+ * @param CAL_DRVUP_SLWF : Pull-down slew control (0 = max). Valid Range 0 - 3
+ */
+
+#define NVODM_QUERY_PIN_AP15_PADCTRL_XM2CFGC(HSM_EN, SCHMT_EN, LPMD, VREF_EN, CAL_DRVDN, CAL_DRVUP, CAL_DRVDN_SLWR, CAL_DRVUP_SLWF) \
+ ((((HSM_EN)&1UL) << 2) | (((SCHMT_EN)&1UL) << 3) | (((LPMD)&3UL) << 4) | \
+ (((VREF_EN)&1UL) << 6) | (((CAL_DRVDN)&31UL) << 12) | \
+ (((CAL_DRVUP)&31UL) << 20) | (((CAL_DRVDN_SLWR)&3UL) << 28) | \
+ (((CAL_DRVUP_SLWF)&3UL) << 30))
+
+/**
+ * Use this macro to program the PadCtrl_MEMCOMP register.
+ *
+ * @param E_HSM : Enable high-speed mode (0 = disable). Valid Range 0 - 1
+ * @param COMPPAD_DRVDN : Pull-down drive strength. Valid Range 0 - 31
+ * @param COMPPAD_DRVUP : Pull-up drive strength. Valid Range 0 - 31
+ */
+
+#define NVODM_QUERY_PIN_AP15_PADCTRL_MEMCOMP(E_HSM, COMPPAD_DRVDN, COMPPAD_DRVUP) \
+ ((((E_HSM)&1UL) << 2) | (((COMPPAD_DRVDN)&31UL) << 12) | \
+ (((COMPPAD_DRVUP)&31UL) << 20))
+
+#ifdef __cplusplus
+}
+#endif
+
+/** @} */
+#endif // INCLUDED_NVODM_QUERY_PINS_AP15_H
+
« no previous file with comments | « arch/arm/mach-tegra/nv/include/nvodm_query_pins.h ('k') | arch/arm/mach-tegra/nv/include/nvodm_query_pins_ap20.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698