
In message 20040423160543.D8298@gateway.bln.innominate.local you wrote:
Do you really think this is more readable and more general?
Yes, absoluteley - and if _MPC8260 and _8xx declare their port #define DECLARE_I2C_PORT ........ in their board-configuration file the soft_i2c.c is board independend and other boards can easily use it .....
But soft_i2c.c is board independent as is. It's even processor inde- pendent as is.
In the old version he has to add 6 times the same #ifdef s This is ugly copy&paste programming in my eyes.
Your mileage my vary...
If we'd move the code in the board config files we'd have to copy it approx. 100 times - that would be even worse. This code is not board dependent.
I see what you mean - but your patch is even less portable as it will break all boards that fail to define DECLARE_I2C_PORT. OK - you can add a #ifdef, but then I really think that there is no difference in readability left. Another option is to use a file-global declaration of the pointers, but that would increas the memopry footprint of U-boot by 264 bytes - after all, I think the benefit of all these changes is epsilon and not worth the effort.
Best regards,
Wolfgang Denk