mirror of
https://github.com/Telecominfraproject/OpenCellular.git
synced 2025-12-27 18:25:05 +00:00
smbus: Don't use shared memory buffer for word writes
This is a waste of code, since it trades off a 5-byte buffer for a 4-byte pointer. BUG=chrome-os-partner:36362 BRANCH=none TEST=make buildall -j Change-Id: I2b3336ba2c4804f2781592d2c939ae28e83c846b Signed-off-by: Randall Spangler <rspangler@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/246180 Reviewed-by: Vic Yang <victoryang@chromium.org>
This commit is contained in:
committed by
ChromeOS Commit Bot
parent
19b6e5da23
commit
f956dc46fc
@@ -143,18 +143,13 @@ int smbus_write_word(uint8_t i2c_port, uint8_t slave_addr,
|
||||
uint8_t smbus_cmd, uint16_t d16)
|
||||
{
|
||||
int rv;
|
||||
struct smbus_wr_word *s;
|
||||
rv = shared_mem_acquire(sizeof(struct smbus_wr_word), (char **)&s);
|
||||
if (rv) {
|
||||
CPRINTF("smbus write wd[%02X] mem error\n", smbus_cmd);
|
||||
return rv;
|
||||
}
|
||||
s->slave_addr = slave_addr,
|
||||
s->smbus_cmd = smbus_cmd;
|
||||
s->data[0] = d16 & 0xFF;
|
||||
s->data[1] = (d16 >> 8) & 0xFF;
|
||||
rv = smbus_if_write(i2c_port, (struct smbus_wr_if *)s, 0, 2, 1);
|
||||
shared_mem_release(s);
|
||||
struct smbus_wr_word s;
|
||||
|
||||
s.slave_addr = slave_addr,
|
||||
s.smbus_cmd = smbus_cmd;
|
||||
s.data[0] = d16 & 0xFF;
|
||||
s.data[1] = (d16 >> 8) & 0xFF;
|
||||
rv = smbus_if_write(i2c_port, (struct smbus_wr_if *)&s, 0, 2, 1);
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user