The SMBus protocol is more or less a subset of I2C. Quite often, SMBus operations can be carried out on an I2C bus. In consequence, the Linux kernel provides SMBus operation defined in the standard.
Those operations performs common interactions. Single byte can be exchanged, as well as words (2 bytes) and blocks (at most 32 bytes at a time). The term "command" refers to what is also called a "register".
Not every operation is supported by your driver and supported ones might fail with some inadapted slaves.
The SMBus protocol is more or less a subset of I2C. Quite often, SMBus operations can be carried out on an I2C bus. In consequence, the Linux kernel provides SMBus operation defined in the standard. Those operations performs common interactions. Single byte can be exchanged, as well as words (2 bytes) and blocks (at most 32 bytes at a time). The term "command" refers to what is also called a "register". Not every operation is supported by your driver and supported ones might fail with some inadapted slaves.
(block-process-call bus command bs)
Performs a multi-byte process call by writing a block acting as an argument and then reading a block acting as the result.
See helins.linux.i2c/capability+
for the :block-process-call capability.
Performs a multi-byte process call by writing a block acting as an argument and then reading a block acting as the result. See [[helins.linux.i2c/capability+]] for the :block-process-call capability.
(process-call bus command w)
Performs a simple process call by writing a word acting as an argument and then reading a word acting as the result.
See helins.linux.i2c/capability+
for the :process-call capability.
Performs a simple process call by writing a word acting as an argument and then reading a word acting as the result. See [[helins.linux.i2c/capability+]] for the :process-call capability.
(quick-read bus)
Sends a read message without any content.
See helins.linux.i2c/capability+
for the :quick capability.
Sends a read message without any content. See [[helins.linux.i2c/capability+]] for the :quick capability.
(quick-write bus)
Sends a write message without any content.
See helins.linux.i2c/capability+
for the :quick capability.
Sends a write message without any content. See [[helins.linux.i2c/capability+]] for the :quick capability.
(read-block bus command)
Reads a block after specifying a command.
See helins.linux.i2c/capability+
for the :read-block capability.
Reads a block after specifying a command. See [[helins.linux.i2c/capability+]] for the :read-block capability.
(read-byte bus command)
Reads a byte after specifying a command.
See helins.linux.i2c/capability+
for the :read-byte capability.
Reads a byte after specifying a command. See [[helins.linux.i2c/capability+]] for the :read-byte capability.
(read-byte-directly bus)
Reads a single byte.
See helins.linux.i2c/capability+
for the :read-byte-directly capability.
Reads a single byte. See [[helins.linux.i2c/capability+]] for the :read-byte-directly capability.
(read-i2c-block bus command length)
Reads a block of chosen length after specifying a command.
Not standard but often encountered and supported.
See helins.linux.i2c/capability+
for the :read-i2c-block capability.
Reads a block of chosen length after specifying a command. Not standard but often encountered and supported. See [[helins.linux.i2c/capability+]] for the :read-i2c-block capability.
(read-word bus command)
Read a word after specifying a command.
See helins.linux.i2c/capability+
for the :read-word capability.
Read a word after specifying a command. See [[helins.linux.i2c/capability+]] for the :read-word capability.
(write-block bus command bs)
Writes a block after specifying a command as well as the number of bytes in the block.
See helins.linux.i2c/capability+
for the :write-block capability.
Writes a block after specifying a command as well as the number of bytes in the block. See [[helins.linux.i2c/capability+]] for the :write-block capability.
(write-byte bus command b)
Write a byte after specifying a command.
See helins.linux.i2c/capability+
for the :write-byte capability.
Write a byte after specifying a command. See [[helins.linux.i2c/capability+]] for the :write-byte capability.
(write-byte-directly bus b)
Writes a single byte.
See helins.linux.i2c/capability+
for the :write-byte-directly capability.
Writes a single byte. See [[helins.linux.i2c/capability+]] for the :write-byte-directly capability.
(write-i2c-block bus command bs)
Writes a block after specifying a command.
Unlike write-block
, does not send a byte count.
Not standard but often encountered and supported.
See helins.linux.i2c/capability+
for the :write-i2c-block capability.
Writes a block after specifying a command. Unlike `write-block`, does not send a byte count. Not standard but often encountered and supported. See [[helins.linux.i2c/capability+]] for the :write-i2c-block capability.
(write-word bus command w)
Writes a word after specifying a command.
See helins.linux.i2c/capability+
for the :write-word capability.
Writes a word after specifying a command. See [[helins.linux.i2c/capability+]] for the :write-word capability.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close