Dr. Lu, In mcp55_smbus.h static int do_smbus_send_byte(unsigned smbus_io_base, unsigned device, unsigned char val) { ..... outb(0, smbus_io_base + SMBHSTCMD); ..... }
I wonder why you write 0 to SMBHSTCMD ? if we are using a smbus_hub , I think we should write the channel number we want to enable to this register. for example , if my memory controller is on channel 2 , we should write outb(2,smbus_io_base+SMBHSTCMD). So could that be changed to outb(val,smbus_io_base + SMBHSTCMD) ?
Thanks bxshi