[PATCH 1/7] I2C: i.MX: Add early i2c support for i.MX6
Marco Felsch
m.felsch at pengutronix.de
Mon Jan 23 01:01:23 PST 2023
Hi John,
thanks for your patch.
albeit it is obvious we tend to have a small commit message here. The
code change lgtm.
Regards,
Marco
On 23-01-22, John Watts wrote:
> Signed-off-by: John Watts <contact at jookia.org>
> ---
> drivers/i2c/busses/i2c-imx-early.c | 14 ++++++++++++++
> include/pbl/i2c.h | 1 +
> 2 files changed, 15 insertions(+)
>
> diff --git a/drivers/i2c/busses/i2c-imx-early.c b/drivers/i2c/busses/i2c-imx-early.c
> index 4e0f7e517d..6c8bdc7904 100644
> --- a/drivers/i2c/busses/i2c-imx-early.c
> +++ b/drivers/i2c/busses/i2c-imx-early.c
> @@ -303,6 +303,20 @@ struct pbl_i2c *ls1046_i2c_init(void __iomem *regs)
> return &fsl_i2c.i2c;
> }
>
> +struct pbl_i2c *imx6_i2c_early_init(void __iomem *regs)
> +{
> + fsl_i2c.regs = regs;
> + fsl_i2c.regshift = 2;
> + fsl_i2c.i2cr_ien_opcode = I2CR_IEN_OPCODE_1;
> + fsl_i2c.i2sr_clr_opcode = I2SR_CLR_OPCODE_W0C;
> + /* Divider for ~100kHz when coming from the ROM */
> + fsl_i2c.ifdr = 0x36;
> +
> + fsl_i2c.i2c.xfer = i2c_fsl_xfer;
> +
> + return &fsl_i2c.i2c;
> +}
> +
> struct pbl_i2c *imx8m_i2c_early_init(void __iomem *regs)
> {
> fsl_i2c.regs = regs;
> diff --git a/include/pbl/i2c.h b/include/pbl/i2c.h
> index d9910f531f..32e456d46b 100644
> --- a/include/pbl/i2c.h
> +++ b/include/pbl/i2c.h
> @@ -16,6 +16,7 @@ static inline int pbl_i2c_xfer(struct pbl_i2c *i2c,
> }
>
> struct pbl_i2c *imx8m_i2c_early_init(void __iomem *regs);
> +struct pbl_i2c *imx6_i2c_early_init(void __iomem *regs);
> struct pbl_i2c *ls1046_i2c_init(void __iomem *regs);
>
> static inline int i2c_dev_probe(struct pbl_i2c *i2c, int addr, bool onebyte)
> --
> 2.39.0
>
>
>
More information about the barebox
mailing list