38 lines
1.7 KiB
Plaintext
38 lines
1.7 KiB
Plaintext
TODO (general):
|
|
==================================
|
|
|
|
- User space interface refinement
|
|
- Controls should be used when possible rather than private ioctl
|
|
- No enums should be used
|
|
- Use of MC and V4L2 subdev APIs when applicable
|
|
- Single interface header might suffice
|
|
- Current interface forces to configure everything at once
|
|
- Get rid of the dm365_ipipe_hw.[ch] layer
|
|
- Active external sub-devices defined by link configuration; no strcmp
|
|
needed
|
|
- More generic platform data (i2c adapters)
|
|
- The driver should have no knowledge of possible external subdevs; see
|
|
struct vpfe_subdev_id
|
|
- Some of the hardware control should be refactorede
|
|
- Check proper serialisation (through mutexes and spinlocks)
|
|
- Names that are visible in kernel global namespace should have a common
|
|
prefix (or a few)
|
|
- While replacing the older driver in media folder, provide a compatibility
|
|
layer and compatibility tests that warrants (using the libv4l's LD_PRELOAD
|
|
approach) there is no regression for the users using the older driver.
|
|
|
|
Building of uImage and Applications:
|
|
==================================
|
|
|
|
As of now since the interface will undergo few changes all the include
|
|
files are present in staging itself, to build for dm365 follow below steps,
|
|
|
|
- copy vpfe.h from drivers/staging/media/davinci_vpfe/ to
|
|
include/media/davinci/ folder for building the uImage.
|
|
- copy davinci_vpfe_user.h from drivers/staging/media/davinci_vpfe/ to
|
|
include/uapi/linux/davinci_vpfe.h, and add a entry in Kbuild (required
|
|
for building application).
|
|
- copy dm365_ipipeif_user.h from drivers/staging/media/davinci_vpfe/ to
|
|
include/uapi/linux/dm365_ipipeif.h and a entry in Kbuild (required
|
|
for building application).
|