CN112328527B - Method, system, equipment and medium for BMC remote access to I2C device - Google Patents

Method, system, equipment and medium for BMC remote access to I2C device Download PDF

Info

Publication number
CN112328527B
CN112328527B CN202011178514.8A CN202011178514A CN112328527B CN 112328527 B CN112328527 B CN 112328527B CN 202011178514 A CN202011178514 A CN 202011178514A CN 112328527 B CN112328527 B CN 112328527B
Authority
CN
China
Prior art keywords
bmc
code
response
access
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011178514.8A
Other languages
Chinese (zh)
Other versions
CN112328527A (en
Inventor
张中云
张亚男
周宁宁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202011178514.8A priority Critical patent/CN112328527B/en
Publication of CN112328527A publication Critical patent/CN112328527A/en
Application granted granted Critical
Publication of CN112328527B publication Critical patent/CN112328527B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0016Inter-integrated circuit (I2C)

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The invention discloses a method, a system, equipment and a storage medium for remotely accessing an I2C device by BMC, wherein the method comprises the following steps: a first BMC far from the I2C device sends an IPMI message and command code to access the I2C device to a second BMC near the I2C device; after receiving the IPMI message and the command code, the second BMC calls an I2C driving interface to access the I2C device; the second BMC converts the error code returned by the I2C driving interface into a completion code of the command code, and returns the data returned by the I2C driving interface and the completion code to the first BMC as a response; and the first BMC receives the response and reads the data in the response based on the completion code. The invention can be realized by remotely accessing the I2C device by utilizing the BMC close to the I2C device and only adding one IPMI command without creating thread routine test and synchronous data, thereby reducing the software complexity.

Description

Method, system, equipment and medium for BMC remote access to I2C device
Technical Field
The present invention relates to the field of BMCs, and more particularly, to a method, system, computer device, and readable medium for BMC to remotely access an I2C device.
Background
Because the protocol of I2C (Inter-Integrated Circuit, two-wire serial bus) is simple, the hardware design cost/device cost is low, and the I2C device is largely used in the storage/server single board. As a center of board Management, BMC (Baseboard Management Controller) needs to access these I2C devices to obtain data, but as the performance requirement of the storage/server is higher and higher, the integration level of the board, and even the integration level of the whole storage/server chassis is higher and higher, such phenomena often occur in order to meet the problems of heat dissipation or PCB routing, etc.: the I2C device Chip1 (Chip 1) on the board C closer to the BMC-a on the board a is not required to be managed by the BMC-a in design, but is required to be managed by the BMC-B on the board B.
In the face of the above scenario, there are two prior art solutions:
scheme 1: and optimizing hardware, namely connecting the Chip1 on the single board C to the BMC-B on the single board B through a restructuring design, so that the BMC-B can directly manage the Chip 1.
Scheme 2: and in the near connection, the Chip1 is connected to the BMC-A of the single board A, then the BMC-A tests the Chip1 to obtain the data of the Chip1, and then the data of the Chip1 is synchronized to the BMC-B through a communication channel between the BMC-A and the BMC-B.
The prior art schemes all bring extra overhead to software/hardware. For example:
scheme 1: the hardware is designed and given way, which may cause the problems of more difficulty in heat dissipation of the system, and a short margin of a Printed Circuit Board (PCB) routing signal.
Scheme 2: the BMC-A needs to create a thread, specially test the Chip1, and meanwhile needs to perform synchronization and timeout processing of synchronous data. Thus, BMC software complexity is increased.
Disclosure of Invention
In view of this, embodiments of the present invention provide a method, a system, a computer device, and a computer-readable storage medium for BMC remote access to an I2C device, where the BMC remote access to an I2C device close to an I2C device is implemented by adding only one IPMI (intelligent platform management interface) command, instead of creating a thread instance and synchronizing data, so as to reduce software complexity; in addition, the design of the single board at the structural positions in the storage frame and the server frame is facilitated, and the design of heat dissipation is facilitated.
In view of the above object, an aspect of the embodiments of the present invention provides a method for BMC to remotely access an I2C device, including the following steps: a first BMC far from the I2C device sends an IPMI message and a command code to access the I2C device to a second BMC near the I2C device; after receiving the IPMI message and the command code, the second BMC calls an I2C driving interface to access the I2C device; the second BMC converts the error code returned by the I2C driving interface into a completion code of the command code, and returns the data returned by the I2C driving interface and the completion code to the first BMC as a response; and the first BMC receives the response and reads the data in the response based on the completion code.
In some embodiments, said reading data in said response based on said completion code comprises: judging whether the completion code is preset data or not; and in response to the completion code not being the predetermined data, resending the IPMI message and command code to the second BMC to access the I2C device.
In some embodiments, the method further comprises: and in response to the completion code not being the predetermined data, adding one to the failure times, and judging whether the failure times reach a threshold value.
In some embodiments, the method further comprises: in response to the number of failures reaching a threshold, finding whether there is a BMC closer to the I2C device than the first BMC; and in response to there being a BMC closer to the I2C device than the first BMC, selecting a BMC from the BMCs that is closest to the I2C device to replace the second BMC.
In some embodiments, the method further comprises: in response to there not being a BMC closer to the I2C device than the first BMC, alerting.
In some embodiments, sending the IPMI message and command code to access the I2C device by the first BMC remote from the I2C device to the second BMC close to the I2C device comprises: packaging the I2C bus number, I2C address and internal register offset address of the I2C device as IPMI information.
In some embodiments, the calling the I2C driver interface by the second BMC after receiving the IPMI message and the command code comprises: and analyzing the received IPMI message and the command code to determine the address information of the I2C device to be accessed, and sequentially writing the address information into the I2C driving interface according to the parameter format of the interface function driven by the I2C.
In another aspect of the embodiments of the present invention, a BMC remote access I2C device system is further provided, including: a sending module configured to cause a first BMC remote from the I2C device to send an IPMI message and a command code to access the I2C device to a second BMC proximate to the I2C device; the access module is configured to enable the second BMC to call an I2C driver interface after receiving the IPMI message and the command code, and access the I2C device; a conversion module configured to convert the error code returned by the I2C driver interface into a completion code of the command code, and return the data returned by the I2C driver interface to the first BMC together with the completion code as a response; and a reading module configured to enable the first BMC to receive the response and read data in the response based on the completion code.
In another aspect of the embodiments of the present invention, there is also provided a computer device, including: at least one processor; and a memory storing computer instructions executable on the processor, the instructions when executed by the processor implementing the steps of the method as above.
In a further aspect of the embodiments of the present invention, a computer-readable storage medium is also provided, in which a computer program for implementing the above method steps is stored when the computer program is executed by a processor.
The invention has the following beneficial technical effects: by remotely accessing the I2C device by using the BMC close to the I2C device, the remote access can be realized by only adding one IPMI command without creating thread instance and synchronous data, so that the software complexity is reduced; in addition, convenience is brought to the design of the single board at the structural positions in the storage frame and the server frame, and the design of heat dissipation is facilitated.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art that other embodiments can be obtained by using the drawings without creative efforts.
FIG. 1 is a schematic diagram illustrating an embodiment of a method for a BMC to remotely access an I2C device;
FIG. 2 is a schematic diagram of a prior art comparison to the present application.
Fig. 3 is a schematic hardware structure diagram of an embodiment of a computer device for BMC remote access to an I2C device according to the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the following embodiments of the present invention are described in further detail with reference to the accompanying drawings.
It should be noted that all expressions using "first" and "second" in the embodiments of the present invention are used for distinguishing two entities with the same name but different names or different parameters, and it should be noted that "first" and "second" are merely for convenience of description and should not be construed as limitations of the embodiments of the present invention, and they are not described in any more detail in the following embodiments.
In view of the above objects, a first aspect of the embodiments of the present invention proposes an embodiment of a method for remotely accessing an I2C device by a BMC. Fig. 1 is a schematic diagram illustrating an embodiment of a method for BMC to remotely access an I2C device according to the present invention. As shown in fig. 1, the embodiment of the present invention includes the following steps:
s1, the first BMC far away from the I2C device sends the IPMI message and the command code for accessing the I2C device to the second BMC near to the I2C device;
s2, the second BMC calls the I2C driving interface after receiving the IPMI message and the command code, and accesses the I2C device;
s3, the second BMC converts the error code returned by the I2C driving interface into a completion code of the command code, and returns the data returned by the I2C driving interface and the completion code to the first BMC as a response; and
and S4, the first BMC receives the response, and reads the data in the response based on the completion code.
Fig. 2 shows a schematic diagram of the prior art in comparison with the present application. Scheme 1 and scheme 2 in fig. 2 correspond to scheme 1 and scheme 2 in the background art. An embodiment of the present invention will be described with reference to fig. 2.
A first BMC, remote from the I2C device, sends an IPMI message and command codes to access the I2C device to a second BMC, close to the I2C device. Here, "far" and "near" are relative distances, which are determined by the distance of the two BMCs relative to the I2C device. As shown in fig. 2, control board B is far from board C relative to control board a, and thus BMC-B in fig. 2 represents a first BMC far from the I2C device, and BMC-a represents a second BMC near the I2C device.
In some embodiments, sending the IPMI message and command code to access the I2C device by the first BMC remote from the I2C device to the second BMC close to the I2C device comprises: packaging the I2C bus number, I2C address and internal register offset address of the I2C device as IPMI information. The BMC-B packages hardware information such as an I2C bus number, an I2C address and a Chip1 internal register offset address of Chip1 on the single board C into an IPMI message, adds a special IPMI command code (NetFn is 0x30, and Cmd is 0xBB) and sends the IPMI message to the BMC-A.
And the second BMC calls the I2C driving interface to access the I2C device after receiving the IPMI message and the command code.
In some embodiments, the invoking of the I2C driver interface by the second BMC upon receipt of the IPMI message and command code comprises: and analyzing the received IPMI message and the command code to determine the address information of the I2C device to be accessed, and sequentially writing the address information into the I2C driving interface according to the parameter format of the interface function driven by the I2C. After receiving the IPMI message, BMC-A finds that the IPMI message is a remote access hardware command, then fills the I2C hardware address information in the command in sequence according to the parameter format of the interface function driven by I2C, and then calls the I2C driving interface to access the chip 1.
The second BMC converts the error code returned by the I2C driver interface to a completion code for the command code and returns the data returned by the I2C driver interface to the first BMC in response to the completion code. Since the access command was issued by the first BMC, but the second BMC actually accessed the I2C device, the I2C device may return an error code to the second BMC. The BMC-a redefines the error code returned by the I2C driver as the completion code of the IPMI command (NetFn ═ 0x30, Cmd ═ 0xBB) and the data returned by the driver, and returns the result to the BMC-B as the command response of the IPMI command (NetFn ═ 0x30, Cmd ═ 0 xBB).
And the first BMC receives the response and reads the data in the response.
In some embodiments, said reading data in said response based on said completion code comprises: judging whether the completion code is preset data or not; and in response to the completion code not being the predetermined data, resending the IPMI message and command code to the second BMC to access the I2C device. When receiving the response data of the IPMI command (NetFn is 0x30, Cmd is 0xBB), BMC-B determines the completion code, and if the data is predetermined data (for example, 0), takes the data in the response message and stores the reading of Chip 1. If not, the IPMI message and command code to access the I2C device is resent.
In some embodiments, the method further comprises: and in response to the completion code not being the predetermined data, adding one to the failure times, and judging whether the failure times reach a threshold value.
In some embodiments, the method further comprises: in response to the number of failures reaching a threshold, looking up whether there is a BMC closer to the I2C device than the first BMC; and in response to there being a BMC closer to the I2C device than the first BMC, selecting a BMC from the BMCs that is closest to the I2C device to replace the second BMC. If the number of failures reaches a threshold (e.g., 3), indicating that the second BMC may be abnormal, other BMCs may be switched to access the I2C device.
In some embodiments, the method further comprises: in response to there not being a BMC closer to the I2C device than the first BMC, alerting. If there is no BMC closer to the I2C device than the first BMC, an alarm may be raised to alert the user to perform maintenance on the other BMC.
In the embodiment of the invention, the BMC-B remotely accesses the Chip1 on the single board C through the BMC-A, and from the view point of code design, the BMC-B is in an end-to-end closed loop just like accessing an I2C device on the single board where the BMC-B is located. Only one IPMI command needs to be added to the BMC-A, thread instance test and data synchronization do not need to be established to the BMC-B, and software complexity is reduced. The embodiment of the invention also brings convenience to hardware design, brings convenience to the design of the structural positions of the single board in the storage frame and the server frame, and is more beneficial to heat dissipation design.
It should be particularly noted that, the steps in the embodiments of the method for BMC remote access to the I2C device described above may be interleaved, replaced, added, or deleted, and therefore, these methods for BMC remote access to the I2C device should also belong to the scope of the present invention, and should not limit the scope of the present invention to the embodiments.
In view of the above object, according to a second aspect of the embodiments of the present invention, a system for BMC to remotely access an I2C device is provided, including: a sending module configured to cause a first BMC remote from the I2C device to send an IPMI message and a command code to access the I2C device to a second BMC proximate to the I2C device; the access module is configured to enable the second BMC to call an I2C driver interface after receiving the IPMI message and the command code, and access the I2C device; a conversion module configured to convert the error code returned by the I2C driver interface into a completion code of the command code, and return the data returned by the I2C driver interface to the first BMC together with the completion code as a response; and a reading module configured to enable the first BMC to receive the response and read data in the response based on the completion code.
In some embodiments, the reading module is configured to: judging whether the completion code is preset data or not; and in response to the completion code not being predetermined data, resending the IPMI message and command code to the second BMC to access the I2C device.
In some embodiments, the system further comprises: and the judging module is configured to respond to the completion code not being the preset data, add one to the failure times and judge whether the failure times reach a threshold value.
In some embodiments, the system further comprises: an alternative module configured to, in response to the number of failures reaching a threshold, find whether a BMC exists that is closer to the I2C device than the first BMC; and in response to there being a BMC closer to the I2C device than the first BMC, selecting a BMC from the BMCs that is closest to the I2C device to replace the second BMC.
In some embodiments, the system further comprises: an alert module configured to alert in response to an absence of a BMC closer to the I2C device than the first BMC.
In some embodiments, the sending module is configured to: packaging the I2C bus number, I2C address and internal register offset address of the I2C device as IPMI information.
In some embodiments, the access module is configured to: and analyzing the received IPMI message and the command code to determine the address information of the I2C device to be accessed, and sequentially writing the address information into the I2C driving interface according to the parameter format of the interface function driven by the I2C.
In view of the above object, a third aspect of the embodiments of the present invention provides a computer device, including: at least one processor; and a memory storing computer instructions executable on the processor, the instructions being executable by the processor to perform the steps of: s1, the first BMC far away from the I2C device sends the IPMI message and the command code for accessing the I2C device to the second BMC near to the I2C device; s2, the second BMC calls the I2C driving interface after receiving the IPMI message and the command code, and accesses the I2C device; s3, the second BMC converts the error code returned by the I2C driving interface into a completion code of the command code, and returns the data returned by the I2C driving interface and the completion code to the first BMC as a response; and S4, the first BMC receives the response, and reads the data in the response based on the completion code.
In some embodiments, said reading data in said response based on said completion code comprises: judging whether the completion code is preset data or not; and in response to the completion code not being the predetermined data, resending the IPMI message and command code to the second BMC to access the I2C device.
In some embodiments, the steps further comprise: and in response to the completion code not being the predetermined data, adding one to the failure times, and judging whether the failure times reach a threshold value.
In some embodiments, the steps further comprise: in response to the number of failures reaching a threshold, finding whether there is a BMC closer to the I2C device than the first BMC; and in response to there being a BMC closer to the I2C device than the first BMC, selecting a BMC from the BMCs that is closest to the I2C device to replace the second BMC.
In some embodiments, the steps further comprise: in response to there not being a BMC closer to the I2C device than the first BMC, alerting.
In some embodiments, the sending of the IPMI messages and command codes for accessing the I2C device by the first BMC away from the I2C device to the second BMC close to the I2C device comprises: packaging the I2C bus number, I2C address and internal register offset address of the I2C device as IPMI information.
In some embodiments, the invoking of the I2C driver interface by the second BMC upon receipt of the IPMI message and command code comprises: and analyzing the received IPMI message and the command code to determine the address information of the I2C device to be accessed, and sequentially writing the address information into the I2C driving interface according to the parameter format of the interface function driven by the I2C.
Fig. 3 is a schematic hardware structural diagram of an embodiment of a computer device for BMC remote access to an I2C device according to the present invention.
Taking the apparatus shown in fig. 3 as an example, the apparatus includes a processor 301 and a memory 302, and may further include: an input device 303 and an output device 304.
The processor 301, the memory 302, the input device 303 and the output device 304 may be connected by a bus or other means, and fig. 3 illustrates the connection by a bus as an example.
The memory 302, which is a non-volatile computer-readable storage medium, may be used to store non-volatile software programs, non-volatile computer-executable programs, and modules, such as program instructions/modules corresponding to the method for BMC remote access to the I2C device in the embodiments of the present application. The processor 301 executes various functional applications of the server and data processing, i.e., the method for BMC to remotely access the I2C device, which implements the above-described method embodiments, by running nonvolatile software programs, instructions, and modules stored in the memory 302.
The memory 302 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function; the storage data area may store data created according to the use of the method by which the BMC remotely accesses the I2C device, and the like. Further, the memory 302 may include high speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid state storage device. In some embodiments, memory 302 optionally includes memory located remotely from processor 301, which may be connected to a local module via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The input device 303 may receive information such as a user name and a password that are input. The output means 304 may comprise a display device such as a display screen.
Program instructions/modules corresponding to one or more methods of BMC remote access to the I2C device are stored in memory 302 and, when executed by processor 301, perform the methods of BMC remote access to the I2C device in any of the above-described method embodiments.
Any embodiment of a computer device that performs the method for BMC remote access to an I2C device described above may achieve the same or similar effects as any of the preceding method embodiments corresponding thereto.
The invention also provides a computer readable storage medium storing a computer program which, when executed by a processor, performs the method as above.
Finally, it should be noted that, as one of ordinary skill in the art can appreciate that all or part of the processes of the methods of the above embodiments can be implemented by a computer program to instruct related hardware, and the program of the method for BMC to remotely access the I2C device can be stored in a computer readable storage medium, and when executed, the program can include the processes of the embodiments of the methods as described above. The storage medium of the program may be a magnetic disk, an optical disk, a Read Only Memory (ROM), a Random Access Memory (RAM), or the like. The embodiments of the computer program may achieve the same or similar effects as any of the above-described method embodiments.
The foregoing is an exemplary embodiment of the present disclosure, but it should be noted that various changes and modifications could be made herein without departing from the scope of the present disclosure as defined by the appended claims. The functions, steps and/or actions of the method claims in accordance with the disclosed embodiments described herein need not be performed in any particular order. Furthermore, although elements of the disclosed embodiments of the invention may be described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated.
It should be understood that, as used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly supports the exception. It should also be understood that "and/or" as used herein is meant to include any and all possible combinations of one or more of the associated listed items.
The numbers of the embodiments disclosed in the above embodiments of the present invention are merely for description, and do not represent the advantages or disadvantages of the embodiments.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, and the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
Those of ordinary skill in the art will understand that: the discussion of any embodiment above is meant to be exemplary only, and is not intended to intimate that the scope of the disclosure, including the claims, of embodiments of the invention is limited to these examples; within the idea of an embodiment of the invention, also technical features in the above embodiment or in different embodiments may be combined and there are many other variations of the different aspects of the embodiments of the invention as described above, which are not provided in detail for the sake of brevity. Therefore, any omissions, modifications, substitutions, improvements and the like that may be made without departing from the spirit or scope of the embodiments of the present invention are intended to be included within the scope of the embodiments of the present invention.

Claims (9)

1. A method for BMC remote access to an I2C device, comprising the steps of:
sending an IPMI message and command code to access the I2C device from a first BMC remote from the I2C device to a second BMC proximate to the I2C device;
after receiving the IPMI message and the command code, the second BMC calls an I2C driving interface to access the I2C device;
the second BMC converts the error code returned by the I2C driving interface into a completion code of the command code, and returns the data returned by the I2C driving interface and the completion code to the first BMC as a response; and
the first BMC receiving the response, reading data in the response based on the completion code,
wherein sending the IPMI message and command code to access the I2C device by the first BMC remote from the I2C device to the second BMC near the I2C device comprises: packaging the I2C bus number, I2C address and internal register offset address of the I2C device as IPMI information.
2. The method of claim 1, wherein reading the data in the response based on the completion code comprises:
judging whether the completion code is preset data or not; and
in response to the completion code not being predetermined data, resending the IPMI message and command code to the second BMC to access the I2C device.
3. The method of claim 2, further comprising:
and in response to the completion code not being the predetermined data, adding one to the failure times, and judging whether the failure times reach a threshold value.
4. The method of claim 3, further comprising:
in response to the number of failures reaching a threshold, finding whether there is a BMC closer to the I2C device than the first BMC; and
in response to there being a BMC closer to the I2C device than the first BMC, selecting a BMC from the BMCs closest to the I2C device to replace the second BMC.
5. The method of claim 4, further comprising:
in response to there not being a BMC closer to the I2C device than the first BMC, alerting.
6. The method of claim 1, wherein the second BMC invoking the I2C driver interface upon receiving the IPMI message and command code comprises:
and analyzing the received IPMI message and the command code to determine the address information of the I2C device to be accessed, and sequentially writing the address information into the I2C driving interface according to the parameter format of the interface function driven by the I2C.
7. A system for BMC remote access to I2C devices, comprising:
a sending module configured to cause a first BMC remote from the I2C device to send an IPMI message and a command code to access the I2C device to a second BMC close to the I2C device;
the access module is configured to enable the second BMC to call an I2C driver interface after receiving the IPMI message and the command code, and access the I2C device;
a conversion module configured to convert the error code returned by the I2C driver interface into a completion code of the command code, and return the data returned by the I2C driver interface to the first BMC together with the completion code as a response; and
a read module configured to cause the first BMC to receive the response, read data in the response based on the completion code,
wherein the sending module is further configured to: packaging the I2C bus number, I2C address and internal register offset address of the I2C device as IPMI information.
8. A computer device, comprising:
at least one processor; and
a memory storing computer instructions executable on the processor, the instructions when executed by the processor implementing the steps of the method of any one of claims 1 to 6.
9. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the steps of the method according to any one of claims 1 to 6.
CN202011178514.8A 2020-10-29 2020-10-29 Method, system, equipment and medium for BMC remote access to I2C device Active CN112328527B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011178514.8A CN112328527B (en) 2020-10-29 2020-10-29 Method, system, equipment and medium for BMC remote access to I2C device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011178514.8A CN112328527B (en) 2020-10-29 2020-10-29 Method, system, equipment and medium for BMC remote access to I2C device

Publications (2)

Publication Number Publication Date
CN112328527A CN112328527A (en) 2021-02-05
CN112328527B true CN112328527B (en) 2022-07-12

Family

ID=74297764

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011178514.8A Active CN112328527B (en) 2020-10-29 2020-10-29 Method, system, equipment and medium for BMC remote access to I2C device

Country Status (1)

Country Link
CN (1) CN112328527B (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109634686A (en) * 2018-12-17 2019-04-16 郑州云海信息技术有限公司 A kind of method and system by BMC remote configuration server state

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109634686A (en) * 2018-12-17 2019-04-16 郑州云海信息技术有限公司 A kind of method and system by BMC remote configuration server state

Also Published As

Publication number Publication date
CN112328527A (en) 2021-02-05

Similar Documents

Publication Publication Date Title
CN108924274B (en) Domain name system DNS processing method and device, storage medium and electronic equipment
US20230014098A1 (en) Method and system for accelerating reading of information of field replace unit, device, and medium
CN113141405B (en) Service access method, middleware system, electronic device, and storage medium
CN109194585B (en) Message forwarding method and network equipment
CN114422618B (en) Cloud-protogenesis-based IOT platform protocol adaptation method, device, equipment and medium
CN115499489B (en) Method, device, equipment and readable medium for managing sub-network in link
CN113261249A (en) Data transmission method, related equipment and computer storage medium
CN112328527B (en) Method, system, equipment and medium for BMC remote access to I2C device
CN105763463A (en) Method and device for transmitting link detection message
CN115941392A (en) Method, electronic equipment and computer readable medium for realizing interconnection and intercommunication
CN112860449B (en) Method, system, equipment and medium for preventing restart caused by message overtime
WO2023000308A1 (en) Fault information transmission method and apparatus, and storage medium
CN111130941B (en) Network error detection method and device and computer readable storage medium
US10795848B2 (en) Dual way communication method, system, and master device thereof
CN105991448B (en) Neighbor discovery method and device
CN108737196B (en) Method for managing PON equipment
CN112533082B (en) Link resource discovery method, device, equipment and computer readable storage medium
CN112162868B (en) Data communication method, device and storage medium applied to cluster processing
CN107645415B (en) Method and device for keeping data consistency between OpenStack server and equipment
CN115292637A (en) Webpage loading method and device, electronic equipment and storage medium
CN110046120B (en) Data processing method, device and system based on IIC protocol and storage medium
CN118042449A (en) Network storage function fault detection and disaster recovery method and related equipment
CN110191141B (en) Service calling information processing method and device and computer system
CN116755961A (en) Monitoring method, device, equipment and storage medium
WO2020015467A1 (en) Optical port connection detection method and switch single board

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant