
- #Adding i2c u boot commands software#
- #Adding i2c u boot commands code#
- #Adding i2c u boot commands license#
#Adding i2c u boot commands code#
In the above in register 0x01, the 0xd0 value is the correct device version and device ID code of the re-timer IC. Read the first 16 registers values of the I2C device at hardware address 0x18 on channel fiveĠ000: 00 d0 00 00 01 0f 00 05 00 00 00 00 00 00 00 00. The 0x0d is channel five: om the mux's data sheet, this sets the B3 enable bit and the B2-B0 channel number. Here address 0x00 was chosen but any value can be used to select the mux's only register, its Control Register. In the above example "i2c mw 0x77 0x00 0x0d" selects the mux at I2C address 0x77 and writes 0x0d to the Control Register which in turn selects channel 5. Valid chip addresses: 18 19 1A 1B 66 67 77 Now probe for devices on the mux's channel five Valid chip addresses: 19 1B 1D 36 37 50 51 53 55 57 66 67 68 77įrom the schematics we know that 0x77 is the address of the mux and that the re-timers are connected to channel five of the mux. Now that we've selected the first I2C controller, list what device addresses are there Select I2C bus 0 which is the LS2088A I2C1 controller See what I2C buses are available (the LS2088A has four I2C controllers) Remember to recompile boot.cmd to boot.scr and note that changes will come into action after second boot. You can do this by adding saveenv command at the end of boot script (boot.cmd). For example, to access the XFI Ethernet re-timer I2C devices on channel 5 of the mux, you need to first set the mux to channel 5. Parameters regarding video must be saved into U-Boot environment file since they must be read before reading boot script. The LS2088A device has four I2C controllers and on the LS2088AQDS development system, the PCA9547 mux is connected to I2C1 at address 0x77. To access the I2C devices on one of the eight channels of the mux you must first set the mux to the needed channel. + * Foundation, Inc.Many development systems use the NXP I2C mux to increase the number of devices on a I2C channel.
#Adding i2c u boot commands software#
+ * along with this program if not, write to the Free Software
#Adding i2c u boot commands license#
+ * You should have received a copy of the GNU General Public License + * GNU General Public License for more details.

+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * but WITHOUT ANY WARRANTY without even the implied warranty of By modifying U-Boot source code, you can create your own built-in commands. + * This program is distributed in the hope that it will be useful, U-Boot commands 4.1 Overview U-Boot has a set of built-in commands for booting the system, managing memory, and updating an embedded system’s firmware. + * the License, or (at your option) any later version. + * published by the Free Software Foundation either version 2 of + * modify it under the terms of the GNU General Public License as + * This program is free software you can redistribute it and/or + * NOTE: 10-bit addresses are NOT supported! + * entity as we do not maintain a userspace/kernel space isolation + * This file merges the userspace headers and applications to a single + * The code originates from the i2c-tools located here: + * This provides i2cdump, i2cdetect, i2cset and i2cget appplications Here only the kernel line changes accordingly. In both cases i2cdev module is loaded and I cant see any big differences. If the kernel is booted directly ( kernelImage) everything is working like intended. u-boot.v2.orig/Documentation/commands.dox 09:53:22.000000000 -0500 But if the kernel is booted through U-Boot there is no I2C bus available. Index: u-boot.v2/Documentation/commands.dox This allowsįor device creation for doing i2c ops. U-boot-V2:cmd: add I2C commands - Menon, Nishanth All of help / color / mirror / Atom feed From: Menon, Nishanth
