I am trying to install Linux on our custom board similar to the I.MX6Q Sabresd board. Linux version: 3.0.35.
On the Sabresd board HDMI uses I2C2, and on our custom board HDMI uses I2C3.
In arch/arm/mx6/board_mx6q_sabresd.c:
static struct fsl_mxc_hdmi_platform_data hdmi_data = {
.init = hdmi_init,
.enable_pins = hdmi_enable_ddc_pin,
.disable_pins = hdmi_disable_ddc_pin,
};
The function of hdmi_enable_ddc_pin would set the IOMUX:MX6DL_PAD_KEY_COL3__HDMI_TX_DDC_SCL,MX6DL_PAD_KEY_ROW3__HDMI_TX_DDC_SDA. However, I can not set the IOMUX, while i use the i2c3. Would it be ok while i use i2c3?
Hi jie
you are right, i2c3 also should work fine.
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi,igorpadykov
If i2c3 work fine, what should I change for the function of hdmi_enable_ddc_pin?
static iomux_v3_cfg_t mx6q_sabresd_hdmi_ddc_pads[] = {
MX6Q_PAD_KEY_COL3__HDMI_TX_DDC_SCL, /* HDMI DDC SCL */
MX6Q_PAD_KEY_ROW3__HDMI_TX_DDC_SDA, /* HDMI DDC SDA */
};
static void hdmi_enable_ddc_pin(void)
{
if (cpu_is_mx6dl())
mxc_iomux_v3_setup_multiple_pads(mx6dl_sabresd_hdmi_ddc_pads,
ARRAY_SIZE(mx6dl_sabresd_hdmi_ddc_pads));
else
mxc_iomux_v3_setup_multiple_pads(mx6q_sabresd_hdmi_ddc_pads,
ARRAY_SIZE(mx6q_sabresd_hdmi_ddc_pads));
}