Hello all,

When I boot my board (Intel Comet Lake based) using Coreboot I have one too many I2C busses compared to the stock AMI BIOS. Using i2cdetect under Ubuntu with the stock BIOS it shows:

$ i2cdetect -l

i2c-3   unknown         i915 gmbus dpc                          N/A
i2c-1   unknown         Synopsys DesignWare I2C adapter         N/A
i2c-6   unknown         DPDDC-A                                 N/A
i2c-4   unknown         i915 gmbus misc                         N/A
i2c-2   unknown         i915 gmbus dpb                          N/A
i2c-0   unknown         SMBus I801 adapter at efa0              N/A
i2c-7   unknown         DPDDC-C                                 N/A
i2c-5   unknown         i915 gmbus dpd                          N/A

When I run the same command having booted using Coreboot then it gives:

$ i2cdetect -l

i2c-3   unknown         i915 gmbus dpb                          N/A
i2c-1   unknown         SMBus I801 adapter at efa0              N/A
i2c-8   unknown         DPDDC-C                                 N/A
i2c-6   unknown         i915 gmbus dpd                          N/A
i2c-4   unknown         i915 gmbus dpc                          N/A
i2c-2   unknown         Synopsys DesignWare I2C adapter         N/A
i2c-0   unknown         Synopsys DesignWare I2C adapter         N/A
i2c-7   unknown         DPDDC-A                                 N/A
i2c-5   unknown         i915 gmbus misc                         N/A

I’m guessing these are controlled by the devices that are configured in the devicetree.cb file. What I have currently that appears to be related to I2C is:

    register "SerialIoDevMode" = "{
        [PchSerialIoIndexI2C0]  = PchSerialIoPci,
        [PchSerialIoIndexI2C1]  = PchSerialIoPci,
        [PchSerialIoIndexI2C2]  = PchSerialIoPci,
        [PchSerialIoIndexI2C3]  = PchSerialIoPci,
        [PchSerialIoIndexI2C4]  = PchSerialIoDisabled,
        [PchSerialIoIndexI2C5]  = PchSerialIoDisabled,
    }”

device pci 15.0 on end  # I2C #0
device pci 15.1 off end # I2C #1
device pci 15.2 off end # I2C #2
device pci 15.3 off end # I2C #3
device pci 19.0 off end # I2C #4
device pci 19.1 off end # I2C #5
device pci 1f.4 on  end # SMBus

The definitions of “on” and “off” are based on lspci only reporting PCI devices 15.0 and 1f.4 when Linux is booted using the stock BIOS.

-Andy.

_______________________________________________
coreboot mailing list -- coreboot@coreboot.org
To unsubscribe send an email to coreboot-le...@coreboot.org

Reply via email to