V4L camera driver fuse id


I’m in the process of developing a camera driver and in the sample code I came across something that is called “fuse id”. Could someone explain me what this is and how I should be set? Currently, my camera driver fails during VI setup after it succesully read the fuse id over I2C:

[   10.564448] imx185_fuse_id_setup,  fuse id: 000000000000
[   10.564496] vi vi: subdev imx185 7-001a bound
[   10.564509] vi vi: notify complete, all subdevs registered
[   10.564513] vi vi: creating links for entity imx185 7-001a
[   10.564520] vi vi: processing endpoint /host1x/i2c@546c0000/tca9546@70/i2c@0/imx185_a@1a/ports/port@0/endpoint
[   10.564561] vi vi: skipping channel port /host1x/i2c@546c0000/tca9546@70/i2c@0/imx185_a@1a:0
[   10.564566] vi vi: creating links for channels
[   10.564571] vi vi: processing endpoint /host1x/vi/ports/port@0/endpoint
[   10.564591] vi vi: creating link for channel vi-output-0
[   10.564597] vi vi: creating imx185 7-001a:0 -> vi-output-0:0 link
Unable to handle kernel NULL pointer dereference at virtual address 00000010
[   10.574728] pgd = ffffffc0f3af4000
[   10.579681] [00000010] *pgd=0000000000000000

I assume this error is related to the fuse id which I have not implemented in my camera firmware (the one running on my custom camera board) because I don’t know what it is and what it is needed for… Is it required at all?


Any ideas someone?

The fuse id is for loading the correct ISP setting. That’s not really necessary for the sensor bring up.
And I think that function shouldn’t cause the error. If you can confirm that you can just remove them until you implement that.