Carl-Daniel Hailfinger wrote: > On 22.02.2008 22:02, Marc Jones wrote: >> We need to discuss v3 smbus operations. Someone has done a lot of work >> to make smbus_ops.c and smbus.h. The code treats smbus as a bus, like >> the pci bus, with a device structure and all. >> >> This approach seems nice and maybe the right way to do it, but it is >> somewhat overkill. I think that the complexity is one reason why the >> structure is in place in v2 but never used. Instead, simpler >> chipset/mainboard specific functions are used. The other reason is that >> the smbus is accessed in ROMCC/CAR code and not in the main coreboot bus >> enumeration code. My observation is that the SPD is the only device on >> smbus used by most mainboards in coreboot. >> >> So, what do we want to do for v3? If we go with the bus/device structure >> every mainboard in v2 will need to have the smbus functions ported. >> Also, someone will have to figure out how to describe the smbus devices >> in the dts and the entire thing might need to use a simpler bus/device >> structure. Or, we can do as was done in v2 and leave it to the >> chipset/mainboard code. >> > > This is a bit more complicated than visible at first glance. We have two > different smbus_read_byte() functions in v3: > int smbus_read_byte(u16 device, u8 address); > int smbus_read_byte(struct device *dev, u8 addr); > > The confusion arises because these two clearly different functions have > the same name. I'd suggest to rename the first smbus_read_byte to > smbus_read_byte_early to make it clear that it does not care about the > device tree. All initram stuff just uses the first function.
That would work, but why have the device tree version if it is never used? Marc -- Marc Jones Senior Firmware Engineer (970) 226-9684 Office mailto:[EMAIL PROTECTED] http://www.amd.com/embeddedprocessors -- coreboot mailing list [email protected] http://www.coreboot.org/mailman/listinfo/coreboot

