Hi there,
I have Leopard imaging imx390 with TI UB953 serializer camera module plugged into our customized TX2 board. Running r28.2. Also have TI UB954 de-serializer connects 2 cis lanes to tx2.
I cannot get any image when I run this gst-launch cmd. and nvcamera-daemon crashed after some time.
gst-launch-1.0 nvcamerasrc fpsRange="30.0 30.0" sensor-id=0 ! 'video/x-raw(memory:NVMM), width=(int)1936, height=(int)1100, format=(string)I420, framerate=(fraction)30/1' ! nvtee ! nvvidconv flip-method=2 ! 'video/x-raw, format=(string)I420' ! xvimagesink -e
debug message
Thread 1 getting next capture
Thread 1 is waiting
Thread 2 getting next capture
Thread 2 is waiting
Thread 3 getting next capture
Thread 3 is waiting
Thread 4 getting next capture
Thread 4 is waiting
Thread 5 getting next capture
Thread 5 is waiting
Thread 6 getting next capture
Thread 6 is waiting
Thread 7 getting next capture
Thread 7 is waiting
Thread 8 getting next capture
Thread 8 is waiting
Thread 9 getting next capture
Thread 9 is waiting
Thread 10 getting next capture
Thread 10 is waiting
Thread 11 getting next capture
Thread 11 is waiting
Thread 12 getting next capture
Thread 12 is waiting
Starting services...
Worker thread IspHw statsComplete start
Worker thread IspHw frameComplete start
Worker thread CaptureScheduler checkFramePending start
Worker thread CaptureScheduler frameStart start
Worker thread V4L2CaptureScheduler checkCaptureComplete start
Worker thread V4L2CaptureScheduler issueCaptures start
Worker thread PS handleRequests start
getInstance: s_instance(0x7f7cb29800)
getInstance: s_instance(0x7f7cb29800)
subscribe: create SensorType(gyroscope) sensor(0x7f7cb2b980)
subscribe: create SensorType(accelerometer) sensor(0x7f7cb30de0)
AC plugin not present: dlopen "acplugin.so", acplugin.so: cannot open shared object file: No such file or directory
Services are started
NvPclSetHotplugCallback: ++++++++++++++++++++++
---- Imager: Calibration blob file handling supported in this build ----
NvPclHwGetModuleList: OFParserListModules Succeeded
NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
NvPclHwGetModuleList: No module data found
NvPclHwPrintModuleDefinition -- Name: imx390_center_liimx390
NvPclHwPrintModuleDefinition -- Position: 2
NvPclHwPrintModuleDefinition -- CalibrationData Found: 1
NvPclHwPrintCameraSubModule -- HwCamSubModule[0].Name: v4l2_sensor
NvPclHwPrintCameraSubModule -- HwCamSubModule[0].DevName: imx390 1-001a
NvPclHwGetModuleList: OFParserListModules Succeeded
NvPclModuleListInitialize: NvPclModule list[0]: imx390_center_liimx390 position2
NvPclHwScanExternalCameras -- adding video0 to discover list
NvPclHwScanExternalCameras -- adding video0 to discover list
initialize: /dev/video0
queryControls: 10100736 control Frame Length
queryControls: 10100737 control Coarse Time
queryControls: 10100738 control Coarse Time Short
queryControls: 10100739 control Group Hold
queryControls: 10100740 control HDR enable
queryControls: 10100745 control Gain
queryControls: 10100836 control Bypass Mode
queryControls: 10100837 control Override Enable
queryControls: 10100838 control Height Align
queryControls: 10100839 control Size Align
queryControls: 10100840 control Write ISP format
queryControls: 10100841 control Sensor Signal Properties
queryControls: 10100842 control Sensor Image Properties
queryControls: 10100843 control Sensor Control Properties
queryControls: 10100844 control Sensor DV Timings
queryControls: 10100866 control Sensor Modes
Ioctl failed: Invalid argument
NvPclHwScanExternalCameras -- adding video0 to discover list
initialize: /dev/video0
queryControls: 10100736 control Frame Length
queryControls: 10100737 control Coarse Time
queryControls: 10100738 control Coarse Time Short
queryControls: 10100739 control Group Hold
queryControls: 10100740 control HDR enable
queryControls: 10100745 control Gain
queryControls: 10100836 control Bypass Mode
queryControls: 10100837 control Override Enable
queryControls: 10100838 control Height Align
queryControls: 10100839 control Size Align
queryControls: 10100840 control Write ISP format
queryControls: 10100841 control Sensor Signal Properties
queryControls: 10100842 control Sensor Image Properties
queryControls: 10100843 control Sensor Control Properties
queryControls: 10100844 control Sensor DV Timings
queryControls: 10100866 control Sensor Modes
Ioctl failed: Invalid argument
getHotplugMonitor: Getting hotplug monitor instance
initializeHotplug++
hotPlugfunc ++ addWatch: Watch added wd='1'
CheckProcDTExists: INFO: accessing /proc/device-tree/tegra-virtual-camera-platform/modules; No such file or directory
OFParserGetVirtualDevice: NVIDIA Camera virtual enumerator not found in proc device-tree
setHotplugCallback: Registered new callback client
NvPclSetHotplugCallback: ----------------------
hotPlugfunc: reading from inotify FD, Thread waiting
NvPclOpen: ++++++++++++++++++++++
NvPclStateControllerOpen: Found GUID 2 match at index[0]
NvPclHwInitializeModule: allocate overrides pathname @ 0x7f7cb5d730
NvPclHwInitializeModule: allocate overrides pathname @ 0x7f7cb5d7c0
NvPclHwInitializeModule: allocate overrides pathname @ 0x7f7cb5d850
NvPclHwInitializeModule: allocate overrides pathname @ 0x7f7cb5af80
NvPclHwInitializeModule: allocate overrides pathname @ 0x7f7cb5b010
NvPclHwInitializeModule: allocate overrides pathname @ 0x7f7cb5b0a0
LoadOverridesFile: looking for override file [/Calib/camera_override.isp] 1/16CheckOverridesPermissions: cannot stat file [/Calib/camera_override.isp]
LoadOverridesFile: looking for override file [/data/nvcam/settings/camera_overrides.isp] 2/16CheckOverridesPermissions: cannot stat file [/data/nvcam/settings/camera_overrides.isp]
LoadOverridesFile: looking for override file [/opt/nvidia/nvcam/settings/camera_overrides.isp] 3/16CheckOverridesPermissions: cannot stat file [/opt/nvidia/nvcam/settings/camera_overrides.isp]
LoadOverridesFile: looking for override file [/var/nvidia/nvcam/settings/camera_overrides.isp] 4/16CheckOverridesPermissions: override file [/var/nvidia/nvcam/settings/camera_overrides.isp] has correct owner and mode
---- imager: Found override file [/var/nvidia/nvcam/settings/camera_overrides.isp]. ----
Imager: looking for override file [/mnt/factory/camera/factory.bin] 1/16
Imager: looking for override file [/Calib/factory.bin] 2/16
Imager: looking for override file [/Calib/calibration.bin] 3/16
Imager: looking for override file [(null)] 4/16
Imager: looking for override file [(null)] 5/16
Imager: looking for override file [(null)] 6/16
Imager: looking for override file [(null)] 7/16
Imager: looking for override file [(null)] 8/16
Imager: looking for override file [(null)] 9/16
Imager: looking for override file [(null)] 10/16
Imager: looking for override file [(null)] 11/16
Imager: looking for override file [(null)] 12/16
Imager: looking for override file [(null)] 13/16
Imager: looking for override file [(null)] 14/16
Imager: looking for override file [(null)] 15/16
Imager: looking for override file [(null)] 16/16
Imager: looking for override file [/data/nvcam/settings/factory.bin] 1/16
Imager: looking for override file [/data/nvcam/settings/imx390_center_liimx390.bin] 2/16
Imager: looking for override file [/opt/nvidia/nvcam/settings/imx390_center_liimx390.bin] 3/16
Imager: looking for override file [/var/nvidia/nvcam/settings/imx390_center_liimx390.bin] 4/16
Imager: looking for override file [(null)] 5/16
Imager: looking for override file [(null)] 6/16
Imager: looking for override file [(null)] 7/16
Imager: looking for override file [(null)] 8/16
Imager: looking for override file [(null)] 9/16
Imager: looking for override file [(null)] 10/16
Imager: looking for override file [(null)] 11/16
Imager: looking for override file [(null)] 12/16
Imager: looking for override file [(null)] 13/16
Imager: looking for override file [(null)] 14/16
Imager: looking for override file [(null)] 15/16
Imager: looking for override file [(null)] 16/16
NvPclCreateDriver: Found NvPcl Driver Hal dev_name match (v4l2_sensor)
NvPclCreateDriver: Found a Driver name match (v4l2_sensor)
NvPclConnectDrivers: hImager was NULL, creating new imager
NvPclInitializeDrivers: v4l2_sensor ++++++++++++++++++
OFDPropertyGetString: could not read property [devnode-bus]
initialize: imx390 1-001a
queryControls: 10100736 control Frame Length
queryControls: 10100737 control Coarse Time
queryControls: 10100738 control Coarse Time Short
queryControls: 10100739 control Group Hold
queryControls: 10100740 control HDR enable
queryControls: 10100745 control Gain
queryControls: 10100836 control Bypass Mode
queryControls: 10100837 control Override Enable
queryControls: 10100838 control Height Align
queryControls: 10100839 control Size Align
queryControls: 10100840 control Write ISP format
queryControls: 10100841 control Sensor Signal Properties
queryControls: 10100842 control Sensor Image Properties
queryControls: 10100843 control Sensor Control Properties
queryControls: 10100844 control Sensor DV Timings
queryControls: 10100866 control Sensor Modes
Ioctl failed: Invalid argument
OFDPropertyGetString: could not read property [use_decibel_gain]
OFDPropertyGetString: could not read property [use_sensor_mode_id]
OFDPropertyCopyToLong: could not read property [has-eeprom]
Control Fuse ID not found
Control OTP Data not found
Control Frame Rate not found
Control Exposure not found
findCustomCids: calculated MaxCoarseDiff 10
queryPixelFormats: type: 1, pixelformat 0x30314752 "RG10"
Ioctl failed: Invalid argument
Ioctl failed: Invalid argument
Ioctl failed: Invalid argument
Ioctl failed: Invalid argument
Ioctl failed: Invalid argument
Ioctl failed: Invalid argument
Ioctl failed: Invalid argument
Ioctl failed: Invalid argument
Ioctl failed: Invalid argument
Ioctl failed: Invalid argument
queryFormatSizes: Discrete frameSize 1936x1100
Ioctl failed: Invalid argument
Ioctl failed: Invalid argument
OFDPropertyGetString: could not read property [type]
loadSubType: Sensor type missing in DT, 199
OFDPropertyCopyToLongLong: could not read property [mode0.exp_time_1h]
OFDPropertyCopyToFloat: could not read property [mode0.gain_step_pitch]
OFDPropertyGetString: could not read property [mode0.x_start]
OFDPropertyGetString: could not read property [mode0.y_start]
OFDPropertyGetString: could not read property [mode0.x_end]
OFDPropertyGetString: could not read property [mode0.y_end]
OFDPropertyGetString: could not read property [mode0.h_scaling]
OFDPropertyGetString: could not read property [mode0.v_scaling]
OFDPropertyGetString: could not read property [sensor_model]
initialize: Loaded Driver: 1 Modes Available--------------
NvPclInitializeDrivers: v4l2_sensor ------------------
NvPclOpen: ----------------------
LSC: LSC surface is not based on full res!
sourceRegistry[0] assigned
ispRegistry[0] assigned
Using Source GUID 2
Worker thread ViCsiHw frameComplete start
Worker thread ViCsiHw frameStart start
NvPclPowerOn: +++++++++++
NvPclPowerOn: -----------
Using ISP A
LSC: LSC surface is not based on full res!
AC plugin not present: dlopen "acplugin.so", acplugin.so: cannot open shared object file: No such file or directory
No library found, disabling AC plugin.
Worker thread CaptureDispatcher start
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
writeMode: Target mode Id(0): Resolution 1936x1100
setActiveBufferMemory: 2
INPUT: Width 1936 Height 1100 pixelformat RG12
writeFrameRate: INPUT frameLength:1125, frameRate:30.000000
writeGain: INPUT gainCtrl:1 analogGain:1.000000
writeExposure: INPUT coarseTime:1115, expTime:0.033037
updateOutputSettings: OUTPUT frameLength:1125, frameRate:30.000000
updateOutputSettings: OUTPUT analogGain:1.000000
updateOutputSettings: OUTPUT coarseTime:1115, expTime:0.033037
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
PowerServiceHw:addRequest: table size: before: 0, after:1
request table for VI 0:
req[0]: output Bpp=12
req[0]: sensor pixelRate=111375000 pixels/sec
req[0]: input width=1936, input height=1100, input Bpp=12
pixels per clock=8
req[0]: input width=1936, input height=1100, input Bpp=12
req[0]: output width=1936, output height=1100, output Bpp=12
req[0]: input fps=30
req[0]: guID=2, stage type=SensorCapture
req[0]: clock=13921875 Hz, iso bw=2147483647 KB/s, non-iso bw=0 KB/s
req[900]: timeout=0
PowerServiceHw:addRequest: table size: before: 0, after:1
request table for CSI 0:
req[0]: sensor pixelRate=111375000 pixels/sec
req[0]: input width=1936, input height=1100, input Bpp=12
pixels per clock=8
req[0]: input width=1936, input height=1100, input Bpp=12
req[0]: output width=1936, output height=1100, output Bpp=12
req[0]: input fps=30
req[0]: guID=2, stage type=SensorCapture
req[0]: clock=20882812 Hz, iso bw=0 KB/s, non-iso bw=0 KB/s
req[900]: timeout=0
PowerServiceHwVi:setIso: m_bwVal_Iso=2147483647
PowerServiceHw:setClock: PowerServiceHw[1]: requested_clock_Hz=225000000
PowerServiceHw:setClock: PowerServiceHw[0]: requested_clock_Hz=225000000
PowerServiceCore:setCameraBw: totalIsoBw=2147483647
SCF: Error InvalidState: NonFatal ISO BW requested not set. Requested = 2147483647 Set = 4687500 (in src/services/power/PowerServiceCore.cpp, function setCameraBw(), line 653)
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
No output buffers for 2
No output buffers for 1
InstructionList:
+ GraphSettings
| SensorMode: 1936x1100 BayerS16RGGB 30.0fps
| output 0: 1936x1100 BL Y8 420
+ Instruction List
| id: 0
+ 0: CCDataSetupStage
| EstimatedIspOutLatencyFrames: 5
| NumConcurrentCaptures: 1
| UnprocessedYuvBufferMask: 0
+ 1: ACSynchronizeStage
+ 2: AeAfApplyStage
+ 3: AcPluginStage
| operation: opApply
+ 4: AcMergeStage
| IspIn: [1936, 1100]
| IspOut0: [1936, 1100]
| IspOut1: [0, 0]
| IspOut2: [640, 364]
+ 5: StatsBufferAcquireStage
| Buffer Index: 1
| BufferRequirements: 640x364 Pitch Y8 420
+ 6: TempBufferAcquireStage
| Buffer Index: 2
| BufferRequirements: 1936x1 Pitch NonColor8
+ 7: SensorISPCaptureStage
| Source GUID: 2
| Output A Buffer: 0
| Output Thumb Buffer: 1
| SensorMetadata Buffer: 2
+ 8: StatsUpdateStage
| Outut Meta Buffer: 2
+ 9: BufferReturnStage
| Output A Buffer: 2
+ 10: AcPluginStage
| operation: opAnalyze
+ 11: AfAnalysisStage
+ 12: MonitorStage
+ 13: ExifStage
+ 14: MakerNoteStage
+ 15: BufferReturnStage
| Output A Buffer: 0
+ 16: MetadataReturnStage
+ 17: PerfStatsStage
Created fiber 0x7f300008c0 for CC 101 globalID 101 session 2
Thread 1 is working on CC 101 session 2 globalID 101 step 0
CC 101 session 2 completed step 0 in fiber 0x7f300008c0
cc 101(0) session 2 runCount=0 runIspOut=0, latest ccId=0
CC 101 session 2 completed step 1 in fiber 0x7f300008c0
NV AE and AfApply algorithms are active.
Created fiber 0x7f30000b70 for CC 102 globalID 102 session 2
Thread 2 is working on CC 102 session 2 globalID 102 step 0
CC 102 session 2 completed step 0 in fiber 0x7f30000b70
cc 102(1) session 2 runCount=1 runIspOut=0, latest ccId=0
CC 102 session 2 completed step 1 in fiber 0x7f30000b70
CC 102 session 2 stalled step 2 in fiber 0x7f30000b70
FiberScheduler: cc 102, session 2 fiber 0x7f30000b70 not ready to execute stalled on 0x7f7ce991a0 stage...
Thread 2 getting next capture
Thread 2 is waiting
Thread 3 is waiting
Thread 4 is working on CC 102 session 2 globalID 102 step 2
NV AE and AfApply algorithms are active.
CC 102 session 2 completed step 2 in fiber 0x7f30000b70
CC 102 session 2 stalled step 3 in fiber 0x7f30000b70
FiberScheduler: cc 102, session 2 fiber 0x7f30000b70 not ready to execute stalled on 0x7f7ce990a0 stage...
Thread 4 getting next capture
Thread 4 is waiting
Thread 5 is waiting
CC 101 session 2 completed step 2 in fiber 0x7f300008c0
CC 101 session 2 completed step 3 in fiber 0x7f300008c0
Thread 6 is working on CC 102 session 2 globalID 102 step 3
CC 102 session 2 completed step 3 in fiber 0x7f30000b70
CC 102 session 2 stalled step 4 in fiber 0x7f30000b70
FiberScheduler: cc 102, session 2 fiber 0x7f30000b70 not ready to execute stalled on 0x7f7cb62d90 stage...
Thread 6 getting next capture
Thread 6 is waiting
Thread 7 is waiting
Thread 8 is working on CC 102 session 2 globalID 102 step 4
CC 102 session 2 completed step 4 in fiber 0x7f30000b70
CC 102 session 2 completed step 5 in fiber 0x7f30000b70
CC 102 session 2 completed step 6 in fiber 0x7f30000b70
CC 102 session 2 stalled step 7 in fiber 0x7f30000b70
FiberScheduler: cc 102, session 2 fiber 0x7f30000b70 not ready to execute stalled on 0x7f7ce9a420 stage...
Thread 8 getting next capture
Thread 8 is waiting
Thread 9 is waiting
CC 101 session 2 completed step 4 in fiber 0x7f300008c0
CC 101 session 2 completed step 5 in fiber 0x7f300008c0
CC 101 session 2 completed step 6 in fiber 0x7f300008c0
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
PowerServiceHw:addRequest: table size: before: 1, after:2
request table for VI 0:
req[0]: output Bpp=12
req[0]: sensor pixelRate=111375000 pixels/sec
req[0]: input width=1936, input height=1100, input Bpp=12
pixels per clock=8
req[0]: input width=1936, input height=1100, input Bpp=12
req[0]: output width=1936, output height=1100, output Bpp=12
req[0]: input fps=30
req[0]: guID=2, stage type=SensorCapture
req[0]: clock=13921875 Hz, iso bw=2147483647 KB/s, non-iso bw=0 KB/s
req[900]: timeout=0
req[1]: output Bpp=16
req[1]: sensor pixelRate=111375000 pixels/sec
req[1]: input width=1936, input height=1100, input Bpp=12
pixels per clock=8
req[1]: input width=1936, input height=1100, input Bpp=12
req[1]: output width=1936, output height=1100, output Bpp=16
req[1]: input fps=30
req[1]: guID=2, stage type=SensorIspCapture
req[1]: clock=13921875 Hz, iso bw=0 KB/s, non-iso bw=0 KB/s
req[450]: timeout=0
PowerServiceHw:addRequest: table size: before: 1, after:2
request table for CSI 0:
req[0]: sensor pixelRate=111375000 pixels/sec
req[0]: input width=1936, input height=1100, input Bpp=12
pixels per clock=8
req[0]: input width=1936, input height=1100, input Bpp=12
req[0]: output width=1936, output height=1100, output Bpp=12
req[0]: input fps=30
req[0]: guID=2, stage type=SensorCapture
req[0]: clock=20882812 Hz, iso bw=0 KB/s, non-iso bw=0 KB/s
req[900]: timeout=0
req[1]: sensor pixelRate=111375000 pixels/sec
req[1]: input width=1936, input height=1100, input Bpp=12
pixels per clock=8
req[1]: input width=1936, input height=1100, input Bpp=12
req[1]: output width=1936, output height=1100, output Bpp=16
req[1]: input fps=30
req[1]: guID=2, stage type=SensorIspCapture
req[1]: clock=20882812 Hz, iso bw=0 KB/s, non-iso bw=0 KB/s
req[450]: timeout=0
PowerServiceHw:updateRequests: table size: before: 2, after:2
request table for VI 0:
req[0]: output Bpp=12
req[0]: sensor pixelRate=111375000 pixels/sec
req[0]: input width=1936, input height=1100, input Bpp=12
pixels per clock=8
req[0]: input width=1936, input height=1100, input Bpp=12
req[0]: output width=1936, output height=1100, output Bpp=12
req[0]: input fps=30
req[0]: guID=2, stage type=SensorCapture
req[0]: clock=13921875 Hz, iso bw=2147483647 KB/s, non-iso bw=0 KB/s
req[774]: timeout=0
req[1]: output Bpp=16
req[1]: sensor pixelRate=111375000 pixels/sec
req[1]: input width=1936, input height=1100, input Bpp=12
pixels per clock=8
req[1]: input width=1936, input height=1100, input Bpp=12
req[1]: output width=1936, output height=1100, output Bpp=16
req[1]: input fps=30
req[1]: guID=2, stage type=SensorIspCapture
req[1]: clock=13921875 Hz, iso bw=0 KB/s, non-iso bw=0 KB/s
req[324]: timeout=0
PowerServiceHw:updateRequests: table size: before: 2, after:2
request table for CSI 0:
req[0]: sensor pixelRate=111375000 pixels/sec
req[0]: input width=1936, input height=1100, input Bpp=12
pixels per clock=8
req[0]: input width=1936, input height=1100, input Bpp=12
req[0]: output width=1936, output height=1100, output Bpp=12
req[0]: input fps=30
req[0]: guID=2, stage type=SensorCapture
req[0]: clock=20882812 Hz, iso bw=0 KB/s, non-iso bw=0 KB/s
req[774]: timeout=0
req[1]: sensor pixelRate=111375000 pixels/sec
req[1]: input width=1936, input height=1100, input Bpp=12
pixels per clock=8
req[1]: input width=1936, input height=1100, input Bpp=12
req[1]: output width=1936, output height=1100, output Bpp=16
req[1]: input fps=30
req[1]: guID=2, stage type=SensorIspCapture
req[1]: clock=20882812 Hz, iso bw=0 KB/s, non-iso bw=0 KB/s
req[324]: timeout=0
PowerServiceHw:addRequest: table size: before: 0, after:1
request table for ISP 0:
req[0]: output1 width=320, output1 height=200, output1 Bpp=16
req[0]: output2 width=320, output2 height=200, output2 Bpp=16
req[0]: output Bpp=16
req[0]: sensor pixelRate=111375000 pixels/sec
req[0]: input width=1936, input height=1100, input Bpp=12
pixels per clock=2
req[0]: input width=1936, input height=1100, input Bpp=12
req[0]: output width=130, output height=74, output Bpp=16
req[0]: input fps=30
req[0]: guID=2, stage type=SensorIspCapture
req[0]: clock=56801248 Hz, iso bw=94197 KB/s, non-iso bw=0 KB/s
req[450]: timeout=0
PowerServiceHw:updateRequests: table size: before: 1, after:1
request table for ISP 0:
req[0]: output1 width=320, output1 height=200, output1 Bpp=16
req[0]: output2 width=320, output2 height=200, output2 Bpp=16
req[0]: output Bpp=16
req[0]: sensor pixelRate=111375000 pixels/sec
req[0]: input width=1936, input height=1100, input Bpp=12
pixels per clock=2
req[0]: input width=1936, input height=1100, input Bpp=12
req[0]: output width=130, output height=74, output Bpp=16
req[0]: input fps=30
req[0]: guID=2, stage type=SensorIspCapture
req[0]: clock=56801248 Hz, iso bw=94197 KB/s, non-iso bw=0 KB/s
req[449]: timeout=0
PowerServiceHwIsp:setLaBw: m_bwVal_Iso=94197 and m_bwVal_NonIso=0 KBpS
PowerServiceHw:setClock: PowerServiceHw[2]: requested_clock_Hz=56801248
CC 101 session 2 processing step 7 in fiber 0x7f300008c0
Thread 10 is working on CC 102 session 2 globalID 102 step 7
FiberScheduler: cc 101, session 2, fiber 0x7f300008c0 in progress...
Thread 1 getting next captureThread 11 is waiting
Thread 1 is waiting
CC 102 session 2 processing step 7 in fiber 0x7f30000b70
FiberScheduler: cc 102, session 2, fiber 0x7f30000b70 in progress...
Thread 10 getting next capture
Thread 10 is waiting
Thread 12 is waiting
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
PowerServiceHw:addRequest: table size: before: 1, after:2
request table for ISP 0:
req[0]: output1 width=320, output1 height=200, output1 Bpp=16
req[0]: output2 width=320, output2 height=200, output2 Bpp=16
req[0]: output Bpp=16
req[0]: sensor pixelRate=111375000 pixels/sec
req[0]: input width=1936, input height=1100, input Bpp=12
pixels per clock=2
req[0]: input width=1936, input height=1100, input Bpp=12
req[0]: output width=130, output height=74, output Bpp=16
req[0]: input fps=30
req[0]: guID=2, stage type=SensorIspCapture
req[0]: clock=56801248 Hz, iso bw=94197 KB/s, non-iso bw=0 KB/s
req[450]: timeout=0
req[1]: output1 width=320, output1 height=200, output1 Bpp=16
req[1]: output2 width=640, output2 height=364, output2 Bpp=13
req[1]: output Bpp=12
req[1]: sensor pixelRate=111375000 pixels/sec
req[1]: input width=1936, input height=1100, input Bpp=12
pixels per clock=2
req[1]: input width=1936, input height=1100, input Bpp=12
req[1]: output width=1936, output height=1100, output Bpp=12
req[1]: input fps=30
req[1]: guID=2, stage type=SensorIspCapture
req[1]: clock=56801248 Hz, iso bw=333075 KB/s, non-iso bw=0 KB/s
req[450]: timeout=0
PowerServiceHw:updateRequests: table size: before: 2, after:2
request table for ISP 0:
req[0]: output1 width=320, output1 height=200, output1 Bpp=16
req[0]: output2 width=320, output2 height=200, output2 Bpp=16
req[0]: output Bpp=16
req[0]: sensor pixelRate=111375000 pixels/sec
req[0]: input width=1936, input height=1100, input Bpp=12
pixels per clock=2
req[0]: input width=1936, input height=1100, input Bpp=12
req[0]: output width=130, output height=74, output Bpp=16
req[0]: input fps=30
req[0]: guID=2, stage type=SensorIspCapture
req[0]: clock=56801248 Hz, iso bw=94197 KB/s, non-iso bw=0 KB/s
req[448]: timeout=0
req[1]: output1 width=320, output1 height=200, output1 Bpp=16
req[1]: output2 width=640, output2 height=364, output2 Bpp=13
req[1]: output Bpp=12
req[1]: sensor pixelRate=111375000 pixels/sec
req[1]: input width=1936, input height=1100, input Bpp=12
pixels per clock=2
req[1]: input width=1936, input height=1100, input Bpp=12
req[1]: output width=1936, output height=1100, output Bpp=12
req[1]: input fps=30
req[1]: guID=2, stage type=SensorIspCapture
req[1]: clock=56801248 Hz, iso bw=333075 KB/s, non-iso bw=0 KB/s
req[448]: timeout=0
PowerServiceHwIsp:setLaBw: m_bwVal_Iso=333075 and m_bwVal_NonIso=0 KBpS
Error: waitCsiFrameStart timeout guid 2
SCF: Error Timeout: VI SOF timed out! (in src/services/capture/CaptureServiceDeviceViCsi.cpp, function waitCsiFrameStart(), line 948)
VI Stream Id = 0 Virtual Channel = 0
************VI Debug Registers**********
VI_CSIMUX_STAT_FRAME_0 = 0x00000000
VI_CSIMUX_FRAME_STATUS_0 = 0x00000000
VI_CFG_INTERRUPT_STATUS_0 = 0x3f000000
VI_ISPBUFA_ERROR_0 = 0x00000000
VI_FMLITE_ERROR_0 = 0x00000000
VI_NOTIFY_ERROR_0 = 0x00000000
*****************************************
CSI Stream Id = 0 Brick Id = 0
************CSI Debug Registers**********
CILA_INTR_STATUS_CILA[0x10400] = 0x00000110
CILB_INTR_STATUS_CILB[0x10c00] = 0x00000000
INTR_STATUS[0x100a4] = 0x00000000
INTR_STATUS[0x100a4] = 0x00000000
ERR_INTR_STATUS[0x100ac] = 0x00000000
ERROR_STATUS2VI_VC0[0x10094] = 0x00000000
ERROR_STATUS2VI_VC1[0x10098] = 0x00000000
ERROR_STATUS2VI_VC2[0x1009c] = 0x00000000
ERROR_STATUS2VI_VC3[0x100a0] = 0x00000000
*****************************************
Error: waitCsiFrameStart Something went wrong with waiting on frame start
Created fiber 0x7f30000d10 for CC 103 globalID 103 session 2
Thread 2 is working on CC 103 session 2 globalID 103 step 0
CC 103 session 2 completed step 0 in fiber 0x7f30000d10
cc 103(2) session 2 runCount=2 runIspOut=0, latest ccId=0
CC 103 session 2 completed step 1 in fiber 0x7f30000d10
NV AE and AfApply algorithms are active.
CC 103 session 2 completed step 2 in fiber 0x7f30000d10
CC 103 session 2 completed step 3 in fiber 0x7f30000d10
CC 103 session 2 completed step 4 in fiber 0x7f30000d10
CC 103 session 2 completed step 5 in fiber 0x7f30000d10
CC 103 session 2 completed step 6 in fiber 0x7f30000d10
CC 103 session 2 processing step 7 in fiber 0x7f30000d10
FiberScheduler: cc 103, session 2, fiber 0x7f30000d10 in progress...
Thread 2 getting next capture
Thread 3 is waiting
Thread 2 is waiting
SCF: Error Timeout: ISP port 0 timed out! (in src/services/capture/CaptureServiceDeviceIsp.cpp, function waitIspFrameEnd(), line 702)
SCF: Error Timeout: ISP Stats timed out! (in src/services/capture/CaptureServiceDeviceIsp.cpp, function waitIspStatsFinished(), line 785)
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
PowerServiceCore:handleRequests: timePassed = 10409FiberScheduler: cc 101, session 2, fiber 0x7f300008c0 aborted in async operation
CaptureService cancelling request 2
FiberScheduler: cc 103, session 2, fiber 0x7f30000d10 aborted in async operation
FiberScheduler: fiber 0x7f30000d10 exiting
disposing CC 103 Session 2
Thread 4 is waiting
Error: waitCsiFrameStart timeout guid 2
SCF: Error Timeout: VI SOF timed out! (in src/services/capture/CaptureServiceDeviceViCsi.cpp, function waitCsiFrameStart(), line 948)
VI Stream Id = 0 Virtual Channel = 0
************VI Debug Registers**********
VI_CSIMUX_STAT_FRAME_0 = 0x00000000
VI_CSIMUX_FRAME_STATUS_0 = 0x00000000
VI_CFG_INTERRUPT_STATUS_0 = 0x3f000000
VI_ISPBUFA_ERROR_0 = 0x00000000
VI_FMLITE_ERROR_0 = 0x00000000
VI_NOTIFY_ERROR_0 = 0x00000000
*****************************************
CSI Stream Id = 0 Brick Id = 0
************CSI Debug Registers**********
CILA_INTR_STATUS_CILA[0x10400] = 0x00000110
CILB_INTR_STATUS_CILB[0x10c00] = 0x00000000
INTR_STATUS[0x100a4] = 0x00000000
INTR_STATUS[0x100a4] = 0x00000000
ERR_INTR_STATUS[0x100ac] = 0x00000000
ERROR_STATUS2VI_VC0[0x10094] = 0x00000000
ERROR_STATUS2VI_VC1[0x10098] = 0x00000000
ERROR_STATUS2VI_VC2[0x1009c] = 0x00000000
ERROR_STATUS2VI_VC3[0x100a0] = 0x00000000
*****************************************
SCF: Error Timeout: ISP port 0 timed out! (in src/services/capture/CaptureServiceDeviceIsp.cpp, function waitIspFrameEnd(), line 702)
SCF: Error Timeout: ISP Stats timed out! (in src/services/capture/CaptureServiceDeviceIsp.cpp, function waitIspStatsFinished(), line 785)
SCF: Error Timeout: ISP port 1 timed out! (in src/services/capture/CaptureServiceDeviceIsp.cpp, function waitIspFrameEnd(), line 725)
SCF: Error Timeout: NvRmSyncWait failed (in src/api/Buffer.cpp, function cpuWaitFences(), line 569)
SCF: Error Timeout: (propagating from src/api/Buffer.cpp, function unassignFromCapture(), line 336)
SCF: Error Timeout: (propagating from src/components/CaptureContainerImpl.cpp, function returnBuffer(), line 377)
SCF: Error Timeout: (propagating from src/components/CaptureContainerImpl.cpp, function returnApiBuffers(), line 518)
FiberScheduler: fiber 0x7f300008c0 exiting
disposing CC 101 Session 2
Thread 5 is waiting
SCF: Error Timeout: ISP port 2 timed out! (in src/services/capture/CaptureServiceDeviceIsp.cpp, function waitIspFrameEnd(), line 736)
SCF: Error Timeout: (propagating from src/services/capture/CaptureServiceDeviceIsp.cpp, function waitIspFrameEnd(), line 743)
SCF: Error Timeout: (propagating from src/common/Utils.cpp, function workerThread(), line 114)
SCF: Error Timeout: Worker thread IspHw frameComplete failed (in src/common/Utils.cpp, function workerThread(), line 131)
SCF: Error Timeout: (propagating from src/services/capture/CaptureServiceDeviceIsp.cpp, function waitCompletion(), line 676)
SCF: Error Timeout: (propagating from src/services/capture/CaptureServiceDevice.cpp, function pause(), line 884)
SCF: Error Timeout: (propagating from src/services/capture/CaptureServiceDevice.cpp, function handleCancelSourceRequests(), line 955)
SCF: Error Timeout: (propagating from src/services/capture/CaptureServiceDevice.cpp, function issueCaptures(), line 983)
SCF: Error Timeout: (propagating from src/common/Utils.cpp, function workerThread(), line 114)
SCF: Error Timeout: Worker thread CaptureScheduler frameStart failed (in src/common/Utils.cpp, function workerThread(), line 131)
FiberScheduler: cc 102, session 2, fiber 0x7f30000b70 aborted in async operation
FiberScheduler: fiber 0x7f30000b70 exiting
disposing CC 102 Session 2
./debug_gst.sh: line 4: 3534 Segmentation fault (core dumped) /usr/sbin/nvcamera-daemon
device tree
/*
* Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include <t18x-common-modules/tegra186-camera-imx390-a00.dtsi>
#include "dt-bindings/clock/tegra186-clock.h"
#define CAM0_RST_L TEGRA_MAIN_GPIO(R, 5)
#define CAM0_PWDN TEGRA_MAIN_GPIO(R, 0)
#define CAM1_RST_L TEGRA_MAIN_GPIO(R, 1)
#define CAM1_PWDN TEGRA_MAIN_GPIO(L, 6)
#define CAMERA_I2C_MUX_BUS(x) (0x1E + x)
/* camera control gpio definitions */
/ {
i2c@c240000 {
imx390_a@1a {
/* Define any required hw resources needed by driver */
/* ie. clocks, io pins, power sources */
clocks = <&tegra_car TEGRA186_CLK_EXTPERIPH1>,
<&tegra_car TEGRA186_CLK_PLLP_OUT0>;
clock-names = "extperiph1", "pllp_grtba";
mclk = "extperiph1";
/*reset-gpios = <&tegra_main_gpio CAM0_RST_L GPIO_ACTIVE_HIGH>;*/
};
};
};
/*
* Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/ {
host1x {
vi@15700000 {
num-channels = <1>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
liimx390_vi_in0: endpoint {
csi-port = <0>;
bus-width = <2>;
remote-endpoint = <&liimx390_csi_out0>;
};
};
};
};
nvcsi@150c0000 {
num-channels = <1>;
#address-cells = <1>;
#size-cells = <0>;
channel@0 {
reg = <0>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
liimx390_csi_in0: endpoint@0 {
csi-port = <0>;
bus-width = <2>;
remote-endpoint = <&liimx390_imx390_out0>;
};
};
port@1 {
reg = <1>;
liimx390_csi_out0: endpoint@1 {
remote-endpoint = <&liimx390_vi_in0>;
};
};
};
};
};
};
i2c@c240000 {
imx390_a@1a {
compatible = "nvidia,imx390";
/* I2C device address */
reg = <0x1a>;
/* V4L2 device node location */
/* devnode = "video0"; */
/* Physical dimensions of sensor */
physical_w = "3.674";
physical_h = "2.738";
/* Define any required hw resources needed by driver */
/* ie. clocks, io pins, power sources */
/* Defines number of frames to be dropped by driver internally after applying */
/* sensor crop settings. Some sensors send corrupt frames after applying */
/* crop co-ordinates */
post_crop_frame_drop = "0";
/* if true, delay gain setting by one frame to be in sync with exposure */
delayed_gain = "true";
/**
* A modeX node is required to support v4l2 driver
* implementation with NVIDIA camera software stack
*
* mclk_khz = "";
* Standard MIPI driving clock, typically 24MHz
*
* num_lanes = "";
* Number of lane channels sensor is programmed to output
*
* tegra_sinterface = "";
* The base tegra serial interface lanes are connected to
*
* discontinuous_clk = "";
* The sensor is programmed to use a discontinuous clock on MIPI lanes
*
* dpcm_enable = "true";
* The sensor is programmed to use a DPCM modes
*
* cil_settletime = "";
* MIPI lane settle time value.
* A "0" value attempts to autocalibrate based on mclk_multiplier
*
*
*
*
* active_w = "";
* Pixel active region width
*
* active_h = "";
* Pixel active region height
*
* pixel_t = "";
* The sensor readout pixel pattern
*
* readout_orientation = "0";
* Based on camera module orientation.
* Only change readout_orientation if you specifically
* Program a different readout order for this mode
*
* line_length = "";
* Pixel line length (width) for sensor mode.
* This is used to calibrate features in our camera stack.
*
* mclk_multiplier = "";
* Multiplier to MCLK to help time hardware capture sequence
* TODO: Assign to PLL_Multiplier as well until fixed in core
*
* pix_clk_hz = "";
* Sensor pixel clock used for calculations like exposure and framerate
*
*
*
*
* inherent_gain = "";
* Gain obtained inherently from mode (ie. pixel binning)
*
* min_gain_val = ""; (floor to 6 decimal places)
* max_gain_val = ""; (floor to 6 decimal places)
* Gain limits for mode
*
* min_exp_time = ""; (ceil to integer)
* max_exp_time = ""; (ceil to integer)
* Exposure Time limits for mode (us)
*
*
* min_hdr_ratio = "";
* max_hdr_ratio = "";
* HDR Ratio limits for mode
*
* min_framerate = "";
* max_framerate = "";
* Framerate limits for mode (fps)
*
* embedded_metadata_height = "";
* Sensor embedded metadata height in units of rows.
* If sensor does not support embedded metadata value should be 0.
*/
mode0 { // IMX390_MODE_1936X1100
mclk_khz = "24000";
num_lanes = "4";
tegra_sinterface = "serial_a";
discontinuous_clk = "no";
dpcm_enable = "false";
cil_settletime = "0";
dynamic_pixel_bit_depth = "12";
csi_pixel_bit_depth = "12";
mode_type = "bayer";
pixel_phase = "rggb";
pixel_t = "bayer_rggb";
active_w = "1936";
active_h = "1100";
readout_orientation = "0";
line_length = "3300";
inherent_gain = "1";
mclk_multiplier = "25";
pix_clk_hz = "111375000";
min_gain_val = "1";
max_gain_val = "30";
min_hdr_ratio = "1";
max_hdr_ratio = "16";
min_framerate = "1.5";
max_framerate = "30";
min_exp_time = "30";
max_exp_time = "660000";
embedded_metadata_height = "1";
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
liimx390_imx390_out0: endpoint {
csi-port = <0>;
bus-width = <2>;
remote-endpoint = <&liimx390_csi_in0>;
};
};
};
};
};
};
/ {
tegra-camera-platform {
compatible = "nvidia, tegra-camera-platform";
/**
* Physical settings to calculate max ISO BW
*
* num_csi_lanes = <>;
* Total number of CSI lanes when all cameras are active
*
* max_lane_speed = <>;
* Max lane speed in Kbit/s
*
* min_bits_per_pixel = <>;
* Min bits per pixel
*
* vi_peak_byte_per_pixel = <>;
* Max byte per pixel for the VI ISO case
*
* vi_bw_margin_pct = <>;
* Vi bandwidth margin in percentage
*
* max_pixel_rate = <>;
* Max pixel rate in Kpixel/s for the ISP ISO case
*
* isp_peak_byte_per_pixel = <>;
* Max byte per pixel for the ISP ISO case
*
* isp_bw_margin_pct = <>;
* Isp bandwidth margin in percentage
*/
num_csi_lanes = <12>;
max_lane_speed = <1500000>;
min_bits_per_pixel = <10>;
vi_peak_byte_per_pixel = <2>;
vi_bw_margin_pct = <25>;
max_pixel_rate = <750000>;
isp_peak_byte_per_pixel = <5>;
isp_bw_margin_pct = <25>;
/**
* The general guideline for naming badge_info contains 3 parts, and is as follows,
* The first part is the camera_board_id for the module; if the module is in a FFD
* platform, then use the platform name for this part.
* The second part contains the position of the module, ex. "rear" or "front".
* The third part contains the last 6 characters of a part number which is found
* in the module's specsheet from the vender.
*/
modules {
module0 {
badge = "imx390_center_liimx390";
position = "center";
orientation = "1";
drivernode0 {
/* Declare PCL support driver (classically known as guid) */
pcl_id = "v4l2_sensor";
/* Driver v4l2 device name */
devname = "imx390 1-001a";
/* Declare the device-tree hierarchy to driver instance */
proc-device-tree = "/proc/device-tree/i2c@c240000/imx390_a@1a";
};
};
};
};
};
dmesg is attached.
Looks like no output from image sensor. Please advise. Thanks.
dmesg.log (118 KB)