u-boot/include
Ben Warren bb99ad6d82 Add support for multiple I2C buses
Hello,

Attached is a patch providing support for multiple I2C buses at the
command level.  The second part of the patch includes an implementation
for the MPC834x CPU and MPC8349EMDS board.

/*** Note: This patch replaces ticket DNX#2006083042000018 ***/

Signed-off-by: Ben Warren <bwarren@qstreams.com>

Overview:

1. Include new 'i2c' command (based on USB implementation) using
CONFIG_I2C_CMD_TREE.

2. Allow multiple buses by defining CONFIG_I2C_MULTI_BUS.  Note that
the commands to change bus number and speed are only available under the
new 'i2c' command mentioned in the first bullet.

3. The option CFG_I2C_NOPROBES has been expanded to work in multi-bus
systems.  When CONFIG_I2C_MULTI_BUS is used, this option takes the form
of an array of bus-device pairs.  Otherwise, it is an array of uchar.

CHANGELOG:
        Added new 'i2c' master command for all I2C interaction.  This is
conditionally compiled with CONFIG_I2C_CMD_TREE.  New commands added for
setting I2C bus speed as well as changing the active bus if the board
has more than one (conditionally compiled with
CONFIG_I2C_MULTI_BUS).  Updated NOPROBE logic to handle multiple buses.
Updated README.

regards,
Ben
2006-11-03 19:42:19 -06:00
..
asm-arm * Update Intel IXP4xx support 2006-05-30 15:56:48 +02:00
asm-avr32 Add AT32AP CPU and AT32AP7000 SoC support 2006-10-24 14:27:35 +02:00
asm-blackfin Coding Style cleanup 2006-03-12 02:55:22 +01:00
asm-i386 Remove unnnecessary #include <linux/types.h> from include/asm-*/u-boot.h 2005-11-25 16:38:03 +01:00
asm-m68k Minor code cleanup. 2006-06-10 22:00:40 +02:00
asm-microblaze Remove unnnecessary #include <linux/types.h> from include/asm-*/u-boot.h 2005-11-25 16:38:03 +01:00
asm-mips Add support for gth2 board 2006-06-16 17:32:31 +02:00
asm-nios Remove unnnecessary #include <linux/types.h> from include/asm-*/u-boot.h 2005-11-25 16:38:03 +01:00
asm-nios2 Nios II - Fix I/O Macros and mini-app stubs 2006-06-08 11:59:57 -04:00
asm-ppc mpc83xx: Changed to unified mpx83xx names and added common 83xx changes 2006-11-03 19:42:18 -06:00
bedbug * Code cleanup: 2003-06-27 21:31:46 +00:00
configs mpc83xx: fix TQM build by defining a CFG_FLASH_SIZE for it 2006-11-03 19:42:19 -06:00
cramfs Add cramfs support for m68k 2005-09-25 16:59:36 +02:00
galileo More code cleanup 2006-07-21 15:24:56 +02:00
jffs2 Add common (with Linux) MTD partition scheme and "mtdparts" command 2005-08-08 01:03:24 +02:00
linux Add support for AMCC Sequoia PPC440EPx eval board 2006-09-07 11:51:23 +02:00
pcmcia Fix IDE stability problems on CPC45 board. 2005-01-22 18:26:04 +00:00
74xx_7xx.h * Patch by Ronen Shitrit, 10 Dec 2003: 2004-01-03 00:43:19 +00:00
405_dimm.h * Code cleanup: 2003-06-27 21:31:46 +00:00
405_mal.h Add support for AMCC Sequoia PPC440EPx eval board 2006-09-07 11:51:23 +02:00
405gp_i2c.h Initial revision 2002-04-01 19:07:39 +00:00
405gp_pci.h Initial revision 2002-04-01 14:29:03 +00:00
440_i2c.h Add support for AMCC Sequoia PPC440EPx eval board 2006-09-07 11:51:23 +02:00
_exports.h Added simple_strtoul(), getenv() and setenv() to the exported functions. 2006-09-01 15:00:02 +02:00
ACEX1K.h * Patch by Steven Scholz, 10 Oct 2003 2003-10-09 20:09:04 +00:00
ahci.h Add AHCI support to u-boot 2006-08-23 10:39:01 -05:00
altera.h * Patch by Steven Scholz, 10 Oct 2003 2003-10-09 20:09:04 +00:00
arm920t.h * Code cleanup: 2003-06-27 21:31:46 +00:00
arm925t.h [PATCH] omap925.c: Remove unused functions 2006-10-28 17:13:12 +02:00
arm926ejs.h * Patch by George G. Davis, 19 Aug 2003: 2003-08-29 22:00:43 +00:00
arm946es.h Add ARM946E cpu and core module targets; remap memory to 0x00000000 2005-09-25 01:48:28 +02:00
armcoremodule.h Update ARM Integrator boards: 2005-10-04 23:10:28 +02:00
at91rm9200_i2c.h Code Cleanup 2004-10-10 18:03:33 +00:00
at91rm9200_net.h * Move dm9161.c and lxt972.c into cpu/arm920t/at91rm9200 2005-10-05 01:51:29 +02:00
ata.h Code cleanup; make several boards compile & link. 2004-03-14 22:25:36 +00:00
bcm5221.h Add support for Cogent csb637 2005-10-05 02:00:09 +02:00
bmp_layout.h * Implement new mechanism to export U-Boot's functions to standalone 2003-07-24 23:38:38 +00:00
bzlib.h * Patches by Xianghua Xiao, 15 Oct 2003: 2003-10-15 23:53:47 +00:00
circbuf.h Add support for Siemens SX1 mobile phone; 2004-03-12 00:14:09 +00:00
clps7111.h Initial revision 2002-03-14 16:44:03 +00:00
cmd_confdefs.h Adjust "echo" as a default command 2006-03-12 16:51:59 +01:00
command.h * Patches by Pantelis Antoniou, 30 Mar 2004: 2004-04-15 18:22:41 +00:00
common.h Merge branch 'master' of http://www.denx.de/git/u-boot 2006-10-19 12:03:44 -05:00
commproc.h Add support for TQM885D board. 2006-07-12 15:26:01 +02:00
console.h Initial revision 2000-11-12 23:38:42 +00:00
crc.h Some code cleanup 2006-04-16 10:51:58 +02:00
da9030.h delta board: DA9030 initialization and i2c support. Some minor changes to 2006-03-24 12:23:27 +01:00
dataflash.h * Cleanup lowboot code for MPC5200 2004-01-02 14:00:00 +00:00
devices.h Add support for console over UDP (compatible to Ingo Molnar's 2004-08-02 21:11:11 +00:00
dm9161.h * Move dm9161.c and lxt972.c into cpu/arm920t/at91rm9200 2005-10-05 01:51:29 +02:00
dtt.h Patches by Murray Jensen, 17 Jun 2003: 2003-06-19 23:40:20 +00:00
e500.h Patch by Jon Loeliger, 16 Jul 2004: 2004-08-01 23:02:45 +00:00
elf.h * Fix parameter passing to standalone images with bootm command 2003-10-30 21:49:38 +00:00
environment.h Add NAND environment support for PPC440EPx Sequoia NAND boot config 2006-09-12 20:19:10 +02:00
exports.h Added simple_strtoul(), getenv() and setenv() to the exported functions. 2006-09-01 15:00:02 +02:00
ext2fs.h ext2fs support added 2004-12-16 17:33:10 +00:00
fat.h Fix fatload command on FAT32 formatted partitions. 2006-08-14 22:05:26 +02:00
fdc.h * Code cleanup: 2003-06-27 21:31:46 +00:00
flash.h Update for CAM5200 board: 2006-10-03 20:28:38 +02:00
fpga.h Cleanup for GCC-4.x 2005-10-13 16:45:02 +02:00
ft_build.h * Fix a bunch of compiler warnings for gcc 4.0 2006-10-19 11:33:52 -05:00
hush.h Initial revision 2002-11-03 00:07:02 +00:00
i2c.h Add support for multiple I2C buses 2006-11-03 19:42:19 -06:00
i8042.h * Patch by Marc Singer, 29 May 2003: 2003-05-31 18:35:21 +00:00
ide.h Code cleanup; make several boards compile & link. 2004-03-14 22:25:36 +00:00
image.h Merge with /home/wd/git/u-boot/master 2006-10-11 14:15:21 +02:00
ioports.h * Patch by Jon Loeliger, Kumar Gala 2005-02-08 2005-07-23 10:37:35 -05:00
keyboard.h [Strange. I _did_ check these in before. Seems SF restored an old 2004-01-16 00:30:56 +00:00
kgdb.h Initial revision 2002-08-27 10:38:37 +00:00
lcd.h Add splashscreen support for MCC200 board. 2006-08-30 23:09:00 +02:00
lcdvideo.h Initial revision 2001-11-03 22:15:16 +00:00
lh7a40x.h * Patch by Paul Ruhland, 10 Jun 2004: 2004-06-10 21:55:33 +00:00
lh7a400.h * Patch by Paul Ruhland, 10 Jun 2004: 2004-06-10 21:55:33 +00:00
lh7a404.h * Patch by Paul Ruhland, 10 Jun 2004: 2004-06-10 21:55:33 +00:00
linux_logo.h Initial revision 2002-09-17 21:37:55 +00:00
lists.h * Code cleanup: 2003-06-27 21:31:46 +00:00
logbuff.h * Improve log buffer code; use "loglevel" to decide which messages 2002-12-08 09:53:23 +00:00
lpd7a400_cpld.h * Patch by Paul Ruhland, 17 May 2004: 2004-06-09 13:37:52 +00:00
lxt971a.h Patches by Lars Munch, 12 Jul 2004: 2004-08-02 23:39:03 +00:00
lynxkdi.h * Patch by Scott McNutt, 21 Jul 2003: 2003-07-27 00:21:01 +00:00
malloc.h * Code cleanup: 2003-06-27 21:31:46 +00:00
mii_phy.h * Code cleanup: 2003-06-27 21:31:46 +00:00
miiphy.h Fix miiphy global data initialization (problem on 4xx boards when no 2005-11-30 18:06:04 +01:00
mk48t59.h Initial revision 2002-03-08 21:31:05 +00:00
mmc.h * Fix CONFIG_NET_MULTI support in include/net.h 2003-06-15 22:40:42 +00:00
mpc5xx.h * Patch by Denis Peter, 8 Dec 2003 2004-01-02 16:05:07 +00:00
mpc5xxx.h - Add MPC5XXX register definition MPC5XXX_WU_GPIO_DATA_I and change the 2006-11-01 01:38:16 +01:00
mpc8xx.h Patches by Pantelis Antoniou, 30 Mar 2004: 2004-04-15 21:31:56 +00:00
mpc8xx_irq.h Initial revision 2001-04-28 17:59:11 +00:00
mpc83xx.h mpc83xx: Changed to unified mpx83xx names and added common 83xx changes 2006-11-03 19:42:18 -06:00
mpc85xx.h Add (some) definitions for the MPC85xx local bus controller 2006-03-12 22:45:47 +01:00
mpc86xx.h Cleanup even more poorly introduced whitespace. 2006-08-22 18:26:08 -05:00
mpc106.h * Code cleanup: 2003-06-27 21:31:46 +00:00
mpc824x.h * Code cleanup 2004-08-01 22:48:16 +00:00
mpc8220.h Add PCI support for Sorcery board. 2005-05-16 15:23:22 +00:00
mpc8260.h * Patches by Pantelis Antoniou, 30 Mar 2004: 2004-04-15 18:22:41 +00:00
mpc8260_irq.h Patches by Murray Jensen, 17 Jun 2003: 2003-06-19 23:40:20 +00:00
nand.h Add board/cpu specific NAND chip select function to 440 NDFC 2006-10-20 15:17:55 +02:00
net.h Add support for multiple PHYs. 2005-10-28 22:30:33 +02:00
nios-io.h Patch by Scott McNutt, 25 Apr 2004: 2004-05-19 21:33:14 +00:00
nios.h * Patch by Scott McNutt, 04 Oct 2003: 2003-10-08 23:26:14 +00:00
nios2-epcs.h Nios II - Add EPCS Controller bootrom work-around 2006-06-08 12:08:12 -04:00
nios2-io.h * Patch by Scott McNutt, 21 Oct 2004: 2005-03-30 23:28:18 +00:00
nios2.h Patches by Scott McNutt, 24 Aug 2004: 2004-10-10 21:27:30 +00:00
ns7520_eth.h Add support for NetSilicon NS7520 processor. 2005-10-09 01:41:48 +02:00
ns9750_bbus.h * Patch by Markus Pietrek, 24 Feb 2004: 2004-02-26 23:46:20 +00:00
ns9750_eth.h Patches by Lars Munch, 12 Jul 2004: 2004-08-02 23:39:03 +00:00
ns9750_mem.h * Patch by Markus Pietrek, 24 Feb 2004: 2004-02-26 23:46:20 +00:00
ns9750_ser.h * Patch by Markus Pietrek, 24 Feb 2004: 2004-02-26 23:46:20 +00:00
ns9750_sys.h * Patch by Markus Pietrek, 24 Feb 2004: 2004-02-26 23:46:20 +00:00
ns16550.h Add support for TB5200 board 2006-07-19 13:50:38 +02:00
ns87308.h Initial revision 2002-04-01 14:29:03 +00:00
part.h * Cleanup, minor fixes 2004-04-18 17:39:38 +00:00
pc_keyb.h [Strange. I _did_ check these in before. Seems SF restored an old 2004-01-16 00:30:56 +00:00
pci.h * Fix a bunch of compiler warnings for gcc 4.0 2006-10-19 11:33:52 -05:00
pci_ids.h Change Id to symbolic name for RTL8139 2006-06-28 08:43:56 -05:00
pcmcia.h Major PCMCIA Cleanup to make code better readable and maintainable. 2006-07-10 23:07:28 +02:00
post.h Patch by Pantelis Antoniou, 5 May 2004: 2004-06-07 23:46:25 +00:00
ppc4xx.h * Code cleanup: 2003-06-27 21:31:46 +00:00
ppc4xx_enet.h Add support for AMCC Sequoia PPC440EPx eval board 2006-09-07 11:51:23 +02:00
ppc405.h Code cleanup. 2004-12-16 21:44:03 +00:00
ppc440.h Fix comments in include/ppc440.h 2006-09-20 23:47:49 +02:00
ppc_asm.tmpl Add support for AMCC Sequoia PPC440EPx eval board 2006-09-07 11:51:23 +02:00
ppc_defs.h Initial revision 2000-07-19 14:09:16 +00:00
ps2mult.h * The PS/2 mux on the BMS2003 board needs 450 ms after power on 2004-01-20 23:12:12 +00:00
reiserfs.h Code cleanup 2004-03-25 15:14:43 +00:00
rtc.h Initial revision 2001-04-09 21:43:07 +00:00
s3c24x0.h * Code cleanup: 2003-06-27 21:31:46 +00:00
s3c2400.h Cleanup trab board for GCC-4.x 2006-06-26 10:54:52 +02:00
s3c2410.h * Patches by David Müller, 12 Jun 2003: 2003-06-19 23:01:32 +00:00
s_record.h Initial revision 2001-04-28 17:59:11 +00:00
SA-1100.h * Code cleanup: 2003-06-27 21:31:46 +00:00
sa1100.h Initial revision 2002-03-27 13:48:44 +00:00
scsi.h * Code cleanup: 2003-06-27 21:31:46 +00:00
sed156x.h * Patches by Pantelis Antoniou, 30 Mar 2004: 2004-04-15 21:16:42 +00:00
sed13806.h * Code cleanup: 2003-06-27 21:31:46 +00:00
serial.h Make the serial driver framework work with CONFIG_SERIAL_MULTI enabled 2006-08-30 23:02:10 +02:00
sm501.h Add SM501 support to HH405 board. 2005-09-22 09:04:17 +02:00
smiLynxEM.h * Code cleanup: 2003-06-27 21:31:46 +00:00
spartan2.h * Patch by Kurt Stremerch, 03 Sep 2004: 2005-01-09 17:19:34 +00:00
spartan3.h Add Xilinx Spartan3 family FPGA support 2005-09-25 16:44:21 +02:00
spd.h Fix style issues primarily in 85xx and 83xx boards. 2005-08-01 13:20:47 -05:00
spd_sdram.h Support for DDR with 32-data path. Addotional notes on injecting 2006-03-16 17:46:46 +01:00
spi.h Initial revision 2002-09-26 02:01:47 +00:00
status_led.h Preliminary patch adding support for the MarelV38B board. 2006-10-13 21:09:09 +02:00
sym53c8xx.h * Code cleanup: 2003-06-27 21:31:46 +00:00
systemace.h * CVS add missing files 2004-02-23 16:11:30 +00:00
universe.h Code cleanup. 2004-12-16 21:44:03 +00:00
usb.h Add rudimentary handling of alternate settings of USB interfaces - to fix 2006-08-02 00:54:18 +02:00
usb_defs.h Remove unnecessary defines from usb_defs.h again. 2005-08-02 15:08:46 +02:00
usbdcore.h Add support for Siemens SX1 mobile phone; 2004-03-12 00:14:09 +00:00
usbdcore_ep0.h Add support for Siemens SX1 mobile phone; 2004-03-12 00:14:09 +00:00
usbdcore_omap1510.h Add support for Siemens SX1 mobile phone; 2004-03-12 00:14:09 +00:00
usbdescriptors.h Add support for Siemens SX1 mobile phone; 2004-03-12 00:14:09 +00:00
version.h Add GIT version information (commid ID) to untagged U-Boot versions 2006-02-21 17:33:04 +01:00
vfd_logo.h * Add support for arbitrary bitmaps for TRAB's VFD command 2003-05-20 20:49:01 +00:00
video.h Initial revision 2001-11-03 22:21:15 +00:00
video_ad7176.h * Patches by Yuli Barcohen, 13 Jul 2003: 2003-07-14 22:13:32 +00:00
video_ad7177.h * Patches by Yuli Barcohen, 13 Jul 2003: 2003-07-14 22:13:32 +00:00
video_ad7179.h * Add support for IceCube board (with MGT5100 and MPC5200 CPUs) 2003-07-16 21:53:01 +00:00
video_easylogo.h Initial revision 2001-11-03 22:21:15 +00:00
video_fb.h * Code cleanup: 2003-06-27 21:31:46 +00:00
video_font.h Initial revision 2000-10-25 11:24:22 +00:00
video_logo.h Initial revision 2002-11-03 00:38:21 +00:00
virtex2.h Initial revision 2002-11-03 00:24:07 +00:00
w83c553f.h Initial revision 2002-03-08 21:31:05 +00:00
watchdog.h Cleanup (PPC4xx is AMCC now) 2005-09-23 11:05:55 +02:00
xilinx.h Add Xilinx Spartan3 family FPGA support 2005-09-25 16:44:21 +02:00
xyzModem.h More code cleanup 2006-07-21 15:24:56 +02:00
zlib.h * Code cleanup: 2003-06-27 21:31:46 +00:00