* [PATCH 1/2] power: twl4030: Add twl4030_i2c_read() function
@ 2020-10-26 21:36 ` Pali Rohár
2020-10-26 21:36 ` [PATCH 2/2] Nokia RX-51: Convert to CONFIG_DM_I2C Pali Rohár
2020-10-27 21:45 ` [PATCH 1/2] power: twl4030: Add twl4030_i2c_read() function Jaehoon Chung
0 siblings, 2 replies; 8+ messages in thread
From: Pali Rohár @ 2020-10-26 21:36 UTC (permalink / raw)
To: u-boot
Function twl4030_i2c_read() is like twl4030_i2c_read_u8() but instead of
single value it rather returns array of values.
Signed-off-by: Pali Roh?r <pali@kernel.org>
---
drivers/power/twl4030.c | 7 +++----
include/twl4030.h | 12 +++++++++---
2 files changed, 12 insertions(+), 7 deletions(-)
diff --git a/drivers/power/twl4030.c b/drivers/power/twl4030.c
index b0d5cba2c4..f48af84e17 100644
--- a/drivers/power/twl4030.c
+++ b/drivers/power/twl4030.c
@@ -201,7 +201,7 @@ int twl4030_i2c_write_u8(u8 chip_no, u8 reg, u8 val)
return 0;
}
-int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *valp)
+int twl4030_i2c_read(u8 chip_no, u8 reg, u8 *valp, int len)
{
struct udevice *dev;
int ret;
@@ -211,12 +211,11 @@ int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *valp)
pr_err("unable to get I2C bus. ret %d\n", ret);
return ret;
}
- ret = dm_i2c_reg_read(dev, reg);
- if (ret < 0) {
+ ret = dm_i2c_read(dev, reg, valp, len);
+ if (ret) {
pr_err("reading from twl4030 failed. ret %d\n", ret);
return ret;
}
- *valp = (u8)ret;
return 0;
}
#endif
diff --git a/include/twl4030.h b/include/twl4030.h
index c27ad615ee..ef05193996 100644
--- a/include/twl4030.h
+++ b/include/twl4030.h
@@ -654,14 +654,20 @@ static inline int twl4030_i2c_write_u8(u8 chip_no, u8 reg, u8 val)
return i2c_write(chip_no, reg, 1, &val, 1);
}
-static inline int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *val)
+static inline int twl4030_i2c_read(u8 chip_no, u8 reg, u8 *val, int len)
{
- return i2c_read(chip_no, reg, 1, val, 1);
+ return i2c_read(chip_no, reg, 1, val, len);
}
#else
int twl4030_i2c_write_u8(u8 chip_no, u8 reg, u8 val);
-int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *val);
+int twl4030_i2c_read(u8 chip_no, u8 reg, u8 *val, int len);
#endif
+
+static inline int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *val)
+{
+ return twl4030_i2c_read(chip_no, reg, val, 1);
+}
+
/*
* Power
*/
--
2.20.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 2/2] Nokia RX-51: Convert to CONFIG_DM_I2C
2020-10-26 21:36 ` [PATCH 1/2] power: twl4030: Add twl4030_i2c_read() function Pali Rohár
@ 2020-10-26 21:36 ` Pali Rohár
2020-10-26 22:00 ` Tom Rini
2020-10-27 21:45 ` [PATCH 1/2] power: twl4030: Add twl4030_i2c_read() function Jaehoon Chung
1 sibling, 1 reply; 8+ messages in thread
From: Pali Rohár @ 2020-10-26 21:36 UTC (permalink / raw)
To: u-boot
Signed-off-by: Pali Roh?r <pali@kernel.org>
---
board/nokia/rx51/rx51.c | 26 ++++++++++++++++++++++++--
configs/nokia_rx51_defconfig | 2 ++
include/configs/nokia_rx51.h | 2 ++
3 files changed, 28 insertions(+), 2 deletions(-)
diff --git a/board/nokia/rx51/rx51.c b/board/nokia/rx51/rx51.c
index f624dbfbeb..9cc5eb97b3 100644
--- a/board/nokia/rx51/rx51.c
+++ b/board/nokia/rx51/rx51.c
@@ -22,6 +22,7 @@
*/
#include <common.h>
+#include <dm.h>
#include <env.h>
#include <init.h>
#include <watchdog.h>
@@ -33,6 +34,7 @@
#include <asm/setup.h>
#include <asm/bitops.h>
#include <asm/mach-types.h>
+#include <asm/omap_i2c.h>
#include <asm/arch/mux.h>
#include <asm/arch/sys_proto.h>
#include <asm/arch/mmc_host_def.h>
@@ -390,10 +392,16 @@ int misc_init_r(void)
u8 state;
/* reset lp5523 led */
+#ifndef CONFIG_DM_I2C
i2c_set_bus_num(1);
state = 0xff;
i2c_write(0x32, 0x3d, 1, &state, 1);
i2c_set_bus_num(0);
+#else
+ struct udevice *dev;
+ if (i2c_get_chip_for_busnum(1, 0x32, 1, &dev) == 0)
+ dm_i2c_reg_write(dev, 0x3d, 0xff);
+#endif
/* initialize twl4030 power managment */
twl4030_power_init();
@@ -626,8 +634,8 @@ int rx51_kp_tstc(struct stdio_dev *sdev)
continue;
/* read the key state */
- i2c_read(TWL4030_CHIP_KEYPAD,
- TWL4030_KEYPAD_FULL_CODE_7_0, 1, keys, 8);
+ twl4030_i2c_read(TWL4030_CHIP_KEYPAD,
+ TWL4030_KEYPAD_FULL_CODE_7_0, keys, 8);
/* cut out modifier keys from the keystate */
mods = keys[4] >> 4;
@@ -684,3 +692,17 @@ void board_mmc_power_init(void)
twl4030_power_mmc_init(0);
twl4030_power_mmc_init(1);
}
+
+#ifdef CONFIG_DM_I2C
+static const struct omap_i2c_platdata rx51_i2c[] = {
+ { I2C_BASE1, 2200000, OMAP_I2C_REV_V1 },
+ { I2C_BASE2, 100000, OMAP_I2C_REV_V1 },
+ { I2C_BASE3, 400000, OMAP_I2C_REV_V1 },
+};
+
+U_BOOT_DEVICES(rx51_i2c) = {
+ { "i2c_omap", &rx51_i2c[0] },
+ { "i2c_omap", &rx51_i2c[1] },
+ { "i2c_omap", &rx51_i2c[2] },
+};
+#endif
diff --git a/configs/nokia_rx51_defconfig b/configs/nokia_rx51_defconfig
index e249dff774..d5f27db642 100644
--- a/configs/nokia_rx51_defconfig
+++ b/configs/nokia_rx51_defconfig
@@ -59,3 +59,5 @@ CONFIG_CFB_CONSOLE_ANSI=y
# CONFIG_VGA_AS_SINGLE_DEVICE is not set
CONFIG_SPLASH_SCREEN=y
# CONFIG_GZIP is not set
+CONFIG_DM=y
+CONFIG_DM_I2C=y
diff --git a/include/configs/nokia_rx51.h b/include/configs/nokia_rx51.h
index c86c429413..1d7ee7fc19 100644
--- a/include/configs/nokia_rx51.h
+++ b/include/configs/nokia_rx51.h
@@ -77,7 +77,9 @@
/* commands to include */
+#ifndef CONFIG_DM_I2C
#define CONFIG_SYS_I2C
+#endif
/*
* TWL4030
--
2.20.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 2/2] Nokia RX-51: Convert to CONFIG_DM_I2C
2020-10-26 21:36 ` [PATCH 2/2] Nokia RX-51: Convert to CONFIG_DM_I2C Pali Rohár
@ 2020-10-26 22:00 ` Tom Rini
2020-10-26 22:45 ` [PATCH v2] " Pali Rohár
0 siblings, 1 reply; 8+ messages in thread
From: Tom Rini @ 2020-10-26 22:00 UTC (permalink / raw)
To: u-boot
On Mon, Oct 26, 2020 at 10:36:16PM +0100, Pali Roh?r wrote:
> Signed-off-by: Pali Roh?r <pali@kernel.org>
Please include something for the commit message.
> ---
> board/nokia/rx51/rx51.c | 26 ++++++++++++++++++++++++--
> configs/nokia_rx51_defconfig | 2 ++
> include/configs/nokia_rx51.h | 2 ++
> 3 files changed, 28 insertions(+), 2 deletions(-)
>
> diff --git a/board/nokia/rx51/rx51.c b/board/nokia/rx51/rx51.c
> index f624dbfbeb..9cc5eb97b3 100644
> --- a/board/nokia/rx51/rx51.c
> +++ b/board/nokia/rx51/rx51.c
> @@ -22,6 +22,7 @@
> */
>
> #include <common.h>
> +#include <dm.h>
> #include <env.h>
> #include <init.h>
> #include <watchdog.h>
> @@ -33,6 +34,7 @@
> #include <asm/setup.h>
> #include <asm/bitops.h>
> #include <asm/mach-types.h>
> +#include <asm/omap_i2c.h>
> #include <asm/arch/mux.h>
> #include <asm/arch/sys_proto.h>
> #include <asm/arch/mmc_host_def.h>
> @@ -390,10 +392,16 @@ int misc_init_r(void)
> u8 state;
>
> /* reset lp5523 led */
> +#ifndef CONFIG_DM_I2C
> i2c_set_bus_num(1);
> state = 0xff;
> i2c_write(0x32, 0x3d, 1, &state, 1);
> i2c_set_bus_num(0);
> +#else
> + struct udevice *dev;
> + if (i2c_get_chip_for_busnum(1, 0x32, 1, &dev) == 0)
> + dm_i2c_reg_write(dev, 0x3d, 0xff);
> +#endif
At this point, and especially for boards and not drivers, just do the
conversion unilaterally. Thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20201026/4828e584/attachment.sig>
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v2] Nokia RX-51: Convert to CONFIG_DM_I2C
2020-10-26 22:00 ` Tom Rini
@ 2020-10-26 22:45 ` Pali Rohár
2020-11-15 10:19 ` Lokesh Vutla
0 siblings, 1 reply; 8+ messages in thread
From: Pali Rohár @ 2020-10-26 22:45 UTC (permalink / raw)
To: u-boot
Use twl4030_i2c_read(), i2c_get_chip_for_busnum() and remove
CONFIG_SYS_I2C.
Signed-off-by: Pali Roh?r <pali@kernel.org>
---
board/nokia/rx51/rx51.c | 25 +++++++++++++++++++------
configs/nokia_rx51_defconfig | 2 ++
include/configs/nokia_rx51.h | 2 --
3 files changed, 21 insertions(+), 8 deletions(-)
diff --git a/board/nokia/rx51/rx51.c b/board/nokia/rx51/rx51.c
index f624dbfbeb..63531e1420 100644
--- a/board/nokia/rx51/rx51.c
+++ b/board/nokia/rx51/rx51.c
@@ -22,6 +22,7 @@
*/
#include <common.h>
+#include <dm.h>
#include <env.h>
#include <init.h>
#include <watchdog.h>
@@ -33,6 +34,7 @@
#include <asm/setup.h>
#include <asm/bitops.h>
#include <asm/mach-types.h>
+#include <asm/omap_i2c.h>
#include <asm/arch/mux.h>
#include <asm/arch/sys_proto.h>
#include <asm/arch/mmc_host_def.h>
@@ -386,14 +388,13 @@ static void omap3_update_aux_cr_secure_rx51(u32 set_bits, u32 clear_bits)
*/
int misc_init_r(void)
{
+ struct udevice *dev;
char buf[12];
u8 state;
/* reset lp5523 led */
- i2c_set_bus_num(1);
- state = 0xff;
- i2c_write(0x32, 0x3d, 1, &state, 1);
- i2c_set_bus_num(0);
+ if (i2c_get_chip_for_busnum(1, 0x32, 1, &dev) == 0)
+ dm_i2c_reg_write(dev, 0x3d, 0xff);
/* initialize twl4030 power managment */
twl4030_power_init();
@@ -626,8 +627,8 @@ int rx51_kp_tstc(struct stdio_dev *sdev)
continue;
/* read the key state */
- i2c_read(TWL4030_CHIP_KEYPAD,
- TWL4030_KEYPAD_FULL_CODE_7_0, 1, keys, 8);
+ twl4030_i2c_read(TWL4030_CHIP_KEYPAD,
+ TWL4030_KEYPAD_FULL_CODE_7_0, keys, 8);
/* cut out modifier keys from the keystate */
mods = keys[4] >> 4;
@@ -684,3 +685,15 @@ void board_mmc_power_init(void)
twl4030_power_mmc_init(0);
twl4030_power_mmc_init(1);
}
+
+static const struct omap_i2c_platdata rx51_i2c[] = {
+ { I2C_BASE1, 2200000, OMAP_I2C_REV_V1 },
+ { I2C_BASE2, 100000, OMAP_I2C_REV_V1 },
+ { I2C_BASE3, 400000, OMAP_I2C_REV_V1 },
+};
+
+U_BOOT_DEVICES(rx51_i2c) = {
+ { "i2c_omap", &rx51_i2c[0] },
+ { "i2c_omap", &rx51_i2c[1] },
+ { "i2c_omap", &rx51_i2c[2] },
+};
diff --git a/configs/nokia_rx51_defconfig b/configs/nokia_rx51_defconfig
index e249dff774..d5f27db642 100644
--- a/configs/nokia_rx51_defconfig
+++ b/configs/nokia_rx51_defconfig
@@ -59,3 +59,5 @@ CONFIG_CFB_CONSOLE_ANSI=y
# CONFIG_VGA_AS_SINGLE_DEVICE is not set
CONFIG_SPLASH_SCREEN=y
# CONFIG_GZIP is not set
+CONFIG_DM=y
+CONFIG_DM_I2C=y
diff --git a/include/configs/nokia_rx51.h b/include/configs/nokia_rx51.h
index c86c429413..9b89120342 100644
--- a/include/configs/nokia_rx51.h
+++ b/include/configs/nokia_rx51.h
@@ -77,8 +77,6 @@
/* commands to include */
-#define CONFIG_SYS_I2C
-
/*
* TWL4030
*/
--
2.20.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 1/2] power: twl4030: Add twl4030_i2c_read() function
2020-10-26 21:36 ` [PATCH 1/2] power: twl4030: Add twl4030_i2c_read() function Pali Rohár
2020-10-26 21:36 ` [PATCH 2/2] Nokia RX-51: Convert to CONFIG_DM_I2C Pali Rohár
@ 2020-10-27 21:45 ` Jaehoon Chung
2020-10-27 21:57 ` Pali Rohár
1 sibling, 1 reply; 8+ messages in thread
From: Jaehoon Chung @ 2020-10-27 21:45 UTC (permalink / raw)
To: u-boot
Hi,
On 10/27/20 6:36 AM, Pali Roh?r wrote:
> Function twl4030_i2c_read() is like twl4030_i2c_read_u8() but instead of
> single value it rather returns array of values.
Just minor comment.
Is there a reason not to touch twl4030_i2c_write_u8()?
Best Regards,
Jaehoon Chung
>
> Signed-off-by: Pali Roh?r <pali@kernel.org>
> ---
> drivers/power/twl4030.c | 7 +++----
> include/twl4030.h | 12 +++++++++---
> 2 files changed, 12 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/power/twl4030.c b/drivers/power/twl4030.c
> index b0d5cba2c4..f48af84e17 100644
> --- a/drivers/power/twl4030.c
> +++ b/drivers/power/twl4030.c
> @@ -201,7 +201,7 @@ int twl4030_i2c_write_u8(u8 chip_no, u8 reg, u8 val)
> return 0;
> }
>
> -int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *valp)
> +int twl4030_i2c_read(u8 chip_no, u8 reg, u8 *valp, int len)
> {
> struct udevice *dev;
> int ret;
> @@ -211,12 +211,11 @@ int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *valp)
> pr_err("unable to get I2C bus. ret %d\n", ret);
> return ret;
> }
> - ret = dm_i2c_reg_read(dev, reg);
> - if (ret < 0) {
> + ret = dm_i2c_read(dev, reg, valp, len);
> + if (ret) {
> pr_err("reading from twl4030 failed. ret %d\n", ret);
> return ret;
> }
> - *valp = (u8)ret;
> return 0;
> }
> #endif
> diff --git a/include/twl4030.h b/include/twl4030.h
> index c27ad615ee..ef05193996 100644
> --- a/include/twl4030.h
> +++ b/include/twl4030.h
> @@ -654,14 +654,20 @@ static inline int twl4030_i2c_write_u8(u8 chip_no, u8 reg, u8 val)
> return i2c_write(chip_no, reg, 1, &val, 1);
> }
>
> -static inline int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *val)
> +static inline int twl4030_i2c_read(u8 chip_no, u8 reg, u8 *val, int len)
> {
> - return i2c_read(chip_no, reg, 1, val, 1);
> + return i2c_read(chip_no, reg, 1, val, len);
> }
> #else
> int twl4030_i2c_write_u8(u8 chip_no, u8 reg, u8 val);
> -int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *val);
> +int twl4030_i2c_read(u8 chip_no, u8 reg, u8 *val, int len);
> #endif
> +
> +static inline int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *val)
> +{
> + return twl4030_i2c_read(chip_no, reg, val, 1);
> +}
> +
> /*
> * Power
> */
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 1/2] power: twl4030: Add twl4030_i2c_read() function
2020-10-27 21:45 ` [PATCH 1/2] power: twl4030: Add twl4030_i2c_read() function Jaehoon Chung
@ 2020-10-27 21:57 ` Pali Rohár
2020-10-27 22:56 ` Jaehoon Chung
0 siblings, 1 reply; 8+ messages in thread
From: Pali Rohár @ 2020-10-27 21:57 UTC (permalink / raw)
To: u-boot
On Wednesday 28 October 2020 06:45:51 Jaehoon Chung wrote:
> Hi,
>
> On 10/27/20 6:36 AM, Pali Roh?r wrote:
> > Function twl4030_i2c_read() is like twl4030_i2c_read_u8() but instead of
> > single value it rather returns array of values.
>
> Just minor comment.
> Is there a reason not to touch twl4030_i2c_write_u8()?
Well, it is because I have no usage for twl4030_i2c_write() yet. So I have
not touched write functions.
This new twl4030_i2c_read() function is used in PATCH 2/2.
> Best Regards,
> Jaehoon Chung
>
> >
> > Signed-off-by: Pali Roh?r <pali@kernel.org>
> > ---
> > drivers/power/twl4030.c | 7 +++----
> > include/twl4030.h | 12 +++++++++---
> > 2 files changed, 12 insertions(+), 7 deletions(-)
> >
> > diff --git a/drivers/power/twl4030.c b/drivers/power/twl4030.c
> > index b0d5cba2c4..f48af84e17 100644
> > --- a/drivers/power/twl4030.c
> > +++ b/drivers/power/twl4030.c
> > @@ -201,7 +201,7 @@ int twl4030_i2c_write_u8(u8 chip_no, u8 reg, u8 val)
> > return 0;
> > }
> >
> > -int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *valp)
> > +int twl4030_i2c_read(u8 chip_no, u8 reg, u8 *valp, int len)
> > {
> > struct udevice *dev;
> > int ret;
> > @@ -211,12 +211,11 @@ int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *valp)
> > pr_err("unable to get I2C bus. ret %d\n", ret);
> > return ret;
> > }
> > - ret = dm_i2c_reg_read(dev, reg);
> > - if (ret < 0) {
> > + ret = dm_i2c_read(dev, reg, valp, len);
> > + if (ret) {
> > pr_err("reading from twl4030 failed. ret %d\n", ret);
> > return ret;
> > }
> > - *valp = (u8)ret;
> > return 0;
> > }
> > #endif
> > diff --git a/include/twl4030.h b/include/twl4030.h
> > index c27ad615ee..ef05193996 100644
> > --- a/include/twl4030.h
> > +++ b/include/twl4030.h
> > @@ -654,14 +654,20 @@ static inline int twl4030_i2c_write_u8(u8 chip_no, u8 reg, u8 val)
> > return i2c_write(chip_no, reg, 1, &val, 1);
> > }
> >
> > -static inline int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *val)
> > +static inline int twl4030_i2c_read(u8 chip_no, u8 reg, u8 *val, int len)
> > {
> > - return i2c_read(chip_no, reg, 1, val, 1);
> > + return i2c_read(chip_no, reg, 1, val, len);
> > }
> > #else
> > int twl4030_i2c_write_u8(u8 chip_no, u8 reg, u8 val);
> > -int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *val);
> > +int twl4030_i2c_read(u8 chip_no, u8 reg, u8 *val, int len);
> > #endif
> > +
> > +static inline int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *val)
> > +{
> > + return twl4030_i2c_read(chip_no, reg, val, 1);
> > +}
> > +
> > /*
> > * Power
> > */
> >
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 1/2] power: twl4030: Add twl4030_i2c_read() function
2020-10-27 21:57 ` Pali Rohár
@ 2020-10-27 22:56 ` Jaehoon Chung
0 siblings, 0 replies; 8+ messages in thread
From: Jaehoon Chung @ 2020-10-27 22:56 UTC (permalink / raw)
To: u-boot
On 10/28/20 6:57 AM, Pali Roh?r wrote:
> On Wednesday 28 October 2020 06:45:51 Jaehoon Chung wrote:
>> Hi,
>>
>> On 10/27/20 6:36 AM, Pali Roh?r wrote:
>>> Function twl4030_i2c_read() is like twl4030_i2c_read_u8() but instead of
>>> single value it rather returns array of values.
>>
>> Just minor comment.
>> Is there a reason not to touch twl4030_i2c_write_u8()?
>
> Well, it is because I have no usage for twl4030_i2c_write() yet. So I have
> not touched write functions.
>
> This new twl4030_i2c_read() function is used in PATCH 2/2.
>
>> Best Regards,
>> Jaehoon Chung
>>
>>>
>>> Signed-off-by: Pali Roh?r <pali@kernel.org>
Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
Best Regards,
Jaehoon Chung
>>> ---
>>> drivers/power/twl4030.c | 7 +++----
>>> include/twl4030.h | 12 +++++++++---
>>> 2 files changed, 12 insertions(+), 7 deletions(-)
>>>
>>> diff --git a/drivers/power/twl4030.c b/drivers/power/twl4030.c
>>> index b0d5cba2c4..f48af84e17 100644
>>> --- a/drivers/power/twl4030.c
>>> +++ b/drivers/power/twl4030.c
>>> @@ -201,7 +201,7 @@ int twl4030_i2c_write_u8(u8 chip_no, u8 reg, u8 val)
>>> return 0;
>>> }
>>>
>>> -int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *valp)
>>> +int twl4030_i2c_read(u8 chip_no, u8 reg, u8 *valp, int len)
>>> {
>>> struct udevice *dev;
>>> int ret;
>>> @@ -211,12 +211,11 @@ int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *valp)
>>> pr_err("unable to get I2C bus. ret %d\n", ret);
>>> return ret;
>>> }
>>> - ret = dm_i2c_reg_read(dev, reg);
>>> - if (ret < 0) {
>>> + ret = dm_i2c_read(dev, reg, valp, len);
>>> + if (ret) {
>>> pr_err("reading from twl4030 failed. ret %d\n", ret);
>>> return ret;
>>> }
>>> - *valp = (u8)ret;
>>> return 0;
>>> }
>>> #endif
>>> diff --git a/include/twl4030.h b/include/twl4030.h
>>> index c27ad615ee..ef05193996 100644
>>> --- a/include/twl4030.h
>>> +++ b/include/twl4030.h
>>> @@ -654,14 +654,20 @@ static inline int twl4030_i2c_write_u8(u8 chip_no, u8 reg, u8 val)
>>> return i2c_write(chip_no, reg, 1, &val, 1);
>>> }
>>>
>>> -static inline int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *val)
>>> +static inline int twl4030_i2c_read(u8 chip_no, u8 reg, u8 *val, int len)
>>> {
>>> - return i2c_read(chip_no, reg, 1, val, 1);
>>> + return i2c_read(chip_no, reg, 1, val, len);
>>> }
>>> #else
>>> int twl4030_i2c_write_u8(u8 chip_no, u8 reg, u8 val);
>>> -int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *val);
>>> +int twl4030_i2c_read(u8 chip_no, u8 reg, u8 *val, int len);
>>> #endif
>>> +
>>> +static inline int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *val)
>>> +{
>>> + return twl4030_i2c_read(chip_no, reg, val, 1);
>>> +}
>>> +
>>> /*
>>> * Power
>>> */
>>>
>>
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v2] Nokia RX-51: Convert to CONFIG_DM_I2C
2020-10-26 22:45 ` [PATCH v2] " Pali Rohár
@ 2020-11-15 10:19 ` Lokesh Vutla
0 siblings, 0 replies; 8+ messages in thread
From: Lokesh Vutla @ 2020-11-15 10:19 UTC (permalink / raw)
To: u-boot
On 27/10/20 4:15 am, Pali Roh?r wrote:
> Use twl4030_i2c_read(), i2c_get_chip_for_busnum() and remove
> CONFIG_SYS_I2C.
>
> Signed-off-by: Pali Roh?r <pali@kernel.org>
Applied PATCH 1 and this to u-boot-ti for-next branch.
Thanks and regards,
Lokesh
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2020-11-15 10:19 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <CGME20201026213638epcas1p31e20f8b9550ac897a2bdc27d8c4ede14@epcas1p3.samsung.com>
2020-10-26 21:36 ` [PATCH 1/2] power: twl4030: Add twl4030_i2c_read() function Pali Rohár
2020-10-26 21:36 ` [PATCH 2/2] Nokia RX-51: Convert to CONFIG_DM_I2C Pali Rohár
2020-10-26 22:00 ` Tom Rini
2020-10-26 22:45 ` [PATCH v2] " Pali Rohár
2020-11-15 10:19 ` Lokesh Vutla
2020-10-27 21:45 ` [PATCH 1/2] power: twl4030: Add twl4030_i2c_read() function Jaehoon Chung
2020-10-27 21:57 ` Pali Rohár
2020-10-27 22:56 ` Jaehoon Chung
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.