From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lukasz Majewski Date: Fri, 1 Feb 2019 15:19:26 +0100 Subject: [U-Boot] [PATCH v2 04/21] vybrid: clock: Provide enable_i2c_clk() function for Vybrid In-Reply-To: <6c00175cb82faeafe110e81c4aeebb96@agner.ch> References: <20190120133425.17526-1-lukma@denx.de> <20190120133425.17526-5-lukma@denx.de> <6c00175cb82faeafe110e81c4aeebb96@agner.ch> Message-ID: <20190201151926.0123c2a5@jawa> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Stefan, > On 20.01.2019 14:34, Lukasz Majewski wrote: > > Provide function to enable I2C2 clock for vf610 (BK4) - in the > > generic code. > > Can you split this in two commits, one adding enable_i2c_clk and the > second removing board specific clock enable? This particular commit only adds new clock to generic driver. There is a commit latter, which is removing the board file: [PATCH v2 15/21] pcm052: board: Remove in-board setup code (it is now replaced by DM setup) The approach as is is optimal - I do not see any build errors for separate patches. > > Also our module seems to use I2C0, could you add that instance to the > supported instances too? It should be rather trivial: > > > switch (i2c_num) { > case 0: > clrsetbits_le32(&ccm->ccgr4, CCM_CCGR4_I2C0_CTRL_MASK, > CCM_CCGR4_I2C0_CTRL_MASK); The problem is that this change is not related to BK4/PCM052 ... or "our module" is a PCM052? If this is some custom board / module (not pcm052) then I would prefer to have this change as a separate (not related to this patch set) patch. > ... > > > -- > Stefan > > > > > Signed-off-by: Lukasz Majewski > > --- > > > > Changes in v2: None > > > > arch/arm/cpu/armv7/vf610/generic.c | 19 +++++++++++++++++++ > > arch/arm/include/asm/arch-vf610/clock.h | 3 +++ > > board/phytec/pcm052/pcm052.c | 2 +- > > 3 files changed, 23 insertions(+), 1 deletion(-) > > > > diff --git a/arch/arm/cpu/armv7/vf610/generic.c > > b/arch/arm/cpu/armv7/vf610/generic.c > > index cbd3391918..f1e6c7816e 100644 > > --- a/arch/arm/cpu/armv7/vf610/generic.c > > +++ b/arch/arm/cpu/armv7/vf610/generic.c > > @@ -375,3 +375,22 @@ void enable_caches(void) > > mmu_set_region_dcache_behaviour(IRAM_BASE_ADDR, IRAM_SIZE, > > option); } > > #endif > > + > > +#ifdef CONFIG_SYS_I2C_MXC > > +/* i2c_num can be from 0 - 3 */ > > +int enable_i2c_clk(unsigned char enable, unsigned int i2c_num) > > +{ > > + struct ccm_reg *ccm = (struct ccm_reg *)CCM_BASE_ADDR; > > + > > + switch (i2c_num) { > > + case 2: > > + clrsetbits_le32(&ccm->ccgr10, > > CCM_CCGR10_I2C2_CTRL_MASK, > > + CCM_CCGR10_I2C2_CTRL_MASK); > > + break; > > + default: > > + return -EINVAL; > > + } > > + > > + return 0; > > +} > > +#endif > > diff --git a/arch/arm/include/asm/arch-vf610/clock.h > > b/arch/arm/include/asm/arch-vf610/clock.h > > index 3bd73a01f3..72184fd608 100644 > > --- a/arch/arm/include/asm/arch-vf610/clock.h > > +++ b/arch/arm/include/asm/arch-vf610/clock.h > > @@ -22,6 +22,9 @@ enum mxc_clock { > > void enable_ocotp_clk(unsigned char enable); > > unsigned int mxc_get_clock(enum mxc_clock clk); > > u32 get_lpuart_clk(void); > > +#ifdef CONFIG_SYS_I2C_MXC > > +int enable_i2c_clk(unsigned char enable, unsigned int i2c_num); > > +#endif > > > > #define imx_get_fecclk() mxc_get_clock(MXC_FEC_CLK) > > > > diff --git a/board/phytec/pcm052/pcm052.c > > b/board/phytec/pcm052/pcm052.c index f988af2abc..cfc8009102 100644 > > --- a/board/phytec/pcm052/pcm052.c > > +++ b/board/phytec/pcm052/pcm052.c > > @@ -485,7 +485,7 @@ static void clock_init(void) > > clrsetbits_le32(&ccm->ccgr9, CCM_REG_CTRL_MASK, > > CCM_CCGR9_FEC0_CTRL_MASK | > > CCM_CCGR9_FEC1_CTRL_MASK); clrsetbits_le32(&ccm->ccgr10, > > CCM_REG_CTRL_MASK, > > - CCM_CCGR10_NFC_CTRL_MASK | > > CCM_CCGR10_I2C2_CTRL_MASK); > > + CCM_CCGR10_NFC_CTRL_MASK); > > > > clrsetbits_le32(&anadig->pll2_ctrl, > > ANADIG_PLL2_CTRL_POWERDOWN, ANADIG_PLL2_CTRL_ENABLE | > > ANADIG_PLL2_CTRL_DIV_SELECT); Best regards, Lukasz Majewski -- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lukma at denx.de -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 488 bytes Desc: OpenPGP digital signature URL: