diff options
Diffstat (limited to 'drivers/staging/media/atomisp/TODO')
-rw-r--r-- | drivers/staging/media/atomisp/TODO | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/drivers/staging/media/atomisp/TODO b/drivers/staging/media/atomisp/TODO new file mode 100644 index 0000000..737452c --- /dev/null +++ b/drivers/staging/media/atomisp/TODO @@ -0,0 +1,64 @@ +1. A single AtomISP driver needs to be implemented to support both BYT and + CHT platforms. The current driver is a mechanical and hand combined merge + of the two using an ifdef ISP2401 to select the CHT version, which at the + moment is not enabled. Eventually this should become a runtime if check, + but there are some quite tricky things that need sorting out before that + will be possible. + +2. The file structure needs to get tidied up to resemble a normal Linux + driver. + +3. Lots of the midlayer glue. unused code and abstraction needs removing. + +3. The sensor drivers read MIPI settings from EFI variables or default to the + settings hard-coded in the platform data file for different platforms. + This isn't ideal but may be hard to improve as this is how existing + platforms work. + +4. The sensor drivers use the regulator framework API. In the ideal world it + would be using ACPI but that's not how the existing devices work. + +5. The AtomISP driver includes some special IOCTLS (ATOMISP_IOC_XXXX_XXXX) + that may need some cleaning up. + +6. Correct Coding Style. Please don't send coding style patches for this + driver until the other work is done. + +7. The ISP code depends on the exact FW version. The version defined in + BYT: + drivers/staging/media/atomisp/pci/atomisp2/css2400/sh_css_firmware.c + static const char *release_version = STR(irci_stable_candrpv_0415_20150521_0458); + CHT: + drivers/staging/media/atomisp/pci/atomisp2/css/sh_css_firmware.c + static const char *release_version = STR(irci_ecr-master_20150911_0724); + + At some point we may need to round up a few driver versions and see if + there are any specific things that can be done to fold in support for + multiple firmware versions. + + +Limitations: + +1. Currently the patch only support some camera sensors + gc2235/gc0310/0v2680/ov2722/ov5693/mt9m114... + +2. To test the patches, you also need the ISP firmware + + for BYT:/lib/firmware/shisp_2400b0_v21.bin + for CHT:/lib/firmware/shisp_2401a0_v21.bin + + The firmware files will usually be found in /etc/firmware on an Android + device but can also be extracted from the upgrade kit if you've managed + to lose them somehow. + +3. Without a 3A libary the capture behaviour is not very good. To take a good + picture, you need tune ISP parameters by IOCTL functions or use a 3A libary + such as libxcam. + +4. The driver is intended to drive the PCI exposed versions of the device. + It will not detect those devices enumerated via ACPI as a field of the + i915 GPU driver. + +5. The driver supports only v2 of the IPU/Camera. It will not work with the + versions of the hardware in other SoCs. + |