> -----Original Message----- > From: Heiko Schocher <h...@denx.de> > Sent: 2019年5月24日 12:58 > To: Chuanhua Han <chuanhua....@nxp.com> > Cc: albert.u.b...@aribaud.net; Priyanka Jain <priyanka.j...@nxp.com>; Udit > Agarwal <udit.agar...@nxp.com>; u-boot@lists.denx.de > Subject: [EXT] Re: [PATCH 5/7] drivers: i2c: mxc: Solve the compiler error > when > using i2c dm mode > > Caution: EXT Email > > Hello Chuanhua Han, > > Am 23.05.2019 um 11:22 schrieb Chuanhua Han: > > This patch solved the following compilation error: > > > > 1.Remove the definition of CONFIG_SYS_I2C to solve the following > > compilation issue: > > In file included from include/config.h:8:0, > > from include/common.h:20: > > include/config_fallbacks.h:51:4: error: #error "Cannot define > > CONFIG_SYS_I2C when CONFIG_DM_I2C is used" > > # error "Cannot define CONFIG_SYS_I2C when CONFIG_DM_I2C is used" > > ^~~~~ > > In file included from include/config.h:8:0, > > from include/common.h:20: > > include/config_fallbacks.h:51:4: error: #error "Cannot define > > CONFIG_SYS_I2C when CONFIG_DM_I2C is used" > > # error "Cannot define CONFIG_SYS_I2C when CONFIG_DM_I2C is used" > > ^~~~~ > > Shouldn't this patch merged with the patch, which introduces DM_I2C? > > Else you break git bisect.. OK.You are right > > > 2.Remove the definition of CONFIG_SYS_I2C_EARLY_INIT to solve the > > following compilation issue: > > board/freescale/lx2160a/lx2160a.c: In function 'board_early_init_f': > > board/freescale/lx2160a/lx2160a.c:108:2: warning: implicit declaration > > of function 'i2c_early_init_f'; did you mean 'arch_early_init_r'? > > [-Wimplicit-function-declaration] > > i2c_early_init_f(); > > ^~~~~~~~~~~~~~~~ > > arch_early_init_r > > > > 3.Move the enable_i2c_clk function definition to resolve the following > > compilation issues: > > drivers/i2c/mxc_i2c.c: In function 'mxc_i2c_probe': > > drivers/i2c/mxc_i2c.c:824:8: warning: implicit declaration of > > function 'enable_i2c_clk'; > > did you mean 'enable_irq_wake'? [-Wimplicit-function-declaration] > > ret = enable_i2c_clk(1, bus->seq); > > ^~~~~~~~~~~~~~ > > enable_irq_wake > > > > Signed-off-by: Chuanhua Han <chuanhua....@nxp.com> > > --- > > arch/arm/include/asm/arch-fsl-layerscape/config.h | 2 -- > > Hmm... this is a "common" file ... have you checked, if this change does not > break other boards? Yes, there will be no impact > > > drivers/i2c/mxc_i2c.c | 15 > ++++++++------- > > please in a seperate patch, thanks! OK > > > 2 files changed, 8 insertions(+), 9 deletions(-) > > > > diff --git a/arch/arm/include/asm/arch-fsl-layerscape/config.h > > b/arch/arm/include/asm/arch-fsl-layerscape/config.h > > index eb21c09e01..5f87499980 100644 > > --- a/arch/arm/include/asm/arch-fsl-layerscape/config.h > > +++ b/arch/arm/include/asm/arch-fsl-layerscape/config.h > > @@ -178,8 +178,6 @@ > > #elif defined(CONFIG_ARCH_LX2160A) > > #define TZPC_BASE 0x02200000 > > #define TZPCDECPROT_0_SET_BASE (TZPC_BASE > + 0x804) > > -#define CONFIG_SYS_I2C > > -#define CONFIG_SYS_I2C_EARLY_INIT > > #define SRDS_MAX_LANES 8 > > #ifndef L1_CACHE_BYTES > > #define L1_CACHE_SHIFT 6 > > diff --git a/drivers/i2c/mxc_i2c.c b/drivers/i2c/mxc_i2c.c index > > f3811eb0c5..241367bac8 100644 > > --- a/drivers/i2c/mxc_i2c.c > > +++ b/drivers/i2c/mxc_i2c.c > > @@ -558,6 +558,14 @@ static int i2c_read_data(struct mxc_i2c_bus > *i2c_bus, uchar chip, uchar *buf, > > return 0; > > } > > > > +int __enable_i2c_clk(unsigned char enable, unsigned int i2c_num) { > > + return 1; > > +} > > + > > +int enable_i2c_clk(unsigned char enable, unsigned int i2c_num) > > + __attribute__((weak, alias("__enable_i2c_clk"))); > > + > > #ifndef CONFIG_DM_I2C > > /* > > * Read data from I2C device > > @@ -723,13 +731,6 @@ static int mxc_i2c_probe(struct i2c_adapter *adap, > uint8_t chip) > > return bus_i2c_write(i2c_get_base(adap), chip, 0, 0, NULL, 0); > > } > > > > -int __enable_i2c_clk(unsigned char enable, unsigned i2c_num) -{ > > - return 1; > > -} > > -int enable_i2c_clk(unsigned char enable, unsigned i2c_num) > > - __attribute__((weak, alias("__enable_i2c_clk"))); > > - > > void bus_i2c_init(int index, int speed, int unused, > > int (*idle_bus_fn)(void *p), void *idle_bus_data) > > { > > > > -- > DENX Software Engineering GmbH, Managing Director: Wolfgang Denk > HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany > Phone: +49-8142-66989-52 Fax: +49-8142-66989-80 Email: h...@denx.de _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot