nyan*: Set GEN2 I2C pads to open-drain mode
The VDDIO to GEN2 I2C SCL/SDA pins is 1.8V and the external pull-up voltage is 3.3V (the external 3.3V > I/O 1.8V) thus the pinmux E_OD bit of these two pins needs to be set to ensure GEN2 I2C pads work fine on 3.3V. BRANCH=nyan BUG=none TEST=observed voltage drop from 3.3V to 2.36V on gen2 i2c on blaze w/o this change. the waveform looks good on both scl/sda pins w/ this change. Change-Id: I1b97f0c9c7580d1e532c3bdf7ac8690241ee7ee3 Signed-off-by: Ken Chang <kenc@nvidia.com> Reviewed-on: https://chromium-review.googlesource.com/200996 Reviewed-by: Julius Werner <jwerner@chromium.org>
This commit is contained in:
parent
7d69a292b1
commit
2db39166ec
3 changed files with 12 additions and 6 deletions
|
|
@ -81,10 +81,12 @@ static void setup_pinmux(void)
|
|||
PINMUX_GEN1_I2C_SDA_FUNC_I2C1 | PINMUX_INPUT_ENABLE);
|
||||
// I2C2 clock.
|
||||
pinmux_set_config(PINMUX_GEN2_I2C_SCL_INDEX,
|
||||
PINMUX_GEN2_I2C_SCL_FUNC_I2C2 | PINMUX_INPUT_ENABLE);
|
||||
PINMUX_GEN2_I2C_SCL_FUNC_I2C2 | PINMUX_INPUT_ENABLE |
|
||||
PINMUX_OPEN_DRAIN);
|
||||
// I2C2 data.
|
||||
pinmux_set_config(PINMUX_GEN2_I2C_SDA_INDEX,
|
||||
PINMUX_GEN2_I2C_SDA_FUNC_I2C2 | PINMUX_INPUT_ENABLE);
|
||||
PINMUX_GEN2_I2C_SDA_FUNC_I2C2 | PINMUX_INPUT_ENABLE |
|
||||
PINMUX_OPEN_DRAIN);
|
||||
// I2C4 (DDC) clock.
|
||||
pinmux_set_config(PINMUX_DDC_SCL_INDEX,
|
||||
PINMUX_DDC_SCL_FUNC_I2C4 | PINMUX_INPUT_ENABLE);
|
||||
|
|
|
|||
|
|
@ -81,10 +81,12 @@ static void setup_pinmux(void)
|
|||
PINMUX_GEN1_I2C_SDA_FUNC_I2C1 | PINMUX_INPUT_ENABLE);
|
||||
// I2C2 clock.
|
||||
pinmux_set_config(PINMUX_GEN2_I2C_SCL_INDEX,
|
||||
PINMUX_GEN2_I2C_SCL_FUNC_I2C2 | PINMUX_INPUT_ENABLE);
|
||||
PINMUX_GEN2_I2C_SCL_FUNC_I2C2 | PINMUX_INPUT_ENABLE |
|
||||
PINMUX_OPEN_DRAIN);
|
||||
// I2C2 data.
|
||||
pinmux_set_config(PINMUX_GEN2_I2C_SDA_INDEX,
|
||||
PINMUX_GEN2_I2C_SDA_FUNC_I2C2 | PINMUX_INPUT_ENABLE);
|
||||
PINMUX_GEN2_I2C_SDA_FUNC_I2C2 | PINMUX_INPUT_ENABLE |
|
||||
PINMUX_OPEN_DRAIN);
|
||||
// I2C4 (DDC) clock.
|
||||
pinmux_set_config(PINMUX_DDC_SCL_INDEX,
|
||||
PINMUX_DDC_SCL_FUNC_I2C4 | PINMUX_INPUT_ENABLE);
|
||||
|
|
|
|||
|
|
@ -81,10 +81,12 @@ static void setup_pinmux(void)
|
|||
PINMUX_GEN1_I2C_SDA_FUNC_I2C1 | PINMUX_INPUT_ENABLE);
|
||||
// I2C2 clock.
|
||||
pinmux_set_config(PINMUX_GEN2_I2C_SCL_INDEX,
|
||||
PINMUX_GEN2_I2C_SCL_FUNC_I2C2 | PINMUX_INPUT_ENABLE);
|
||||
PINMUX_GEN2_I2C_SCL_FUNC_I2C2 | PINMUX_INPUT_ENABLE |
|
||||
PINMUX_OPEN_DRAIN);
|
||||
// I2C2 data.
|
||||
pinmux_set_config(PINMUX_GEN2_I2C_SDA_INDEX,
|
||||
PINMUX_GEN2_I2C_SDA_FUNC_I2C2 | PINMUX_INPUT_ENABLE);
|
||||
PINMUX_GEN2_I2C_SDA_FUNC_I2C2 | PINMUX_INPUT_ENABLE |
|
||||
PINMUX_OPEN_DRAIN);
|
||||
// I2C4 (DDC) clock.
|
||||
pinmux_set_config(PINMUX_DDC_SCL_INDEX,
|
||||
PINMUX_DDC_SCL_FUNC_I2C4 | PINMUX_INPUT_ENABLE);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue