I am using L4T 28.2.1. I have an IMX290 camera module from e-consystems. On the dev kit, works fine. On the custom carrier board, it seems to work in that the camera is found, /dev/video node is created, all seems well. Except when I go to use the camera I am getting this strange error:
[ 358.080136] nvcamera-daemon[2315]: unhandled level 2 translation fault (11) at 0x00000000, esr 0x92000006
[ 358.090105] pgd = ffffffc071fc9000
[ 358.093566] [00000000] *pgd=00000000e3a7c003, *pud=00000000e3a7c003, *pmd=0000000000000000
[ 358.101969]
[ 358.103468] CPU: 0 PID: 2315 Comm: nvcamera-daemon Not tainted 4.4.38 #3
[ 358.110228] Hardware name: quill (DT)
[ 358.113926] task: ffffffc1e0aa8c80 ti: ffffffc1b2480000 task.ti: ffffffc1b2480000
[ 358.121454] PC is at 0x403038
[ 358.124441] LR is at 0x403034
[ 358.127406] pc : [<0000000000403038>] lr : [<0000000000403034>] pstate: 60000000
[ 358.134845] sp : 0000007fafd50290
[ 358.138193] x29: 0000007fafd549d0 x28: 0000000000000000
[ 358.143582] x27: 0000000000000001 x26: 0000007fafd54300
[ 358.148968] x25: 0000000000404000 x24: 0000000000000334
[ 358.154312] x23: 0000007fafd52300 x22: 0000007fafd51300
[ 358.159675] x21: 0000007fafd52244 x20: 0000007fafd50310
[ 358.165033] x19: 0000007fafd52930 x18: 0000000000000014
[ 358.170367] x17: 0000007fb158bfb0 x16: 0000007fb12de540
[ 358.175698] x15: 0000007fb1f98000 x14: 7265766972446172
[ 358.181042] x13: 656d61432f697061 x12: 2f637273206d6f72
[ 358.186381] x11: 6620676e69746167 x10: 61706f7270282020
[ 358.191713] x9 : 3a726574656d6172 x8 : 0000000000000040
[ 358.197052] x7 : 0000007fa86b3620 x6 : 0000000000000001
[ 358.202397] x5 : 0000000000000000 x4 : 0000007fa8000b10
[ 358.207741] x3 : 0000000000000000 x2 : 0000000000000001
[ 358.213092] x1 : 0000000000000000 x0 : 0000000000000000
[ 358.218681]
[ 358.220272] Library at 0x403038: 0x400000 /usr/sbin/nvcamera-daemon
[ 358.227040] Library at 0x403034: 0x400000 /usr/sbin/nvcamera-daemon
[ 358.233489] vdso base = 0x7fb1f97000
Socket read error. Camera Daemon stopped functioning.....
gst_nvcamera_open() failed ret=0
(optical_flow:2313): GStreamer-CRITICAL **: gst_element_get_state: assertion 'GST_IS_ELEMENT (element)' failed
VIDEOIO ERROR: V4L: device nvcamerasrc ! video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, format=(string)I420, framerate=(fraction)120/1 ! nvvidconv ! video/x-raw, width=(int)320, height=(int)180, format=(string)GRAY8 ! videoconvert ! appsink: Unable to query number of channels
terminate called after throwing an instance of 'cv::Exception'
what(): OpenCV(3.4.5-dev) /home/nvidia/opencv/modules/cudawarping/src/cuda/pyr_down.cu:184: error: (-217:Gpu API call) invalid configuration argument in function 'pyrDown_caller'
Aborted (core dumped)
If I log the output from nvcamera-daemon before it crashes, I get this:
vPclHwGetModuleList: WARNING: Could not map module to ISP config string
NvPclHwGetModuleList: No module data found
OFParserGetVirtualDevice: virtual device driver node not found in proc device-tree
OFParserGetVirtualDevice: virtual device driver node not found in proc device-tree
LoadOverridesFile: looking for override file [/Calib/camera_override.isp] 1/16LoadOverridesFile: looking for override file [/data/nvcam/settings/camera_overrides.isp] 2/16LoadOverridesFile: looking for override file [/opt/nvidia/nvcam/settings/camera_overrides.isp] 3/16LoadOverridesFile: looking for override file [/var/nvidia/nvcam/settings/camera_overrides.isp] 4/16---- imager: Found override file [/var/nvidia/nvcam/settings/camera_overrides.isp]. ----
(NvOdmDevice) Error ModuleNotPresent: V4L2Device not available (in dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function findDevice(), line 245)
(NvOdmDevice) Error ModuleNotPresent: (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function initialize(), line 55)
(NvOdmDevice) Error ModuleNotPresent: (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/devices/V4L2SensorViCsi.cpp, function initialize(), line 103)
NvPclDriverInitializeData: Unable to initialize driver v4l2_sensor
NvPclInitializeDrivers: error: Failed to init camera sub module v4l2_sensor
NvPclStartPlatformDrivers: Failed to start module drivers
NvPclStateControllerOpen: Failed ImagerGUID 0. (error 0xA000E)
NvPclOpen: PCL Open Failed. Error: 0xf
SCF: Error BadParameter: Sensor could not be opened. (in src/services/capture/CaptureServiceDeviceSensor.cpp, function getSourceFromGuid(), line 598)
SCF: Error BadParameter: (propagating from src/services/capture/CaptureService.cpp, function addSourceByGuid(), line 781)
SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function addSourceByIndex(), line 276)
SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function getSource(), line 439)
Strange that it seems to not find the camera, since /dev/video does exist.
Has anyone seen this error before? Any idea what I can do next?