> unless I'm missing something, there are no more accesses to the bus > at that address in scan_adapter() after the detection function > returns, so it isn't necessary. Wrong. There can be more than one possible chip at a given address. For example we detect the MAX6900 at 0x50 after the EEPROMs. After your change, I suspect that we actually detect it at 0x30 (where it cannot be) instead. Even without that, I think we should never rely on the order of the entries in @chips_id, nor on the fact that some addresses are used by a limited number of chips. These are thing that can change quickly and nobody will remember that part of the detection code depended on a condition that isn't true anymore. -- Jean Delvare http://www.ensicaen.ismra.fr/~delvare/