This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Linux/TLV320ADC3101: TLV320ADC3101: About the i2c slave id(address) and can we use Linux-based i2c-tools on this codec ic?

Part Number: TLV320ADC3101


Tool/software: Linux

Hi TI support,

We are now try to bring up the TLV320ADC3101 codec and have the following questions:

(1) About the i2c slave id

As you know, the registers in TLV320ADC3101 are configured (read/write) via i2c bus.

Before we access it, we need to know the slave id (or device id, slave address...etc)

According to page 42 of http://www.ti.com/lit/ds/symlink/tlv320adc3101.pdf

The possible I2C Slave Device Addresses should be 0x18, 0x19, 0x1a, and 0x1b.

Could you please confirm whether I figure out is right?

(2) About using Linux i2c-tools to detect and access TLV320ADC3101 codec ic

Linux kernel provide a useful tool called i2c-tools:

https://git.kernel.org/pub/scm/utils/i2c-tools/i2c-tools.git/

I don't know if you used it before.

But if you have used it, could you please help confirm whether I can use it to detect the device, read/write the register via this tool.

For example: (assume the codec ic is attached in i2c-0 bus)

--> i2cdetect -r -y 0: should scan the device at address with scope 0x18~0x1b

--> i2cdump -y 0 0x18: will dump the register map (assume i2c slave address is 0x18)

--> i2cset -f -y 0 0x18 0x12 0x5: will set value to 0x5 at register offset 0x12

--> i2cget -y 1 0x50 0x12: will get the value at register offset 0x12

Thanks!

B.R.

Victor