Hi,
I’m using a custom MIPI CSI camera which work with GMSL2 protocol, i want to read EEPROM data, the EEPROM driver is enabled, and i’ve confirmed that by using the command below
jetson@xavier:/sys/bus/i2c/devices/30-0050$ sudo hexdump -C eeprom
I had the following output which corresponds exactly to the camera eeprom data
00000000 52 41 50 50 03 00 0d 20 01 00 10 f0 80 ff ff ff |RAPP... ........|
00000010 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................|
00000020 0e 20 00 01 41 32 43 37 37 37 31 38 38 30 32 30 |. ..XXXXXXXXXXXX|
00000030 30 30 30 32 32 31 42 31 37 30 30 31 37 30 47 1a |XXXXXXXXXXXXXXX.|
00000040 01 2f 00 01 4d 55 49 31 36 37 34 34 33 00 00 00 |./..XXXXXXXXX...|
00000050 00 00 00 00 00 00 00 00 00 32 30 32 31 2d 31 32 |.........2021-12|
00000060 2d 31 37 00 30 37 3a 32 37 3a 31 34 00 a7 01 ff |-17.07:27:14....|
00000070 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................|
00000080 1a 5a 00 01 08 0f 00 00 78 08 00 00 01 00 00 00 |.Z......x.......|
00000090 78 a8 47 45 45 a5 47 45 00 00 00 00 b7 f5 f0 44 |x.GEE.GE.......D|
000000a0 32 b4 85 44 05 00 00 00 00 00 80 3f 39 30 49 bd |2..D.......?90I.|
000000b0 06 26 19 bd 6a 00 66 3d a2 b3 7c 3d 00 00 00 00 |.&..j.f=..|=....|
000000c0 00 00 00 00 00 00 00 00 01 00 00 00 d4 85 c2 38 |...............8|
000000d0 09 0f 54 39 03 00 00 00 35 23 ff ff ff ff ff ff |..T9....5#......|
000000e0 11 20 00 01 35 31 30 31 31 37 36 33 00 00 00 00 |. ..51011763....|
000000f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1e 78 |...............x|
00000100 10 20 00 01 00 00 00 00 00 00 00 00 00 00 00 00 |. ..............|
00000110 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a9 6b |...............k|
00000120 09 0c 00 01 0c 00 00 00 00 00 9c 23 ff ff ff ff |...........#....|
00000130 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................|
00000140 06 1b 00 01 46 53 43 32 33 32 56 50 31 32 5f 42 |....XSSSSSSSSS_B|
00000150 31 00 00 00 00 00 00 00 00 ef 3b ff ff ff ff ff |1.........;.....|
00000160 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................|
*
00001000
But when i wanted to use the LibArgus function to be able to read the EEPROM data, i had a segmentation fault, there is my code :
*/ Assume that the camera provider, camera device and the camera properties was created */
void* buffer = (void*) malloc(100 *sizeof(int));
Argus::Ext::ISensorEepromData *iSensorEepromData = Argus::interface_cast<Argus::Ext::ISensorEepromData>(cameraDevices[0]);
iSensorEepromData->getSensorEepromData(buffer, iSensorEepromData->getSensorEepromDataSize());
I’m getting a segmentation fault, is there any something wrong with the code ?
Thank you