On 12/21/2017 03:23 PM, Andy Shevchenko wrote: > On Thu, 2017-12-21 at 13:54 +0100, Kristian Beilke wrote: >> On Tue, Dec 19, 2017 at 10:37:01PM +0200, Andy Shevchenko wrote: >>> On Tue, 2017-12-19 at 14:00 +0200, Sakari Ailus wrote: >>>> Cc Alan and Andy. >>>> >>>> On Sat, Dec 16, 2017 at 04:50:04PM +0100, Kristian Beilke wrote: >>>>> Dear all, >>>>> >>>>> I am trying to get the cameras in a Lenovo IdeaPad Miix 320 >>>>> (Atom >>>>> x5-Z8350 BayTrail) to work. The front camera is an ov2680. With CherryTrail >>> WRT to the messages below it seems we have no platform data for that >>> device. It needs to be added. >>> I tried to do exactly this. Extracted some values from acpidump/acpixtract and dmidecode, but unsure I nailed it. >>>>> Can I somehow help to improve >>>>> the driver? >>> >>> Yes, definitely, but first of all we need to find at least one >>> device >>> and corresponding firmware where it actually works. >>> >>> For me it doesn't generate any interrupt (after huge hacking to make >>> that firmware loaded and settings / platform data applied). >>> >> >> What exactly are you looking for? > > For anything that *somehow* works. > >> An Android device where the ov2680 >> works? > > First of all, I most likely do not have hardware with such sensor. > Second, I'm using one of the prototype HW based on BayTrail with PCI > enumerable AtomISP. > >> Some x86_64 hardware, where the matching firmware is available and >> the driver in 4.15 works? > > Yes, that's what I would like to have before moving forward with any new > sensor drivers, clean ups or alike type of changes to the driver. > After your set of patches I applied the CherryTrail support I found here https://github.com/croutor/atomisp2401 As a result I get: [ 0.000000] DMI: LENOVO 80XF/LNVNB161216, BIOS 5HCN31WW 09/11/2017 [ 2.806685] axp20x-i2c i2c-INT33F4:00: AXP20x variant AXP288 found [ 2.849606] axp20x-i2c i2c-INT33F4:00: AXP20X driver loaded [ 19.593200] media: Linux media interface: v0.10 [ 19.627138] Linux video capture interface: v2.00 [ 19.652771] atomisp_ov2680: module is from the staging directory, the quality is unknown, you have been warned. [ 19.676093] ov2680 i2c-OVTI2680:00: gmin: initializing atomisp module subdev data.PMIC ID 2 [ 19.676097] ov2680 i2c-OVTI2680:00: suddev name = ov2680 0-0010 [ 19.677548] gmin_v1p8_ctrl PMIC_AXP. [ 19.685261] axp_regulator_set success. [ 19.685428] axp_v1p8_on XXOV2680 00000010 [ 19.691777] axp_regulator_set success. [ 19.708488] dw_dmac INTL9C60:00: DesignWare DMA Controller, 8 channels [ 19.752432] ov2680 i2c-OVTI2680:00: unable to set PMC rate 1 [ 19.760507] dw_dmac INTL9C60:01: DesignWare DMA Controller, 8 channels [ 19.789335] ov2680 i2c-OVTI2680:00: camera pdata: port: 0 lanes: 1 order: 00000002 [ 19.793616] ov2680 i2c-OVTI2680:00: sensor_revision id = 0x2680 [ 19.793638] gmin_v1p8_ctrl PMIC_AXP. [ 19.802615] axp_regulator_set success. [ 19.806384] axp_regulator_set success. [ 19.806396] ov2680 i2c-OVTI2680:00: register atomisp i2c module type 1 [ 19.859215] shpchp: Standard Hot Plug PCI Controller Driver version: 0.4 [ 19.906592] atomisp: module is from the staging directory, the quality is unknown, you have been warned. [ 19.910763] ********************************************************** [ 19.910765] ** NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE ** [ 19.910766] ** ** [ 19.910767] ** trace_printk() being used. Allocating extra memory. ** [ 19.910768] ** ** [ 19.910769] ** This means that this is a DEBUG kernel and it is ** [ 19.910770] ** unsafe for production use. ** [ 19.910771] ** ** [ 19.910772] ** If you see this message and you are not debugging ** [ 19.910773] ** the kernel, report this immediately to your vendor! ** [ 19.910774] ** ** [ 19.910775] ** NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE ** [ 19.910776] ********************************************************** [ 19.923072] (NULL device *): hwmon_device_register() is deprecated. Please convert the driver to use hwmon_device_register_with_info(). [ 19.923219] (NULL device *): hwmon_device_register() is deprecated. Please convert the driver to use hwmon_device_register_with_info(). [ 19.932909] atomisp-isp2 0000:00:03.0: atomisp: device 000022B8 revision 54 [ 19.932917] atomisp-isp2 0000:00:03.0: ISP HPLL frequency base = 1600 MHz [ 20.133834] axp288_fuel_gauge axp288_fuel_gauge: axp288 not configured by firmware [ 20.162738] atomisp-isp2 0000:00:03.0: Subdev OVTI2680:00 successfully register [ 20.162750] atomisp-isp2 0000:00:03.0: Entity type for entity ATOM ISP CSI2-port0 was not initialized! [ 20.162753] atomisp-isp2 0000:00:03.0: Entity type for entity ATOM ISP CSI2-port1 was not initialized! [ 20.162756] atomisp-isp2 0000:00:03.0: Entity type for entity ATOM ISP CSI2-port2 was not initialized! [ 20.162759] atomisp-isp2 0000:00:03.0: Entity type for entity file_input_subdev was not initialized! [ 20.162762] atomisp-isp2 0000:00:03.0: Entity type for entity tpg_subdev was not initialized! [ 20.162765] atomisp-isp2 0000:00:03.0: Entity type for entity ATOMISP_SUBDEV_0 was not initialized! [ 20.166183] atomisp-isp2 0000:00:03.0: Entity type for entity ATOMISP_SUBDEV_1 was not initialized! [ 21.120554] rt5645 i2c-10EC5645:00: i2c-10EC5645:00 supply avdd not found, using dummy regulator [ 21.120587] rt5645 i2c-10EC5645:00: i2c-10EC5645:00 supply cpvdd not found, using dummy regulator [ 21.145141] intel_sst_acpi 808622A8:00: LPE base: 0x91400000 size:0x200000 [ 21.145146] intel_sst_acpi 808622A8:00: IRAM base: 0x914c0000 [ 21.145241] intel_sst_acpi 808622A8:00: DRAM base: 0x91500000 [ 21.145250] intel_sst_acpi 808622A8:00: SHIM base: 0x91540000 [ 21.145262] intel_sst_acpi 808622A8:00: Mailbox base: 0x91544000 [ 21.145269] intel_sst_acpi 808622A8:00: DDR base: 0x20000000 [ 21.145403] intel_sst_acpi 808622A8:00: Got drv data max stream 25 [ 21.892310] atomisp-isp2 0000:00:03.0: Refused to change power state, currently in D3 [ 21.904537] OVTI2680:00: ov2680_s_parm:run_mode :2000 [ 21.919743] atomisp-isp2 0000:00:03.0: Refused to change power state, currently in D3 [ 21.930399] OVTI2680:00: ov2680_s_parm:run_mode :2000 [ 21.956479] atomisp-isp2 0000:00:03.0: Refused to change power state, currently in D3 I am still not sure the FW gets loaded, and there is still no /dev/camera, but it looks promising. Am I on the right track here, or am I wasting my (and your) time?
Attachment:
smime.p7s
Description: S/MIME Cryptographic Signature