From mboxrd@z Thu Jan 1 00:00:00 1970 From: Przemyslaw Marczak Date: Mon, 12 Jan 2015 10:19:13 +0100 Subject: [U-Boot] [PATCH 08/18] exynos5: config: prepare for dm i2c support In-Reply-To: <1420795275-8878-1-git-send-email-akshay.s@samsung.com> References: <1420795275-8878-1-git-send-email-akshay.s@samsung.com> Message-ID: <54B39191.4050708@samsung.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hello Akshay, On 01/09/2015 10:21 AM, Akshay Saraswat wrote: > Hi Przemyslaw, > >> This commit allows for test i2c drivers with new i2c api >> on Exynos5xxx based boards. >> >> The S3C24X0 I2C driver supports driver model I2C api, >> but i2c peripherials drivers on exynos5 boards doesn't. >> So this commit allows for test ported driver before switch >> the Exynos5 boards to DM I2C at all. >> >> Signed-off-by: Przemyslaw Marczak >> Cc: Akshay Saraswat >> Cc: Simon Glass >> Cc: Minkyu Kang >> --- >> include/configs/exynos5-common.h | 29 ++++++++++++++++++----------- >> 1 file changed, 18 insertions(+), 11 deletions(-) >> >> diff --git a/include/configs/exynos5-common.h b/include/configs/exynos5-common.h >> index ad63f3c..b7af8a5 100644 >> --- a/include/configs/exynos5-common.h >> +++ b/include/configs/exynos5-common.h >> @@ -54,13 +54,6 @@ >> #define CONFIG_CMD_DTT >> #define CONFIG_TMU_CMD_DTT >> >> -/* TPM */ >> -#define CONFIG_TPM >> -#define CONFIG_CMD_TPM >> -#define CONFIG_TPM_TIS_I2C >> -#define CONFIG_TPM_TIS_I2C_BUS_NUMBER 3 >> -#define CONFIG_TPM_TIS_I2C_SLAVE_ADDR 0x20 >> - >> /* MMC SPL */ >> #define COPY_BL2_FNPTR_ADDR 0x02020030 >> #define CONFIG_SUPPORT_EMMC_BOOT >> @@ -126,15 +119,29 @@ >> #define SPI_FLASH_UBOOT_POS (CONFIG_SEC_FW_SIZE + CONFIG_BL1_SIZE) >> >> /* I2C */ >> -#define CONFIG_SYS_I2C_INIT_BOARD >> -#define CONFIG_SYS_I2C >> +#if 0 /* For test */ > > Quick test over SMDK 5250 after replacing #if 0 -> 1. > Looks like there is some problem in changing bus beyond 7. > Please check. > > Console prints are as follows - > > SMDK5250 # i2c dev 8 > Setting bus to 8 > Failure changing bus number (-19) > exit not allowed from main input shell. > I think that this is right, because, the defined buses are: - exynos5.dtsi - 0, 1, 2, 3 (periph_id: 56, 57, 58, 59), - exynos5250.dtsi - 4, 5, 6, 7 (periph_id: 60, 61, 62, 63) but there are no additional i2c nodes in exynos5250-smdk5250.dts file. So, you can use only i2c bus <0:7>. The additional i2c bus nodes are defined in: - exynos54xx.dtsi - 8, 9, 10 (periph_id: 87, 88, 203), So for exynos54xx boards we can switch between i2c <0:10>. >> +#define CONFIG_DM_I2C >> +#endif >> #define CONFIG_CMD_I2C >> -#define CONFIG_SYS_I2C_S3C24X0_SPEED 100000 /* 100 Kbps */ >> #define CONFIG_SYS_I2C_S3C24X0 >> -#define CONFIG_I2C_MULTI_BUS >> +#define CONFIG_SYS_I2C_S3C24X0_SPEED 100000 /* 100 Kbps */ >> #define CONFIG_SYS_I2C_S3C24X0_SLAVE 0x0 >> +#ifndef CONFIG_DM_I2C >> +#define CONFIG_SYS_I2C_INIT_BOARD >> +#define CONFIG_SYS_I2C >> +#define CONFIG_I2C_MULTI_BUS >> +#endif /* ifndef CONFIG_DM_I2C */ >> #define CONFIG_I2C_EDID >> >> +/* TPM */ >> +#ifndef CONFIG_DM_I2C >> +#define CONFIG_TPM >> +#define CONFIG_CMD_TPM >> +#define CONFIG_TPM_TIS_I2C >> +#define CONFIG_TPM_TIS_I2C_BUS_NUMBER 3 >> +#define CONFIG_TPM_TIS_I2C_SLAVE_ADDR 0x20 >> +#endif >> + >> /* SPI */ >> #ifdef CONFIG_SPI_FLASH >> #define CONFIG_EXYNOS_SPI >> -- >> 1.9.1 > > Regards, > Akshay Saraswat > So if you would like to use i2c 8, then please add proper nodes to dts - but please notice that the "reg" addresses are different for 5250/54xx. Best regards, -- Przemyslaw Marczak Samsung R&D Institute Poland Samsung Electronics p.marczak at samsung.com