[LinuxBIOS] MCP55 LinuxBIOS with USB debug

bxshi bingxunshi at gmail.com
Wed Jan 24 02:08:21 CET 2007

  You may need to use
> smbus_send_byte(hub_address, hub_channel);
> or
> smbus_write_byte(hub_address, hub_channel);

smbus_write_byte may need three parametres, smbus_write_byte(device ,address
for PCA9545 to enable one channel need four steps ,

1. outb(hub_address, base_io+02)
2. outb(hub_channel, base_io +03)
3. outb(0x04, base_io + 00)
4. test  inb(base_io+01)

it is a little different from PCA9556/PCA9557. as I look at the code , use
smbus_write_byte may not make pca9545 work .
use smbus_send_byte(device,val) , I get the output:

No memory for this cpu
No memory

so I change below
outb(val, smbus_io_base + SMBHSTCMD);
then everything works fine.
so I think smbus_send_byte(device,val) ,device should be the HUB_ADDRESS ,
and val is the HUB_CHANNEL. is it right?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.coreboot.org/pipermail/coreboot/attachments/20070124/49f50e20/attachment.html>

More information about the coreboot mailing list