Need Uefi to send commands to an I2C device


We have a device that needs to be initialized during boot. This is done by writing one I2c command to the device.

I have made a few attempts with no success.

Can someone point me to an example that might be close to our requirement or provide the steps to be able to perform this task.


Hi malcolm.mcdowell,

Please provide the detail of your development.

  1. devkit or custom board
  2. Jetson Linux version

Hi KevinFFF,

We are using an NX module on a custom board.

We are using JetPack 5.02 with kernel 5.10.


Hi malcolm.mcdowell,

Sorry for the late reply.
We get the following information from internal:
We don’t have an i2c utility for UEFI shell but use the standard I2CMaster/I2cIO protocols for our implementation (Volume 5 - Chapter 17).

For examples of this being used by drivers see
edk2-nvidia/Silicon/NVIDIA/Drivers/I2cIoBmcSsifDxe at main · NVIDIA/edk2-nvidia (
edk2-nvidia/Silicon/NVIDIA/Library/MaximRealTimeClockLib at main · NVIDIA/edk2-nvidia (

A utility could be written for this but we do not currently have plans for this. For examples on how to write shell utilities see something like edk2-nvidia/Silicon/NVIDIA/Application/ClockUtil at main · NVIDIA/edk2-nvidia (

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.