[coreboot-gerrit] Patch set updated for coreboot: 4bae317 i2c: Change the type of the data parameter to uint8_t.
Gabe Black (gabeblack@chromium.org)
gerrit at coreboot.org
Wed Jul 10 04:01:36 CEST 2013
Gabe Black (gabeblack at chromium.org) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/3721
-gerrit
commit 4bae317492ef7af387911bcf7fbf1ccd4a1e8e3a
Author: Gabe Black <gabeblack at google.com>
Date: Sun Jun 30 03:47:33 2013 -0700
i2c: Change the type of the data parameter to uint8_t.
Data is intended to be a byte array, so it should be described by a type which
has a fixed size equal to an 8 bit byte. Also, the data passed to write
shouldn't be modified and can be const.
Change-Id: I6466303d962998f6c37c2d4006a39c2d79a235c1
Signed-off-by: Gabe Black <gabeblack at chromium.org>
---
src/cpu/samsung/exynos5250/i2c.c | 6 +++---
src/cpu/samsung/exynos5420/i2c.c | 13 +++++++------
src/include/device/i2c.h | 6 ++++--
3 files changed, 14 insertions(+), 11 deletions(-)
diff --git a/src/cpu/samsung/exynos5250/i2c.c b/src/cpu/samsung/exynos5250/i2c.c
index 723cee6..e83ab57 100644
--- a/src/cpu/samsung/exynos5250/i2c.c
+++ b/src/cpu/samsung/exynos5250/i2c.c
@@ -347,7 +347,7 @@ static int i2c_transfer(struct s3c24x0_i2c *i2c,
}
int i2c_read(unsigned bus, unsigned chip, unsigned addr,
- unsigned alen, unsigned char *buf, unsigned len)
+ unsigned alen, uint8_t *buf, unsigned len)
{
struct s3c24x0_i2c_bus *i2c;
unsigned char xaddr[4];
@@ -376,7 +376,7 @@ int i2c_read(unsigned bus, unsigned chip, unsigned addr,
}
int i2c_write(unsigned bus, unsigned chip, unsigned addr,
- unsigned alen, unsigned char *buf, unsigned len)
+ unsigned alen, const uint8_t *buf, unsigned len)
{
struct s3c24x0_i2c_bus *i2c;
unsigned char xaddr[4];
@@ -397,7 +397,7 @@ int i2c_write(unsigned bus, unsigned chip, unsigned addr,
i2c = &i2c_buses[bus];
ret = i2c_transfer(i2c->regs, I2C_WRITE, chip << 1, &xaddr[4 - alen],
- alen, buf, len);
+ alen, (void *)buf, len);
return ret != 0;
}
diff --git a/src/cpu/samsung/exynos5420/i2c.c b/src/cpu/samsung/exynos5420/i2c.c
index acb5bcf..2268628 100644
--- a/src/cpu/samsung/exynos5420/i2c.c
+++ b/src/cpu/samsung/exynos5420/i2c.c
@@ -408,7 +408,8 @@ static int hsi2c_wait_for_transfer(struct exynos5_hsi2c *i2c)
return 0;
}
-static int hsi2c_senddata(struct exynos5_hsi2c *i2c, uint8_t *data, int len)
+static int hsi2c_senddata(struct exynos5_hsi2c *i2c, const uint8_t *data,
+ int len)
{
while (!hsi2c_check_transfer(i2c) && len) {
if (!(read32(&i2c->usi_fifo_stat) & HSI2C_TX_FIFO_FULL)) {
@@ -434,7 +435,7 @@ static int hsi2c_write(struct exynos5_hsi2c *i2c,
unsigned char chip,
unsigned char addr[],
unsigned char alen,
- unsigned char data[],
+ const uint8_t data[],
unsigned short len)
{
uint32_t i2c_auto_conf;
@@ -470,7 +471,7 @@ static int hsi2c_read(struct exynos5_hsi2c *i2c,
unsigned char chip,
unsigned char addr[],
unsigned char alen,
- unsigned char data[],
+ uint8_t data[],
unsigned short len,
int check)
{
@@ -632,7 +633,7 @@ bailout:
}
int i2c_read(unsigned bus, unsigned chip, unsigned addr,
- unsigned alen, unsigned char *buf, unsigned len)
+ unsigned alen, uint8_t *buf, unsigned len)
{
struct s3c24x0_i2c_bus *i2c;
unsigned char xaddr[4];
@@ -667,7 +668,7 @@ int i2c_read(unsigned bus, unsigned chip, unsigned addr,
}
int i2c_write(unsigned bus, unsigned chip, unsigned addr,
- unsigned alen, unsigned char *buf, unsigned len)
+ unsigned alen, const uint8_t *buf, unsigned len)
{
struct s3c24x0_i2c_bus *i2c;
unsigned char xaddr[4];
@@ -692,7 +693,7 @@ int i2c_write(unsigned bus, unsigned chip, unsigned addr,
alen, buf, len);
else
ret = i2c_transfer(i2c->regs, I2C_WRITE, chip << 1,
- &xaddr[4 - alen], alen, buf, len);
+ &xaddr[4 - alen], alen, (void *)buf, len);
if (ret != 0) {
diff --git a/src/include/device/i2c.h b/src/include/device/i2c.h
index d880a7b..997d201 100644
--- a/src/include/device/i2c.h
+++ b/src/include/device/i2c.h
@@ -20,10 +20,12 @@
#ifndef _DEVICE_I2C_H_
#define _DEVICE_I2C_H_
+#include <stdint.h>
+
/* note: chip is the 7-bit I2C address */
int i2c_read(unsigned bus, unsigned chip, unsigned addr,
- unsigned alen, unsigned char *buf, unsigned len);
+ unsigned alen, uint8_t *buf, unsigned len);
int i2c_write(unsigned bus, unsigned chip, unsigned addr,
- unsigned alen, unsigned char *buf, unsigned len);
+ unsigned alen, const uint8_t *buf, unsigned len);
#endif /* _DEVICE_I2C_H_ */
More information about the coreboot-gerrit
mailing list