cancel
Showing results for 
Search instead for 
Did you mean: 

Issue Accessing MCTP data of DC P3700

vgajj
New Contributor II

Hi Team,

I have a slaved i2c driver (7-bit Addressing) to access temperature data @ 0x1B and driver status @ 0x6A.

I am able to get the temperature data as two bytes say 0xC3, 0x03, I face issue when trying to read Drive status @ 0x6A, (in the product specification this address is mentioned as 0x6 instead of 0x6A) I gets smubs error 121. I am using the api mentioned below

# define MCTP_CMD_DRIVE_STATUS 0x0

# define MCTP_DRIVE_STATUS_BLOCK_SIZE 0x08

char buff[8];

ret = i2c_smbus_read_i2c_block_data(client, MCTP_CMD_DRIVE_STATIC_DATA,

MCTP_DRIVE_STATUS_BLOCK_SIZE, buff);

When I i2cdetect tool i see "UU" status for slave 0x6A.

Please help identifying the issue in reading.

Regards,

gvk51

13 REPLIES 13

vgajj
New Contributor II

Hi Jonathan

Thanks for you response.

1) what exactly meant by how your dive is configured & how do I configure it?

2) How do I check my drive firmware is FW151 or newer. Assuming my drive is at the latest firmware then it should support simplified NVMe-MI which I understand as version 1.0, correct me if I am wrong.

3) In my first post I mentioned that I am trying to do SMBus Block Reads/ I2C multibyte reads as below using the 7-bit address 0x6A and trying to read 8 bytes, but i see error on the bus. Please let me know if I am missing any thing in my code

# define MCTP_CMD_DRIVE_STATUS 0x0

# define MCTP_DRIVE_STATUS_BLOCK_SIZE 0x08

char buff[8];

ret = i2c_smbus_read_i2c_block_data(client, MCTP_CMD_DRIVE_STATIC_DATA,

MCTP_DRIVE_STATUS_BLOCK_SIZE, buff);

When I use i2cdetect tool i see "UU" status for slave 0x6A, which means a busy status. What could be the reason.

Please help me giving inline answers & at the earliest.

Thanks in advance.☺

vgajj
New Contributor II

Hi Jonthan

I am unable to read the data using address 0x6A.

I am able to read the temp data of 2 bytes @ 0x1b

I am able to read the VPD info of 75 bytes @ address 0x53, please help me why I am unable to read the NVMe-MI data ? Have you verified this from your side

jbenavides
Valued Contributor II

Hello gvk51,

Since this is an integration inquiry, we have to engage additional resources and it may take additional time to provide feedback on this matter. Additionally, the configuration you are using has not been validated with the Intel® SSD DC P3700 2.5in drive. So, it may take longer to verify what may or may not work.

jbenavides
Valued Contributor II

Hello Gvk51,

We were not able to dedicate engineering resources to review your request and unfortunately we will not be able to provide full support for your design and software development efforts.

The hardware configuration you are using has not been validated to work with the Intel® SSD DC P3700 2.5in drive; so, it is not possible for us to replicate and test this configuration. Also, We have not received any other reports of similar issues and you SSD appears to be working correctly.

For better documentation, please let us know the exact code you are using to access the 0x1B register, and the results you are receiving

As for 0x6A, could you provide the command input you are using and result returned by the system?

Please take into consideration that when accessing 0x6A register, the drive will talk simplified NVMe-MI, not the full MCTP. This may require code changes.