summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/board-whistler-pinmux.c
diff options
context:
space:
mode:
authorNikesh Oswal <noswal@nvidia.com>2012-01-24 12:11:31 +0530
committerVarun Colbert <vcolbert@nvidia.com>2012-01-30 11:57:01 -0800
commit39408ce587a6d9d9bc5fb1ec65dba27d56c16d46 (patch)
treecd6c7c548e25dc22facfcf6e6491f71c0dd20d1b /arch/arm/mach-tegra/board-whistler-pinmux.c
parent47ec40cdf0fc96c91fa9245f3f12dbd5a8ef3c96 (diff)
arm: tegra: whistler: increase driver strength of dap
for low driver strength of daps we are getting noise in voice call hence increase the drive strength of daps for voice call Bug: 919350 Change-Id: I29dca68f339078cd80bebdb6ae46b46117e32949 Reviewed-on: http://git-master/r/77002 Change-Id: I4c59379a1859938038cff175ab695808bddb0963 Signed-off-by: Nikesh Oswal <noswal@nvidia.com> Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-on: http://git-master/r/77733 Reviewed-by: Automatic_Commit_Validation_User
Diffstat (limited to 'arch/arm/mach-tegra/board-whistler-pinmux.c')
-rw-r--r--arch/arm/mach-tegra/board-whistler-pinmux.c32
1 files changed, 31 insertions, 1 deletions
diff --git a/arch/arm/mach-tegra/board-whistler-pinmux.c b/arch/arm/mach-tegra/board-whistler-pinmux.c
index 081b4feb531f..22c2f984c662 100644
--- a/arch/arm/mach-tegra/board-whistler-pinmux.c
+++ b/arch/arm/mach-tegra/board-whistler-pinmux.c
@@ -22,6 +22,35 @@
#include "board-whistler.h"
#include "gpio-names.h"
+/* Setting the drive strength of pins
+ * hsm: Enable High speed mode (ENABLE/DISABLE)
+ * Schimit: Enable/disable schimit (ENABLE/DISABLE)
+ * drive: low power mode (DIV_1, DIV_2, DIV_4, DIV_8)
+ * pulldn_drive - drive down (falling edge) - Driver Output Pull-Down drive
+ * strength code. Value from 0 to 31.
+ * pullup_drive - drive up (rising edge) - Driver Output Pull-Up drive
+ * strength code. Value from 0 to 31.
+ * pulldn_slew - Driver Output Pull-Up slew control code - 2bit code
+ * code 11 is least slewing of signal. code 00 is highest
+ * slewing of the signal.
+ * Value - FASTEST, FAST, SLOW, SLOWEST
+ * pullup_slew - Driver Output Pull-Down slew control code -
+ * code 11 is least slewing of signal. code 00 is highest
+ * slewing of the signal.
+ * Value - FASTEST, FAST, SLOW, SLOWEST
+ */
+#define SET_DRIVE(_name, _hsm, _schmitt, _drive, _pulldn_drive, _pullup_drive, _pulldn_slew, _pullup_slew) \
+ { \
+ .pingroup = TEGRA_DRIVE_PINGROUP_##_name, \
+ .hsm = TEGRA_HSM_##_hsm, \
+ .schmitt = TEGRA_SCHMITT_##_schmitt, \
+ .drive = TEGRA_DRIVE_##_drive, \
+ .pull_down = TEGRA_PULL_##_pulldn_drive, \
+ .pull_up = TEGRA_PULL_##_pullup_drive, \
+ .slew_rising = TEGRA_SLEW_##_pulldn_slew, \
+ .slew_falling = TEGRA_SLEW_##_pullup_slew, \
+ }
+
#define DEFAULT_DRIVE(_name) \
{ \
.pingroup = TEGRA_DRIVE_PINGROUP_##_name, \
@@ -34,13 +63,14 @@
.slew_falling = TEGRA_SLEW_SLOWEST, \
}
-
static __initdata struct tegra_drive_pingroup_config whistler_drive_pinmux[] = {
DEFAULT_DRIVE(DBG),
DEFAULT_DRIVE(DDC),
DEFAULT_DRIVE(VI1),
DEFAULT_DRIVE(VI2),
DEFAULT_DRIVE(SDIO1),
+ SET_DRIVE(DAP2, DISABLE, ENABLE, DIV_1, 46, 46, SLOWEST, SLOWEST),
+ SET_DRIVE(DAP3, DISABLE, ENABLE, DIV_1, 46, 46, SLOWEST, SLOWEST),
};
static __initdata struct tegra_pingroup_config whistler_pinmux[] = {