i2c: duplicate TCA9548 control byte

This commit is contained in:
Donald Sebastian Leung 2020-07-03 15:55:11 +08:00 committed by Sébastien Bourdeauducq
parent 3f0cf6e683
commit f265976df6
1 changed files with 5 additions and 2 deletions

View File

@ -183,8 +183,11 @@ mod imp {
if !write(busno, address << 1)? { if !write(busno, address << 1)? {
return Err("PCA9548 failed to ack write address") return Err("PCA9548 failed to ack write address")
} }
if !write(busno, channels)? { // Duplicate control byte: one for SCL, one for SDA
return Err("PCA9548 failed to ack control word") for _ in 0..2 {
if !write(busno, channels)? {
return Err("PCA9548 failed to ack control word")
}
} }
stop(busno)?; stop(busno)?;
Ok(()) Ok(())