summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: b3a7a14)
raw | patch | inline | side by side (parent: b3a7a14)
author | Ming Wei <a0868762@ti.com> | |
Mon, 5 Jun 2017 19:16:36 +0000 (14:16 -0500) | ||
committer | Ming Wei <a0868762@ti.com> | |
Mon, 5 Jun 2017 19:16:36 +0000 (14:16 -0500) |
Signed-off-by: Ming Wei <a0868762@ti.com>
include/evmc66x_pinmux.h | patch | blob | history | |
src/audk2g.c | patch | blob | history | |
src/evmc66x_pinmux.c | patch | blob | history |
index 796e95dd05169f38ba858de1a3220165f1194039..4f3d81f00e2cf35da4161ee6ee8346e0aad5162a 100644 (file)
--- a/include/evmc66x_pinmux.h
+++ b/include/evmc66x_pinmux.h
*/
int32_t audk2g_pinMuxSetMode(uint16_t padCfgId, Audk2gPadCfgMuxMode muxMode);
+/**
+ * \brief Configures pull up/down of a pad config register
+ *
+ * \param padCfgId [IN] Pad config register Id; 0 - 259
+ * \param pullMode [IN] Pad config pull mode
+ *
+ * \return
+ * \n 0 - Pull mode configuration is successful
+ * \n -1 - Invalid parameter
+ */
+int32_t audk2g_pullSetMode(uint16_t padCfgId, uint16_t pullMode);
+
#endif /* _EVMC66X_AUDK2G_PINMUX_H_ */
/* Nothing past this point */
diff --git a/src/audk2g.c b/src/audk2g.c
index fc7475ce06673a9c3b56b8eacc94371175fa8107..3a90445e81d85f20ce1bd1e6ca421fd255204628 100644 (file)
--- a/src/audk2g.c
+++ b/src/audk2g.c
for (audk2g_padCfg = 169; audk2g_padCfg <= audk2g_padMax; audk2g_padCfg++)
{
audk2g_pinMuxSetMode(audk2g_padCfg, AUDK2G_PADCONFIG_MUX_MODE_QUINARY);
+ // set to weak pull down
+ audk2g_pullSetMode(audk2g_padCfg, 0);
}
/* MCASP0AXR[12:15] - PADCONFIG 188 to 191 */
for (audk2g_padCfg = 188; audk2g_padCfg <= audk2g_padMax; audk2g_padCfg++)
{
audk2g_pinMuxSetMode(audk2g_padCfg, AUDK2G_PADCONFIG_MUX_MODE_QUINARY);
+ // set to weak pull down
+ audk2g_pullSetMode(audk2g_padCfg, 0);
}
for (audk2g_padCfg = 152; audk2g_padCfg <= audk2g_padMax; audk2g_padCfg++)
{
audk2g_pinMuxSetMode(audk2g_padCfg, AUDK2G_PADCONFIG_MUX_MODE_QUINARY);
+ // set to weak pull down
+ audk2g_pullSetMode(audk2g_padCfg, 0);
}
/* MCASP1AHCLKX - PADCONFIG 157 */
for (audk2g_padCfg = 159; audk2g_padCfg <= audk2g_padMax; audk2g_padCfg++)
{
audk2g_pinMuxSetMode(audk2g_padCfg, AUDK2G_PADCONFIG_MUX_MODE_QUINARY);
+ // set to weak pull down
+ audk2g_pullSetMode(audk2g_padCfg, 0);
}
/* MCASP1AXR9 - PADCONFIG 168 */
audk2g_pinMuxSetMode(168, AUDK2G_PADCONFIG_MUX_MODE_QUINARY);
+ // set to weak pull down
+ audk2g_pullSetMode(168, 0);
/* Configure McASP2 lines */
for (audk2g_padCfg = 140; audk2g_padCfg <= audk2g_padMax; audk2g_padCfg++)
{
audk2g_pinMuxSetMode(audk2g_padCfg, AUDK2G_PADCONFIG_MUX_MODE_QUINARY);
+ // set to weak pull down
+ audk2g_pullSetMode(audk2g_padCfg, 0);
}
/* MCASP2FSX - PADCONFIG 149 */
audk2g_pinMuxSetMode(149, AUDK2G_PADCONFIG_MUX_MODE_QUINARY);
+ // set to weak pull down
+ audk2g_pullSetMode(149, 0);
/* MCASP2ACLKX - PADCONFIG 151 */
audk2g_pinMuxSetMode(151, AUDK2G_PADCONFIG_MUX_MODE_QUINARY);
+ // set to weak pull down
+ audk2g_pullSetMode(151, 0);
/* Configure GPIO for McASP_CLK_SEL - GPIO0 132 & PADCONFIG 163 */
audk2g_pinMuxSetMode(163, AUDK2G_PADCONFIG_MUX_MODE_QUATERNARY);
diff --git a/src/evmc66x_pinmux.c b/src/evmc66x_pinmux.c
index 2c78fc261c5e86e375dfa16a2e20fbee5abcc4ec..8411926cafdb4a6626037cb4033e9b2fae910e43 100644 (file)
--- a/src/evmc66x_pinmux.c
+++ b/src/evmc66x_pinmux.c
} //audk2g_pinMuxSetMode
+/**
+ * \brief Configures pull up/down of a pad config register
+ *
+ * \param padCfgId [IN] Pad config register Id; 0 - 259
+ * \param pullMode [IN] Pad config pull mode
+ *
+ * \return
+ * \n 0 - Pull mode configuration is successful
+ * \n -1 - Invalid parameter
+ */
+int32_t audk2g_pullSetMode(uint16_t padCfgId, uint16_t pullMode)
+{
+ volatile Uint32 *padCfgBase;
+
+ if((padCfgId < PADCONFIG_MAX_COUNT) &&
+ (pullMode <= AUDK2G_PADCONFIG_MUX_MODE_SENARY))
+ {
+ /* Unlock the Boot Config */
+ CSL_BootCfgUnlockKicker();
+
+ padCfgBase = &hBootCfg->PADCONFIG0;
+ // set the pull mode (up/down)
+ CSL_FINS(*(padCfgBase + padCfgId), BOOTCFG_PADCONFIG0_PULLTYPESEL, pullMode);
+ // pull mode enabled
+ CSL_FINS(*(padCfgBase + padCfgId), BOOTCFG_PADCONFIG0_PULLUDEN, 0);
+
+ return (0);
+ }
+ else
+ {
+ return (-1);
+ }
+
+} //audk2g_pullSetMode
+
/* Nothing past this point */