Externally provided control of an I2C bus
AssigneeInternational Business Machines Corporation
InventorsRobert Allan Faust, John C. Kennel
Life of this patent
Estimating the term…
Abstract
A command string is sent from an operating system to a microcontroller coupled to one or more I2C buses. Such a command string may instruct the microcontroller to perform a read or write operation with respect to a bus device designated within the command string. The presence of the bus device may be new and the microcontroller unaware of such a presence. Data may be read from the main system to the particular bus device through the microcontroller, or data may be read from the bus device through the microcontroller back to the main system.
Claims23
An information handling system comprising:
- a microcontroller coupled to a bus device via an I2C bus and having a predetermined set of capabilities for communicating with the bus over the I2C bus;
- an external device coupled to the microcontroller via a bus, wherein the external device is not coupled to the I2C bus;
- circuitry operable for sending a first byte of a command string from the external device over the bus to a register in the microcontroller;
- circuitry operable for reading the first byte, wherein the first byte designates whether a read or write operation is to be performed between the microcontroller and the bus device;
- circuitry operable for sending a second byte of the command string from the external device over the bus to the register in the microcontroller;
- circuitry operable for reading the second byte, wherein the second byte designates an address of the bus device;
- circuitry operable for sending a third byte of the command string from the external device over the bus to the register in the microcontroller;
- circuitry operable for reading the third byte, wherein the third byte informs the microcontroller of a length of data to be sent from the external device to microcontroller;
- circuitry operable for transferring the data from the external device to the register;
- and
- circuitry operable for reading the data from the register, wherein if the operation is a write operation then the data is written from the microcontroller to the addressed bus device.
An information handling system comprising:
- a microcontroller coupled to a bus device via an I2C bus and having a predetermined set of capabilities for communicating with the bus over the I2C bus;
- an external device coupled to the microcontroller via a bus, wherein the external device is not coupled to the I2C bus;
- circuitry operable for sending a first byte of a command string from the external device over the bus to a register in the microcontroller;
- circuitry operable for reading the first byte, wherein the first byte designates whether a read or write operation is to be performed between the microcontroller and the bus device;
- circuitry operable for sending a second byte of the command string from the external device over the bus to the register in the microcontroller;
- and
- circuitry operable for reading the second byte, wherein the second byte designates an address of the bus device;
- wherein the read or write operation was not part of the predetermined set of capabilities.
A microcontroller comprising:
- a port adaptable for coupling to an I2C bus;
- a register operable for receiving a command from an external device not coupled to the I2C bus;
- and
- circuitry operable for performing the command which instructs the microcontroller to perform an operation between the microcontroller and a bus device coupled to the I2C bus;
- wherein the command performs an operation between the microcontroller and the bus device, and wherein, previous to receiving the command from the external device, the microcontroller was not aware of an address of the bus device.
A microcontroller comprising:
- a port adaptable for coupling to an I2C bus;
- a register operable for receiving a command from an external device not coupled to the I2C bus;
- and
- circuitry operable for performing the command which instructs the microcontroller to perform an operation between the microcontroller and a bus device coupled to the I2C bus;
- wherein the microcontroller was not programmed to perform the command previous to receiving the command from the external device.
In an information handling system, a method comprising the steps of:
- receiving a command by a first device coupled to a second device by a first I2C bus, wherein the command is sent by a data processing system not coupled to the first I2C bus;
- and
- performing the command by the first device, wherein the command performs an operation between the first and second devices, and wherein, previous to receiving the command from the data processing system, the first device is unaware of a presence of the second device and its address.
In an information handling system, a method comprising the steps of:
- receiving a command by a first device coupled to a second device by a first I2C bus, wherein the command is sent by a data processing system not coupled to the first I2C bus;
- and
- performing the command by the first device, wherein the first device was not programmed to perform the command previous to receiving the command from the data processing system.
Dependencies are inferred from the claim text.